Moin,
ich möchte gerne zu bestimmten Zeiten meine Netzwerklast verringern und dazu als erstes die LanPings des PRESENCE-Moduls ausschalten.
Das geschieht mit der Veränderung des Attributes "disable=1" in div. PRESENCE-Abfragen.
CFGFN
DEF
( [Nachtruhe] eq "on" )
( attr f_Anwesend_Joerg disable 1;
set tabbi2 wlan off;
save
)
DOELSE
( attr f_Anwesend_Joerg disable 0;
set tabbi2 wlan on;
save
)
NAME f_Nachtruhe
NR 92970
NTFY_ORDER 50-f_Nachtruhe
STATE cmd_2
TYPE DOIF
Das funktioniert auch soweit, aber ich bekomme im Log Fehlermeldungen.
2017-05-23 09:23:37 PRESENCE f_Anwesend_Joerg disabled
2017-05-23 09:23:37 Global global ATTR f_Anwesend_Joerg disable 1
2017-05-23 09:23:38 FRITZBOX tabbi2 wlan off
2017-05-23 09:23:38 Global global SAVE
2017-05-23 09:23:39 DOIF f_Nachtruhe cmd_nr: 1
2017-05-23 09:23:39 DOIF f_Nachtruhe cmd: 1
2017-05-23 09:23:39 DOIF f_Nachtruhe cmd_event: set_cmd_1
2017-05-23 09:23:39 DOIF f_Nachtruhe error: attr f_Anwesend_Joerg disable 1; ... set tabbi2 wlan off; save : configDB saved.
2017-05-23 09:23:39 DOIF f_Nachtruhe cmd_1
2017-05-23 09:23:39 FRITZBOX tabbi2 WLAN: off gWLAN: off
2017-05-23 09:23:46 Global global ATTR f_Anwesend_Joerg disable 0
2017-05-23 09:23:46 FRITZBOX tabbi2 wlan on
2017-05-23 09:23:46 Global global SAVE
2017-05-23 09:23:48 DOIF f_Nachtruhe cmd_nr: 2
2017-05-23 09:23:48 DOIF f_Nachtruhe cmd: 2
2017-05-23 09:23:48 DOIF f_Nachtruhe cmd_event: set_cmd_2
2017-05-23 09:23:48 DOIF f_Nachtruhe error: attr f_Anwesend_Joerg disable 0; ... set tabbi2 wlan on; save : configDB saved.
2017-05-23 09:23:48 DOIF f_Nachtruhe cmd_2
2017-05-23 09:23:48 PRESENCE f_Anwesend_Joerg absent
2017-05-23 09:23:49 FRITZBOX tabbi2 WLAN: on gWLAN: off
Macht das irgendeinen Sinn? Ist diese Funktion so nicht vorgesehen oder mache ich einen Fehler?
Ich hätte die PRESENCE-Abfragen ja lieber mit dem set-Befehl deaktiviert und wieder aktiviert, aber das Modul kann das nicht.
Das Problem mit Attribute ist, dass die zur Konfiguration gehören. Wenn Du ein Attribut per Skript / Befehl setzt, solltest Du dann ein "save" durchfürhen... Das halte ich für wenig sinnvoll.
Ausserdem, was ist der Einfluss von ein paar Pings auf deine Netzwerklast? 20/30 Bytes ab und zu = gar nix... Wenn Du Netzwerkprobleme hast, ist die Lösung woanders zu suchen.
Zitat von: amenomade am 23 Mai 2017, 10:50:23
Das Problem mit Attribute ist, dass die zur Konfiguration gehören. Wenn Du ein Attribut per Skript / Befehl setzt, solltest Du dann ein "save" durchfürhen... Das halte ich für wenig sinnvoll.
Ausserdem, was ist der Einfluss von ein paar Pings auf deine Netzwerklast? 20/30 Bytes ab und zu = gar nix... Wenn Du Netzwerkprobleme hast, ist die Lösung woanders zu suchen.
Netzwerkprobleme nicht, aber ich habe devolo powerlan in allen Zimmern, und die Dinger blinke bei Broadcasts und Pings ständig und gehen nicht in den StandBy....
Na ja, und dass muss aufhören ;D
poste mal ein list von den devices (in code-tags)
ansonsten bin ich nicht sicher ob das DOIF Unterforum besser geeignet ist (ich vermute darin eher den Fehler als in PRESENCE)
versuch mal:
( [Nachtruhe] eq "on" ) ( attr f_Anwesend_Joerg disable 1, set tabbi2 wlan off, save )
; zu , geändet
Zitat von: nils_ am 23 Mai 2017, 11:21:56
poste mal ein list von den devices (in code-tags)
ansonsten bin ich nicht sicher ob das DOIF Unterforum besser geeignet ist (ich vermute darin eher den Fehler als in PRESENCE)
versuch mal:
( [Nachtruhe] eq "on" ) ( attr f_Anwesend_Joerg disable 1, set tabbi2 wlan off, save )
; zu , geändet
2017-05-23 11:28:42 DOIF f_Nachtruhe error: save : configDB saved.
ist von der ganzen Meldung übriggeblieben. Geht "Save" nicht in DOIF?
Ich weiß, dass das mit dem Attribut blöd ist, wie aber sonst?
Probier mal mit (befehl1) (befehl2) (befehlt3) statt "," oder ";", um zu wissen welcher Befehl die Fehlermeldung bringt
( [Nachtruhe] eq "on" )
( attr f_Anwesend_Joerg disable 1)
( set tabbi2 wlan off)
( save )
ZitatGeht "Save" nicht in DOIF?
"Save" nicht, aber "save" sollte doch ;)
Er sagt übrigens doch "configdb saved"
Zitat von: amenomade am 23 Mai 2017, 11:49:23
Probier mal mit (befehl1) (befehl2) (befehlt3) statt "," oder ";", um zu wissen welcher Befehl die Fehlermeldung bringt
( [Nachtruhe] eq "on" )
( attr f_Anwesend_Joerg disable 1)
( set tabbi2 wlan off)
( save )
Tja, wenn ich die Kommandos so vereinzelne, sagt er den Error wie mit "," bei save (diesmal klein ;D). Er führt aber auch alle Kommandos aus und configDB wird auch geschrieben.
Hab auch schon ";" und "," hinter save gesetzt, weitere Varianten lassen sich dann aber nicht abspeichern.
Kannst Du folgendes probieren?
( [Nachtruhe] eq "on" )
( attr f_Anwesend_Joerg disable 1)
( set tabbi2 wlan off)
( { fhem("save"); return 0 } )