FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: BuBu79 am 03 Februar 2017, 22:30:54

Titel: Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 03 Februar 2017, 22:30:54
Hallo,

da uns nun bereits innerhalb von drei Monaten die zweite "Funkklingel" den Dienst verweigert hat, möchte ich nun mittels Fhem das Problem angehen.

Auslöser (Klingeltaster) ist ein umgearbeiteter Funk-Tür-Fensterkontakt HM-Sec-SC-2. Diesen habe ich bereits in Fhem angelernt und einen Notify draufgesetzt.
Da momentan noch kein Homematic MP3-Funk-Gong da ist, lasse ich gerade einen LED Strip blinken.

Notify
Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 10);
}


Eintrag in der 99_myUtils.pm
#### LED Stripe Blinken Anfang ####
sub blink(@)
{
  my ($ledName, $color, $t) = @_;
  # preserve actual 
  my $oldColor = ReadingsVal($ledName, 'RGB', '000000');
  # set initial blink - color
  fhem "set $ledName RGB $color";
# blink $t times ...
for (my $i=0; $i<$t; $i++) {
   fhem "set $ledName RGB $color 1 q; set $ledName RGB 000000 0 q; set $ledName RGB 000000 1 q; set $ledName RGB $color 0 q";
}
# restore old color
fhem "set $ledName RGB $oldColor 0 q";
return undef;
}
#### LED Stripe Blinken Ende ####


Meine Überlegung ist nun, auch unsere Hofbeleuchtung 3 Mal blinken zu lassen für den Fall das wir im Hof bzw im Garten unterwegs sind.

Ich habe versucht den oberen Notify wie folgt anzupassen
Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 10);
        blink1 ( 'SchalterHausnr', 3);
}


und natürlich dazu dann die Änderung in der 99_myUtils.pm
#### Lampen Blinken Anfang ####
sub blink1(@)
{
  my ($LampenName, $t) = @_;

Ich habe bereits mehrere Stunden verbracht den Code evtl. anzupassen, leider ohne Erfolg. Dazu sind zu viele Variablen mit denen ich nicht wirklich was anfangen kann.

Ziel soll es halt sein den on|off Status vorher zu lesen, 3 mal zu blinken und dann den alten Status wieder zu setzen. Klappt mit dem Strip Code wunderbar.

Für eure Hilfe wäre ich Dankbar!

Gruß Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: Thorsten Pferdekaemper am 04 Februar 2017, 10:17:57
Hi,
könntest Du mal ganz kurz zusammenfassen, was denn nun funktioniert und was nicht? Außerdem wäre Dein momentaner Code der Funktion blink1 hilfreich.
Gruß,
   Thorsten
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 12:47:13
Zitat von: Thorsten Pferdekaemper am 04 Februar 2017, 10:17:57
Hi,
könntest Du mal ganz kurz zusammenfassen, was denn nun funktioniert und was nicht? Außerdem wäre Dein momentaner Code der Funktion blink1 hilfreich.
Gruß,
   Thorsten

Funktionieren tut das Blinken des Strips.

Nicht funktionieren tut das Blinken der Hoflampe.
Meine Überlegung war nun, den Code <blink> umzuschreiben mit dem Namen von <blink1> für das blinken einer Lampe.
Der oben aufgeführte Code <blink> ließt den Status des Strips aus. An oder Aus und wenn an welcher RGB Wert ist gesetzt. Dann blinkt er den angegeben Wert und setzt danach wieder den alten Wert den er am Anfang ausgelesen hat.

Gruß Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: Thorsten Pferdekaemper am 04 Februar 2017, 13:15:30
...ja und wo sind Deine Versuche zu blink1?
Gruß,
   Thorsten
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 13:32:49
Zitat von: Thorsten Pferdekaemper am 04 Februar 2017, 13:15:30
...ja und wo sind Deine Versuche zu blink1?
Gruß,
   Thorsten

:-[übern Jordan geschickt als es nicht funktioniert hat.

Ich Versuche es nochmal.
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 13:42:25
So richtig voran kommt das ja hier nicht. Weißt Du wieso? Weil es den Anschein hat als wenn die anderen für Dich die Arbeit machen sollen.
Am besten ist immer Du probierst alleine. Wenn du nicht weiter kommst postest du den Code und die derzeitige Fehlermeldung.

Anmerken möchte ich noch das Dein erster Code ganz oben, der der schon geht FHEM blockiert. Genau für die Zeit welche der Code zum durchlaufen brauch. Hier ist der Schleifendurchlauf das kritische Element. Gib mal als t 100 ein und du wirst bemerken was ich meine.
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 14:22:55
Zitat von: CoolTux am 04 Februar 2017, 13:42:25
So richtig voran kommt das ja hier nicht. Weißt Du wieso? Weil es den Anschein hat als wenn die anderen für Dich die Arbeit machen sollen.

Dieser "Anschein" sollte natürlich nicht vermittelt werden.

Wie ich oben schon erwähnt habe, hatte ich mehrere Versuche gestartet.
Hab im Papierkorb noch die alte Notepad++ Datei gefunden wo ich Versucht habe den Code zu ändern:
#### Lampe Blinken Anfang ####
sub blink1(@)
{
  my ($LampenName, $t) = @_;
  # preserve actual 
  my $oldState = ReadingsVal($LampenName, '1','0');
  # set initial blink
  fhem "set $LampenName on";
# blink $t times ...
for (my $i=0; $i<$t; $i++) {
   fhem "set $LampenName 1 q; set $LampenName 0 q; set $LampenName 1 q; set $LampenName 0 q";
}
# restore old color
fhem "set $LampenName $oldState 0 q";
return undef;
}
#### Lampe Blinken Ende ####


Das Logfile:
2017.02.04 14:17:15 3: CUL_HM set SchalterHausnr on
2017.02.04 14:17:15 3: set SchalterHausnr 1 q; set SchalterHausnr 0 q; set SchalterHausnr 1 q; set SchalterHausnr 0 q : Unknown argument 1, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 0, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 1, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 0, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
2017.02.04 14:17:15 3: set SchalterHausnr 1 q; set SchalterHausnr 0 q; set SchalterHausnr 1 q; set SchalterHausnr 0 q : Unknown argument 1, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 0, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 1, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 0, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
2017.02.04 14:17:15 3: set SchalterHausnr 1 q; set SchalterHausnr 0 q; set SchalterHausnr 1 q; set SchalterHausnr 0 q : Unknown argument 1, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 0, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 1, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
Unknown argument 0, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg
2017.02.04 14:17:15 3: set SchalterHausnr 0 0 q : Unknown argument 0, choose one of assignHmKey:noArg clear:readings,trigger,register,oldRegs,rssi,msgEvents,attack,all deviceRename fwUpdate getConfig:noArg getDevInfo:noArg getRegRaw getSerial:noArg getVersion:noArg inhibit:on,off off:noArg on-for-timer on-till on:noArg pair:noArg peerBulk peerIODev press raw regBulk regSet reset:noArg sign:on,off statusRequest:noArg toggle:noArg unpair:noArg

jump to the top


Zitat von: CoolTux am 04 Februar 2017, 13:42:25
Anmerken möchte ich noch das Dein erster Code ganz oben, der der schon geht FHEM blockiert. Genau für die Zeit welche der Code zum durchlaufen brauch. Hier ist der Schleifendurchlauf das kritische Element. Gib mal als t 100 ein und du wirst bemerken was ich meine.
Wenn ich dich richtig verstehe soll ich die Anzahl des Blinken auf 100 Stellen. Meinst du das Fhem in der Zeit die es braucht 100 Mal zu blinken "festhängt"?

Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 14:36:47
Zitat von: BuBu79 am 04 Februar 2017, 14:22:55

Wenn ich dich richtig verstehe soll ich die Anzahl des Blinken auf 100 Stellen. Meinst du das Fhem in der Zeit die es braucht 100 Mal zu blinken "festhängt"?

Jan

Genau das wollte ich damit sagen.
Desweiteren hast Du das Problem das Du entweder den Code nicht überschauen kannst oder ihn nicht verstehst.
Ein Vorschlag meiner seits. Wir können versuchen eine vernünftige Lösung zu finden. Das muß nicht unbedingt so komplexer Code sein. Daher schlage ich vor Du verrätst uns erstmal was Du genau für Lampen hast. Sowohl WZ_RGB_Schrank als auch die im Garten. Darauf aufbauend kann man schauen ob es alternative Befehle gibt. HUE zum Beispiel hat einen Blinkbefehl bereits ab Werk.
Wenn sich nichts weiter findet, schauen wir wo man sich am besten wiederholdende Befehle einbaut. Hier wäre zum Beispiel ein at ganz nett, was so weit ich mich erinnern kann mit Befehlswiederholungen arbeiten kann.


my $oldState = ReadingsVal($LampenName, '1','0');                  #### gibt es ein Reading Namens 1 beim Device?????
  # set initial blink
  fhem "set $LampenName on";
# blink $t times ...
for (my $i=0; $i<$t; $i++) {
   fhem "set $LampenName 1 q; set $LampenName 0 q; set $LampenName 1 q; set $LampenName 0 q";              ##### Was ist 1 und was ist q ?????
}
# restore old color
fhem "set $LampenName $oldState 0 q";


Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: Thorsten Pferdekaemper am 04 Februar 2017, 14:41:47
Hi,
könnte man das nicht auch direkt als nacheinander ausgeführte FHEM-Befehle hinbekommen? Soweit ich mich erinnern kann, blockiert das FHEM-sleep nicht, wenn es in einer Abfolge von Befehlen steht.
...aber natürlich ist es noch besser, wenn das Device das alleine kann.
Gruß,
   Thorsten
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 14:45:52
Ja kann man, aber man kann es auch flexible machen


define a7 at +*{3}00:00:02 set lamp on-for-timer 1 # Blink 3 times


Das hier bringt jede Lampe zum blinken und wird danach wieder automatisch gelöscht.
Bleibt einzig das Thema nach dem Urzustand wieder herstellen.
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: Thorsten Pferdekaemper am 04 Februar 2017, 14:51:31
Wenn das Device "toggle" kann, dann vielleicht auch so:

define a7 at +*{6}00:00:01 set lamp toggle # Blink 3 times

Wenn man davon ausgeht, dass die Verbindung zur Lampe stabil ist und kein toggle verloren geht, dann sollte es danach wieder so sein wie am Anfang.
Gruß,
   Thorsten
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 14:56:57
Passt, das geht auch
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 18:29:24
Zitat von: CoolTux am 04 Februar 2017, 14:36:47
Genau das wollte ich damit sagen.
Desweiteren hast Du das Problem das Du entweder den Code nicht überschauen kannst oder ihn nicht verstehst.
Ein Vorschlag meiner seits. Wir können versuchen eine vernünftige Lösung zu finden. Das muß nicht unbedingt so komplexer Code sein. Daher schlage ich vor Du verrätst uns erstmal was Du genau für Lampen hast. Sowohl WZ_RGB_Schrank als auch die im Garten. Darauf aufbauend kann man schauen ob es alternative Befehle gibt. HUE zum Beispiel hat einen Blinkbefehl bereits ab Werk.
Wenn sich nichts weiter findet, schauen wir wo man sich am besten wiederholdende Befehle einbaut. Hier wäre zum Beispiel ein at ganz nett, was so weit ich mich erinnern kann mit Befehlswiederholungen arbeiten kann.

Mit deiner Aussage magst du sogar Recht haben  :-\. Beschäftige mich seit ca. 3 Wochen aktive mit dem Thema Raspi + Fhem + Hausautomation.
Kenntnisse hatte ich vorher nur in Html und php. Was man sich so selber anlernt wenn man an Homepages bastelt. Deswegen auch dir Thread unter Anfängerfragen.

WZ_RGBSchrank ist ein Stripe der über LD382A angesteuert wird.

SchalterHausnr ist ein Homematic 076793 Unterputzschalter, 1fach der vorerst nur eine LED-Lampe schaltet.

Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 18:46:14
Das sollte keine Kritik sein. Ich kann verstehen das es Reizt schnell tolle Dinge zu probieren. Aber eventuell wäre es einfacher und Frustbefreiter wenn du nicht gleich die Frau heiraten willst, sondern erstmal lernst zu flirten  ;D

Wenn ich das richtig verstanden habe ist doch die Sache mit der Wohnzimmer LED nicht ganz so wichtig weil du ja ein FunkGong bekommst. Wäre also erstmal das Hauptaugenmerk auf die Gartenlampe, die Du definitiv toggeln kannst mit dem obrigen at. Magst mal probieren?
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 19:13:26
Zitat von: CoolTux am 04 Februar 2017, 18:46:14
Aber eventuell wäre es einfacher und Frustbefreiter wenn du nicht gleich die Frau heiraten willst, sondern erstmal lernst zu flirten  ;D

Das Kind ist leider schon in den Brunnen gefallen  :o

Das war so auch nicht wirklich geplant, gleich sowas kompliziertes. Bisher hat mir das automatische einschalten/ausschalten der Außenbeleuchtung via Twilight und das ausschalten des RGB-Stripe im Wohnzimmer wenn "Papa" mal wieder auf der Couch einschläft, eigentlich auch gereicht.

Das blinken des Strips nutze ich auch als Anrufsignalisierung wenn Tochterherz mal das Telefon wieder mit nach oben genommen hat und wir so einen Anruf nicht hören.

define a7 at +*{6}00:00:01 set SchalterHausnr toggle
habe ich über die Eingabezeile mal gestartet und funktioniert so auch.
Jetzt komme ich wieder in den "Anfängermodus". Meine Aufgabe jetzt, diesen Befehl mit in den Notify einzubauen anstelle von
blink ( 'WZ_RGBSchrank', 'FF0000', 10);

richtig?

Jan


Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 19:19:04
Ja genau. Aber benne das at Mal besser. Auf jeden Fall sollte Teil des Namens temp sein, für temporär. Schließlich verschwindet es ja wieder. Es gibt da noch was zu beachten aber das machen wir wenn das at geht. Wirst auch schon will merken was ich meine.
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 19:50:08
Folgender Code funktioniert nun im Notify

Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 5);
fhem ("define tempBlinkHof at +*{6}00:00:01 set SchalterHausnr toggle");
}


Auf was soll ich den achten wenn es auslöst?

Danke erstmal an dieser Stelle *Daumenhoch

Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 19:54:02
ok, ich glaube ich hab es gefunden....

Nach jedem auslösen erscheint das Fragezeichen zum abspeichern der aktuellen Config.

Richtig?

Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 20:04:10
Richtig. Eigentlich sollte das nicht passieren bei einem einmaligen at. Also wenn nur + davor steht. Aber sobald ein * mit im Spiel ist wird das at statt ins statefile in die config geschrieben und wenn es gelaufen ist wieder gelöscht. Jetzt kann man einfach nach dem define at Befehl ein sleep 5 machen und dahinter ein save config. Dann wird nach 5s die config gespeichert. Es ist ehrlich gesagt nicht sehr schön und birgt Risiken. Aber im Moment der einzige Weg der für dich auch verständlich ist.
Risiko ist halt wenn du Mal rumspielen und was baust und du machst Mist und denkst He Glück gehabt habe ja nicht gespeichert und dann kommt einer und glingelt  ;D


Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 5);
fhem ("define tempBlinkHof at +*{6}00:00:01 set SchalterHausnr toggle");
}

Hier müsste nun hinten dran der sleep und das save. Aber ich muss vorher noch mal testen wie das muss damit es nicht als Befehl mit ins at geschrieben wird. Aber kannst ja gerne mal so testen.

Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 5);
fhem ("define tempBlinkHof at +*{6}00:00:01 set SchalterHausnr toggle; sleep 6; save config");
}

Aber nicht vergessen deine Routine in der myUtils blockiert FHEM. Denke mal so 2s
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: Thorsten Pferdekaemper am 04 Februar 2017, 20:22:52
Hi,
eigentlich müsste es doch reichen ein "-temporary" nach "define" zu packen, also

define -temporary tempBlinkHof at +*{6}00:00:01 set SchalterHausnr toggle

Gruß,
   Thorsten
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 20:34:22
Zitat von: Thorsten Pferdekaemper am 04 Februar 2017, 20:22:52
Hi,
eigentlich müsste es doch reichen ein "-temporary" nach "define" zu packen, also

define -temporary tempBlinkHof at +*{6}00:00:01 set SchalterHausnr toggle

Gruß,
   Thorsten

Funktioniert!

Klasse, Vielen Dank euch beiden.

ZitatAber nicht vergessen deine Routine in der myUtils blockiert FHEM. Denke mal so 2s

Könnte ich das Testen wenn ich einen Notify mit:
Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 5);
}


und den zweiten mit:
Klingeltaster:closed {
fhem ("define -temporary tempBlinkHof at +*{6}00:00:01 set SchalterHausnr toggle");
}

setze?

Dann sollte doch der zweite Notify nicht auslösen oder?

Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 20:37:24
Zitat von: Thorsten Pferdekaemper am 04 Februar 2017, 20:22:52
Hi,
eigentlich müsste es doch reichen ein "-temporary" nach "define" zu packen, also

