Lösung: Klingel erzeugt Bild von Foscam und sendet per Mail

WebUIs (DashUI, yahui, ...), Adapter (Hue, IRTrans, Sonos, ...), Logging, Scripting

Moderator: Co-Administratoren

Benutzeravatar
Homoran
Beiträge: 8613
Registriert: 02.07.2013, 15:29
Wohnort: Köln
Danksagung erhalten: 4 Mal

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von Homoran » 19.06.2016, 14:14

Es sieht so aus, als ob du das Script mit einem Windows Editor bearbeitet hättest.

^M ist das Indiz dafür.

Nimm Notepad ++ und stell es korrekt auf Linux ein.


Gruß
Rainer
Alle meine Hinweise sind auf eigene Gefahr umzusetzen. Immer einen Fachmann zu Rate ziehen!

Bernd80
Beiträge: 110
Registriert: 13.01.2016, 18:40

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von Bernd80 » 19.06.2016, 14:25

Homoran hat geschrieben:Es sieht so aus, als ob du das Script mit einem Windows Editor bearbeitet hättest.

^M ist das Indiz dafür.

Nimm Notepad ++ und stell es korrekt auf Linux ein.


Gruß
Rainer

Benutze ein Mac mit Textwrangler. Falsch? Welches Programm ist fürn Mac das Richtige?

Bernd80
Beiträge: 110
Registriert: 13.01.2016, 18:40

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von Bernd80 » 19.06.2016, 14:55

Habe jetzt ein anderen Texteditor genommen. Atom für Mac. Datei neu erstellt doch wieder keine Datei im tmp :oops:

Jetzt schreibt Cuxd:

Jun 19 14:50:59 homematic-ccu2 daemon.info cuxd[31250]: system(cd /usr/local/addons/sendCamShot/ && tclsh sendCamShot.tcl) exit(2) 0s
Jun 19 14:51:47 homematic-ccu2 local0.err ReGaHss: Error: IseXmlRpc::GetObjectByHSSAddress: no exists device object with address= 3014F711A0000352299CD801 [../Platform/DOM/iseXmlRpc.cpp (2166)]

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

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von alchy » 19.06.2016, 21:50

Bernd80 hat geschrieben:Die Datei sendCamShot.tcl ist auch mit meinen Daten geändert und liegt im Ordner usr/local/addons
da gehört sie nicht hin, wird aber nur ein Schreibfehler sein.
Bitte poste das log und /oder führe das Script einfach mal auf der Kommandozeile aus.

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.

Bernd80
Beiträge: 110
Registriert: 13.01.2016, 18:40

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von Bernd80 » 19.06.2016, 21:56

Bitte nicht erschlagen aber wie komme ich an das log[emoji51]
Was genau meinst du mit kommandozeile. ?

Benutzeravatar
Jonnydreambox
Beiträge: 157
Registriert: 29.04.2013, 21:08
Hat sich bedankt: 7 Mal
Danksagung erhalten: 2 Mal

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von Jonnydreambox » 19.06.2016, 21:58

@Bahnuhr

Finde dein Beitrag so klasse,

Nur beim finden der richtigen kompatiblen Kamera sucht man sich im Netz die Augen Wund... ;-)

Ich selber habe schon welche gehabt die leider nicht mit der sendcamshot kompatibel sind

Willst du nicht vielleicht in deinen ersten Beitrag funktionierende Kameras auflisten?
Und welche die Nicht gehen ?

Denn die Kosten ja schon einiges, wo man sich dann fehlkäufe sparen könnte.

Gruß

Jonny
CCU3 Raspberrymatic PI4 ,Dualbeam Antennen & diverse Aktoren,
homee & Alexa
Hausautomatisierung weil es spass macht! 8)

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

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von alchy » 19.06.2016, 22:21

Bernd80 hat geschrieben:Bitte nicht erschlagen aber wie komme ich an das log
Ich denke du hast den Thread gelesen?
In der tcl datei findest du eine Zeile die auf das log verweist.
Da Du deine tcl nicht gepostet hast, lass ich die Raterei und verweise auf ca. Zeile 61

Code: Alles auswählen

logfile /var/log/email_sendcamshot.log  

Steht da bei mir, muss aber bei dir nicht so sein.
Bernd80 hat geschrieben: Was genau meinst du mit kommandozeile. ?
sich mit der CCU per ssh verbinden (z.B. mit putty)
sich zu dem Script durchhangeln mittels

Code: Alles auswählen

cd /usr/local/addons/sendCamShot/
das Script starten mittels

Code: Alles auswählen

tclsh sendCamShot.tcl
Jonnydreambox hat geschrieben:Willst du nicht vielleicht in deinen ersten Beitrag funktionierende Kameras auflisten?
Eher die, die nicht gehen. Aber welche soll das sein? Alle Kameras die einen Snapshot anbieten, sollten auch funktionieren.

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.

Bernd80
Beiträge: 110
Registriert: 13.01.2016, 18:40

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von Bernd80 » 20.06.2016, 19:26

Hallo Alchy,

hier mal die Datei die bei mir in /usr/loca/addons liegt:

Code: Alles auswählen

package require base64

set SNAPSHOT_URL "http://192.168.178.44:88//cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=admin&pwd=xxxxxx"
set EMAIL_SUBJECT "Es hat an der Haustuer geklingelt !"
set EMAIL_BODY "\nsiehe Bild\n\nmfg\nHM Zentrale"
set SEND_TO "xxx@me.com"
set SEND_FROM "xxx@gmx.de"
set SMTP_HOST "mail.gmx.net"
set SMTP_USER "xxx@gmx.de"
set SMTP_PASSWD "xxx"
set SMTP_DOMAIN "mail.gmx.net"


# DEFINE EMAIL TEMPLATE
set tmpl "To: $SEND_TO
From: $SEND_FROM
Subject: $EMAIL_SUBJECT
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=\"=_542bc72c.5lV8m7jWYOrj//k2cdijZPr9Fjy8v4J0l/m4onTDRLUmUDMk\"

--=_542bc72c.5lV8m7jWYOrj//k2cdijZPr9Fjy8v4J0l/m4onTDRLUmUDMk
Content-Type: text/plain; charset=\"iso-8859-1\"
Content-Transfer-Encoding: 8bit

$EMAIL_BODY

--=_542bc72c.5lV8m7jWYOrj//k2cdijZPr9Fjy8v4J0l/m4onTDRLUmUDMk
Content-Type: application/octet-stream; name=\"photo.jpg\"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=\"photo.jpg\"

{IMGDATA}
--=_542bc72c.5lV8m7jWYOrj//k2cdijZPr9Fjy8v4J0l/m4onTDRLUmUDMk--"


# DOWNLOAD THE SNAPSHOT
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 encodeddata [::base64::encode $imgdata]
close $fp

# REPLACE IMG DATA WITH REAL IMAGE DATA
regsub -all "{IMGDATA}" $tmpl $encodeddata tmpl

# WRITE READY EMAIL TO A TMP FILE
set fp [open "/tmp/ready.eml" w]
puts $fp $tmpl
close $fp

set config "
defaults
tls on
tls_certcheck off
logfile /var/log/email_sendcamshot.log
account provider
host $SMTP_HOST
from $SEND_FROM
domain $SMTP_DOMAIN
auth login
user $SMTP_USER
password $SMTP_PASSWD
account default: provider
"

set fp [open "/tmp/msmtp.conf" w]
puts $fp $config
close $fp

exec chmod 0600 /tmp/msmtp.conf

# SEND EMAIL USING MSMTP
exec cat /tmp/ready.eml | msmtp -C /tmp/msmtp.conf $SEND_TO

# CLEAN UP
exec rm -f /tmp/msmtp.conf
exec rm -f /tmp/ready.eml
exec rm -f /tmp/snapshot.jpg
Hab ich da ein Fehler drin. ?

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

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von alchy » 20.06.2016, 19:50

nein die Datei funktioniert mit meinen Daten.
Versendet habe ich über ebenfalls über einen gmx Account an gmail.

Bitte einfach das machen, was ich oben schrieb.
Mit putty mit der CCU verbinden
mittels

Code: Alles auswählen

cd /usr/local/addons/

in den Ordner wechseln

mit

Code: Alles auswählen

tclsh sendCamShot.tc
l

die Datei ausführen.
Wenn keine Ausgabe erfolgt ist alles in Ordnung, erfolgt eine Ausgabe, dann hier posten.

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.

Bernd80
Beiträge: 110
Registriert: 13.01.2016, 18:40

Re: Lösung: Klingel erzeugt Bild von Foscam und sendet per M

Beitrag von Bernd80 » 21.06.2016, 13:06

Hallo Alchy,

nach etwas Einlesen hab ich jetzt auch verstanden was du wolltest :D

Also... wenn ich die Datei über ssh direkt starte mit dem Befehl "tclsh sendCamShot.tcl" geht die E-Mail mit gewünschten Bild auch raus :D :D :lol:

Leider hab ich es noch nicht geschafft mit dem Script, welches ich manuell über die Webui ausgelöst habe :

Code: Alles auswählen

dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("cd /usr/local/addons/sendCamShot/ && tclsh sendCamShot.tcl");
die sendCamShot.tcl auszulösen. Wo hab ich den jetzt noch ein Wurm drin?

Antworten

Zurück zu „CCU.IO“