FHEM Forum

FHEM => Automatisierung => Thema gestartet von: eberlrudi am 25 Februar 2015, 23:31:01

Titel: iframe als Popup einblenden
Beitrag von: eberlrudi am 25 Februar 2015, 23:31:01
Hallo ich habe mal wieder eine Idee die ich ohne Hilfe nicht umsetzen kann :D

Ich habe meine Klingelkamera jetzt endlich erfolgreich eingebunden.

Situation:

Klingelknopf --> Videoserver MotionDetect --> http Notify an fhem--> Tablet Display für 60sec an --> Problem da iframe in einem anderen Room --> Frage im Forum :-\

Ist es denn möglich das iframe global aufpoppen zu lassen?


Vielleicht hat jemand ein ähnliches Scenario bereits verwirklicht.
Titel: Antw:iframe als Popup einblenden
Beitrag von: rudolfkoenig am 26 Februar 2015, 07:50:48
Ich habe FHEMWEB gerade leicht erweitert, um sowas einfacher machen zu koennen. Nach einem update (ab morgen!) sollte folgendes funktionieren:

Zitat
fhem> trigger WEB JS:FW_okDialog("HellO")
fhem> trigger WEB JS:location="/fhem?room=KaKu"
Titel: Antw:iframe als Popup einblenden
Beitrag von: eberlrudi am 26 Februar 2015, 18:41:24
Das ist ja super!

Ich freue mich auf Morgen. :D Danke
Titel: Antw:iframe als Popup einblenden
Beitrag von: eberlrudi am 27 Februar 2015, 18:14:31
Funktioniert einwandfrei! Vielen Dank dafür. ;)
Titel: Antw:iframe als Popup einblenden
Beitrag von: Dhokahai7 am 28 Februar 2015, 06:12:09
Du musst zusätzlich das Attribut do always setzen (siehe Commandref zu DOIF).????
Titel: Antw:iframe als Popup einblenden
Beitrag von: eberlrudi am 28 Februar 2015, 08:21:42
Ich verstehe. Es wird jedoch nor für 60sekunden in den Room und dann zurückgewechselt. Es geht schnell und zuverlässig. Mein Standard Room ist Küche. Was würde es noch bringen?

Titel: Antw:iframe als Popup einblenden
Beitrag von: eberlrudi am 05 März 2015, 20:46:38
Ich habe dazu noch eine Frage...

Meine Klingel löst dummerweise beim ausschalten der Kamera noch einmal das notify aus. Ich habe schon ein Sleep dahinter gesetzt, welches aber das Notify nicht daran hindert noch einmal zu reagieren.... Dafür brauch ich wohl einen "if" Befehl vornweg oder? Hat da jemand eine Idee???

EsKlingelt.*|cmd=trigger%20EsKlingelt ;  trigger WEB JS:location="/fhem?room=Überwachung" ; {UDP_Msg("192.168.2.6" , "wolido:displayon")} ; sleep 3 ; set androidTablet ttsSay Es hat geklingelt ; set samsungTablet ttsSay Es hat geklingelt ; sleep 39 ;  trigger WEB JS:location="/fhem?room=Küche" ; {UDP_Msg("192.168.2.6" , "wolido:displayoff")} ; sleep 60
Titel: Antw:iframe als Popup einblenden
Beitrag von: rudolfkoenig am 06 März 2015, 15:46:14
Ich habe mal die Zeile umformatiert, damit ich es einfacher lesen kann:
EsKlingelt.*|cmd=trigger%20EsKlingelt
;
trigger WEB JS:location="/fhem?room=Überwachung" ;
{UDP_Msg("192.168.2.6" , "wolido:displayon")} ;
sleep 3 ;
set androidTablet ttsSay Es hat geklingelt ;
set samsungTablet ttsSay Es hat geklingelt ;
sleep 39 ;
trigger WEB JS:location="/fhem?room=Küche" ;
{UDP_Msg("192.168.2.6" , "wolido:displayoff")} ;
sleep 60


- ich finde das Regexp auf cmd=trigger%20EsKlingelt mehr als merkwuerdig, und vermute, dass es ueberfluessig ist. Am besten konsultiert man das Event Monitor, um zu wissen, welche Events generiert werden.
- das erste ; danach ist vmtl. ueberfluessig
- das letzte "sleep 60" verursacht eine Minute Stillstand in FHEM, da danach kein Befehl kommt. Ist mindenstens fragwuerdig. Da FHEM (hoffentlich) keine Events verliert, hilft es auch nicht um das Ausloesen eines notifies zu vermeiden. Merke: FHEM ist _NICHT_ multithreaded. Ein sleep gefolgt von einem Befehl ist gleichwertig mit einem namenlosen at Definition, nur speichern kann man es nicht.
- ich kann nicht erkennen, wieso das notify erneut aufgerufen wird, dazu braucht man vermutlich ein Log mit einem hoeheren verbose.
Titel: Antw:iframe als Popup einblenden
Beitrag von: eberlrudi am 06 März 2015, 15:57:49
Es wird noch einmal ausgelöst, da die Klingelkamera beim abschalten im Videoserver ein motiondetect auslöst, welches über http notify die ganze Kette noch einmal in Gang setzt. Deshalb habe ich am Ende das sleep 60 eingesetzt. So scheint es aber nicht zu funktionieren. Die Klingelanlage schaltet die Kamera nach 60 Sekunden ab
Titel: Antw:iframe als Popup einblenden
Beitrag von: rudolfkoenig am 06 März 2015, 16:00:45
Um notify zu deaktivieren kann man "attr notify disable" bzw. "deleteattr notify disable" verwenden.
Sleep hilft nicht.
Titel: Antw:iframe als Popup einblenden
Beitrag von: eberlrudi am 08 März 2015, 18:02:45
Ich glaube ich greife den Klingelknopf irgendwie ab. Dann geht es sicher. Der Videoserver besitzt ja einen Alarm-Schaltkontakt
Titel: Antw:iframe als Popup einblenden
Beitrag von: sentinel1 am 08 März 2015, 23:57:29
 mit DOIF sollte das funktionieren,in der commandref zum Modul steht:

Zwangspause für das Ausführen eines Kommandos seit der letzten Zustandsänderung

Mit dem Attribut cmdpause <Sekunden für cmd_1>:<Sekunden für cmd_2>:... wird die Zeitspanne in Sekunden angegeben für eine Zwangspause seit der letzten Zustandsänderung. In der angegebenen Zeitspanne wird ein Kommando nicht ausgeführt, auch wenn die dazugehörige Bedingung wahr wird.
Titel: Antw:iframe als Popup einblenden
Beitrag von: eberlrudi am 29 September 2015, 10:49:55
Super.

Danke für den Tip.
Ich schaffe es jedoch nicht das ganze zu definieren. :-[

Wie könnte der Code dafür aussehen?
Titel: Antw:iframe als Popup einblenden
Beitrag von: harway2007 am 14 Juli 2016, 23:33:05
gab es noch eine Antwort auf die Frage nach dem Code ?
Titel: Antw:iframe als Popup einblenden
Beitrag von: eberlrudi am 14 Juli 2016, 23:45:48
Ich habe es mit doif leider nie zum laufen bekommen. Im Moment lebe ich mangels Zeit noch mit diesem
Problem.


Gesendet von iPhone mit Tapatalk
Titel: Antw:iframe als Popup einblenden
Beitrag von: harway2007 am 14 Juli 2016, 23:53:16
cmdpause hab ich sinnvoll bei dem Klingelsensor Notify eingesetzt mit 30 Sekunden ..
attr  Klingel_push cmdpause 30
seitdem kommt nur eine Meldung wenn jemand an der Tür klingelt ...
ich bleib da mal dran und melde mich ...
Gruss Harway