NEWS
Blink Camera System
-
Kurz mal gegooglet. Die sind auch Cloud basierend und haben wohl keinen dirketen Stream über rtsp oder http. Eine Einbindung vom Video in der VIS dürfte also nicht möglich sein.
Die Steuerung der Kamera dürfte aber mittel IFTTT möglich sein. Da müsste man sich mal angucken welche Funktionen man über IFTTT benutzen kann (z.B. Aufnahme starten, Motion erkannt usw.).
Für den Preis bekommst du sicher bessere Kameras (kann dir keine Kaufempfehlung geben) die du auch in ioBroker einbinden kannst. -
Das Blink System gab es vor kurzem für knapp €50 mit 1, knapp über €100 mit 2 Kameras bei Amazon (Abverkauf da neuere Version released?). Für den Preis finde ich das System voll in Ordnung, auch wenn man, außer mit Alexa, kein Life Video streamen kann.
Die Funktionen sind zwar sehr beschränkt, kein Vergleich zu konventionellen IP Cams, die Einfachheit, Wetterfestigkeit und vor allem der Batteriebetrieb haben allerdings auch positive Seiten.
Rudimentäre Steuerung ist möglich über IFTTT (nach Blink Europe suchen). In Verbindung mit der Life360 App auch automatisches Scharf stellen wenn das letzte Familienmitglied das Haus verlässt und umgekehrt.
Genau das würde ich aber lieber mit iobroker machen (noch Anfänger mit iobroker). Leider gibt es dazu sehr wenig Dokumentation und in den IFTT Applets sind keine Webhooks sichtbar.
Durch die IFTTT Applets werden im Prinzip das laufende Männchen und der Aktivierungs Button betätigt.
Kann man das irgendwie abfangen und damit rausfinden welchen request man da senden müsste? Oder bin ich da zu naiv?
-
@Albert-K Du kannst die Kamera dann über ioBroker mit hilfe von IFTTT steuern. Alle funktionen die IFTTT für den dienst hat, kannst du dann mit ioBroker steuern.
-
Ja, habs gerade gelesen, aber noch nicht probiert. Noch lieber natürlich ganz ohne IFTTT, aber für den Preis kann man halt nicht alles haben was man so möchte Danke für den Hinweis
-
@Albert-K denke das es ganz ohne IFTTT nicht geht, da wie gesagt das ganze wohl Cloud basierend ist.
-
Danke nochmal. Wenn ich das System über IFTTT und iobroker scharf schalten kann und umgekehrt und die Life360 App weglassen kann, bin ich schon mal zufrieden
-
Moin!
Hier findest Du eine inoffizielle Beschreibung der Blink API:
https://github.com/MattTW/BlinkMonitorProtocolHab's aber selbst nicht getestet.
-
Danke! Mal sehn was ich damit anfangen kann.
-
Da heute die neue Version raus gekommen ist und für mich recht attraktiv klingen, wäre ich auch an einer Lösung im iobroker sehr interessiert. Wenn ich eine Lösung habt, postet mal bitte hier. Dank!
-
Für Fhem gibt es ein Modul. Irgendwie ist es also wohl möglich.
-
Moin,
EDIT: das unten stehende funktioniert seit Mai 2020 nicht mehr.
Weiter geht es hier: https://forum.iobroker.net/post/431057ich habe für mich nun anhand des MonitorProtocol von github folgende Lösung gefunden, die für Euch auch funktionieren sollte:
1.) Der "authtoken" ändert sich bei jedem Zugriff über curl erneut
2.) die "networkid" bleibt immer gleichUm beides herauszufinden loggt ihr euch auf die Konsole ein und gebt ein:
curl -H "Host: prod.immedia-semi.com" -H "Content-Type: application/json" --data-binary '{ "password" : "EuerPasswort aus der blink App", "client_specifier" : "Blink", "email" : "eure-Email Adresse" }' --compressed https://rest.prde.immedia-semi.com/login
Es sollte so etwas erscheinen wie (ohne Select all):
{"authtoken":{"authtoken":"0mwQzPdkPL6HXy1UXrYqIQ","message":"auth"},"networks":{"162443":{"name":"ZuHause","onboarded":true}},"region":{"prde":"Europe"}}
Hier interessieren uns diese beiden Strings:
0mwQzPdkPL6HXy1UXrYqIQ und 162443Der erste ist der sich ständig ändernde Authorisierungsstring, der zweite die Netzwerk-ID.
Um den Authorisierungsstring abzufangen habe ich alles in eine batch Datei geschrieben:#!/bin/bash PASSWD=$(curl -H "Host: prod.immedia-semi.com" -H "Content-Type: application/json" --data-binary '{ "password" : "EUER_BLINK_PASSW", "client_specifier" : "JV", "email" : "EURE_EMAIL" }' --compressed https://rest.prde.immedia-semi.com/login | cut -c28-49) curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --data-binary --compressed https://rest.prde.immedia-semi.com/network/EURE_NETZWERK_ID/disarm
Die Datei lautet in meinem Fall blink-off.sh für unscharf schalten und wenn ihr am Ende der Datei das disarm gegen arm tauscht, dann in eine neue Datei mit blink-on.sh speichern.
Beide Dateien in /opt/iobroker speichern. Nun könnt ihr von der Konsole bereits die Kamera scharf / unscharf schalten.
Derzeit setze ich das noch zusätzlich in ein Skript von iobroker um.
3.) Installiert den blink-adapter
Weiteres folgt....
Gruß
Pischleuder -
Hey Pischleuder, vielen Dank. Das ist ja super. Ich warte noch ob, man sie günstiger über Blackfriday bekommt und dann würde ich das gerne mal testen.
LG Smarti2015
-
Über ifft überprüfe ich, ob jemand anwesend ist oder nicht. Daraus ergibt sich dieses blockly-Script, was sicher zu optimieren ist.
Weiterhin erfolgen durch weitere scripte, ob die Uhrzeit nach 23.00 Uhr ist und vor 07.00 Uhr - dann wird trotz Anwesenheit die Kamera scharf gestellt. Die Diebe kommen ja ggf. auch in der Nacht Ab 06.00 Uhr soll sie wieder unscharf gehen.
-
Hi Pischleuder, auch von meiner Seite vielen Dank !!! Ich habe das Skript so installiert, wir von Dir vorgegeben und es funktioniert super. Sag gerne Bescheid, wenn ich den Adapter testen soll.
Ich habe insgesamt 4 Kameras und zwei Sync Module. Ich habe mit Deinem Curl Befehl zwei Network Strings bekommen und damit dann je zwei Skripte erstellt. Ich hatte zunächst Probleme mit dem "Curl" Aufruf ...... curl -H "Host: prod.immedia-semi.com" ..... konnte nicht aufgelöst werden mit curl -H "Host: rest.prod.immedia-semi.com"... funktioniert ist. Das Skript läuft allerdings durch.
Noch eine kleiner Bemerkung - unter Linux muss man natürlich noch den Benutzer/Gruppe setzen und die Datei ausführbar (chmod) machen.
VG,
Newbie -
Hallo Pischleuder, danke für den Adapter, habs eben mal einrichtet und funzt alles soweit
Besteht die Möglichkeit auch den Live RTSP Stream zu extrahieren wie es das FHEM Modul macht zur Übergabe an VIS bzw. Motioneye -> VIS?FHEM Modul: https://github.com/viegener/Telegram-fhem/blob/master/Blink/48_BlinkCamera.pm#L884
Sollte direkt zum richtigen Abschnitt ($cmd eq "liveview") springen sofern kein Update war, ein paar Zeilen weiter unten wird dann die URL zusammengesetzt:
$hash->{HU_DO_PARAMS}->{url} = $hash->{URL}."/network/".$net."/camera/".$par1."/liveview";Die Netzwerke usw. parsed dein Adapter ja schon, dann sollte das wohl auch irgendwie gehen oder? Würde mich freuen
-
Moin,
das ist der Ehre zu viel - es ist nicht mein Adapter. Habe lediglich ein bischen "herumgescripted".
Ich schau mir das mal an und lasse von mir hören....
-
@Pischleuder ups, trotzdem danke, sonst hätte ich den Adapter nicht (so schnell) gefunden
Ich hab schon versucht per putty einfach mal die ID's bzw. Netzwerke der Kameras in die genannte URL-Template einzufügen um an die RTSP-Url zu kommen aber gescheitert... hab noch nicht viel Ahnung von JS und benutze ioBroker erst ein paar Tage -
@Pischleuder
Hi und vielen Dank für die investierte Zeit
Ich verfolge diesen Post schon länger und wollte mich eigentlich schon um die Weihnachtszeit erkundigen ob es schon was neues dazu gibt.
Gestern Abend hab ich dann durch Zufall wieder rein geschaut und gesehen das du einen Adapter gebastelt hast Leider lässt sich dieser Adapter nicht installieren.Wenn man auf GitHub nachschaut dann bekommt man die Info das keine Packages gefunden werden.
Liebe Grüße,
Thomas -
@zoid1988 das Paket finde ich gar nicht im npm.
@Pischleuder hat ja bash scripts gebastelt die das gleiche machen, die kann man einfach über blockly ausführen lassen.Ich habe aber noch https://www.npmjs.com/package/node-blink-security gefunden, was eigentlich auch funktionieren sollte (noch nicht probiert) und anscheinend leider auch ohne Live-Stream.
-
@Zandrial
Hab gerade versucht das mit den Scripts umzusetzen.
Wenn ich die erste Abfrage mache bekomme ich den Token und die Network ID. Wenn ich dann allerdings die Scripte teste bekomm ich folgende Antwort retour:{"message":"Unauthorized Access","code":101}
Wenn ich die erste Abfrage starte sieht meine Antwort auch irgendwie anders aus:
{"account":{"id":1234},"client":{"id":123456},"authtoken":{"authtoken":"TOKEN_ID","message":"auth"},"networks":{"1234":{"name":"Zuhause","onboarded":true}},"region":{"e001":"Europe"}}