FHEM Forum

FHEM => Sonstiges => Thema gestartet von: felix.steinbeis am 09 Dezember 2015, 21:53:14

Titel: Fehler nach Set-Command. Verrücktes Verhalten.
Beitrag von: felix.steinbeis am 09 Dezember 2015, 21:53:14
Hallo zusammen,

ich habe folgendes Phänomen bzw. folgenden Bug gefunden:

Wenn ich ein "Set xyz test" eingebe (großes S bei Set), passiert nichts (xyz muss auch nicht existieren). Der Befehl wird scheinbar nicht ausgeführt und es kommt auch keine Fehlermeldung.
Gebe ich danach ein "Set abc test" ein ist das Verhalten identisch zu dem "Set" davor. Ok, soweit auch logisch.

Aber jetzt kommts:
Ich habe ein paar notifys, die mir jeweils einen Timer (at) anlegen. Immer wenn jetzt ein notify ausgeführt wird, und ich einen Timer definiere (define 3.dg.treppe.bewegungsmelder.at at +00:00:32 setreading 3.dg.treppe.bewegungsmelder state motion_off), habe ich folgenden Log-Eintrag:

3.dg.treppe.bewegungsmelder.at: unknown attribute xyz. Type 'attr 3.dg.treppe.bewegungsmelder.at ?' for a detailed list.
3.dg.treppe.bewegungsmelder.at: unknown attribute abc. Type 'attr 3.dg.treppe.bewegungsmelder.at ?' for a detailed list.

Der Timer funktioniert trotzdem. Immer wenn ich jetzt einen Timer definiere, kommen die beiden Fehlermeldungen

Was ist da los. Ohne "shutdown restart" bekomme ich die Fehlermeldungen nicht mehr weg.

Viele Grüße
Felix
Titel: Antw:Fehler nach Set-Command. Verrücktes Verhalten.
Beitrag von: rudolfkoenig am 10 Dezember 2015, 11:05:30
Die Loesung des Reatsels sieht man, wenn man "attr global verbose 5" verwendet:
2015.12.10 11:02:47.374 5: Cmd: >Set xyz test<
2015.12.10 11:02:47.374 5: Set => setdefaultattr

Da Set nicht existiert, geht fhem von einer Abkuerzung aus, und sucht nach Befehlen, die laenger als "Set" sind, und deren Praefix (Grossschreibung ignoriert) mit Set anfaengt.

Btw, es wird Zeit setdefaultattr als deprecated zu markieren, ich gehe davon aus, dass es nicht verwendet wird. Stoerte bisher nur selten.
Titel: Antw:Fehler nach Set-Command. Verrücktes Verhalten.
Beitrag von: Benni am 10 Dezember 2015, 12:14:31
Hallo Rudi,

es ist aber eigentlich auch nicht schön, wenn FHEM sowas stillschweigend macht, ohne ein feedback zu geben.
Abkürzungen können ja sehr angenehm sein :) , aber die sollte man sich m.E. doch explizit per cmdalias selbst anlegen.

Gruß Benni.
Titel: Antw:Fehler nach Set-Command. Verrücktes Verhalten.
Beitrag von: rudolfkoenig am 10 Dezember 2015, 12:46:20
Da bin ich anderer Ansicht :)
Titel: Antw:Fehler nach Set-Command. Verrücktes Verhalten.
Beitrag von: betateilchen am 11 Dezember 2015, 09:54:42
Ich würde setdefaultattr ehrlich vermissen. Gerade bei der Neuanlage von mehrkanaligen Homematic devices ist das sehr hilfreich, wenn man plötzlich 10 Kanäle als eigene devices konfigurieren muss.
Titel: Antw:Fehler nach Set-Command. Verrücktes Verhalten.
Beitrag von: rudolfkoenig am 11 Dezember 2015, 11:01:45
Dann bleibt setdefaultattr erhalten.
Titel: Antw:Fehler nach Set-Command. Verrücktes Verhalten.
Beitrag von: betateilchen am 11 Dezember 2015, 15:01:59
Danke.

Vermutlich haben wir beide was gemeinsam: Ich bin einer der wenigen, die mit setdefaultattr arbeiten und Du dürftest einer der wenigen sein, der die Kurzformen der Befehle benutzt  8)
Titel: Antw:Fehler nach Set-Command. Verrücktes Verhalten.
Beitrag von: Benni am 11 Dezember 2015, 21:15:38
Ich habe übrigens nichts gegen setdefaultattr, ganz im Gegenteil. Und jetzt, da ich das mit den Kurzbefehlen weiß, werde ich sie bestimmt auch nutzen, schließlich bin ich ja auch von Haus aus faul ;)

Es ging mir lediglich um das auf den ersten Blick willkürliche verhalten, gerade im ursprünglichen Beispiel dieses Threads, schließlich gäbe es bei "Set" ja durch aus mehrere mögliche alternativen, nämlich "set", "setdefaultattr", "setreading" und "setstate".