Hallo,
ist es möglich das Fhem einen Ordner Überwacht und bei veränderung ipcamalarm.jpg mir dieses bild zuschickt z.b per Pushbullet ?
Ich möchte nicht über das ipcam Modul gehen da ich eine größere Software unter Windows nutze "Blueiris"
Sofern Du einen Linuxrechner hast könnte Dir das weiter helfen: http://www.linux-magazin.de/Ausgaben/2007/03/Unter-der-Lupe
Grüße Jörg
Gesendet von iPad mit Tapatalk
ja hab einen PI im Netzwerk. Ich könnte wahlweise das Bild auf dem WIN speichern oder auf dem IP das ist egal.
Wie bekomme ich das den in FHEM dann ?
Was möchtest Du in Fhem den haben / sehen?
Gesendet von iPhone mit Tapatalk
hi, hat sich erledigt hab nun was gebastelt mit pop3 Anhang abhohlung und push mit iwatch überwachung zimliches gebastel aber es klappt.
Nun habe ich bei Pushbullet jedes Push gestapelt einzeln als Benachrichtigung
teilst du deine Lösung auch?
klar wenn es eine dauerhafte Lösung wäre. Nun kommt auf einmal ein Pusbullet Limit von 500 API Zugriffen / Monat !
Bin sicher auch bereit etwa szu zahlen aber sowas so krass zu verstecken schon krass. Ohne E-Mail oder Warnung .. wundere mich wieso es nicht mehr klappt.
Ich werde mir nun etwas eigenes basteln um Push Mini Bilder anzuzeigen. Kann ja nicht so schwer sein :D
Zitat von: ChrisW am 24 Dezember 2016, 10:00:06
klar wenn es eine dauerhafte Lösung wäre.
Es geht mir vorrangig um das Überwachen des Ordners ;)
Abhohlen der Mails per Pop + Speichern der Anhänge und Löschen der Mail:
#!/usr/bin/env python
import poplib
import email
import os
import sys
import string
#
# attsave.py
# Check emails at PROVIDER for attachments and save them to SAVEDIR.
#
#
PROVIDER = "pop.1und1.de"
USER = "xxxxxxx"
PASSWORD = "xxxxxxxxxx"
SAVEDIR = "/opt/ipcampop"
def saveAttachment(mstring):
filenames = []
attachedcontents = []
msg = email.message_from_string(mstring)
for part in msg.walk():
fn = part.get_filename()
if fn <> None:
filenames.append(fn)
attachedcontents.append(part.get_payload(decode = True))
for i in range(len(filenames)):
fp = file(SAVEDIR + "/" + filenames[i], "wb")
fp.write(attachedcontents[i])
print 'Found and saved attachment "' + filenames[i] + '".'
fp.close()
try:
client = poplib.POP3_SSL(PROVIDER)
except:
print "Error: Provider not found."
sys.exit(1)
client.user(USER)
client.pass_(PASSWORD)
anzahl_mails = len(client.list()[1])
for i in range(anzahl_mails):
lines = client.retr(i + 1)[1]
mailstring = string.join(lines, "\n")
saveAttachment(mailstring)
client.dele(i + 1)
client.quit()
Dann überwachung des Ordners + Push :
#!/bin/bash
iwatch -t ".jpg" -c "/opt/push.py %f" -e close_write "/opt/ipcampop"
Code für Pushbullet:
#!/bin/bash
APIKEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
FILENAME=$(basename ${1})
FILEDIR=$(dirname ${1})
CUDIR=$(pwd)
FILETYPE=$(file -bi ${1} | cut -d';' -f1)
echo File: ${1}, Type: ${FILETYPE}
cd ${FILEDIR}
echo Getting permission...
eval $(curl -s -u ${APIKEY}: https://api.pushbullet.com/v2/upload-request -d \
file_name=${FILENAME} -d file_type=${FILETYPE} | python -m json.tool | \
sed 's/": /=/g' | tr -d ' ' | sed 's/,$//g' | sed 's/^"//g' | \
tr -d '}' | tr -d '{' | sed 's/data=//g' | sed '/^$/d' | \
sed 's/^/export /g' | sed 's/content-type/content_type/g')
echo Uploading file ...
curl --progress-bar -i ${upload_url} \
-F awsaccesskeyid=${awsaccesskeyid} \
-F acl=${acl} \
-F key=${key} \
-F signature=${signature} \
-F policy=${policy} \
-F content-type=${content_type} \
-F file=@${FILENAME} \
echo Sending Notification ...
curl -u ${APIKEY}: https://api.pushbullet.com/v2/pushes -d type=file -d file_name=${FILENAME} -d file_type=${FILETYPE} -d file_url=${file_url}
echo
rm ${FILENAME}
cd ${CURDIR}