Howto - zentrales Push-Nachrichten-Programm zPNP

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

Moderator: Co-Administratoren

dtp
Beiträge: 10657
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) V4.4

Beitrag von dtp » 31.01.2021, 16:55

Hallo,

zum Testen hier ein paar neue Versionen der zPNS-xx

Ich habe dort noch mal das Senden von mehreren Teilnachrichten überarbeitet. Es gibt da nun die folgenden lokalen Variablen im zPNS-Po, -Tg und -Ps:

Code: Alles auswählen

! +++++ Nachrichten auf mehrere Teilnachrichten aufteilen +++++
integer msgLength = 950; ! Länge der Teilnachrichten in Zeichen, default: 950
integer msgInterval = 2; ! Dauer zwischen zwei aufainenderfolgenden Nachrichten in Sekunden, default: 2
integer maxNumMsgs = 10; ! Maximale Anzahl aufeinander folgender Nachrichten, default: 10
boolean msgListInvert = false; ! Teilnachrichten invertieren (ja: true, nein: false)
Mit "msgLength" kann man die Länge der Teilnachrichten setzen. Der Minimalwert ist 50 Zeichen. Folgende Standardwerte sollten verwendet werden:

Pushover und Telegram: 950
Pushsafer: 4950

Mit "msgInterval" legt man den Sendeabstand in Sekunden fest. Hier habe ich einen Standardwert von 2 Sekunden definiert.

"maxNumMsgs" gibt die Anzahl der maximal nacheinander übertragenen Teilnachrichten an. Ist die Gesamtnachricht länger als die Summer aller Teilnachrichten, wird die letzte Teilnachricht einfach mit dem Hinweis ABBRUCH am Ende agebrochen.

Mit "msgListInvert" kann man die Reihenfolge der Teilnachrichten umdrehen. Dies ist gerade bei Pushover sinnvoll, da die App neue Nachrichten immer an oberster Stelle platziert. Bei Telegram und Pushsafer sollte man msgListInvert auf false setzen.

Auch mit CallMeBot ist nun ein Senden mehrerer aufeinander folgender Anrufe möglich. Die Paramter lauten hier:

Code: Alles auswählen

! +++++ Nachrichten auf mehrere Aunrufe aufteilen +++++
integer msgLength = 256; ! Länge der Teilnachrichten, default: 256
integer consInterval = 65; ! Dauer zwischen zwei aufeinanderfolgenden Anrufen in Sekunden, default: 65
integer maxNumCalls = 5; ! Maximale Anzahl aufeinander folgender Anrufe, default: 5
boolean msgListInvert = false; ! Reihenfolge der Teilnachrichten invertieren (ja: true, nein: false)
"msgLength" sollte 256 Zeichen nicht überschreiten, da das der Maximalwert bei CallMeBot ist. Zudem sollten Anrufe mit einem Abstand von mindestens 65 Sekunden gesendet werden, weil auch dies die kürzestmögliche Abfolge bei CallMeBot ist. Die Anzahl der aufeinanderfolgenden Anrufe habe ich standardmäßig auf 5 begrenzt. Hier kann man aber auch mal mit höheren Werten experimentieren.

Ihr könnt die Skripte am einfachsten aktualisieren, indem ihr alles nach dem Block "! +++++ User-Daten +++++" per Copy & Paste austauscht. Dann aber bitte auch an ggf. abweichend vergebene Systemvariablen-Namen denken.
Zuletzt geändert von dtp am 20.02.2021, 17:17, insgesamt 3-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.

dtp
Beiträge: 10657
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) V4.4

Beitrag von dtp » 10.02.2021, 08:18

Hallo,

beim zPNS-Po, -Ps und -Tg gab's noch eine kleine Änderung.

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) V4.4

Beitrag von MartinBr » 10.02.2021, 08:38

Hallo Thorsten, sind die Änderungen im vorlaufenden Beitrag enthalten?

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: 10657
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) V4.4

Beitrag von dtp » 10.02.2021, 13:57

Jepp. Hab die hsc-Dateien ausgetauscht. Es gab nur eine kleine Änderung.
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.

Shuo
Beiträge: 215
Registriert: 18.09.2014, 23:19
Danksagung erhalten: 6 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V4.4

Beitrag von Shuo » 10.02.2021, 18:40

Hi Thorsten, im Pussafer script scheint noch ein Fehler zu sein.

bekomme die Fehlermeldung:

Code: Alles auswählen

Error 1 at row 237 col 13 near ^(msgListInvert){messagesList = "Teilnachricht "#cnt#" von cnt.\n"#messageTrc#"\t

dtp
Beiträge: 10657
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) V4.4

Beitrag von dtp » 11.02.2021, 07:22

Sollte eigentlich nicht sein. Hast du auch die lokale Variable "msgListInvert" bei dir oben im Skript?
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.

Shuo
Beiträge: 215
Registriert: 18.09.2014, 23:19
Danksagung erhalten: 6 Mal

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V4.4

Beitrag von Shuo » 11.02.2021, 09:19

Ja, ich habe den kompletten Inhalt kopiert und wenn ich dann auf Fehlerprüfung gehe, dann kommt die besagte Fehlermeldung. Sieht wie ein Syntax-Fehler aus.....Irgendwo eine KLammer vergessen?!

dtp
Beiträge: 10657
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) V4.4

Beitrag von dtp » 11.02.2021, 11:08

So, Fehler gefunden. Fehlte tatsächlich eine Klammer. :roll:

Hab das korrigierte Skript oben eingefügt. Allerdings unter derselben Versionsnummer.
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.

Benutzeravatar
stan23
Beiträge: 2038
Registriert: 13.12.2016, 21:14
System: Alternative CCU (auf Basis OCCU)
Wohnort: Altmühltal
Hat sich bedankt: 580 Mal
Danksagung erhalten: 336 Mal
Kontaktdaten:

Re: Howto - zentrales Push-Nachrichten-Programm (zPNP) V4.4

Beitrag von stan23 » 14.02.2021, 16:32

Hi Thorsten,
seit einiger Zeit habe ich mit dem zPNP-Po 4.4.3 sowie 4.4.6 das Problem, dass Nachrichten die mit einer spitzen Klammer beginnen, nicht ankommen.
Wenn ich cURL manuell ausführe, kommt als Ergebnis nur ein

Code: Alles auswählen

curl: (26) Error
Ersetze ich im cURL-Aufruf die -F durch -d dann funktioniert der Versand. Oder aber wenn am Anfang der Nachricht ein Leerzeichen eingefügt wird.

Der Grund liegt daran wie cURL die Parameter interpretiert:
https://curl.se/docs/manpage.html#-F
Viele Grüße
Marco

RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)

dtp
Beiträge: 10657
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) V4.4

Beitrag von dtp » 14.02.2021, 16:45

Das Leerzeichen füge ich eigentlich automatisch ein:

Code: Alles auswählen

-F message=' "#message#"'
"-F" muss statt "-d" verwendet werden, weil ansonsten keine Attachments angefügt werden können.

Ein "<"-Zeichen am Anfang der Nachricht sollte nur dann verwendet werden, wenn es Teil eines HTML-Codetags ist.
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.

Antworten

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