Howto - zentrales Push-Nachrichten-Programm zPNP

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

Moderator: Co-Administratoren

dft601
Beiträge: 56
Registriert: 15.04.2014, 23:57
Hat sich bedankt: 3 Mal

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

Beitrag von dft601 » 04.01.2019, 10:30

Hallo Thorsten,

danke, sieht nun wieder gut aus :-)

Hast du mir eine Test-URL mit der mit deinem Test-Script für Bilder etwas ankommen sollte ?

Oder anders gefragt, kommt hier bei dir ein Bild an ?

Code: Alles auswählen

! Namen der verwendeten Systemvariablen
string svPushText = "CCU SV Push Text"; ! gem. zPNS-xx, obligatorisch
string svPushImage = "CCU SV Push Bild"; ! Link auf ein anzufügendes Bild, default: ""

! Name des zentralen Push-Nachrichten-Programms
string zPNP = "CCU PRG Push-Nachrichten"; ! obligatorisch


! +++++ Erzeugen der Test-Nachricht +++++
string message = "Test-Nachricht mit <font color=green>angehängtem Bild</font>.";

! +++++ Verzeichnis auf der CCU, in dem das Bild gespeichert werden soll +++++
!string image = "/tmp/bild.jpg";
string image = "https://cdn.pixabay.com/photo/2018/12/27/11/44/sparkler-3897468_960_720.jpg";
!string image = "https://cdn.instructables.com/FNW/YFAX/HMVJGE16/FNWYFAXHMVJGE16.LARGE.jpg";


! +++++ zPNP ausführen +++++
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushText)).State(message);
(dom.GetObject(ID_SYSTEM_VARIABLES).Get(svPushImage)).State(image);
(dom.GetObject(ID_PROGRAMS).Get(zPNP)).ProgramExecute();

WriteLine("Nachricht gesendet!");

Bilder habe ich so abgelegt:
2019-01-04 10_32_38-hp-server-mike@ad - AnyDesk.jpg
Ich hatte die Rechte der Bilder bereits auf 777 gesetzt auf der CCU 3
2019-01-04 10_34_42-HomeMatic WebUI.jpg
2019-01-04 10_34_42-HomeMatic WebUI.jpg (14.68 KiB) 1687 mal betrachtet



Ich komme einfach nicht auf den Fehler....

Mike

Benutzeravatar
cobbek
Beiträge: 28
Registriert: 02.04.2014, 13:47
System: CCU und Access Point
Wohnort: Gelsenkirchen
Hat sich bedankt: 3 Mal

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

Beitrag von cobbek » 04.01.2019, 17:00

Hallo,

mit diesem Aufruf arbeite ich auch

Code: Alles auswählen

! 
+++++ Verzeichnis auf der CCU, in dem das Bild gespeichert werden soll +++++
string image = "/tmp/bild.jpg";
und es funktioniert bei mir mit Telegram.
Diesen Aufruf bekomme ich auch nicht hin ..

Code: Alles auswählen

! +++++ Verzeichnis auf der CCU, in dem das Bild gespeichert werden soll +++++
!string image = "/tmp/bild.jpg";
string image = "https://cdn.pixabay.com/photo/2018/12/27/11/44/sparkler-3897468_960_720.jpg";
!string image = "https://cdn.instructables.com/FNW/YFAX/HMVJGE16/FNWYFAXHMVJGE16.LARGE.jpg";
Aber wofür auch ?
Gruß Hardy
CCU3 | RaspberryMatic mit aktueller Firmware und vielen Geräten

dft601
Beiträge: 56
Registriert: 15.04.2014, 23:57
Hat sich bedankt: 3 Mal

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

Beitrag von dft601 » 04.01.2019, 19:04

Hallo Hardy,

ist nur, um den Fehler einzugrenzen... wie gesagt bei mir kommt gar kein Bild an. Weder auf Pushover noch auf dem heute morgen neu eingerichteten Telegram... Immer nur die Nachricht...

Aber danke für den Versuch. Ich denke ich setze das nochmals ganz neu auf.

Mike

dtp
Beiträge: 10658
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.0

Beitrag von dtp » 05.01.2019, 15:55

Habe den Versand gerade mal mit einem im tmp-Verzeichnis der CCU3 gespeicherten Bild per Telegram und Pushover mit den jeweils aktuellen Versionen des zPNS-Po (V 3.1.1) und zPNS-Tg (V3.1) getestet. Funktioniert, wie gewünscht.

Bei externen Bildern müssen aber natürlich die Rechte entsprechend gesetzt sein, um von der CCU3 aus direkt auf die Bilder zugreifen zu können. Evtl. ist es da besser, die Bilder zunächst in das tmp-Verzeichnis der CCU3 zu ziehen bzw. zu schieben.

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.

svemo
Beiträge: 55
Registriert: 12.02.2015, 14:59

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

Beitrag von svemo » 10.01.2019, 07:08

Hallo dein Programm ist ja sehr vielversprechend.

das hier ja schon viele Pushdienste vereint sind würde ich es gern nutzten wollen um einen Status über Alexa auszugeben.

hier habe ich mich Inpirieren lassen von intelligentes-haus.de/mazon-alexa-text-to-speech-tts-ubers-smart-home-nutzen/

In meinem Fall habe ich einen SysVar mit dem Namen "EchoText" die SysVar würde ich gerne Beschreiben z.B mit den Zuständen der Fenster/Türen.( sowie später auch für die Steckdosen bzw. die Temp in einem Raum)

Versuche es mal Bildlich darzustellen.
Mit Spracheingabe "Sind noch Türen oder Fenster offen"; soll ein Programm gestartet werden der die Geräte prüft und welche offen oder Geschossen sind.

Die Ausgabe soll dann in die SysVar "EchoText" geschieben werden. und wird dann über ein Script was ich schon habe über den Echo ausgegeben.


Beislpiel Programm Sommer/Winter:
Bild

Code: Alles auswählen

!Sprachausgabe Sommer/Winter übergabe Systemvariable an Sysvar(Echotext)
!#######################################
;
var sourceobject = dom.GetObject("Jahreszeit");
var sourcestate = sourceobject.Value() ;
;
if ( sourcestate == 1 ) { var meldung = " Die Heizung wurde auf Winterzeit gestellt" ; }
if ( sourcestate == 0 ) { var meldung = "Die Heizung wurde auf Sommerzeit gestellt" ; }
;
var API_Meldung =  meldung ;
;
dom.GetObject("EchoText").State(API_Meldung);
So wie ich testen konnte kann Amazon auch mit HTML Tags usw nicht wirklich umghen. ein Text den ich direkt an die Sysvar gebe klappt hingegen sowie das obige Script.

Leider weiß ich nicht wie ich ein Scipt baue was die Fenster/Türen in die Variable schreibt. sowie für Steckdosen oder Temperatur in einem Raum.

Kann mir hier jemand helfen. bzw. wäre das nicht auch was für hier als weitere Ausgabequelle.

Vielen Dank

Grüße

Svemo

Xel66
Beiträge: 14150
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 583 Mal
Danksagung erhalten: 1498 Mal

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

Beitrag von Xel66 » 10.01.2019, 10:34

Kommt drauf an, wie Du das umgesetzt hast. Mir fehlt jetzt der Antrieb, Deine umgesetzte (nicht verlinkte) Lösung nachzuvollziehen. Ich habe hier mal meine Umsetzung beschrieben. Das Problem war, dass das Script nicht wirklich mit Leerstellen umgehen kann. Darum habe ich diese scriptgesteuert durch Unterstriche vor der Übergabe an das Script ersetzt. Diese Lösung funktioniert bei mir schon einige Zeit zuverlässig und zu meiner Verwunderung wurde das Cookie am 04.Januar sogar automatisch erneuert (zumindest ist an diesem Tag die Cookie-Datei neu angelegt und auch für das Rückspielen im Falle eines Neustarts gesichert worden).

