Hallo,
ich habe nun die ziemlich coole Möglichkeit gefunden, automatisch ein Popup bei einem Ereignis zu zeigen. Da das auf meinem Samsung TV nicht funktioniert, ist es eine gute Alternative.
<div data-type="popup" data-device="tahoma_6684481" data-get="STATE" data-get-on="personInside" data-get-off="noPersonInside" data-height="220px" data-width="480px">
<div class="dialog bg-red">
<br><br><br>
<div data-type="label" class="bigger thin top-narrow black blink">Bewegung</div>
<div data-type="link" class="round top-space-3x left-space-3x bg-black"
data-width="130" data-height="40"
data-color="white"
onclick="$('.dialog-close').trigger('click');">OK</div>
</div>
</div>
Gibt es nun auch die Möglichkeit, den Dialog nach x Sekunden automatisch zu schließen? Sonst steht der Dialog solange da, bis einer OK drückt oder data-get-off reinkommt. Bei den Tahoma Bewegungsmeldern kommt das Event "keine Bewegung" leider erst nach 3 Minuten.
Gibt es außerdem die Möglichkeit, den Dialog nur im Zeitraum x zu zeigen, also direkt in der HTML außerhalb FHEM?
Ich mache (wie auch andere hier) das Öffnen und Schliessen des Popup von einem dummy (z.B. ShowDetailedTraffic) abhängig. Das setze ich durch ein notify, welches durch das auslösende Reading getriggert wird, auf 1.
In dem notify starte ich auch ein einmaliges at. Dieses setzt den dummy dann nach gewünschter Zeit wieder auf 0.
Gruß,
Mario
Hast Du ev. ein kurzes Beispiel für mich?
Anbei ein einfaches Beipiel:
Das Device KlingelInput (dummy) triggert über das notify KlingelInputNtf die Ausführung der PERL-Methode ShowDoorPopup.
Zusätzliche Attribute (room etc.) habe ich weggelassen.
Schönes WE,
Mario
1. HTML:
<!-- CAMERA-POPUP -->
<div class="top-space">
<div data-type="popup" data-device="ShowFrontDoorSnapshotPopup" data-get-on="[1]\d*" data-get-off="[0]\d*" data-height="600px" data-width="1000px" class="centered">
<div></div>
<div class="dialog">
<header>Besucher an der Haustür</header>
<div data-type="image"
data-size="95%"
data-url="./snapshots/UpCam1/UpCam1_snapshot.jpg"
class="nocache"
data-refresh="10"
onclick="$('.dialog-close').trigger('click');">
</div>
</div>
</div>
</div>
2. dummy-Device:
define ShowFrontDoorSnapshotPopup dummy
attr ShowFrontDoorSnapshotPopup comment 0: close snapshot popup window
attr ShowFrontDoorSnapshotPopup devStateIcon 1:general_an@green:0 0:general_aus:1
attr ShowFrontDoorSnapshotPopup setList state:0,1
attr ShowFrontDoorSnapshotPopup webCmd state
3. notify in einer .CFG:
#Take snapshot, show it in FTUI, store it externally and send an email.
# Test : {ShowDoorPopup();;}
define KlingelInputNtf notify KlingelInput:on {\
ShowDoorPopup();;\
fhem("set FritzBox ring 9 10");;\
}
4. 99_myUtils.pm:
Methode welche vom notify gerufen wird
sub ShowDoorPopup()
{
# AMAD:
fhem("set InfoPanel screen on");
# set dummy on order to show popup in FTUI
fhem("set ShowFrontDoorSnapshotPopup 1");
# reset flag and close popup window in a minute.
fhem("defmod CloseVisitorAtFrontDoorPopupAt at +00:01:00 set ShowFrontDoorSnapshotPopup 0");
Log3 "ShowDoorPopup", 1, "Showing snapshot in FTUI popup.";
return;
}
Vielen Dank, das Beispiel bringt mich ja mal auf neue Ideen. Ok, brauche eine Funk-Fähige Klingel, eine Kamera an der Haustür ... Wie soll ich das meiner Frau verklickern? :)
Habe es so hinbekommen, für die Nachwelt.:
Im FHM. Name ist blöd gewählt, ich weiß.
define BewegungEG dummy
attr BewegungEG room _Dummy
define Bewegung_EG notify tahoma_12429736:OccupancyState:.personInside set BewegungEG on ;; defmod reset_BewegungEG at +00:00:10 set BewegungEG off
attr Bewegung_EG room _WennDann
Im FTUI:
<!-- Hinweis: Bewegung OG -->
<div data-type="popup" data-device="BewegungOG" data-get="STATE" data-get-on="on" data-get-off="off" data-height="220px" data-width="480px">
<div class="dialog bg-red">
<br><br><br>
<div data-type="label" class="bigger thin top-narrow black blink">Bewegung OG</div>
<div data-type="link" class="round top-space-3x left-space-3x bg-black"
data-width="130" data-height="40"
data-color="white"
onclick="$('.dialog-close').trigger('click');">OK</div>
</div>
</div>
<!-- Ende Hinweis -->
Was mir im FTUI aufgefallen ist: Man kann das POPUP nicht in <LI>'s einfügen, die über ein Data-Template gefüllt werden. Schade, sonst hätte ich den Code FTUI weit über das Menü-Panel eingebaut.
es gibt das Attribut data-return-time im popup-Widget......