Howto - zentrales Push-Nachrichten-Programm zPNP

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von dtp » 18.01.2019, 07:48

Nee, das geht nicht und wäre wohl auch nicht zielführend, da mit zu vielen Problemen verbunden. Außerdem würde dann das nachfolgende Skript zur Unterdrückung identischer Push-Nachrichten nicht mehr funktionieren.

Rufe einfach für jede einzelne Nachricht, die du versenden möchtest, das zPNP mit einem separaten Skript auf. Das kann durchaus auch in einem sehr kurzen Zeitabstand erfolgen. Aber besser nicht mehrmals das zPNP im selben Skript aufrufen, sondern dann die Informationen sammeln und in einem einzigen String übergeben.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

xantalos
Beiträge: 14
Registriert: 22.10.2017, 19:25
System: Alternative CCU (auf Basis OCCU)
Wohnort: Warstein

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von xantalos » 22.02.2019, 12:28

Habe mein System neugemacht.
Seit dem kann ich das Script für Meldung Fenster/Türen schließen nicht mehr nutzen.
Es versendet mir keine nachrichten. log aus Cuxd sieht so aus.

Code: Alles auswählen

Feb 22 12:15:36 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:16:01 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:16:21 CCU3 local0.err ReGaHss: Error: IseESP::ExecForEach: invalid expression used in foreach() [iseESPexec.cpp:515]
Feb 22 12:16:21 CCU3 local0.err ReGaHss: Error: IseESP::ScriptRuntimeError: ! Meldung Fenster/Türen schließen ! Version 2.4, Autor: dtp  ! Gewerkname für die Türen- und Fenster-Sensoren string trade = "Verschluss";  ! Listen geöffneter und gekippter Fenster und Türen, die nicht berücksichtigt werden sollen string exListTilt = "UG Keller Fenster"; ! gekippte Fenster und Türen (trennen mit "\t") string exListOpen = ""; ! geöffnete Fenster und Türen (trennen mit "\t")  ! Namen der verwendeten Systemvariablen
string svPushText = "CCU SV Push Text"; ! gem. zPNS-xx, obligatorisch string svPushPrio = "CCU SV Push Prio"; ! gem. zPNS-xx, obligatorisch string svPushoverSound = "CCU SV Pushover Sound"; ! gem. zPNS-Po, optional  ! Name des zentralen Push-Nachrichten-Programms string zPNP = "CCU PRG Push-Nachrichten"; ! obligatorisch  ! ##################################################################### ! ##### ab hier bitte keine weiteren Einstellungen mehr vornehmen ##### ! #########################################
############
Feb 22 12:16:26 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:16:51 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:17:16 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:17:41 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:18:06 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:18:31 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:18:56 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:19:21 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:19:46 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:20:11 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:20:36 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:21:01 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:21:08 CCU3 local0.err ReGaHss: Error: IseESP::ExecForEach: invalid expression used in foreach() [iseESPexec.cpp:515]
Feb 22 12:21:08 CCU3 local0.err ReGaHss: Error: IseESP::ScriptRuntimeError: ! Meldung Fenster/Türen schließen ! Version 2.4, Autor: dtp  ! Gewerkname für die Türen- und Fenster-Sensoren string trade = "Verschluss";  ! Listen geöffneter und gekippter Fenster und Türen, die nicht berücksichtigt werden sollen string exListTilt = "UG Keller Fenster"; ! gekippte Fenster und Türen (trennen mit "\t") string exListOpen = ""; ! geöffnete Fenster und Türen (trennen mit "\t")  ! Namen der verwendeten Systemvariablen
string svPushText = "CCU SV Push Text"; ! gem. zPNS-xx, obligatorisch string svPushPrio = "CCU SV Push Prio"; ! gem. zPNS-xx, obligatorisch string svPushoverSound = "CCU SV Pushover Sound"; ! gem. zPNS-Po, optional  ! Name des zentralen Push-Nachrichten-Programms string zPNP = "CCU PRG Push-Nachrichten"; ! obligatorisch  ! ##################################################################### ! ##### ab hier bitte keine weiteren Einstellungen mehr vornehmen ##### ! #########################################
############
Feb 22 12:21:26 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:21:51 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:22:16 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:22:41 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:23:06 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:23:31 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:23:56 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:24:21 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:24:46 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:25:11 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:25:36 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:26:01 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:26:26 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:26:51 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
Feb 22 12:27:16 CCU3 local0.err ReGaHss: Error: IseXmlRpc::ExistsDeviceObject: pointer is null [iseXmlRpc.cpp:4510]
auch ein neues anlegen hat leider nicht funktioniert.....
Zuletzt geändert von alchy am 22.02.2019, 13:00, insgesamt 1-mal geändert.
Grund: Code in Codetags posten

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von dtp » 22.02.2019, 12:35

