NEWS
Blink Camera System
-
@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"}}
-
@zoid1988 hast du das Script alles in eine abfrage gepackt? sonst klappt es nicht, da sich der Token usw. bei jeder Anmeldung ändern.
Kamera abschalten 1:1 von @Pischleuder übernommen:
#!/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
zum scharf schalten einfach nur /disarm zu arm ändern
ich hab auch nur mein passwort und die mail ersetzt und dann die blockly scipts weiter oben kopiert, läuft.
EDIT: netzwerk id natürlich auch noch ändern
-
#!/bin/bash PASSWD=$(curl -H "Host: prod.immedia-semi.com" -H "Content-Type: application/json" --data-binary '{ "password" : "MEIN_PASSWORT", "client_specifier" : "JV", "email" : "MEINE_MAIL" }' --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/MEINE_NETWORKS_ID/arm
so sieht mein File aus. Also genau gleich wie das, das ihr auch verwendet.
Um ehrlich zu sein versteh ich das nicht ganz. Hab jetzt sogar schon die beiden .sh files über SCP runtergeladen und alles nochmal mit Notepad ++ angepasst und dann wieder hochgeladen (nur um sicher zu gehen das es keine Probleme mit den Zeichen gibt).
Leider hat das auch nichts gebracht ...
-
Moin,
du musst das hier nehmen: https://github.com/Jensekin/ioBroker.blink
Wenn du das nicht installierst, dann wird dir im iobroker auch nichts angezeigt.
Die Scripte ändern lediglich online den Status (also vom blink account).
Der Adapter fragt diesen Status ab und trägt ihn in die Datenpunkte ein. -
Hi,
danke für die Info.
Ich hab allerdings im Moment noch das Problem das ich schon beim manuellen starten des Scripts einen " Unauthorized Access" bekomme.LG
-
@zoid1988 hast du denn die lib installiert? node-blink-security bzw. den iobroker.blink adapter (hier ist die lib quasi verlinkt und wird mit geladen)
-
@Zandrial
Es liegt offenbar an der nicht installierten lib ... Hab gerade vorhin den Adapter getestet und voila, alles funktioniert genau so wie erwartet. Vielen DankWas habt ihr beim Polling Intervall eingestellt ? Was ist default ?
LG
-
Hallo,
ich habe auch nach dem installieren des Adapters etc das Problem, dass a) mein zurückgelieferter Login-String anders aussieht (ich müsste für den Auth-Code die Stellen 74 bis einschl. 95 nehmen) und ich b) auch dann immer noch "{"message":"Unauthorized Access","code":101}" zurückbekomme...
-
nach ändere bitte diesen Wert "cut -c28-49" auf Deine Bedürfnisse - beide Werte, bis der richtige String genommen wird.
-
danke - hab ich gemacht.
Habs für mich jetzt aber gefunden: https://community.home-assistant.io/t/looking-at-blink-cameras/26173/25In der Login-Antwort ist ein region-Code. Bei mir e001. Den disarm-Aufruf brauche ich dann so:
curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --data-binary --compressed https://rest-e001.immedia-semi.com/network/MEINE_ID/disarm
Damit gehts
-
Da die Antwort vom Login-Rest-Aufruf sich geändert hat, ging es bei mir nicht mehr.
Daher habe ich den Login-Aufruf bzw. das Setzen der Variable angepasst:PASSWD=$(curl -H "Host: prod.immedia-semi.com" -H "Content-Type: application/json" --data-binary '{ "password" : "MEINPASSWORT", "client_specifier" : "iPhone 9.2 | 2.2 | 222", "email" : "meineMail@provider.de" }' --compressed https://rest.prde.immedia-semi.com/login | jq -r '.authtoken.authtoken')
dafür muss man jquery installiert haben:
sudo apt-get install jq
-
kriegt man denn ein Bild oder Stream in der VIS dargestellt mit dem Adapter?
-
@ebu
nein. -
Kann man denn irgendwie das Thumbnail vom Server mit einem Curl Befehl runterladen? Hat das schon jemand von euch geschafft?
-
@FredPlus , ja das geht:
PASSWD=$(curl -H "Host: prod.immedia-semi.com" -H "Content-Type: application/json" --data-binary '{ "password" : "DeinPasswort", "client_specifier" : "", "email" : "yourmail@gmx.de" }' --compressed https://rest.prde.immedia-semi.com/login | cut -c28-49) curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --compressed https://rest.prde.immedia-semi.com/api/v3/accounts/DeineAccountID/homescreen curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --compressed https://rest.prde.immedia-semi.com/network/DEINENETWORKID/camera/DEINEKAMERAID/thumbnail IMAGE=$(curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --compressed https://rest.prde.immedia-semi.com/api/v3/accounts/DEINEACCOUNTID/homescreen | cut -c806-900) ## IMAGE Herunterladen curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --compressed https://rest.prde.immedia-semi.com/$IMAGE.jpg > /opt/iobroker/Bild.jpg
-
Danke für Deine Antwort. Aber leider bekomme ich das so nicht zum Laufen. Ich muss erst einmal die ersten drei Befehle so abändern:
PASSWD=$(curl -H "Host: prod.immedia-semi.com" -H "Content-Type: application/json" --data-binary '{ "password" : "MeinPasswort", "client_specifier" : "iPhone 9.2 | 2.2 | 222", "email" : "MeineEmail" }' --compressed https://rest.prde.immedia-semi.com/login | jq -r '.authtoken.authtoken') curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --compressed https://rest-e001.immedia-semi.com/api/v3/accounts/ACCOUNTID/homescreen curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --data-binary --compressed https://rest-e001.immedia-semi.com/network/NETWORKID/camera/CAMERAID/thumbnail IMAGE=$(curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --compressed https://rest-e001.immedia-semi.com/api/v3/accounts/ACCOUNTID/homescreen | cut -c806-900)
Wenn dann der letzte Befehl ausgeführt wird, habe ich später eine Bild.jpg Datei mit folgenden Inhalt:
## IMAGE Herunterladen curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --compressed https://rest-e001.immedia-semi.com/$IMAGE.jpg > /home/scripts/Bild.jpg
<h1>Not Found</h1>
Also kann er doch irgendwie die URL nicht finden, von der er das Bild runterladen möchte?
Ich habe eben mal dieses Script auf Win 10 probiert:
https://github.com/nayrk/Blink/blob/master/BlinkVideoDownloader.ps1
Damit hat er mir das Bild runtergeladen. Sollte also möglich sein. Leider verstehe ich davon zu wenig.
Edit:
Also mit diesem Aufruf bekomme ich mein Bild geladen:
curl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH:$PASSWD" --compressed https://rest-e001.immedia-semi.com/media/e001/account/ACCOUNTID/network/NETWORKID/camera/CAMERAID/thumbnail/fw_7.87__cyUMM8D5_2020_02_09__13_11PM.jpg > /home/scripts/Bild.jpg
Wie mache ich denn das jetzt mit der wechselnden Bezeichnung des Bildes? Hat hier jemand eine Idee?
Grüße
-
@FredPlus
Du könntest Dir vorher eine Liste ausgeben und daraus das passende Bild / Video wählencurl -H "Host: prod.immedia-semi.com" -H "TOKEN_AUTH: authtoken from login" --compressed https://rest.prod.immedia-semi.com/api/v2/videos/unwatched