define -temporary tempBlinkHof at +*{6}00:00:01 set SchalterHausnr toggle

Gruß,
   Thorsten
Cool, das kannte ich noch nicht. Danke Dir
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 20:39:04
Zitat von: BuBu79 am 04 Februar 2017, 20:34:22
Funktioniert!

Klasse, Vielen Dank euch beiden.

Könnte ich das Testen wenn ich einen Notify mit:
Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 5);
}


und den zweiten mit:
Klingeltaster:closed {
fhem ("define -temporary tempBlinkHof at +*{6}00:00:01 set SchalterHausnr toggle");
}

setze?

Dann sollte doch der zweite Notify nicht auslösen oder?

Jan

Wenn kein closed kommt dann sollte er nicht auslösen. Aber ich denke mal schon das ein closed kommt, oder? Kannst auch einfach schreiben aaaaaa  ;D
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 20:54:27
Da ich keinerlei Leitungen am Eingangstor zu liegen habe, habe ich mich als Auslöser für einen Tür - Fensterkontakt von Homematic entschieden.
Den Reedsensor durch einen Taster ersetzt, so bekomme ich die Meldung open und closed.

Wenn ich den Taster drücke bekomme ich beide notify angezeigt, also beide Lampen fangen an zu blinken.

Gruß Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 20:56:30
Es ist nun also so wie du es haben wolltest? Korrekt?
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 21:12:16
Zitat von: CoolTux am 04 Februar 2017, 20:56:30
Es ist nun also so wie du es haben wolltest? Korrekt?

Ja perfekt.

Denke wenn der MP3 Funkgong da ist sollte dann das absetzen des Klingelbefehls auch klappen.

Danke euch.

Gruß Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 21:14:53
Supi. Dann viel Spaß noch einen schönen Abend.


Grüße
Leon
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 22:44:42
Ok, eine Frage hätte ich dann doch noch. :o

Ich habe jetzt festgestellt, dass wenn man den Taster zwei mal drückt, endet er im genau entgegen gesetzten Schaltzustand.
Gibt es eine Möglichkeit dieses zu verhindern, also den Notify für 5 Sek zum Beispiel, zu "blocken"?

Gruß Jan
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 04 Februar 2017, 23:08:43

define ntfy1 notify bew1 set Lampe1 on; set ntfy2 inactive; sleep 20; set ntfy2 active


