OK, cool, kann da jemand helfen?
NEWS
Latest posts made by Brekkis
-
RE: Zugriff auf Bilder aus der VIS2
@homoran said in Zugriff auf Bilder aus der VIS2:
e
und wie registriere ich die? Geht das nur über den manuellen Upload per Dateimanager aus der Vis?
-
Zugriff auf Bilder aus der VIS2
Hi,
ich kämpfe jetzt schon seit ein paar Tagen mit dem Einbinden von Bildern von der Blink-Kamera in die Vis.
Was ich vorhabe:- Übersicht der Bilder der verschiedenen Blink-Kameras auf einer Seite der Vis. Aktualisierung alle paar Minuten.
- Wenn Bewegung von einer Kamera erkannt wird, oder Auslöser Klingel an der Blink Doorbell soll ein Popup-Fenster aufgehen und das Kamerabild groß anzeigen.
Was bisher geht:
- Zugriff auf die Blink-Kameras via Blinkpy und Homebridge Zubehör Adapter und ein paar Pythonscripten (Habe dazu ein HowTo gemacht, ist alles hier beschrieben: https://forum.iobroker.net/topic/23745/blink-camera-system/395?_=1743064049834)
Ich kopiere dann die Bilder mittels Pythonscript aus dem Ordner /tmp in den Ordner
/opt/iobroker/iobroker-data/files/vis-2.0/img/
(habe bisher auch schon andere Ordner ausprobiert, aber nichts geht. auch diverse Widgets (Bild-Widget, Html-Widget, Cam-Widget gehen nicht)Über das Dateisystem (WinSCP) sehe ich dass die Bilder auch dort pysikalisch liegen, aber von der Vis aus habe ich keinen Zugriff auf die Bilder.
Habe schon mit Rechtevergabe auf den Ordner rumprobiert und auch ChatGPT mit allen Problemen gefüttert, aber weder Kollege GPT noch ich kommen weiter.
kann jemand helfen?
Gruß Brekkis
-
RE: Blink Camera System
@arteck Danke für den Tipp, geht leider immer noch nicht.
Das Bild liegt im Ordner /opt/iobroker/pics. Von der Visu aus (Image oder HTML Widget, Ordnername und Bildname eingetragen) zeigt es aber nichts an.Wenn ich über WINSCP auf das Dateisystem zugreife und auf den Ordner /opt/iobroker/pics navigiere und das Bild ins Windowssystem herunterlade und öffne sehe ich das Bild von der Kamera.
Ich kann es einfach nicht in der Vis anzeigen. Verflucht.
Bild-Widget bei Quelle: ../opt/iobroker/pics/blink.jpg
Es wird nur ein Frame mit Fragezeichen dargestellt. Oh mann, ich bin auf der Zielgeraden und dann sowas.... -
RE: Blink Camera System
So, jetzt ist schon wieder ein Punkt, wo ich nicht weiterkomme.
Ich habe das Script und die Einstellungen soweit, dass ein Bild "Blink.jpg" im Ordner
/opt/iobroker/iobroker-data
abgelegt wird. Wie kann ich von der Vis auf das Bild zugreifen, bzw. es mir anzeigen lassen? Habe das Bild schon in den Imageordner auf den die Vis zugreift gelegt, aber da erscheint kein Blink.jpg!
was mache ich noch falsch?Gruß Brekkis
-
RE: Blink Camera System
@thomas-braun Das habe ich doof geschrieben, das ist keine Mindestanforderung, sondern meine aktuell installierte Version. Ich schreibe das mal um. Danke
-
RE: Blink Camera System
@thomas-braun Ok, habe deinen Hinweis im HowTo eingearbeitet. Danke dir. Ist dir sonst noch was aufgefallen, was falsch oder nicht so schön ist....?
-
RE: Blink Camera System
Howto Blink in IoBroker einbinden
WICHTIG: Diese Anleitung ist noch ein Entwurf, ich brauche hier vermutlich noch Input von den Profis hier im Forum, aber Ziel ist es, eine für jeden nachvollziehbare Anleitung als Basis für die Einbindung der Blink-Kameras in IoBroker zu erhalten! edit 2025-03-28: es scheint zu funktionieren.
Basis dieses How-To sind die Informationen zusammengefasst aus diesem Thread und dem GitHub-Projekt: https://github.com/fronzbot/blinkpy
Ich habe mal hier aus dem Thread die Informationen, Codezeilen und Scripte übernommen, damit ein ordentliches How-To für Neulinge nachvollziehbar dokumentiert ist.... Gerne könnt ihr mir helfen, das How-To zu vervollständigen, zu berichtigen, und lauffähig zu machen, damit alle ihre Blink-Kameras in Iobroker einbinden können)
Will vorher noch anmerken, dass ich nicht der Coding-Spezialist bin und mit dem "Try and Error-Prizip" arbeite.
Start des HOWTO (Stand 2025-03-28)
Ich werde den Stand (nach Korrekturen) dann immer updatenWelche Funktionen erwarten euch nach erfolgreicher Durchführung:
- Blink Kameras sind in IoBroker eingebunden
- Zugriff auf das letzte gespeicherte Bild der Kameras
- Zugriff auf das letzte gespeicherte Video der Kameras
- Anzeige des Bilds in der Visu
- Anzeige des Videos in der Visu
- Scharfschalten und Deaktivieren via Datenpunkt
Grundlagen:
(bei mir läuft das ganze in einer Proxmox Installation auf Debian 11.3.0 in einem Container, sollte aber auch auf einem PI funktionieren)- funktionierende IoBroker-Installation
- funktionierende Homebridge-Installation (läuft bei mir in der V.1.85, ebenfalls in einer VM auf Proxmox)
- mindestens eine in der Blink-App funktionierende Kamera
- NodeJS und NPM (über Konsolenbefehl
nodejs -v
und
npm -v
abrufbar)
edit: (ich habe aktuell die Versionen NodeJS 22.14.0 und NPM10.9.2 installiert)zusätzlich installierte Adapter Ioboker:
- HAM (Homebridge Zubehör-Manager V5.3.1)
Im Homebridge-Adapter muss ersten Tab unter "zusätzliche NPM Module installieren" noch "homebridge-blink-for-home@3.7.6" eingetragen werden und der Haken "beim nächsten Start die Homebridge Plugins von NPM installieren" gesetzt sein! Im Tab Konfigurationsdatei muss folgender Code eingetragen werden:
"platforms" : [ { "name" : "Blink", "username" : "<your blink email address>", "password" : "<your blink password>", "pin" : "<pin>", "platform" : "Blink" } ]
Die Daten in den <> Klammern durch die eigenen Anmeldedaten ersetzen.
- Javascript Adapter und Grundverständnis für die Anwendung des scripens
Über die Konsole installiert: (via Putty oder wie bei mir über die Proxmox-eigene Konsole)
- Python, Ich habe V 3.11.2 installiert. Installation kann man überprüfen mit
python --version Python 3.11.2
Falls Python und Pip nicht installiert sind, geht man wie folgt vor:
Konsolenbefehle:
Version abfragenpython3 --version pip3 --version sudo apt update sudo apt install python3 sudo apt install python3-pip
- Blinkpy:
Installation als User "iobroker" siehe Beitrag von @Dr-Bakterius
sudo -H -u iobroker pip install blinkpy
sudo -H -u iobroker pipx install blinkpy
(edit: 27.03.2025, Hinweis @Thomas-Braun)
ich habe pip3 installiert und mit folgendem Befehl blinkpy installiert:sudo -H -u iobroker pip3 install blinkpy
Danach werden 2 Scripte angelegt
Script 1: "anmelden.py" (erstellen im Ordner: /home/iobroker)
erstellt wird das Script mitcd /home/iobroker
nano anmelden.py
Inhalt des Scripts:
import asyncio from aiohttp import ClientSession from blinkpy.blinkpy import Blink from blinkpy.auth import Auth async def start(): blink = Blink(session=ClientSession()) # Can set no_prompt when initializing auth handler auth = Auth({"username": <your username>, "password": <your password>}, no_prompt=True) blink.auth = auth await blink.start() await blink.save("/opt/iobroker/blink_auth.json") return blink blink = asyncio.run(start())
<your username>
<your password>
müssen mit den Anmeldedaten aus der Blink-Anmeldung (in der App) ersetzt werden.mit Strg + x beenden, speichern, Name bestätigen
mitpython3.11 anmelden.py
das Script ausführen
(Bei mir kam eine Fehlermeldung bzgl fehlendem aiohttp-Addon, das habe ich dann nochmal nachinstalliert)
pip3 install aiohttp
Danach sollte man/wird man nach seinen Anmeldedaten gefragt und erhält dann den 2FA Code welchen man angibt. Anschließend wird in /opt/iobroker die Datei blink_auth.json erstellt. Diese enthält die Anmeldedaten für künftige Abfragen. Den Pin auch in der Instanz des Homebridge Zubehör Adapter unter Konfigurationsdatei "PIN" eintragen.
Danach kann man das Skript wenn man möchte wieder löschen. (ich habe es nicht gelöscht)Um jetzt ein Bild abzufragen braucht man folgendes Skript:
erstellt wird das Script mitcd /opt/iobroker/bild.py
nano bild.py
Name kann frei gewählt werden.
Zugriffsrechte anpassen
/opt/iobroker/bild.py
mit den Rechten674
(ich habe die Rechte auf 655 gesetzt)cd /opt/ibroker chmod 755 bild.py
import asyncio from aiohttp import ClientSession from blinkpy.blinkpy import Blink from blinkpy.auth import Auth from blinkpy.helpers.util import json_load async def start(): blink = Blink() auth = Auth(await json_load("/opt/iobroker/blink_auth.json")) # Anmeldeinformationen laden blink.auth = auth # Anmeldeinformationen senden await blink.start() # Verbindung starten camera = blink.cameras['<Kameraname>'] # Kameraname angeben await camera.snap_picture() # Bild aufnehmen await blink.refresh() # Daten vom Blink-Server abfragen await camera.image_to_file('/opt/iobroker/blink.jpg') # Bild speichern return blink blink = asyncio.run(start())
<Kameraname>
muss mit dem Namen der Blink-Kamera in der App übereinstimmen!mit Strg + x beenden, speichern, Name bestätigen
mitpython3.11 bild.py
das Script ausführen
Der Aufruf des Bildes wird dann über den Javascript-Adapter gemacht:
Hierzu ein Blockly erstellen und u.a. diese Zeile (von @Dr-Bakterius ) eingeben:
(Trigger z.b. Cronjob, Tastendruck eines Button-Widgets fehlt hier noch, oder ggf. Datenpunkt "Bewegung" als Trigger)
Werde dann hier später noch ein komplettes Blockly-Script einfügenDas Bild liegt dann hier ab:
/opt/iobroker/blink.jpgÜber ein "Image-Widget" kann dann das Bild in die Visu eingebunden werden:
Ein Beispiel ergänze ich dann, wenn es bei mir funktioniert!Ergänzung für Abfrage des Videos und Kamera "ARM" und "DISARM" wird später noch ergänzt.
Ende des HowTos.
Ich hoffe hier um aktive Hilfestellung, damit wir eine verständliche Anleitung für jedermann hinbekommen.Bis demnächst, Gruß Brekkis