Hallo Miteinander,
ich arbeite mich gerade in die Plugins für das Wiregate ein und habe in diesem Zusammenhang ein einfaches Plugin erstellt, welches die Rollläden hochfährt, wenn die Fenster geöffnet werden:
Da ich Teile des Codes von anderen Plugins übernommen habe, würde ich gerne wissen, welche Auswirken sie genau haben:
1.) $plugin_subscribe{$feli_ga}{$plugname}=1
Wenn ich es richtig verstanden habe, bewirkt diese Zeile, dass das Plugin immer dann ausgeführt wird, wenn sich die Werte der Gruppenadresse "$feli_ga" ändern!? Was bedeutet aber "=1" am Ende?
2.) if (($msg{'dst'} eq $feli_ga) and ($msg{'apci'} eq "A_GroupValue_Write"))
Ich weiß, dass $msg Werte des eingetroffenen KNX-Telegramms enthält, aber was bedeutet 'dst', 'apci' und "A_GroupValue_Write"?
Dies ist mein erstes Plugin. Ich bin dankbar für Vorschläge, wie ich es eleganter schreiben kann. So kann ich für zukünftige Plugins lernen.
Beste Grüße
Marco
ich arbeite mich gerade in die Plugins für das Wiregate ein und habe in diesem Zusammenhang ein einfaches Plugin erstellt, welches die Rollläden hochfährt, wenn die Fenster geöffnet werden:
PHP-Code:
# Plugin zum Hochfahren der Rollläden bei geöffnetem Fenster
#Variablen
my $feli_ga = "6/0/152"; #Gruppenadresse linkes Fenster
my $rollo_ga = "3/0/151"; #Gruppenadresse Rollladen Schalten
#Ablauf
$plugin_subscribe{$feli_ga}{$plugname}=1;
if (($msg{'dst'} eq $feli_ga) and ($msg{'apci'} eq "A_GroupValue_Write"))
{
my $feli = knx_read($feli_ga,0,1);
my $rollo = knx_read($rollo_ga,0,1);
if (($rollo == 1) and ($feli == 0)) {
knx_write($rollo_ga,0,1);
return "Linkes Fenster wurde geöffnet, daher Rollladen geöffnet";
}
}
1.) $plugin_subscribe{$feli_ga}{$plugname}=1
Wenn ich es richtig verstanden habe, bewirkt diese Zeile, dass das Plugin immer dann ausgeführt wird, wenn sich die Werte der Gruppenadresse "$feli_ga" ändern!? Was bedeutet aber "=1" am Ende?
2.) if (($msg{'dst'} eq $feli_ga) and ($msg{'apci'} eq "A_GroupValue_Write"))
Ich weiß, dass $msg Werte des eingetroffenen KNX-Telegramms enthält, aber was bedeutet 'dst', 'apci' und "A_GroupValue_Write"?
Dies ist mein erstes Plugin. Ich bin dankbar für Vorschläge, wie ich es eleganter schreiben kann. So kann ich für zukünftige Plugins lernen.
Beste Grüße
Marco
Kommentar