Ja, da gab's ein Problem mit der foreach-Schleife. Hatte das zwischenzeitlich gefixt. Versuch's mal bitte mit der aktuellen Version 2.5.1. Da habe ich aber nun noch eingebaut, dass man Schlüsselworte für Sensoren mit hoher Priorität setzen kann. Also, wenn du z.B. einen Alarm mit Priorität 2 bekommen möchtest, wenn eines deiner Fenster im Erdgeschoss oder Obergeschoss beim Abschließen offen steht, dann kannst du hier einfach "Erdgeschoss\tObergeschoss" (sofern deine Fenstersensoren das im Namen tragen) eingeben. Und wenn du möchtest, dass ein Alarm kommen soll, wenn ein Fenster im Wohnzimmer oder in der Küche offen steht, dann gibst du dort "Wohnzimmer\tKüche" ein. Würde mich über eine Rückmeldung freuen, ob's funktioniert. Habe das Skript erst gestern so geändert.
Zuletzt geändert von dtp am 24.02.2019, 10:32, insgesamt 1-mal geändert.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

xantalos
Beiträge: 14
Registriert: 22.10.2017, 19:25
System: Alternative CCU (auf Basis OCCU)
Wohnort: Warstein

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von xantalos » 22.02.2019, 13:30

Probiert geht auch nicht.

Code: Alles auswählen

Feb 22 13:30:02 CCU3 local0.err ReGaHss: Error: IseESP::ExecForEach: invalid expression used in foreach() [iseESPexec.cpp:515]
Feb 22 13:30:02 CCU3 local0.err ReGaHss: Error: IseESP::ScriptRuntimeError: ! Meldung Fenster/Türen schließen ! Version 2.5, Autor: dtp  ! Gewerkname für die Türen- und Fenster-Sensoren string trade = "Verschluss";  ! Listen geöffneter und gekippter Fenster und Türen, die nicht berücksichtigt werden sollen (trennen mit "\t") string exTiltList = ""; ! gekippte Fenster und Türen string exOpenList = ""; ! geöffnete Fenster und Türen  ! Schlüsselbegriffe von Fenstern und Türen mit Priorität 2 (trennen mit "\t
) string highPrioKeywordsList = "";  ! Namen der verwendeten Systemvariablen string svPushText = "CCU SV Push Text"; ! gem. zPNS-xx, obligatorisch string svPushPrio = "CCU SV Push Prio"; ! gem. zPNS-xx, obligatorisch string svPushoverSound = "CCU SV Pushover Sound"; ! gem. zPNS-Po, optional  ! Name des zentralen Push-Nachrichten-Programms string zPNP = "CCU PRG Push-Nachrichten"; ! obligatorisch  ! ##################################################################### ! ##### ab hier bitte keine weiteren E
nstellungen
Zuletzt geändert von alchy am 22.02.2019, 13:37, insgesamt 1-mal geändert.
Grund: Code in Codetags posten

duffy6
Beiträge: 184
Registriert: 14.03.2017, 10:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 1 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von duffy6 » 23.02.2019, 21:38

Habe gerade das Skript ausprobiert und bei mir geht es auch nicht.

Mit diesem Schnipsel konnt eich schonmal eine Nachricht aus Homematic via Telegram schicken:

Code: Alles auswählen

string message = "Dies ist ein Test 3456";
string chatid = "123456"; ! chat_id des Empfängers
string botAPI = 123456:99999999999999"; ! API des eingerichteten Bots 
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("extra/curl -s -k https://api.telegram.org/bot"#botAPI#"/sendMessage -d text='"#message#"' -d chat_id="#chatid);
Die Systemavriablen für zPNP wurden angelegt:
Unbenannt.JPG
Wo fange ich mit der Fehlersuche denn am besten an?

Gruß
duffy6
——-
Raspberrymatic auf einem Raspi 3B, Funkmodul HM-MOD-RPI-PCB

Benutzeravatar
koppenho
Beiträge: 227
Registriert: 27.12.2013, 09:12
Wohnort: Bad Neustadt, Deutschland
Hat sich bedankt: 2 Mal
Danksagung erhalten: 2 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von koppenho » 23.02.2019, 22:39

Eventuell liegt es am String
  • extra/curl
Versuch mal stattdessen
  1. /usr/local/addons/cuxd/curl
  2. /usr/local/addons/cuxd/extra/curl
  3. /usr/bin/curl
wobei die letzte Variante vermutlich nur auf einer RaspberryMatic funktioniert.
1 und 2 sind abhängig von Deiner CUxD-Version. Welche benutzt Du?
--
Andreas
--------------------------------------------
Hauptwohnung: RaspberryMatic mit 320 Kanäle in 110 Geräten und 140 CUxD-Kanäle in 33 CUxD-Geräten
Zweitwohnung: CCU2 mit 18 Kanäle in 8 Geräten und 14 CUxD-Kanäle in 4 CUxD-Geräten
--------------------------------------------

duffy6
Beiträge: 184
Registriert: 14.03.2017, 10:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 1 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von duffy6 » 24.02.2019, 00:31

Ich habe die CUxD Version 2.2.0

Die genannten 3 Varianten werde ich ausprobieren, sobald ich wieder daheim bin!

Danke für die Tipps!

Gruß
Duffy6
——-
Raspberrymatic auf einem Raspi 3B, Funkmodul HM-MOD-RPI-PCB

duffy6
Beiträge: 184
Registriert: 14.03.2017, 10:29
Hat sich bedankt: 29 Mal
Danksagung erhalten: 1 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von duffy6 » 24.02.2019, 00:57

Die Ordner von Variante 1 und 2 sind leer bei mir - d.h. Da gibt es gar keine Datei „curl“
Ich habe Variante 3 ausprobiert und es hat leider auch nicht funktioniert :-(

Gruß duffy6
——-
Raspberrymatic auf einem Raspi 3B, Funkmodul HM-MOD-RPI-PCB

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von dtp » 24.02.2019, 10:25

duffy6 hat geschrieben:
23.02.2019, 21:38
Habe gerade das Skript ausprobiert und bei mir geht es auch nicht.
Was geht "auch" nicht? Das zPNP samt zugehörigem zPNS-xx oder das Skript zum Melden offener und gekippter Fenster?

Bitte stets klare und unmissverständliche Fragen stellen. Ich habe weder Zeit noch Lust, im Nebel zu stochern.

Da es aber nun wieder um das zPNP und das zPNS-Tg zu gehen scheint, schau dir mal bitte den Inhalt deiner Systemvarialben an:
2019-02-24_10h27_17.png
2019-02-24_10h27_17.png (17.96 KiB) 1727 mal betrachtet
Insbesondere "CCU SV Push Dienst" muss bei dir auf "alle" oder "Telegram" stehen. Es ist gut möglich, dass die Systemvarialbe noch auf "aus" steht.

Bis dann,

Thorsten
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

xantalos
Beiträge: 14
Registriert: 22.10.2017, 19:25
System: Alternative CCU (auf Basis OCCU)
Wohnort: Warstein

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V3.1

Beitrag von xantalos » 24.02.2019, 10:35

Hallo Thorsten hast du für mich noch irgendeinen Lösungsansatz?

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“