NEWS
Synology Surveillance Station API
-
@hollywoot sagte in Synology Surveillance Station API:
Ich kann mir weder in der App, noch im Browser (Chromium, Chrome, Vivaldi, Firefox) das Livebild anzeigen lassen.
Also selbst außerhalb des VIS nicht - da eiert sich der Browser zu Tode...Dann stimmt aber irgendwas mit der Pfadfreigabe auf der Syno bei Dir nicht.
Da würde ich die Fehlersuche mal ansetzen.Du kriegst also auch kein Livebild, wenn Du direkt den Link aus der Syno kopierst?
In der Surveillance Station auf Kameras, dann Rechtsklick auf die gewünschte Kamera und dann Freigeben?
Den Link kopieren und in einen Browser einfügen.Wenn das schon nicht geht, würde ich vielleicht die Kamera einmal neu hinzufügen.
DSM ist aktuell? -
@mehrwiedu
Davon hab ich nicht gesprochen.
Ich nehme das Skript und den durch das Skript erzeugten Link.
Natürlich mit passender SID -
@hollywoot sagte in Synology Surveillance Station API:
@mehrwiedu
Davon hab ich nicht gesprochen.
Ich nehme das Skript und den durch das Skript erzeugten Link.
Natürlich mit passender SIDÖhhh. Kopfkratz
Der durch das Skript generierte Link sollte mit dem Link aus der Synology identisch sein. Ist er das bei Dir?
Bekommst Du das Livebild auch nicht angezeigt, wenn Du das Skript außen vor lässt und den Link direkt aus der Syno holst?Nur so lässt sich doch klären, ob es überhaupt am Browser oder am Skript, bzw. an den Dingen hinter der Pfadfreigabe liegt, oder vielleicht direkt an dieser.
-
sprecht ihr Beide vom gleichen Thema ? Geht es um Schnappschuss oder Livebild ?
Die Frage von @Ragnar war doch Schnappschuss, oder ? -
@dslraser sagte in Synology Surveillance Station API:
sprecht ihr Beide vom gleichen Thema ? Geht es um Schnappschuss oder Livebild ?
Die Frage von @Ragnar war doch Schnappschuss, oder ?Also ich meine das Skript von Apollon mit dem Livebild.
Aus den Fragen an mich von hollywoot entnehme ich, dass er sich auch darauf bezieht, weil er ja auch den Link mit dem Skript von der Syno holt.
Mit Ragnars Snapshot hatte die Frage nach meinem Browser glaube ich nichts zu tun. Das ist ein separates Skript, auf das ich auch gar keinen Bezug genommen habe in meinem ersten Beitrag in diesem Thema. -
@dslraser
@mehrwiedu
Japp, hier geht's jetzt grad wieder um das Livebild.
Ich teste das mal mit dem "Freigeben"-Link... melde mich dann zurück.EDIT
Also. Ich bekomme einen Link. Allerdings nur einen RTSP oder einen RTSP over HTTP Link. Und dieser hat mit dem Link, der per Skript erzeugt wird nicht viel gemeinsam. Auch ein Copy&Paste in den Browser bringt mir kein Bild. -
@hollywoot
also bei mir haben die Freigabe Links und der Link vom Apollon77 Script generierte Link nichts gemeinsam.
Der generierte Link aus dem Script läuft sich bei mir im Browser auch zu tode...
Allerding kann ich den Freigabe Link über RTSP öffnen. Es kommt dann mir mir am Mac die Frage ob ich VLC öffnen möchte und wenn ich sage ja: Livebild im VLC Player. -
@dslraser
Dann haben wir ja schonmal was gemeinsam.
Der RTSP-Link im VLC funktioniert problemlos. Nur möchte ich gerne über das VIS mit der App auf das Widget klicken und ein Livebild haben...
Das VIS kann kein RTSP spielen? -
Hat das Skript bei Euch denn schonmal gelaufen und auch ein Livebild gezeigt?
Ich nutze eine Wanscam Kamera, die lediglich MJPEG liefert. Kann es vielleicht damit zusammenhängen?
Ich könnte noch eine HIKAM S6 ausprobieren, aber ich glaube die liefert auch kein RTSP.Was für ein Widget nehmt ihr denn dafür?
Bei mir funktionierte nur eins. jqui-Kamera Dialog, allerdings muss ich da aktiv klicken, damit das Popup mit dem Livebild aufgeht. -
@mehrwiedu
also bei mir hat der generierte Link aus dem Skript von Apollon77 für Livstream schon mal funktioniert, ist aber schon länger her.
Ich nutze den im Moment gar nicht, interessiert mich nur.PS:
(der Link für Schnappschüsse funktioniert immer noch genau so) -
"Mit welchem Benutzer führst du ioBroker aus?
Guck doch mal nach den Rechten. Oder ändere den Pfad in ein /home/ Verzeichnis wo dein User definitiv Schreibrechte besitzt... Wobei das bei /tmp/ auch der Fall sein sollte."
@hollywoot :
Ähh, sorry für die doofe Frage? Meinst Du den User, der im admin-Adapter auftaucht? Das ist der admin...
Habe ich Dich richtig verstanden? -
@dslraser
Jo, der Snapshot funktioniert wunderbar.
Das Livebild würde mich echt reizen...@Ragnar
Ich meine den User, der ioBroker ausführt. Wo läuft dein ioBroker drauf? Synology? Raspberry? BananaPi?
Linux? Windows?
Im Falle von Linux würde ich mich mit dem "Besitzer" von ioBroker mal in der Shell einloggen und versuchen eine Datei in /tmp/ anzulegen. Sollte es nicht gehen, braucht dein User wohl Schreibrechte (chmod +w /tmp) -
@hollywoot
iobroker läuft auf einem raspi, also linux.
Ich bekomme den Besitzer des iobroker mit ps aux | grep -i iobroker, richtig?Hier der ouput:
pi@raspberrypi:~ $ ps aux | grep -i iobroker iobroker 8857 3.6 8.0 160172 76800 ? Ssl 18:26 5:20 iobroker.js-con troller iobroker 8869 0.4 6.4 144884 60820 ? Sl 18:26 0:43 io.admin.0 iobroker 8879 0.0 3.3 118216 32216 ? Sl 18:26 0:07 io.discovery.0 iobroker 8889 0.2 5.6 132404 53528 ? Sl 18:26 0:21 io.hm-rega.0 iobroker 8899 0.1 4.4 132516 42156 ? Sl 18:26 0:10 io.cloud.0 iobroker 8909 0.0 3.7 130144 35232 ? Sl 18:27 0:08 io.web.0 iobroker 8919 0.1 4.2 121096 40592 ? Sl 18:27 0:12 io.hm-rpc.0 iobroker 8929 0.2 5.8 141856 55612 ? Sl 18:27 0:18 io.telegram.0 iobroker 8939 0.0 3.3 118240 31872 ? Sl 18:27 0:07 io.text2command .0 iobroker 8949 0.0 3.5 119880 33544 ? Sl 18:27 0:07 io.backitup.0 iobroker 8959 0.1 5.2 133908 50212 ? Sl 18:27 0:16 io.history.0 pi 9717 0.0 0.0 4372 544 pts/0 S+ 20:55 0:00 grep --color=au to -i iobroker
Wenn ich mich als user "pi" anmelde, kann ich problemlos eine Datei erstellen.
Weiterhin schreibt der backitup-Adapter die Sicherungen auch in /tmp/, daran wird's wohl also doch nicht liegen, oder? -
Ich hab's. Ich Horst.
iobroker läuft bei mir auf 2 raspis im multihost modus. Telegram auf dem master, die js-Instanzen laufen auf dem slave.
Ihr ahnt es schon: die Datei snap.jpg wurde jedes Mal planmäßig von der Syno abgeholt und unter /tmp auf dem Slave gespeichert. Der Telegram-Adapter sucht auf dem Master unter /tmp, findet aber naturgemäß keine Datei.Habe nun ein fach eine js-Instanz auf dem Master hinzugefügt. Et voilà, alles läuft wie es soll.
Das erklärt auch eine Vielzahl von Problemen der letzten Wochen, warum diverse Skripts bei mir nicht liefen. :schäm:
Danke für Euren Support. -
@hollywoot said in Synology Surveillance Station API:
Update für alle:
mein System war scheinbar nicht ganz in Ordnung.
Zudem hatte ich node 10 installiert. Diese beiden Sachen zusammen haben scheinbar dazu geführt, dass ich die hier geposteten Skripte nicht nutzen konnte.Nachdem ich jetzt ioBroker sauber neu aufgesetzt habe, funktioniert alles wie es soll!
Ein riesiges Dankeschön geht raus an @dslraser, der sich stundenlang mit mir im TeamViewer hingesetzt hat um das Problem zu lösen. Alleine hätte ich wohl spätestens nach 4-5 Stunden wieder aufgegeben.Top!
Ich habe ähnliche Logs:
kannst Du @hollywoot oder @dslraser oder jemand anderes mir hier etwas weiterhelfen? heisst das ebenso, dass "mein System nicht ganz in Ordnung ist"?
Was genau waren denn die Probleme?Mein Skript sieht folgendermaßen aus - Vielen Dank hier an der Stelle an das Forum!!!!:
dazu gesagt sei: Ich bin absoluter Newbie und Anfänger, lese mich aber gerne ausgiebig ein und recherchiere aufwändig... dennoch: aller anfang ist schwer habt bitte Nachsicht mit mir...
Mein Ziel soll sein, dass bei einem Trigger (Alarmauslösung der Alarmanlage) zu einem Zeitpunkt x eine gewisse Anzahl an Screenshots von Kameras (Synology Surveillance Station) ab Zeitpunkt y-Minuten vor dem Zeitpunkt x bis z-Minuten nach x in eine Cloud (oder per Mail o.ä.) geschoben werden. Also z.B., dass im Alarmfall sekündliche Standbilder von Zeitpunkt 1 Minute vor dem Alarm bis 5 Minuten nach dem Alarm in die Dropbox gehen.
Möglich natürlich auch gleich als kompletter Stream, also Video jeder Kamera.Davon bin ich noch weit entfernt, aber das stell ich mir vor... und mit dem Skript von oben möchte ich erste Erfahrungen sammeln...
Vielleicht noch was zu meinem Set-up:
Raspberry Pi 3B+ (Raspbian Stretch with desktop and recommended software, wobei ich den Desktop und die Software bislang nicht nutze), ioBroker (u.a. Lupusec, javascript, pushover ), Synology DS, Surveillance Station, alles über LANBei Fragen, einfach her damit!
Danke für jede Hilfe...
-
@hobbycamper sagte in Synology Surveillance Station API:
Hi zusammen,
hat noch jemand @apollon77 Skript am laufen?
var request = require('request'); // Konfiguration var user = "XXXXXX"; // Synology Benutzer mit Berechtigung die Kamera anzuzeigen var pass = "XXXXXXX"; // Passwort zu eben eingegebenem Benutzer var ip = "192.168.178.XXX"; // IP-Adresse eures Synology-NAS var port = XXX; // default Port der Surveillance Station var cameraID = 1; // ID der Kamera, welche angezeigt werden soll createState('javascript.' + instance + '.Anzeigen.Kamera.Eingangstuer-Stream', {'type': 'string', 'read': true, 'write': true, 'role': 'value', 'def': ""}); // Authentifizierung an Synology Surveillance Station WebAPI und auslesen der SID function updateStreamUrl() { request('http://' + ip + ':' + port + '/webapi/auth.cgi?api=SYNO.API.Auth&method=Login&version=3&account=' + user + '&passwd=' + pass + '&session=SurveillanceStation&format=sid', function (error, response, body) { //console.log('error:', error); // Print the error if one occurred //console.log('statusCode:', response && response.statusCode); // Print the response status code if a response was received //console.log('body:', body); // Print the HTML for the Google homepage. try { var bodyObj = JSON.parse(body); } catch (e) { console.log("Error update SurveillanceStation Stream URL: " + e); return; } if (bodyObj && bodyObj.data && bodyObj.data.sid) { var sid = bodyObj.data.sid; setState('javascript.' + instance + '.Anzeigen.Kamera.Eingangstuer-Stream', 'http://' + ip + ':' + port + '/webapi/SurveillanceStation/videoStreaming.cgi?api=SYNO.SurveillanceStation.VideoStream&version=1&method=Stream&cameraId=' + cameraID + '&format=mjpeg&_sid=' + sid, true); } else { console.log("Invalid return on SurveillanceStation Stream URL: " + JSON.stringify(bodyObj)); return; } }); } schedule("0 * * * *", function() { updateStreamUrl(); }); updateStreamUrl();
Lief monatelang ohne Probleme. Scheinbar nach irgend einem Update, entweder iobroker oder SurveillanceStation (aktuell 8.2.3-5828), kommt kein Bild mehr. Wenn ich die angelegte URL aus dem Datenpunkt in den Browser kopiere, kommt auch kein Bild.
Das wäre z.B. das Format des aktuellen Datenpunkt:http://192.168.178.XXX:XXX/webapi/SurveillanceStation/videoStreaming.cgi?api=SYNO.SurveillanceStation.VideoStream&version=1&method=Stream&cameraId=1&format=mjpeg&_sid=ibdh4MDGQhITs1790QDN403203
Es kommt auch nicht "Seite nicht erreichbar", sondern der Browser sucht und sucht...
Es hilft auch kein Neustart des iobroker oder der synology.
Im Log kommt auch nichts ungewöhnliches:
javascript.0 2019-03-02 08:29:30.867 info script.js.common.Kamera: registered 0 subscriptions and 1 schedule javascript.0 2019-03-02 08:29:30.842 info Start javascript script.js.common.Kamera javascript.0 2019-03-02 08:29:30.828 info Stop script script.js.common.Kamera
Ist da jemand schon was bekannt?
LG
ThomasDie Problem habe (hatte) ich auch.
Snology hat mit dem Update auf die Surveillance Station 8.2.3-5828 die API verändert. Das Problem wird in den einschlägigen Foren auch diskutiert. Mittlerweile gibt es einen Fix in Form eines inoffiziellen Updates auf die 8.2.3-5829.Kann von hier runtergeladen werden:
https://supfiles.synology.com/sharing/oXkk1MptJDer Zugang ist passwortgeschützt. Gebe ich gern auf Chatanfrage weiter, da ich nicht weis ob ich das hier frei posten kann/darf.
-
Sauber von Dir!!!!
Läuft wieder!!
Danke!! -
@Samson71
Tipp top, hat wunderbar geklappt! Ich danke dir!!! -
Funktioniert bei mir auch!
Super. Danke!Ich musste nur erst meine Kamera ID herausfinden
Dazu einfach in der SSS einen Rechtsklick auf die Kamera unter "IP-Kameras",
Dann "Stream Pfad freigeben",
Dort steht dann am Ende der URL "...Sms=4.unicast", was bedeutet dass diese Kamera jetzt ID 4 hat. -
Hab gerade Anfrage zwecks Zugang gestellt, mal sehen ob es dann auch wieder bei mir läuft,
wär ja echt Klasse.