Howto - zentrales Push-Nachrichten-Programm zPNP

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

Moderator: Co-Administratoren

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von alchy » 17.07.2017, 19:22

Einstein77 hat geschrieben: Leider auch keine Ausgabe.
Uralte Geschichte, leider immer noch aktuell.
Schau deine Gewerkeliste nach und bearbeite sie, wie >> H I E R << beschrieben.

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

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

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V2.0

Beitrag von dtp » 30.07.2017, 18:36

So,

die Version 2.0 der zPNS-xx ist fertig. Wer mag, kann sie ja mal testen.

Damit werden die benötigten Systemvariablen, sofern noch nicht vorhanden, nun automatisch erstellt. Ansonsten ist die Funktionalität identisch zur Version 1.6.

Die Vorgehensweise zur Erzeugung der Systemvariablen ist folgende.

Man erzeuge das zPNP wie im Ausgangsposting beschrieben bzw. ersetze darin die bisherigen Skripte durch die jeweilige Version 2.0. Zudem ist auch das Skript "SetPushTextRef" durch die Version 1.1 zu ersetzen.
zPNP.png
In jedem zPNS-xx 2.0 (Download als txt-Datei siehe nachfolgend) dann den gesamten Block mit den User-Daten

Code: Alles auswählen

! +++++ User-Daten +++++
! In den nachfolgenden Listen werden die User-Daten durch "xx|" eingeleitet und durch EINEN Leerschritt voneinander getrennt. 
string HMinfoList = "01|"; ! API-Schlüssel (Bot-Token) für Info-Meldungen. Beispiel: "01|xxxxKey1xxxx 02|xxKey2xx"
string HMwarnungList = ""; ! optionale API-Schlüssel (Bot-Token) für Warnmeldungen
string HMalarmList = ""; ! optionale API-Schlüssel (Bot-Token) für Alarmmeldungen
string chatIdList = "01|"; ! Chat-IDs der User. Beispiel: "01|xxxxxxxxx 02|xxxxxxxxx"
string prioMinList = "01|-2"; ! Prioritäten, ab der die User Nachrichten erhalten sollen. Beispiel: "01|-2 02|0"
1:1 aus dem bisher verwendeten zPNS-xx 1.6 per Copy & Paste übernehmen. Wer noch eine Version vor 1.6 verwendet, muss den Block neu mit den Keys füllen.

Im neuen Systemvariablen-Block jedes zPNS-xx 2.0

Code: Alles auswählen

! +++++ Namen der zwingend benötigten Systemvariablen +++++
string svPushText = "CCU SV Push Text"; ! Text der aktuell zu übertragenden Push-Nachricht
string svPushTextRef = "CCU SV Push Text Ref"; ! Text der vorherigen Push-Nachricht als Referenz

! +++++ Namen der optionalen Systemvariablen (auf "" setzen, wenn nicht benötigt) +++++
string svPushPrio = "CCU SV Push Prio"; ! Prioritäten der Push-Nachrichten (-2,-1,0,1,2), default: 0
string svPushService = "CCU SV Push Dienst"; ! Push-Dienste ("aus;alle;..."), default: alle
bei Bedarf die Namen für die obligatorischen und optionalen Systemvariablen den eigenen Vorlieben entsprechend ändern. Sie können aber auch so beibehalten werden. Jedes zPNS-xx prüft selbständig, ob die Systemvariablen bereits existieren und legt sie nur neu an, wenn dies nicht der Fall ist. Falls ihr einen neuen Namen vergeben habt, solltet ihr die nicht mehr verwendeten Systemvariablen manuell löschen.

Schließlich noch die Version 1.1 des SetPushTextRef-Skripts an das Ende der zPNS-xx in das zPNP einfügen (siehe obigen Screenshot).

Ganz wichtig ist, dass für svPushText, svPushTextRef, svPushPrio und svPushService überall dieselben Namen eingetragen werden!

Damit die Systemvariablen nun erzeugt werden, müsst ihr das zPNP einmal per Klick auf den Start-Button unter "Status und Bedienung | Programme" ausführen.
zPNP_ausführen.png
Danach sollten die Systemvariablen in der Systemvariablen-Liste erstellt worden sein. Eine kleine Besonderheit ist die Systemvariable "CCU SV Push Dienst". Diese ist als Werteliste definiert und wird automatisch mit den Namen der Pushdienste in der Reihenfolge der zPNS-xx gemäß zPNP gefüllt, wobei die beiden ersten Einträge für "aus" und "alle" reserviert sind. Es spielt also keine Rolle, wie ihr die zPNS-xx sortiert. Selbst später kann die Sortierung geändert werden, ohne dass es eine Einschränkung in der Funktionalität gibt. Das fangen die zPNS-xx ab.

Viel Spaß beim Testen. Bei mir funktioniert soweit alles unter der Firmware 2.29.18 "Community". Würde mich über Rückmeldungen freuen, bevor ich die 2.0 in das Ausgangsposting einfüge.

Gruß,

Thorsten
Zuletzt geändert von dtp am 04.08.2017, 17:58, 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.

MartinBr
Beiträge: 393
Registriert: 25.01.2017, 10:51
Wohnort: Bei Berlin
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von MartinBr » 01.08.2017, 13:56

Hallo dtp,

funktioniert super gut. Gefühlt schneller.

Danke für die Script, super Arbeit.

MartinBr
RaspberryMatic-3.59.6 auf Tinkerboard S, CUxD 2.6, XML-1.20, ioBroker (HM,HMIP, Zigbee, Zwave und Shelly) und Alexa in einer VM unter Proxmox, VitoComfort 200

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

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von dtp » 01.08.2017, 22:20

