IPS-View: Android Pop-Up lässt sich nicht schliessen

N’abend Zusammen,

um ein Kamerabild (bei Türklingel) anzuzeigen, ahbe ich ein Popup mit dem Bildinhalt erstell.

Das Popup öffne und schließe ich über die Fernsteuerung der View:
Zur Aktivierung schreibe ich in die „PopUP“-Variable den Namen, zum schliessen (per Button aus dem PopUp und per Script) schreibt das Script die aktuellen Uhrzeit im Unix-Format in die Variable, damit geht das Fenster wieder zu. Habe festgestellt, daß es nicht reicht, die Variable zu leeren: Diese muss sich ändern, damit der Wert übernommen wird, sobald dort kein plausibler PopUp-Name mehr steht geht es zu.

Dies wollte ich jetzt auf ein Android Tablet (Telekom Pulse) „portieren“, war leider nur teilweise von Erfolg gekrönt:
PopUp öffnen geht remote, nur ich krieg das sch… Ding nicht remote zu. Egal was ich in die Variable schreibe?

Habe schon die Suche bemüht, sollte ich die Lösung übersehen haben übt bitte Nachsicht :rolleyes:

Viele Grüße aus OBC

kea

PS Kennt jemand ein (Android-) Table mit „Ladeständer“? So das man es bei Bedarf einfach rausnehmen kann, ohne das Ladekabel abzurupfen.

Um ein Popup wieder zu entfernen musst Du einen Leerstring (String ohne Inhalt) in die Variable schreiben.

Hallo Andreas,

Dank für die Rückmeldung.

Zuerst habe ich es auch mit einem leerem String versucht, erfolgos.
Hier kommt vermutlich zum tragen, daß IPS eine Variable, die nicht auf einen anderen Wert geändert wird, nicht beachtet.
Zuerst hat mein Script auch einen leeren String gesetzt, dies hat das Fenster aber nur geschlossen, wenn vorher ein anderer Wert gestanden hatte.

Wenn ich das PopUp über ein Script öffne ist alles ok. Es gibt für die Funktion „SetPopUp“ einen Start-Wert, der auf „“ zurückgesetzt werden kann. Starte ich das PopUp auf dem Klient per „Taste“, ändert sich der Wert „SetPopUp“ nicht, somit wird eine Änderung von „“ auf „“ nicht ausgewertet.

Bei den Windows-Klients „lösche“ ich das PopUP erfolgreich so:

SetValue(56188 /*[2. IPS View\21. Terminal "TerminalEG", Win10 (1600x900)\IPSV_set_PopUp]*/,time());

Android mag es nicht nicht und will den Wert „“ haben, habe es daher so gelöst (nicht schön, funktioniert aber erstmal):

SetValue(34702 /*[2. IPS View\22. Terminal "TabWZ", Android Tablet (DT Pulse, 1280x800 8")\IPSV_set_PopUp]*/,time());
IPS_Sleep (1000);
SetValueString(34702 /*[2. IPS View\22. Terminal "TabWZ", Android Tablet (DT Pulse, 1280x800 8")\IPSV_set_PopUp]*/,"");

Viele Grüße

kea

Moin kea,

hier noch der Hinweis, dass auch beim Setzen der Variablen zum Client und zum Server z. B. für Inline Pages nach meinen Feststellungen auch häufig Wechsel auf „“, dann sleep(1) entspricht IPS_Sleep (1000) und dann erst die Angabe der Seite erfolgen muss, die man Senden möchte. Am Anfang habe ich mich ohne „“ und ohne sleep immer gewundert, warum die Inline Page nicht aufgerufen wurde (IOS und Win) :wink:

Gruß
Hans