BTW: Das Thema ist aber in diesem Thread ziemlich OT, da es hier um Push und nicht TTS geht.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

dft601
Beiträge: 56
Registriert: 15.04.2014, 23:57
Hat sich bedankt: 3 Mal

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

Beitrag von dft601 » 10.01.2019, 11:00

dtp hat geschrieben:
05.01.2019, 15:55

Bis dann,

Thorsten
Hallo Thorsten,

danke nochmals... es klappt einfach nicht... Werde die CCU nochmals auf Werkseinstellungen setzen und ausschließlich dein Script testen.
Wenn es dann geht, eben alles neu aufsetzen, wenn nicht, das Backup wieder einspielen....
Mehr fällt mir nicht ein... Wie gesagt, Bild kopiere ich per ftp programm zum Testen ins Tmp und die Rechte auf 777..... mehr kann ich nicht tun.

Mike

dtp
Beiträge: 10658
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.0

Beitrag von dtp » 10.01.2019, 11:19

svemo hat geschrieben:
10.01.2019, 07:08
Kann mir hier jemand helfen. bzw. wäre das nicht auch was für hier als weitere Ausgabequelle.
Sorry, aber eine Audioausgabe werde ich nicht in das zPNP integrieren. Das soll sich ausschließlich mit Push-Nachrichten beschäftigen.

Für die Audioausgabe würde ich dir eher den ioBroker samt sayit- und/oder alexa2-Adapter empfehlen. Wenn man sich damit eine generierte Push-Nachricht vorlesen lassen möchte, so kann man sich evtl. auch mit dem Parser-Adapter die HTML- und BBCode-Tags ausfiltern lassen. Letzteres wäre allerdings auch kein großes Problem mit den zPNS-xx, da sie zum Teil eh bereits eine HTML- bzw. BBCode-Transformation oder -Entfernung enthalten. Aber eigentlich möchte ich das nicht unbedingt implementieren, weil es eine weitere Systemvariable bedingt, die die meisten hier wohl nicht benötigen. Wobei, ich könnte auch für das zPNS-Po und zPNS-Tg ein Flag implementieren, mit dem man die HTML- und BB-Codes komplett ausfiltert.

Ich denk mal drüber nach.

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.

dtp
Beiträge: 10658
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.0

Beitrag von dtp » 10.01.2019, 11:28

dft601 hat geschrieben:
10.01.2019, 11:00
Werde die CCU nochmals auf Werkseinstellungen setzen und ausschließlich dein Script testen.
Bevor du in blinden Aktionismus verfällst, die kurze Frage, ob bei dir die Systemvariable "CCU SV Push Bild" angelegt wurde?

Dazu muss im zPNS-xx-Skript die ursprüngliche Zeile

Code: Alles auswählen

string svPushImage = ""; ! Link auf ein anzufügendes Bild (z.B. "CCU SV Push Bild"), Voreinstellung: ""
so aussehen:

Code: Alles auswählen

string svPushImage = "CCU SV Push Bild"; ! Link auf ein anzufügendes Bild (z.B. "CCU SV Push Bild"), Voreinstellung: ""
Danach dann das zPNP einmal manuell oder zwei Mal hintereinander über ein aufrufendes Skript starten.
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.

dft601
Beiträge: 56
Registriert: 15.04.2014, 23:57
Hat sich bedankt: 3 Mal

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

Beitrag von dft601 » 10.01.2019, 11:46

Hallo Thorsten,

ja, die Variable gibt es und ich verwende ja dein Test-Script für den Bilderversand von ganz vorne im Thread.
Dort steht das ja auch so drin.

So ist das abgelegt in der CCU3:
2019-01-10 11_48_07-Sametime Appshare Highlighter.png
Nach dem Ausführen sieht das dann so aus:
2019-01-10 11_40_19-Sametime Appshare Highlighter.png
2019-01-10 11_40_19-Sametime Appshare Highlighter.png (18.44 KiB) 1713 mal betrachtet
Die Nachricht kommt bei Pushover und Telegram auch an, aber eben ohne Bild.

Mike

Antworten

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