NEWS
Blink Camera System
-
@soukai sagte in Blink Camera System:
also nochmal : lass alles ! mit sudo und python davorgestellt weg, sowohl in der Konsole (Terminal) als auch im iobroker blockly
Danke für deine Geduld! Habs jetzt wie du sagtest geändert. Rechte sind geändert und script läuft. Jedoch streikt er aber bei deinem Script, warum auch immer
Weil Du offensichtlich python3 nicht installiert hast , sondern nur python
Hier ein das Ergebnis von ls -ldh bild.py und bildneu.py (dein script):
saeko@raspberrypi:/opt/iobroker $ ls -ldh bild.py -rwxr-xr-x+ 1 saeko saeko 1.3K Jun 23 13:21 bild.py saeko@raspberrypi:/opt/iobroker $ ls -ldh bildneu.py -rwxr-xr-x+ 1 saeko saeko 612 Jun 24 14:48 bildneu.py
Jep, jetzt sieht man auch, warum das script aus blockly nicht ausgeführt wird. Die Rechte müssen auf iobroker sein. Bei mir sieht das so aus:
-rwxrwxrwx+ 1 iobroker iobroker 1,7K Apr 6 15:41 blink-cameras.py pi@raspberrypi2:/opt/iobroker $
-
@pischleuder
ist das nicht python 3?saeko@raspberrypi:/opt/iobroker $ python --version Python 3.8.4
hoffentlich ist es das kannst mir vielleicht eben sagen wie ich die Rechte auf iobroker änder?
-
-
saeko@raspberrypi:/opt/iobroker $ ls -ldh bild.py -rwxr-xr-x+ 1 iobroker saeko 1.3K Jun 23 13:21 bild.py
-
-
saeko@raspberrypi:/opt/iobroker $ ls -ldh bild.py -rwxr-xr-x+ 1 iobroker iobroker 1.3K Jun 23 13:21 bild.py
-
nun sollte es hoffentlich laufen...
-
@pischleuder leider macht blockly immer noch kein bild in das Verzeichnis
leider immer noch nichts. Egal wie
-
1.) du hast in Deinem blockly das python voran entfernt,
ich würde alle scripte in /opt/iobroker packen, wegen der Rechte
2.) was für eine Kamera ist das
3.) wie sieht die bild.py jetzt genau aus
4.) wird das script jetzt ausgeführt, unabhängig davon ob ein bild in das Verzeichnis gelegt wird -
@pischleuder said in Blink Camera System:
1.) du hast in Deinem blockly das python voran entfernt
2.) was für eine Kamera ist das
3.) wie sieht die bild.py jetzt genau aus
#!/usr/bin/python3 import requests from blinkpy.blinkpy import Blink from blinkpy.auth import Auth from blinkpy.helpers.util import json_load from blinkpy.camera import BlinkCamera blink = Blink() auth = Auth({"username": 'x', "password": 'x'}, no_prompt=True) blink.auth = auth blink.start() #auth.send_auth_key(blink, "x") #blink.setup_post_verify() ###### hier den Dateinamen/Pfad eintragen, den das snapshot Bild erhalten soll - bei mir Flur und Garten Kamera ##### bild = './haustuer.jpg' #bild2 = '/home/saeko/blinkpy/Tuerklingel.jpg' #for name, camera in blink.cameras.items(): print(name), print(camera.attributes) #### hier Eure Kamera 1 eintragen und weitere Einträge für mehr Kameras vornehmen #### camera = blink.cameras['Haustür'] camera.snap_picture() blink.refresh() camera.image_to_file(bild) #payload = {'value':bild} #r = requests.get("http://192.168.178.92:8081/set/0_userdata.0.snapcamera1", params=payload) #### hier Eure Kamera 2 eintragen und weitere Einträge für mehr Kameras vornehmen #### #camera = blink.cameras['Türklingel'] #camera.snap_picture() #blink.refresh() #camera.image_to_file(bild2) #payload = {'value':bild} #r = requests.get("http://192.168.178.92:8081/set/0_userdata.0.snapcamera1", params=payload)
4.) wird das script jetzt ausgeführt, unabhängig davon ob ein bild in das Verzeichnis gelegt wird
In der Konsole ja.
das kommt in der konsolesaeko@raspberrypi:/opt/iobroker $ ./bild.py Could not extract camera info: {'message': 'Camera not found', 'code': 500} Expected json response from https://rest-e004.immedia-semi.com/network/unknown/camera/unknown/signals, but received: 406: Not Acceptable Could not retrieve calibrated temperature. Could not find thumbnail for camera unknown Expected json response from https://rest-e004.immedia-semi.com/network/66328/camera/unknown/config, but received: 406: Not Acceptable Could not extract camera info: None Expected json response from https://rest-e004.immedia-semi.com/network/unknown/camera/unknown/signals, but received: 406: Not Acceptable Could not retrieve calibrated temperature. Could not find thumbnail for camera unknown
Wie prüfe ich es in blockly? Zumindest kommt keine Fehlermeldung in der Konsole
-
@soukai sagte in Blink Camera System:
@pischleuder said in Blink Camera System:
1.) du hast in Deinem blockly das python voran entfernt
hier muss auch der Pfad mit angegeben werden:
/opt/iobroker/bild.py ebenso beim jpg -
Gesagt, getan. Das hatte ich dann auch schon versucht... Leider ohne Erfolg...
-
@soukai sagte in Blink Camera System:
#!/usr/bin/python3 import requests from blinkpy.blinkpy import Blink from blinkpy.auth import Auth from blinkpy.helpers.util import json_load from blinkpy.camera import BlinkCamera blink = Blink() auth = Auth({"username": 'x', "password": 'x'}, no_prompt=True) blink.auth = auth blink.start() #auth.send_auth_key(blink, "x") #blink.setup_post_verify() ###### hier den Dateinamen/Pfad eintragen, den das snapshot Bild erhalten soll - bei mir Flur und Garten Kamera ##### bild = './haustuer.jpg' #bild2 = '/home/saeko/blinkpy/Tuerklingel.jpg' #for name, camera in blink.cameras.items(): print(name), print(camera.attributes) #### hier Eure Kamera 1 eintragen und weitere Einträge für mehr Kameras vornehmen #### camera = blink.cameras['Haustür'] camera.snap_picture() blink.refresh() camera.image_to_file(bild)
hier wäre es ggf. angeraten, dass zu ergänzen:
time.sleep(10) blink.refresh(force=True)
das kann wichtig sein, weil er dir ggf. sonst das alte (vorherige) Bild aufgrund von cache Problemen sendet.
-
@soukai sagte in Blink Camera System:
Gesagt, getan. Das hatte ich dann auch schon versucht... Leider ohne Erfolg...
das ist klar, dass per telegramm nur der Text übermittelt wird, weil du ja keine Datei anhängst, es
wird nur das gesendet, was in " bla bla " steht.
Zum Versenden des nun hoffentlich vorhandenem Bildes solltest du ein javascript nehmen und das aus dem blockly aufrufen. -
@pischleuder Wenn ein Bild drin ist, schickt er mir jedoch das bild
-
dann solltest du das korrekt anpassen:
bild = './haustuer.jpg'
also auf /opt/iobroker/haustuer.jpg
-
time.sleep(10) blink.refresh(force=True)
habe das ans Ende angehängt und in der Konsole kommt:
saeko@raspberrypi:/opt/iobroker $ ./bild.py Could not extract camera info: {'message': 'Camera not found', 'code': 500} Expected json response from https://rest-e004.immedia-semi.com/network/unknown/camera/unknown/signals, but received: 406: Not Acceptable Could not retrieve calibrated temperature. Could not find thumbnail for camera unknown Expected json response from https://rest-e004.immedia-semi.com/network/66328/camera/unknown/config, but received: 406: Not Acceptable Could not extract camera info: None Expected json response from https://rest-e004.immedia-semi.com/network/unknown/camera/unknown/signals, but received: 406: Not Acceptable Could not retrieve calibrated temperature. Could not find thumbnail for camera unknown Traceback (most recent call last): File "/opt/iobroker/./bild.py", line 28, in <module> time.sleep(10) NameError: name 'time' is not defined
Code bis jetzt:
#!/usr/bin/python3 import requests from blinkpy.blinkpy import Blink from blinkpy.auth import Auth from blinkpy.helpers.util import json_load from blinkpy.camera import BlinkCamera blink = Blink() auth = Auth({"username": 'x', "password": 'x'}, no_prompt=True) blink.auth = auth blink.start() #auth.send_auth_key(blink, "x") #blink.setup_post_verify() ###### hier den Dateinamen/Pfad eintragen, den das snapshot Bild erhalten soll - bei mir Flur und Garten Kamera ##### bild = './haustuer.jpg' #### hier Eure Kamera 1 eintragen und weitere Einträge für mehr Kameras vornehmen #### camera = blink.cameras['Haustür'] camera.snap_picture() blink.refresh() camera.image_to_file(bild) time.sleep(10) blink.refresh(force=True)
-
-
Wurde eingefügt. Konsole geht. Blockly immer noch nicht...
-
unter javascript adapter hattest du aber "exec" und "send to host" erlauben angeklickt ? Ansonsten weiß ich nun auch nicht mehr weiter, denn es sollte funktionieren.