Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Synology Surveillance Station API

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

Synology Surveillance Station API

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
181 Beiträge 51 Kommentatoren 61.6k Aufrufe 35 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • dslraserD dslraser

    @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.

    hollywootH Offline
    hollywootH Offline
    hollywoot
    schrieb am zuletzt editiert von
    #122

    @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?

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      mehrwiedu
      schrieb am zuletzt editiert von
      #123

      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.

      dslraserD 1 Antwort Letzte Antwort
      0
      • M mehrwiedu

        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.

        dslraserD Offline
        dslraserD Offline
        dslraser
        Forum Testing Most Active
        schrieb am zuletzt editiert von dslraser
        #124

        @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)

        hollywootH 1 Antwort Letzte Antwort
        0
        • hollywootH hollywoot

          @Ragnar
          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.

          Gruß

          R Offline
          R Offline
          Ragnar
          schrieb am zuletzt editiert von
          #125

          "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?

          1 Antwort Letzte Antwort
          0
          • dslraserD dslraser

            @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)

            hollywootH Offline
            hollywootH Offline
            hollywoot
            schrieb am zuletzt editiert von
            #126

            @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)

            1 Antwort Letzte Antwort
            0
            • R Offline
              R Offline
              Ragnar
              schrieb am zuletzt editiert von
              #127

              @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?

              1 Antwort Letzte Antwort
              0
              • R Offline
                R Offline
                Ragnar
                schrieb am zuletzt editiert von
                #128

                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.

                1 Antwort Letzte Antwort
                2
                • hollywootH hollywoot

                  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!

                  M Offline
                  M Offline
                  MultiiSaft
                  schrieb am zuletzt editiert von MultiiSaft
                  #129

                  @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:

                  host.raspberrypi 2019-03-19 21:12:19.293 error instance system.adapter.javascript.0 terminated with code 0 (OK)
                  host.raspberrypi 2019-03-19 21:12:19.292 error Caught by controller[0]: at Object.onceWrapper (events.js:313:30)
                  host.raspberrypi 2019-03-19 21:12:19.292 error Caught by controller[0]: at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1083:12)
                  host.raspberrypi 2019-03-19 21:12:19.292 error Caught by controller[0]: at Request.emit (events.js:211:7)
                  host.raspberrypi 2019-03-19 21:12:19.292 error Caught by controller[0]: at emitOne (events.js:116:13)
                  host.raspberrypi 2019-03-19 21:12:19.292 error Caught by controller[0]: at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1161:10)
                  host.raspberrypi 2019-03-19 21:12:19.291 error Caught by controller[0]: at Request.emit (events.js:214:7)
                  host.raspberrypi 2019-03-19 21:12:19.291 error Caught by controller[0]: at emitTwo (events.js:126:13)
                  host.raspberrypi 2019-03-19 21:12:19.291 error Caught by controller[0]: at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                  host.raspberrypi 2019-03-19 21:12:19.291 error Caught by controller[0]: at Request._callback (script.js.common.Test.Skript_4:22:1)
                  host.raspberrypi 2019-03-19 21:12:19.291 error Caught by controller[0]: at script.js.common.Test.Skript_4:38:19
                  host.raspberrypi 2019-03-19 21:12:19.286 error Caught by controller[0]: TypeError: Cannot read property 'sid' of undefined
                  javascript.0 2019-03-19 21:12:19.208 info Stop script script.js.common.Test.Skript_4
                  javascript.0 2019-03-19 21:12:19.208 error TypeError: Cannot read property 'sid' of undefined at script.js.common.Test.Skript_4:38:19 at Request._callback (script.js.common.Test.Skript_4:22:1) at Request.self.callback (/opt/iobroke
                  javascript.0 2019-03-19 21:12:19.207 error uncaught exception: Cannot read property 'sid' of undefined

                  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!!!!:

                  on({id:"lupusec.0.devices.RF:03875f10.status"/EG Gästezimmer Status/, change: "ne", val: "OPEN"}, main);

                  var request = require("request");
                  var fs = require('fs');
                  var myJson = {};
                  var sid = 0;

                  function parseJson(text) {
                  if (text === "") return {};
                  try {
                  json = JSON.parse(text);
                  } catch (ex) {
                  json = {};
                  }
                  if(!json) json = {};
                  return json;
                  }
                  function readJson(url, callback) {
                  request(url, function (err, state, body){
                  if (body) {
                  var json = parseJson(body);
                  callback(null, json);
                  } else {
                  var error = "(" + err + ") ERROR bei Abfrage von: " + url;
                  log(error, "warn");
                  callback(error, null);
                  }
                  });
                  }
                  var url_login ='http://192.168.xxx/webapi/auth.cgi?api=SYNO.API.Auth&method=Login&version=2&account=ACCOUNT&passwd=PASSWORT&session=SurveillanceStation&format=sid';
                  var url_logout = 'http://192.168.xxx/webapi/auth.cgi? api=SYNO.API.Auth&method=Logout&version=2&session=SurveillanceStation';
                  var url_snapshot = 'http://192.168.xxx/webapi/entry.cgi?camStm=1&version=8&cameraId=2&api=SYNO.SurveillanceStation.Camera&preview=true&method=GetSnapshot';

                  function main() {
                  readJson(url_login, function(err,json) {
                  if(!err) {
                  myJson = json;
                  sid = myJson.data.sid;
                  url_snapshot += '&_sid='+sid;
                  url_logout += '&_sid='+sid;
                  request.get({url: url_snapshot, encoding: 'binary'}, function (err, response, body) {
                  fs.writeFile("/tmp/snap.jpg", body, 'binary', function(err) {
                  if (err) {
                  console.error(err);
                  } else {
                  sendTo("pushover", "send", {
                  message: 'EG Wohnzimmer offen',
                  sound: ""})
                  }
                  });
                  });
                  } else {
                  log("Fehler beim Auslesen des JSON. Keine Daten erhalten.","warn");
                  myJson = {};
                  }
                  });
                  }

                  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 :innocent: 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... :innocent: 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 LAN

                  Bei Fragen, einfach her damit!

                  Danke für jede Hilfe... :+1:

                  1 Antwort Letzte Antwort
                  0
                  • H hobbycamper

                    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
                    Thomas

                    Samson71S Offline
                    Samson71S Offline
                    Samson71
                    Global Moderator
                    schrieb am zuletzt editiert von
                    #130

                    @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
                    Thomas

                    Die 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/oXkk1MptJ

                    Der Zugang ist passwortgeschützt. Gebe ich gern auf Chatanfrage weiter, da ich nicht weis ob ich das hier frei posten kann/darf.

                    Markus

                    Bitte beachten:
                    Hinweise für gute Forenbeiträge
                    Maßnahmen zum Schutz des Forums

                    H totocotonioT A 3 Antworten Letzte Antwort
                    1
                    • Samson71S Samson71

                      @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
                      Thomas

                      Die 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/oXkk1MptJ

                      Der Zugang ist passwortgeschützt. Gebe ich gern auf Chatanfrage weiter, da ich nicht weis ob ich das hier frei posten kann/darf.

                      H Offline
                      H Offline
                      hobbycamper
                      schrieb am zuletzt editiert von
                      #131

                      @Samson71

                      Sauber von Dir!!!!
                      Läuft wieder!!
                      Danke!!

                      1 Antwort Letzte Antwort
                      0
                      • C Offline
                        C Offline
                        chrischi99
                        schrieb am zuletzt editiert von
                        #132

                        @Samson71
                        Tipp top, hat wunderbar geklappt! Ich danke dir!!!

                        1 Antwort Letzte Antwort
                        0
                        • A Offline
                          A Offline
                          aleks-83
                          schrieb am zuletzt editiert von
                          #133

                          Funktioniert bei mir auch!
                          Super. Danke!

                          Ich musste nur erst meine Kamera ID herausfinden :grimacing:

                          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.

                          = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                          = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

                          Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                          Glasfaser 400

                          1 Antwort Letzte Antwort
                          1
                          • S Offline
                            S Offline
                            scoobydoo
                            schrieb am zuletzt editiert von
                            #134

                            Hab gerade Anfrage zwecks Zugang gestellt, mal sehen ob es dann auch wieder bei mir läuft,
                            wär ja echt Klasse.

                            1 Antwort Letzte Antwort
                            0
                            • S Offline
                              S Offline
                              scoobydoo
                              schrieb am zuletzt editiert von
                              #135

                              Sehr geilLeute , es funzt wieder , vielen Dank an Samson71 für Unterstützung !!!!

                              1 Antwort Letzte Antwort
                              0
                              • Samson71S Samson71

                                @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
                                Thomas

                                Die 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/oXkk1MptJ

                                Der Zugang ist passwortgeschützt. Gebe ich gern auf Chatanfrage weiter, da ich nicht weis ob ich das hier frei posten kann/darf.

                                totocotonioT Offline
                                totocotonioT Offline
                                totocotonio
                                schrieb am zuletzt editiert von
                                #136

                                @Samson71 sagte in Synology Surveillance Station API:

                                @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
                                Thomas

                                Die 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/oXkk1MptJ

                                Der Zugang ist passwortgeschützt. Gebe ich gern auf Chatanfrage weiter, da ich nicht weis ob ich das hier frei posten kann/darf.

                                Hi,
                                könntest du mir den Zugang bitte zukommen lassen.
                                Ich habe das gleiche Problem.

                                Gruß Totocotonio

                                Bin noch Anfänger in Sachen IO-Broker und lerne gerne dazu. :P

                                1 Antwort Letzte Antwort
                                0
                                • Samson71S Offline
                                  Samson71S Offline
                                  Samson71
                                  Global Moderator
                                  schrieb am zuletzt editiert von
                                  #137

                                  @totocotonio sagte in Synology Surveillance Station API:

                                  könntest du mir den Zugang bitte zukommen lassen.

                                  Hast PN.

                                  Was ist eigentlich an dem Satz

                                  @Samson71 sagte in Synology Surveillance Station API:
                                  Gebe ich gern auf Chatanfrage weiter, da ich nicht weis ob ich das hier frei posten kann/darf.

                                  nicht zu verstehen? ;)

                                  Markus

                                  Bitte beachten:
                                  Hinweise für gute Forenbeiträge
                                  Maßnahmen zum Schutz des Forums

                                  totocotonioT 1 Antwort Letzte Antwort
                                  0
                                  • Samson71S Samson71

                                    @totocotonio sagte in Synology Surveillance Station API:

                                    könntest du mir den Zugang bitte zukommen lassen.

                                    Hast PN.

                                    Was ist eigentlich an dem Satz

                                    @Samson71 sagte in Synology Surveillance Station API:
                                    Gebe ich gern auf Chatanfrage weiter, da ich nicht weis ob ich das hier frei posten kann/darf.

                                    nicht zu verstehen? ;)

                                    totocotonioT Offline
                                    totocotonioT Offline
                                    totocotonio
                                    schrieb am zuletzt editiert von
                                    #138

                                    @Samson71 Vielen Dank für deine Hilfe es funktioniert.

                                    Gruß Totocotonio

                                    Bin noch Anfänger in Sachen IO-Broker und lerne gerne dazu. :P

                                    1 Antwort Letzte Antwort
                                    0
                                    • K Offline
                                      K Offline
                                      Kueppert
                                      schrieb am zuletzt editiert von
                                      #139

                                      Hm,
                                      bei mir läuft es leider immer noch nicht :(

                                      javascript.0 script.js.common.SurveillanceStation.CameraEsszimmer: Error update SurveillanceStation Stream URL: SyntaxError: Unexpected token u in JSON at position 0
                                      

                                      Jemand eine Idee, was das bedeutet?

                                      UDM Pro, Intel NUC - ioBroker in Proxmox-VM, PiHole+Grafana&Influx+TasmoAdmin in LXCs, Raspberry Pi3 (als CCU), Zigbee-Stick Sonoff, Synology DS918+

                                      K 1 Antwort Letzte Antwort
                                      0
                                      • Z Offline
                                        Z Offline
                                        zahnheinrich
                                        schrieb am zuletzt editiert von
                                        #140

                                        @Samson71
                                        Würdest du mir den Zugangscode auch bitte zusenden?
                                        Vielen Dank im Voraus!

                                        MfG Ulrich

                                        Samson71S 1 Antwort Letzte Antwort
                                        0
                                        • Z zahnheinrich

                                          @Samson71
                                          Würdest du mir den Zugangscode auch bitte zusenden?
                                          Vielen Dank im Voraus!

                                          Samson71S Offline
                                          Samson71S Offline
                                          Samson71
                                          Global Moderator
                                          schrieb am zuletzt editiert von
                                          #141

                                          @zahnheinrich sagte in Synology Surveillance Station API:

                                          @Samson71
                                          Würdest du mir den Zugangscode auch bitte zusenden?

                                          Hast ne Chatnachricht.

                                          Markus

                                          Bitte beachten:
                                          Hinweise für gute Forenbeiträge
                                          Maßnahmen zum Schutz des Forums

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          172

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe