Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Synology Surveillance Station API

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Synology Surveillance Station API

    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      Kueppert last edited by

      @arteck:

      ich habs so

      ! [{"tpl":"tplMfdCamSnapshot","data":{"visibility-cond":"==","visibility-val":1,"asButton":false,"interval":"1000","dialog_width":"800","dialog_height":"600","icon":"","url":"http://xxxxxxx:5000/webapi/SurveillanceStation/videoStreaming.cgi?api=SYNO.SurveillanceStation.VideoStream&version=1&method=Stream&cameraId=1&format=mjpeg&_sid=yyyyyyyyyy","title":"Kamera vorne","modal":false,"name":"Kamera vorne Dialog für großes Bild","filterkey":"Kamera","dialog_top":"20","dialog_left":"20","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"visibility-groups-action":"hide","lc-type":"last-change","lc-is-interval":true,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-is-moment":false,"lc-zindex":0,"autoclose":""},"style":{"left":"738px","top":"309px","width":"140px","height":"60px","border-width":"2px","border-style":"solid","border-color":"#ebe6d6","border-radius":"5px","z-index":"4","opacity":"0","background-color":"#861d1d","color":""},"widgetSet":"jqui-mfd"}] ` Hi danke dir. Kannst du noch nen Screen dazu Posten? Dann muss ich nicht erst importieren damit ich sehe, wir es aussehen sollte 😉

      Danke und Grüße, Thorsten

      Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk

      1 Reply Last reply Reply Quote 0
      • A
        Alveran last edited by

        Hallo,

        ich bekomme mit dem Script von Apollon folgenden Fehler:

        javascript.0 2018-03-05 21:14:33.596 info script.js.MeineScripte.CamGarten: Invalid return on SurveillanceStation Stream URL: {"error":{"code":400},"success":false}

        Weiß jemand warum?

        1 Reply Last reply Reply Quote 0
        • M
          MarkusL last edited by

          Hallo zusammen,

          ich habe ein Schwierigkeiten mit der Darstellung meiner Kamera Streams und vielleicht hat jemand eine Idee:

          Ich habe 5 Trendnet (=HIKVision) Kameras. Da diese Probleme mit einem direkten Abruf der Streams machen (sie können wohl immer nur einen Client bedienen und steigen gerne mal ganz aus) habe ich sie in meine Synology eingebunden (das klappt gut) und hole mir mit dem obigen Script die dynamischen Links. Das passt alles auch gut. Die Darstellung erfolgt dann über das "Basic String Img src" Widget.

          ABER:

          Sobald ich auf die View wechsle mit den Kamerabildern, geht die Prozessor Last auf der Synology auf 100% und die Bilder kommen sporadisch bzw gar nicht mehr, wenn es mehr als eines sind. Und das bleibt auch so, wenn die View wieder weggeschaltet wird. D.h. der Stream "verstopft" weiterhin die Synology.

          habt Ihr auch das Problem? Hat jemand eine Idee, wie ich das lösen kann.

          Also den Load reduzieren und den Stream auch wieder stoppen, wenn der View nicht mehr aktiv ist.

          Vielen Dank,

          Markus

          1 Reply Last reply Reply Quote 0
          • arteck
            arteck Developer Most Active last edited by

            @Alveran:

            Hallo,

            ich bekomme mit dem Script von Apollon folgenden Fehler:

            javascript.0 2018-03-05 21:14:33.596 info script.js.MeineScripte.CamGarten: Invalid return on SurveillanceStation Stream URL: {"error":{"code":400},"success":false}

            Weiß jemand warum? `

            die login daten sind falsch .. würde ich tippen

            1 Reply Last reply Reply Quote 0
            • A
              Alveran last edited by

              Also irgendwie stimmt was mit dem Script nicht.

              Ich habe einen extra benutzter für die Kamera bei mir der admini angelegt und ein temporäres Passwort(wird natürlich danach geändert) vergeben wie ihr im Script sehen könnt.

              Hier ist das Script und danach der Fehler:

              __var request = require('request');

              // Konfiguration

              var user = "admini"; // Synology Benutzer mit Berechtigung die Kamera anzuzeigen

              var pass = "Winter2018"; // Passwort zu eben eingegebenem Benutzer

              var ip = "192.168.6.200"; // IP-Adresse eures Synology-NAS

              var port = 9900; // default Port der Surveillance Station

              var cameraID = 2; // 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();__

              script.js.common.CamEingang: Invalid return on SurveillanceStation Stream URL: {"error":{"code":400},"success":false}

              Baue ich den String selber zusammen funktioniert es:

              http://192.168.6.200:9900//webapi/auth. … format=sid

              {"data":{"sid":"2wUTJTseubyHg1710NNN034612"},"success":true}

              Also lieber Schwarm, irgendwo muss ein Fehler sein.

              1 Reply Last reply Reply Quote 0
              • A
                ak1 last edited by

                Ich bin auf der Suche nach einem Script-Beispiel, bei dem der Home Mode der Surveillance Station an- bzw. ausgeschaltet wird. Ich möchte den Schaltzustand des Home Modes an z.B. eine Anwesenheitsvariable knüpfen.

                andyb hatte hier im Thread davon gesprochen. Ein passendes Skript würde mir helfen.

                Danke

                ak1

                1 Reply Last reply Reply Quote 0
                • M
                  MrLee last edited by

                  Mon!

                  Ich muß mich hier mal ranhänge.

                  Ausgangslage:

                  Ich benutze die hier geposteten PHP-Scripte um auf der Synology Snapshots zu triggern und die ID des Snapshots in Variablen zu schreiben.

                  Diese kann man dann per SQL-History konfortabel durchsuchen.

                  Dieses funktionierte lange ohne Probleme.

                  Problem:

                  Seit ca. einem Monat ist die Anmeldung an der Synology so langsam, das der Anmeldedienst (da ich das Bild alle 2sek Refreshe das System komplett auslastet.

                  Eine Anmeldung dauert ca. 10sec. (bis sid geholt).

                  Scriptfehler sinds nicht, auch wenn ich im Browser "manuell" eine Authetifizierung mache und eine sid hole dauert es so lange.

                  Hat jemand Ähnliches? Weiß jemand welche Einstellung/Update/etc. bei der Synology den Authetifizierungsdienst verändert hat?

                  Danke Euch!

                  Mr.Lee

                  bis denne

                  Mr.Lee

                  pattyland 1 Reply Last reply Reply Quote 0
                  • D
                    dominik.braun82 last edited by

                    Hi.

                    Grundsätzlich geht es ja hier um Screenshots erstellen, verschicken und einbindne in VIS.

                    Ich möchte was ganz simples, weiß aber nicht wie ich es anstellen kann.

                    Ich habe 4 Kameras in der SSS und möchte die SSS aktivieren, wenn ich meine Alarmanlage scharf schalte (quasi eine Systemvariable in der Homematic…)

                    Ich habes mir so vorgestellt, dass ich die Aufnahme Einstellungen in der SSS einfach auf Bewegungserkennung stelle, rund um die Uhr….

                    Und aktivieren tue ich eben über den Modus Alarmanlage aktiv.

                    Gibt es dazu eine Lösung.

                    Habe das Widget schon drauf, aber da kann man nur screenshots und so erstellen und nicht die SSS aktivieren und deaktiviren.

                    Habe die aktuelleste Version drauf. (8...)

                    Danke, Gruß 😄

                    1 Reply Last reply Reply Quote 0
                    • A
                      aleks-83 last edited by

                      @dominik.braun82:

                      Ich habe 4 Kameras in der SSS und möchte die SSS aktivieren, wenn ich meine Alarmanlage scharf schalte (quasi eine Systemvariable in der Homematic…)

                      Ich habes mir so vorgestellt, dass ich die Aufnahme Einstellungen in der SSS einfach auf Bewegungserkennung stelle, rund um die Uhr….

                      Und aktivieren tue ich eben über den Modus Alarmanlage aktiv. `

                      Hast du mal in den Aktionsregeln geschaut?

                      Dort kann man -durch externe Ereignisse aktiviert- AKtionen auslösen.

                      z.B. Kameras de-/aktivieren, HomeMode de-/aktivieren, Aufnahme starten/stoppen oder weitere Externe AKtionen ausführen.

                      Somit habe ich geregelt dass mein ioBroker -sobald per WLAN Anwesenheit erkannt- den Home Mode einschaltet.

                      Die DS Cam App funktioniert hier ja nicht zuverlässig.

                      Dazu habe ich allerdings eine Frage:

                      Mein Befehl zum Einschalten des Homemode lautet:

                      https://192.168.0.123:5001/webapi/entry.cgi?api=SYNO.SurveillanceStation.ExternalEvent&method="Trigger"&version=1&eventId=1&account="admin"&password="XXXXXXX"
                      

                      Wenn ich den per Browser ausführe, wird der Homemode eingeschaltet.

                      Wenn der ioBroker aufm Pi den Befehl ausführt, passiert nichts.

                      So sieht das Blockly dazu aus:
                      7541_homemodeblockly.png

                      1 Reply Last reply Reply Quote 0
                      • A
                        aleks-83 last edited by

                        Habe meinen Fehler selbst entdeckt!

                        Der "exec" Baustein war hier nicht der richtige.

                        Ich habe jetzt den "request" Baustein genommen.

                        Damit bekomme ich beim Ausführen des SKriptes dei Fehlermeldung:

                        script.js.Synology.HomeModeSchalten: Error: unable to verify the first certificate
                        

                        Der request ist ja ein https request, das SSL Zertifikat auf der Syno ist aber nicht signiert.

                        Dann muss ich mich woh doch nochmal mit dem Thema Let's encrypt auf der Syno beschäftigen!? Oder geht es um was anderes?

                        EDIT:

                        Auch diesen Fehler habe ich gelöst :mrgreen:

                        Habe nun endlich ein Lets Encrypt Zertifikat in meine Syno einbinden können. Das hat nie funktioniert. Jetzt ging es plötzlich.

                        Jetzt sende ich zwar den Befehl aus dem Broker einmal raus ins www und über meine DynDNS wieder rein in meine Syno, aber egal.

                        Funktioniert!

                        Für interne LAN Adressen kann man ja scheinbar kein Zertifikat erstellen…

                        1 Reply Last reply Reply Quote 0
                        • hollywoot
                          hollywoot last edited by

                          @Alveran:

                          Also irgendwie stimmt was mit dem Script nicht.

                          Ich habe einen extra benutzter für die Kamera bei mir der admini angelegt und ein temporäres Passwort(wird natürlich danach geändert) vergeben wie ihr im Script sehen könnt.

                          Hier ist das Script und danach der Fehler:

                          __var request = require('request');

                          // Konfiguration

                          var user = "admini"; // Synology Benutzer mit Berechtigung die Kamera anzuzeigen

                          var pass = "Winter2018"; // Passwort zu eben eingegebenem Benutzer

                          var ip = "192.168.6.200"; // IP-Adresse eures Synology-NAS

                          var port = 9900; // default Port der Surveillance Station

                          var cameraID = 2; // 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();__

                          script.js.common.CamEingang: Invalid return on SurveillanceStation Stream URL: {"error":{"code":400},"success":false}

                          Baue ich den String selber zusammen funktioniert es:

                          http://192.168.6.200:9900//webapi/auth. … format=sid

                          {"data":{"sid":"2wUTJTseubyHg1710NNN034612"},"success":true}

                          Also lieber Schwarm, irgendwo muss ein Fehler sein. `

                          Hab das gleiche Problem.

                          Hast Du zufällig eine Lösung gefunden?

                          Gruß

                          1 Reply Last reply Reply Quote 0
                          • H
                            HoffmannOs last edited by

                            Gibt es schon eine Lösung? Ich bekomme cam 1 angezeigt, allerdings bekomme ich bei der Camera 2 keine Ausgabe, bei jpp die Meldung das die Bilder fehler enthalten….

                            1 Reply Last reply Reply Quote 0
                            • A
                              Alveran last edited by

                              Nein leider nicht. Hab es aufgegeben mit dem Script. Scheint mit neueren Surveillance Station Version nicht mehr kompatibel zu sein.

                              1 Reply Last reply Reply Quote 0
                              • K
                                Kueppert last edited by

                                @Alveran:

                                Nein leider nicht. Hab es aufgegeben mit dem Script. Scheint mit neueren Surveillance Station Version nicht mehr kompatibel zu sein. ` Also ich hab die Station v8.2 drauf. Bei mir im Heimnetz läuft alles wunderbar…

                                Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk

                                PS: gerade WLAN vom Handy ausgeschaltet. Kamera tut es immer noch 🙂 (nutze Cloud Pro, keine Ahnung ob das damit zusammenhängt)

                                1 Reply Last reply Reply Quote 0
                                • hollywoot
                                  hollywoot last edited by

                                  Ziemlich unbefriedigend 😄

                                  1 Reply Last reply Reply Quote 0
                                  • K
                                    Kueppert last edited by

                                    NACHTRAG: Update auf Version 6.2 führte auch bei mir dazu, dass das Skript nicht mehr funktioniert 😞

                                    2. NACHTRAG: Habe alles noch mal überprüft (inkl. SSS geöffnet und geschaut, ob Kamera noch da). Problem war, die hatte sich abgemeldet 😮

                                    …Strom raus, wieder rein, Skript läuft wieder und das Icon in VIS auch :mrgreen:

                                    1 Reply Last reply Reply Quote 0
                                    • H
                                      HoffmannOs last edited by

                                      Das Problem hatte ich auch, ich habe dann im Netz in einem Französischen Forum einen interessanten Artikel gefunden suche mal nach Yakus Master, ich habe auch gedacht das die Kamera falsche Daten liefert, allerdings war einfach die ID falsch. Ich hätte 2 Kameras und und die 2 hatte dann id 9….

                                      Probiere das mal aus.

                                      Gesendet von meinem SM-G965F mit Tapatalk

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        MyMeyer last edited by

                                        Hi,

                                        bei mir kommt auch diese Meldung:

                                        ` > javascript.0 Stop script script.js.common.Kamera

                                        23:41:12.096 [info] javascript.0 Start javascript script.js.common.Kamera

                                        23:41:12.098 [debug] javascript.0 script.js.common.Kamera: createState(name=javascript.0.Anzeigen.Kamera.Eingangstuer-Stream, initValue=, forceCreation=undefined, common={"type":"string","read":true,"write":true,"role":"value","def":"","name":"javascript.0.Anzeigen.Kamera.Eingangstuer-Stream"}, native={})

                                        23:41:12.098 [info] javascript.0 script.js.common.Kamera: schedule(cron=0 * * * *)

                                        23:41:12.098 [info] javascript.0 script.js.common.Kamera: registered 0 subscriptions and 1 schedule

                                        23:41:12.360 [info] javascript.0 script.js.common.Kamera: Invalid return on SurveillanceStation Stream URL: {"error":{"code":400},"success":false} `

                                        Zusätzlich bekomme ich diese Meldung wenn ich den Link aus Objekte im Browser eingebe:

                                        ` > Failed to load camera.

                                        X-Content-Type-Options: nosniff

                                        X-XSS-Protection: 1; mode=block

                                        Content-type: text/plain; charset="UTF-8"

                                        P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"

                                        {"success":true} `

                                        Was bedeutet das nun wieder ?

                                        Auf der Syn läuft 6.2 ! Gibt es dafür eine Lösung. Über den Browser eingegeben und da war es okay .

                                        1 Reply Last reply Reply Quote 0
                                        • hollywoot
                                          hollywoot @Trident last edited by

                                          @Trident sagte in Synology Surveillance Station API:

                                          [...]
                                          Mein konkrete Anwendungsfall wäre die automatische Erstellung von Snapshot auf Grund der Auslösung eines Bewegungsmelder bei Abwesenheit und der anschließende Versand dieser Snapshots per Telegram
                                          [...]
                                          Würde mich über Tipps und Vorschläge freuen - vielleicht hatte ja schon jemand ein ähnliches Problem?

                                          Absolut das, was ich auch will!
                                          Ich kann mir nicht vorstellen, dass wir da allein sind auf weiter Flur 😛
                                          Vielleicht findet sich ja mal ein hilfsbereiter Programmer...

                                          LG

                                          dslraser 2 Replies Last reply Reply Quote 1
                                          • dslraser
                                            dslraser Forum Testing Most Active @hollywoot last edited by dslraser

                                            @hollywoot sagte in Synology Surveillance Station API:

                                            @Trident sagte in Synology Surveillance Station API:

                                            [...]
                                            Mein konkrete Anwendungsfall wäre die automatische Erstellung von Snapshot auf Grund der Auslösung eines Bewegungsmelder bei Abwesenheit und der anschließende Versand dieser Snapshots per Telegram
                                            [...]
                                            Würde mich über Tipps und Vorschläge freuen - vielleicht hatte ja schon jemand ein ähnliches Problem?

                                            Absolut das, was ich auch will!
                                            Ich kann mir nicht vorstellen, dass wir da allein sind auf weiter Flur 😛
                                            Vielleicht findet sich ja mal ein hilfsbereiter Programmer...

                                            LG

                                            ich kann mal morgen ein Script hier reinstellen was bei mir genau das macht...(muss nur ein Trigger für den BWM rein, da ich aktuell ein Bild bekomme wenn es an der Haustür klingelt...BWM hatte ich mal als Trigger, ging auch.)
                                            Ich habe drei Cams, bei allen dreien geht das über meine Syno.

                                            PS: ich bin noch unterwegs, schaffe ich heute nicht mehr.

                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

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

                                            976
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            51
                                            181
                                            49858
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo