Hallo. Danke für die Rückmeldung!dtp hat geschrieben:Hab's gerade mit Telegram und Pushover mit nachfolgendem Skript getestet:SMA hat geschrieben: Es besteht irgendein Problem mit stopRepeat.
Wird es innerhalb der mit stopRepeat definierten Zeitspanne wiederholt, erfolgt keine Nachrichtenübermittlung. Wird es dagegen erst nach Ablauf der Zeitspanne erneut getriggert, erhalte ich die Push-Nachrichten. Wie gesagt, zwischen zwei identischen Nachrichten darf innerhalb der stopRepeat-Zeitspanne keine andere Nachricht gesendet worden sein. Andernfalls erfolgt ein erneutes Senden der Push-Nachricht.Code: Alles auswählen
! Namen der verwendeten Systemvariablen string svPushText = "CCU SV Push Text"; ! gem. zPNS-xx, obligatorisch ! Name des zentralen Push-Nachrichten-Programms string zPNP = "CCU PRG Push-Nachrichten"; ! obligatorisch ! +++++ Erzeugen der Test-Nachricht +++++ string message = "<font color=orange>Dies</font> ist eine <font color=green>gewöhnliche</font> Test-Nachricht."; ! +++++ zPNP ausführen +++++ (dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushText)).State(message); (dom.GetObject(ID_PROGRAMS).Get(zPNP)).ProgramExecute(); WriteLine("Nachricht gesendet");
Also ich habe dein Testskript nun 4x ausgeführt. Zwei mal im Abstand von etwa 5 Sekunden, das dritte mal nach etwa 15 Sekunden, das vierte mal nach 30 Sekunden.
Alle Nachrichten kamen umgehend an! Das heißt, stopRepeat wurde nicht beachtet!
In allen 3 Skripten steht stopRepeat auf 60. Im Einsatz habe ich Telegram (notwendig, wegen Fehler... Bis heute nicht weggegangen), dann kommt Prowl, dann Pushalot (fliegt wohl raus, Service eingestellt wie es scheint), dann das Setzen der Referenz.
Viele Grüße
SMA
EDIT: Auf ein Screenshot vom Telefon verzichte ich an der Stelle mal. Es kamen alle Nachrichten an
Code: Alles auswählen
Nachricht gesendet
svPushText: Gewöhnliche Testnachricht: Terassentür geöffnet!
svPushTextRef: Gewöhnliche Testnachricht: Terassentür geöffnet!
Zeitdifferenz: 279
Nachricht gesendet
svPushText: Gewöhnliche Testnachricht: Terassentür geöffnet!
svPushTextRef: Gewöhnliche Testnachricht: Terassentür geöffnet!
Zeitdifferenz: 4
Nachricht gesendet
svPushText: Gewöhnliche Testnachricht: Terassentür geöffnet!
svPushTextRef: Gewöhnliche Testnachricht: Terassentür geöffnet!
Zeitdifferenz: 12
Nachricht gesendet
svPushText: Gewöhnliche Testnachricht: Terassentür geöffnet!
svPushTextRef: Gewöhnliche Testnachricht: Terassentür geöffnet!
Zeitdifferenz: 17
Nachricht gesendet
svPushText: Gewöhnliche Testnachricht: Terassentür geöffnet!
svPushTextRef: Gewöhnliche Testnachricht: Terassentür geöffnet!
Zeitdifferenz: 31
Code: Alles auswählen
! Namen der verwendeten Systemvariablen
string svPushText = "CCU SV Push Text"; ! gem. zPNS-xx, obligatorisch
string svPushTextRef = "CCU SV Push Text Ref"; ! gem. zPNS-xx, obligatorisch
! Name des zentralen Push-Nachrichten-Programms
string zPNP = "CCU PRG Push-Nachrichten"; ! obligatorisch
! +++++ Erzeugen der Test-Nachricht +++++
string message = "<font color=orange>Dies</font> ist eine <font color=green>gewöhnliche</font> Test-Nachricht.";
! +++++ zPNP ausführen +++++
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushText)).State(message);
(dom.GetObject(ID_PROGRAMS).Get(zPNP)).ProgramExecute();
WriteLine("Nachricht gesendet");
WriteLine("svPushText: " + dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushText).Value());
WriteLine("svPushTextRef: " + dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushTextRef).Value());
WriteLine("Zeitdifferenz: " + (dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushText)).Timestamp().ToInteger() - (dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushTextRef)).Timestamp().ToInteger())