Devolo Wandschalter für Zwischenstecker nutzen

Begonnen von ancohl, 21 Januar 2017, 18:39:19

Vorheriges Thema - Nächstes Thema

ancohl

hi,
stehe aufm schlauch....

nutze den devolo 4 tasten wandschalter und möchte mit taste 1 einen cyrus zwischenster einschalten, mit allen anderen aus.
leider liefert der mit statt soetwas wie button1 on immer nur sSceneSet:1

habe also versucht per notify mit

-------
Wandschalter1:cSceneSet:.*|{
my $Scene = Value ("Wandschalter1:cSceneSet:.*");;
if ($Scene = "1") {
fhem "set Cyrus.Zwischenstecker on"
}else {
fhem "set Cyrus.Zwischenstecker off"}
-------

das zu erreichen. klappt leider nicht... jemand ne idee oder schon eine fertige lösung?

rudolfkoenig

Wandschalter1:cSceneSet:.*|{ Hier ist zwischen regesp und { kein Leerzeichen, das notify wird also nie aktiviert werden.
Value ("Wandschalter1:cSceneSet:.*");; liefert immer "" (da es kein Geraet mit dem Argument existiert).

Falls Du mit perl & Co noch auf Kriegsfuss stehst, wuerde ich zwei notifies bauen, mit jeweils den passenden Regexp. Falls du eventTypes nicht deaktiviert hast, dann sollte in der FHEMWEB notify detailAnsicht  der Regeyp Wizard dabei helfen, den richtigen auszuwaehlen.

ancohl

danke das erklärt einiges...
(perl ist leider schon etwa 20 jhre her)

aber wie kann ich denn die vom wandschalter je nach knopfdruck unter cSceneSet übermittelte zahl auswerten wenn ich zwei einfache notifys bauen will?

rudolfkoenig

Zitataber wie kann ich denn die vom wandschalter je nach knopfdruck unter cSceneSet übermittelte zahl auswerten wenn ich zwei einfache notifys bauen will?

Zitatdefine n1 notify Wandschalter1:cSceneSet:1 set Cyrus.Zwischenstecker on
define n2 notify Wandschalter1:cSceneSet:2 set Cyrus.Zwischenstecker off

Es gibt natuerlich zig andere Varianten, die erfordern aber etwas mehr Studium (commandref/perl/etc), was hier offensichtlich nicht erwuenscht wird. Ich muss aber auch runter vom hohen Ross: mein Ratschlag mit Regexp-Wizard war falsch, da eventTypes alle Zahlen vernichtet, und damit die o.g. Regexps da nicht zur Verfuegung stehen. :)

ancohl


danke, das war der entscheidene tipp,
so wie du hatte ich das anfangs auch versucht...

Zitatdefine n1 notify Wandschalter1:cSceneSet:1 set Cyrus.Zwischenstecker on
define n2 notify Wandschalter1:cSceneSet:2 set Cyrus.Zwischenstecker off

da fehlt hinter cSceneSet: vor der zahl bei mir auch ein .

define n1 notify Wandschalter1:cSceneSet:.1 set Cyrus.Zwischenstecker on
define n2 notify Wandschalter1:cSceneSet:.2 set Cyrus.Zwischenstecker off

das klappt.

jetzt muss ich nur für den anderen devoloschalter mich an toggle versuchen...
oder gibt es für den devolo wandschalter irgendwo schon was fertiges?
ich bin doch bestimmt nicht der erste mit dem ding.