Re: Kamerabilder via Homematic versenden
Posted: 8. May 2017, 20:19
Hallo loetman,
auch ich bin kein Homematic Profi, aber hier ein Ansatz, mit welchen du weiter arbeiten kannst.
Bei Problemen solltest du dich mit diesem Code-Schnipsel in einem Homeatic-Forum vorstellen.
Grüße Kevin
Datei sendCamShot.tcl erstellen mit folgendem Inhalt und in folgenden Ordner kopieren:
Aufruf des Script:
Die fest definierten Variablen sowie die Seriennummmer (in diesem Beispiel: CUX2801001) müssen natürlich durch deine ersetzt werden!
Grüße Kevin
auch ich bin kein Homematic Profi, aber hier ein Ansatz, mit welchen du weiter arbeiten kannst.
Bei Problemen solltest du dich mit diesem Code-Schnipsel in einem Homeatic-Forum vorstellen.
Grüße Kevin
Datei sendCamShot.tcl erstellen mit folgendem Inhalt und in folgenden Ordner kopieren:
Code: Select all
/usr/local/addons/sendCamShot/
Code: Select all
#!/bin/tclsh
package require base64
package require TclCurl
# VARS
set SNAPSHOT_URL "http://user:password@192.168.2.110:8080/snapshot.cgi"
# DOWNLOAD THE SNAPSHOT to /tmp
exec wget -q -O /tmp/snapshot.jpg $SNAPSHOT_URL
# READ SNAPSHOT INTO VARIABLE & BASE64 ENCODE
set fp [open "/tmp/snapshot.jpg" r]
fconfigure $fp -translation binary
set imgdata [read $fp]
set encodedimgdata [::base64::encode $imgdata]
set imagetype "data:image/jpeg;base64,"
set PICTURE [concat $imagetype$encodedimgdata]
close $fp
# SEND NOTIFICATION BY PUSHSAFER WITH CURL
# BASED ON THE PUSHSAFER API - https://www.pushsafer.com/en/pushapi
curl::transfer -url https://www.pushsafer.com/api -verbose 1 -post 1 \
-httppost [list name "k" contents "XXXXXXXXXXXXXXXXXXXX"] \
-httppost [list name "m" contents "my first pushsafer.com notification with camera snapshot"] \
-httppost [list name "t" contents "Alert"] \
-httppost [list name "d" contents "110"] \
-httppost [list name "i" contents "82"] \
-httppost [list name "s" contents "25"] \
-httppost [list name "v" contents "3"] \
-httppost [list name "u" contents ""] \
-httppost [list name "ut" contents ""] \
-httppost [list name "p" contents $PICTURE] \
-httppost [list name "l" contents ""] -verbose 1
# CLEAN UP
exec rm -f /tmp/snapshot.jpg
Code: Select all
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("cd /usr/local/addons/sendCamShot/ && tclsh sendCamShot.tcl");
Grüße Kevin