Ist ein Beispiel, bitte auf Dein Notify anpassen.
Entscheidend ist das set inactive und der sleep
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: BuBu79 am 04 Februar 2017, 23:27:18
Zitat von: CoolTux am 04 Februar 2017, 23:08:43

define ntfy1 notify bew1 set Lampe1 on; set ntfy2 inactive; sleep 20; set ntfy2 active


Ist ein Beispiel, bitte auf Dein Notify anpassen.
Entscheidend ist das set inactive und der sleep

Besten Dank, funktioniert perfekt.

hier angepasster Notify:
Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 5);
fhem ("define -temporary tempBlinkHof at +*{8}00:00:01 set SchalterHausnr toggle");
fhem ("define -temporary tempKlingelPause; set notifyKlingel inactive; sleep 10; set notifyKlingel active")
}


Gruß Jan

Tante Edit:

Funktioniert aber im Logfile wird ein Fehler hinterlegt: :o

2017.02.04 23:44:49 3: define -temporary tempKlingelPause; set notifyKlingel inactive; sleep 10; set notifyKlingel active : Usage: define <name> <type> <type dependent arguments>
2017.02.04 23:44:49 3: notifyKlingel return value: Usage: define <name> <type> <type dependent arguments>


Tante Edit ein zweites Mal,

Ich Hirni hab den Notify noch mal angepasst und nun ohne Fehlermeldungen:
Klingeltaster:open {
blink ( 'WZ_RGBSchrank', 'FF0000', 5);
fhem ("define -temporary tempBlinkHof at +*{8}00:00:01 set SchalterHausnr toggle");
fhem ("set notifyKlingel inactive; sleep 10; set notifyKlingel active")
}


Manchmal lohnt es auch über die Fehlerlogs nachzudenken  ;D
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: Thorsten Pferdekaemper am 05 Februar 2017, 10:31:49
Vielleicht hätte man da auch was mit event-min-interval machen können. Das hilft dann gegen alle nervigen Dauerklingler.
Gruß,
   Thorsten
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 05 Februar 2017, 10:40:13
Stimmt. Das sollte eigentlich auch gehen. Das Attribut einfach beim Fensterkontakt Device setzen und es sollte gut sein. Manchmal kommt man auf die einfachsten Sachen nicht. Aber mal ehrlich, war ja auch schon spät  ;D
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: Thorsten Pferdekaemper am 05 Februar 2017, 10:46:12
Zitat von: CoolTux am 05 Februar 2017, 10:40:13Manchmal kommt man auf die einfachsten Sachen nicht. Aber mal ehrlich, war ja auch schon spät  ;D
Ich hatte gestern eine ähnliche Idee wie Du im Kopf, aber ich wollte ins Bett und dachte mir, Du wirst das schon machen. ;-)
...und nach einer Nacht darüber schlafen ist vieles ganz einfach.
Gruß,
    Thorsten
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 05 Februar 2017, 10:50:12
Typisch, schiebe die Arbeit ruhig den Alten zu  ;D
Aber Recht hast, vielleicht sollte man nicht immer gleich dem ersten Gedanken folgen.
Aber ich bin mir auch auch sicher wenn der TE dran bleibt am FHEM Thema, wäre er in ein paar Wochen von alleine drauf gekommen. Die Zeit bringt immer die besten Umsetzungen.
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: Thorsten Pferdekaemper am 05 Februar 2017, 11:03:07
Zitat von: CoolTux am 05 Februar 2017, 10:50:12
Typisch, schiebe die Arbeit ruhig den Alten zu  ;D
Sehr, sehr witzig. Ich konnte wahrscheinlich zumindest schon schreiben und lesen, da haben Deine Eltern noch nicht gewusst, dass es Dich geben wird.

Gruß,
   Thorsten
Titel: Antw:Hilfe bei Codeanpassung im Zusammenhang mit dem Aufbau einer Funkklingel
Beitrag von: CoolTux am 05 Februar 2017, 11:05:17
Schööön. Mir wird ganz warm ums Herz  ;D

Schönen ruhigen Sonntag gewünscht


Grüße
Leon