Danke für die Rückmeldung. Der "gefühlte" Geschwindigkeitszuwachs dürfte allerdings nichts mit den Skripten zu tun haben, da ich in die Richtung eigentlich nichts optimiert hatte.

Übrigens wird es demnächst auch eine neue Version meines Servicemeldungen-Skripts geben. Die größte Änderung wird sein, dass zukünftig nur noch eine einzige Fassung für alle Push-Dienste existieren wird, die dann in Abhängigkeit vom gewählten Push-Dienst selbständig die korrekten Tags für farbigen oder fett geschriebenen Text verwendet. So muss man sich nicht mehr für die "richtige" Version entscheiden.

Auch meine Zählerskripte habe ich etwas überarbeitet und an das neue zPNP angepasst. Demnächst mehr dazu.

Gruß,

Thorsten
Zuletzt geändert von dtp am 01.08.2017, 22:24, 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.

PC-Oldie
Beiträge: 113
Registriert: 04.01.2015, 13:51
Hat sich bedankt: 1 Mal
Danksagung erhalten: 5 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von PC-Oldie » 01.08.2017, 22:21

Hallo Thorsten,

meine Testprogramme konnten keinen Fehler feststellen :D Alles funktioniert wie es soll, auch nach meiner Anpassung auf system.exec :wink:
Hier noch eine Idee falls du sie für sinnvoll erachtest. Wie wäre es mit einer Booleschen Variable die steuert, ob man CUxD oder system.exec benutzen will. Nicht jeder hat CUxD installiert :idea:

Vielen Dank.

Gruß
Hans

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

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von dtp » 01.08.2017, 22:28

Hallo Hans,

auch Dir vielen Dank für die Rückmeldung. Über Deinen Vorschlag werde ich mal nachdenken. Eigentlich bin ich so super zufrieden mit Uwes CUxD, dass ich es wirklich nur jedem empfehlen kann. In all den Jahren hatte ich noch nie auch nur ein einziges Problem mit dem Deamon. Nun hat sich zwar die Situation bzgl. des system.Exec-Befehls deutlich entspannt, aber ich würde trotzdem jedem empfehlen, CUxD zu verwenden. Nicht zuletzt auch wegen der tollen Timer-Funktion.

Gruß,

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.

PC-Oldie
Beiträge: 113
Registriert: 04.01.2015, 13:51
Hat sich bedankt: 1 Mal
Danksagung erhalten: 5 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von PC-Oldie » 01.08.2017, 23:09

Hallo Thorsten,

auch aus meiner Sicht spricht nichts gegen CUxD. Ich hatte früher damit einige Timer gesetzt. Da aber nur noch dein Script und einige wenige Scripte, die die Verbindung zum IP-Symcon Server checken, ist CUxD schlichtweg obsolet :D Und die Timer und Ereignisverwaltung bei IPS überbieten die Möglichkeiten der CCU um Längen. Dies nur zur Erläuterung.

Gruß
Hans

MartinBr
Beiträge: 393
Registriert: 25.01.2017, 10:51
Wohnort: Bei Berlin
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von MartinBr » 02.08.2017, 11:09

Hallo Thorsten,

eine Frage zu deinen Zählerscripten (ich weiß, falsches Forum :lol: ):

Da ich eine Wärmepumpe betreibe, habe ich zwei Stromzähler. Ich überlege gerade, wie die Zähler trenne (z.B. Wärme-Strom und Normal-Strom).

Hast du da eine Idee?

Gruß
Martin
RaspberryMatic-3.59.6 auf Tinkerboard S, CUxD 2.6, XML-1.20, ioBroker (HM,HMIP, Zigbee, Zwave und Shelly) und Alexa in einer VM unter Proxmox, VitoComfort 200

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

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von dtp » 02.08.2017, 11:31

Hallo Martin,

habe die Zählerskripte gerade in der "Mache". Sie werden zukünftig auch in der Lage sein, die Systemvariablen selbständig anzulegen. Du kannst dann einfach einen anderen Namen für die Systemvariablen Deiner beiden Zähler vergeben und in das jeweilig Zählerskript die Seriennummer des Sensors eintragen. Beide Skripte kannst Du dann in einem gemeinsamen Programm mit z.B. 2 Sekunden Abstand triggern. Ich mache ja im Grunde genommen nichts anderes mit meinem Gas- und meinem Wasserzähler.

Ich werde heute Abend mal die überarbeiteten Versionen posten. Wenn Du magst, kannst Du sie gerne testen.

Gruß,

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.

MartinBr
Beiträge: 393
Registriert: 25.01.2017, 10:51
Wohnort: Bei Berlin
Hat sich bedankt: 3 Mal
Danksagung erhalten: 8 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V1.6

Beitrag von MartinBr » 02.08.2017, 12:23

Hallo Thorsten,

super Sache. Ich bin leider aktuell auf Dienstreise, es wird daher noch ein bisschen dauern. Kleinigkeiten mache ich Remote über meine VPN, aber da gehe ich aktuell nicht dran.

Bin aber sehr daran interessiert.

Danke im Voraus.

Gruß
Martin
RaspberryMatic-3.59.6 auf Tinkerboard S, CUxD 2.6, XML-1.20, ioBroker (HM,HMIP, Zigbee, Zwave und Shelly) und Alexa in einer VM unter Proxmox, VitoComfort 200

Antworten

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