Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Ruedixy
Beiträge: 12
Registriert: 9. Feb 2021 15:00

Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Beitrag von Ruedixy »

Hallo Forum,

ich habe eine Funkklingel in OH3 integriert, diese sendet, wenn geklingelt wird, erfolgreich eine Pushover-Nachricht. Eine Cam ist auch am Start, HLS URL, Image URL, MPG URL sind im Model, URLs werden im Browser angezeigt, OH3 läuft unter Docker auf Synology.

Nachdem was ich so alles gelesen habe, was die Verwirrtheit nur steigerte, vermute ich, dass das Bild der Cam lokal abgespeichert werden muss. In dem Cam-Thing habe ich als FFmpeg Output Folder /conf/html/cam1 eingetragen.

1. Der Pfad wird wohl so nicht stimmen, gerade wenn es auf Synology Docker läuft?
2. Wie wird das Jpeg abgespeichtert, durch eine Rule bei Auslösen der Klingel? Der http-Pfad da zu integrieren scheint dafür wohl nicht geeigent...
3. Wie könnte die Rule für Pushover aussehen? eMail würde auch gehen, das Binding funktioniert. Bin bis zu dem Punkt gekommen, wo mir die IMAGE-URL gesendet wird, natürlich nicht mit einem aktuellen JPEG. Die Doku hat mir - Anfänger - auch nicht viel gebracht und funktioniert nun auch nicht mehr nach so viel probieren.

Viele Beispiele beziehen sich auf OH2.x, einige geben an ein GIF wäre sehr gut, das GIF-Recording im Modell zeigt NULL an.
Sicherlich für euch simpel, aber ich bekomme es nicht gebacken, leider auch von der Logik her nicht. So weit gekommen und schaffe es nicht. :( Ein bisschen Hilfe wäre schön...
Will es mir nicht zu leicht machen, komme aber schlicht nicht weiter.

Wie kann ich also ein JPEG oder GIF von der CAM erstellen und es per Pushover an mich, wenn es klingel, versenden?

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Beitrag von sihui »

Ruedixy hat geschrieben: 16. Jul 2021 18:49 Wie kann ich also ein JPEG oder GIF von der CAM erstellen und es per Pushover an mich, wenn es klingel, versenden?
GIF finde ich persönlich besser, da ein animiertes GIF versendet werden kann mit definierter Länge, also praktisch ein Ministream.
Zu Docker kann ich nichts sagen, nutze ich nicht.
Beispiele zu openHAB2 funktionieren in openHAB3 ohne jegliche Anpassung (was das IPCamera Binding angeht)

Du nutzt das IPCamera Binding für die Anbindung an openHAB? Ich schreib mir sonst für lau die Finger wund ... :|

Zuerst musst du dein Thing ergänzen, falls noch nicht geschehen:

Code: Alles auswählen

gifPreroll=0,

Code: Alles auswählen

ffmpegOutput="/opt/openhab/conf/html/deineKamera/",
bestimmt den Speicherort für das GIF. In meinem Beispiel ein manuell installiertes openHAB3 auf Debian, wie das in Docker aussehen muss weiß ich nicht. Der Dateiname wird vom Binding vorgegeben und lautet ipcamera.gif.

Dann brauchst du ein Number Item für den recordingGif Channel:

Code: Alles auswählen

Number DeineKameraRecordGif "Record GIF" { channel="ipcamera:yxyxyx:ababababab:recordingGif" } 
Dieses Item wird vom Binding auf 0 runtergezählt sobald eine Action für das Erstellen des GIF ausgelöst worden ist. Diese Action muss augelöst werden wenn die Klingel gedrückt wird:

Code: Alles auswählen

getActions("ipcamera", "ipcamera:yxyxyx:ababababab").recordGIF("ipcamera",5) 
Die Länge des GIF wird durch den letzten Parameter bestimmt, in diesem Falle also 5 Sekunden.

Jetzt brauchst du eine Regel die auf das Item triggert wenn es 0 geworden ist und versendest damit das GIF per Pushover:

Code: Alles auswählen

rule "Snapshot GIF" 
when
    Item DeineKameraRecordGif changed to 0
then
    val actions = getActions("pushover", "pushover:pushover-account:pushover")
    actions.sendAttachmentMessage("Kamera Test", "openHAB", "/opt/openhab/conf/html/deineKamera/ipcamera.gif", "image/gif")
end
Das war es dann auch schon. Have fun.
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

Ruedixy
Beiträge: 12
Registriert: 9. Feb 2021 15:00

Re: Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Beitrag von Ruedixy »

Hallo sihui, schön dass Du antwortest, hatte von Dir schon Beiträge dbzgl. gelesen. Ja, nutze das IPCam-Binding.
- gifPreroll=0, war schon eingetragen.
- ffmpegOutput="/opt/openhab/conf/html/deineKamera/", den Pfad bekomme ich schon noch raus
- Number Item für den recordingGif Channel - habe ich in Items mit + Add Items from Textual Definition erstellt und Deinen Code eingfügt und angepasst
- getActions - hier hänge ich nun schon. Lege ich eine Regel dafür an? Der Trigger ist klar, aber die Add Action (Item Action) kann ich übers Model nicht einfügen, da ich dort das Item nicht rein bekomme, daher als Script:

triggers:
- id: "2"
configuration:
itemName: SENSORKlingelRU
type: core.ItemStateChangeTrigger
conditions: []
actions:
- id: "1"
configuration:
type: application/vnd.openhab.dsl.rule
script: 'getActions("ipcamera",
"ipcamera:onvif:332fd923ab").recordGIF("ipcamera",5) '
type: script.ScriptAction

