FHEM Forum

FHEM => Automatisierung => Thema gestartet von: abc2006 am 07 April 2013, 01:06:15

Titel: Notifys defineren
Beitrag von: abc2006 am 07 April 2013, 01:06:15
Hallo,
auch ich habe mich erst seit kurzem mit fhem beschäftigt.
Heute wollte ich mal notify's ausprobieren und bin über folgenden Fehler gestolpert:

Hier http://www.fhemwiki.de/wiki/Funktionsbeschreibung_zu_notify#notify_Befehl_2 (//www.fhemwiki.de/wiki/Funktionsbeschreibung_zu_notify#notify_Befehl_2) steht:


"define SteckdoseWZein notify LichtWZ set Steckdose1 %,Steckdose2 %"
bzw bei mir:
"define xyz notify Schalterpaar2 set Funkschalter1 %,Funkschalter2%".

wenn ich das so anlege, erhalte ich keine Funktion und folgende Fehlermeldung im Log:


2013.04.07 01:02:48 4: FS20 Schalterpaar2 on
2013.04.07 01:02:48 5: Triggering Schalterpaar2 (1 changes)
2013.04.07 01:02:48 5: Notify loop for Schalterpaar2 on
2013.04.07 01:02:48 5: Triggering 4
2013.04.07 01:02:48 5: Cmd: >set Funkschalter1 on,Funkschalter2 on<
2013.04.07 01:02:48 3: 4 return value: Unknown argument on,Funkschalter2, choose one of off off-for-timer on on-for-timer on-till reset timer toggle blink intervals off-till


Wo ist der Fehler?

Danke
stephan

Titel: Aw: Notifys defineren
Beitrag von: bsl02 am 07 April 2013, 01:47:19
Hallo Stephan,

tatsächlich sind im Internet abweichende Versionen dargestellt:
http://www.fhemwiki.de/wiki/Funktionsbeschreibung_zu_notify#notify_Befehl_2 (//www.fhemwiki.de/wiki/Funktionsbeschreibung_zu_notify#notify_Befehl_2)

Zum Vergleich ein Blick auf die Commandref in meinem FHEM (links unter Logfile und Howto). Demnach sollte es wie folgt lauten:
>define b3lampV3 notify btn3 set lamp1 %;;set lamp2 %

Oder laut Commandref im Internet (http://fhem.de/commandref.html#notify (//fhem.de/commandref.html#notify))
>define b3lampV3 notify btn3 set lamp1 $EVENT;;set lamp2 $EVENT

Zum Vergleich Dein bisheriges:
>"define xyz notify Schalterpaar2 set Funkschalter1 %,Funkschalter2%".

Probiere ´mal folgende Änderungen:
- ";;" zwischen den Funkschaltern anstatt ","
- ein weiteres "set" vor Funkschalter 2
- Ein Leerzeichen vor dem letzten "%"

Also
define xyz notify Schalterpaar2 set Funkschalter1 %;;set Funkschalter2 %

Viel Erfolg,
Stefan
Titel: Aw: Notifys defineren
Beitrag von: Zrrronggg! am 07 April 2013, 02:31:13
Zitat"define SteckdoseWZein notify LichtWZ set Steckdose1 %,Steckdose2 %"

Das in jedem Falle falsch.



es geht entweder

define SteckdoseWZein notify LichtWZ set Steckdose1,Steckdose2 %

oder

define SteckdoseWZein notify LichtWZ set Steckdose1 % ;;  set Steckdose2 %

Im übrigen halte ich das durchreichen des Zustandes eines Senders (Hier LichtWZ) per "%" an Aktor für nicht gut, weil man null Kontrolle hat was passiert.
FS20 und HM Sender können jede Menge Kommandos abgeben, nicht nur on und off, sondern auch dim, on-for-timer, off-for timer, on-old und etc.
Mit dem Konstrukt oben hat man ggf schon Spass, wenn man die Taste der Fernbedienung zu lange drückt, damit dimmt und der Aktor dimmen nicht versteht.

Edit: Wikiartikel korrigiert. (da steht ne Menge Kram drin, der richtig ist, aber mitunter suboptimal. Ich werd mir den Artikel mal ansehen die Tage.)
Titel: Aw: Notifys defineren
Beitrag von: abc2006 am 07 April 2013, 12:19:36
Okay, super, danke!

Ich beteilige mich auch aktiv am Wiki und hätte die Korrekturen dort eingepflegt, aber schön, wenn das schon erledigt ist.

Jetzt wundert mich nur das ";;", das erinnert mich mehr an Perl als an Scripting.. fehlen da die Perl-Klammern?

Auf jeden Fall funktionierts! :-)

Dass das durchreichen Probleme macht, darüber habe ich (weil es nicht geklappt hat) noch nicht nachgedacht. Diesen Punkt sollte man vielleicht auch noch als Anmerkung im Wiki einfügen.

Danke euch allen und einen schönen Sonntag

stephan
Titel: Aw: Notifys defineren
Beitrag von: Zrrronggg! am 07 April 2013, 20:59:19
Das durchreichen mit % macht streng genommen keine Probleme, das funktioniert einwandfrei. Was ich nur sagen wollte ist: Das macht womöglich nicht immer das was man DENKT was es macht.

Ich werde den Wikiartikel mal genau auf so Randanmerkungen hin untersuchen.
Titel: Aw: Notifys defineren
Beitrag von: Rohan am 09 April 2013, 21:00:37
Hi Zrrronggg!,

Zitat von: Zrrronggg! schrieb am So, 07 April 2013 20:59...Ich werde den Wikiartikel mal genau auf so Randanmerkungen hin untersuchen.

Wenn du dabei bist, evtl. gleich an

Zitatfeature: notify supports $NAME/$EVENT/$EVTPART0/etc. @/% is deprecated.

(Quelle) denken (habe ich mir auch vorgenommen).

Siehe auch Beitrag von bsl02 weiter oben

ZitatOder laut Commandref im Internet (http://fhem.de/commandref.html#notify)
>define b3lampV3 notify btn3 set lamp1 $EVENT;;set lamp2 $EVENT

Gruß
Thomas