Ist das bis dahin richtig? Ich habe schon öfters gelesen dass Regeln von OH2 in OH3 übernommen werden können, der Aufbau ist aber doch anders, zumidest sehe ich es nicht. Deine Rule kann ich so nicht übernehmen und mit Design bekomme ich das Item nicht ins Model.
Ja, es fehlt an den einfachsten Basics wie Du siehst... Trotzdem vielen Dank, ich versuche es weiter.

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Beitrag von sihui »

Ruedixy hat geschrieben: 16. Jul 2021 22:17 Ist das bis dahin richtig?
Kann ich dir nicht sagen, ich nutze die MainUI nicht für Regeln.
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

Ruedixy
Beiträge: 12
Registriert: 9. Feb 2021 15:00

Re: Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Beitrag von Ruedixy »

Habe es endlich geschafft, vielen Dank sihui, nun kann ich ein GIF mit Pushover versenden, bin happy.
Würde das GIF aber auch gerne per eMail versenden, das funktioniert nicht:

Code: Alles auswählen

 rule "Klingel_eMail_Anhang"
        when
	       Item CAMTur_GIFRecording changed to 0
        then                    
              val actions = getActions("mail", "mail:smtp:nummer")
              mailActions.sendMail("mail-Adresse", "Jemand hat geklingelt", "Im Anhang sind die Fotos.", "/etc/openhab/html/cam/ipcamera.gif", "image/gif")
        end     
Der Pfad zum GIF ist identisch mit der Pushover-Rule.
Es kommt dieser Fehler:

Code: Alles auswählen

2022-05-12 17:21:36.384 [ERROR] [internal.handler.ScriptActionHandler] - Script execution of rule with UID 'Klingel-GIF-eMailRU-1' failed: The name 'mailActions' cannot be resolved to an item or type; line 6, column 15, length 11 in Klingel-GIF-eMailRU
Kann nicht viel sein, hänge nun aber... Hilfe.

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Beitrag von sihui »

Ruedixy hat geschrieben: 12. Mai 2022 17:30 Hilfe.
https://community.openhab.org/t/ipcamer ... 42771/1323
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

Benutzeravatar
udo1toni
Beiträge: 13864
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Beitrag von udo1toni »

Du musst die Attachments als ArrayList übergeben. Schau mal in die Doku: https://www.openhab.org/addons/bindings ... ule-action
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Ruedixy
Beiträge: 12
Registriert: 9. Feb 2021 15:00

Re: Klingel, Cam, Jpeg, Pushover in OH3 - Blackout

Beitrag von Ruedixy »

Hallo shihui und udo1toni, das waren die richtigen Hinweise, es funktioniert nun, bin begeistert, vielen lieben Dank dafür!!!
Echt super, dass ihr Anfängern wie mir immer wieder hilfreich zur Seite steht, das ist nicht selbstverständlich.

Antworten