Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Synology rts stream Reolink Kamera Vis - gelöst

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Synology rts stream Reolink Kamera Vis - gelöst

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      smarthome2020 @Cinimod last edited by smarthome2020

      @cinimod
      Ich halte nichts von der App. Wer weiß, was die Firmen da abzweigen .
      Ich schaue mir deine Kameras aber mal an. Vielleicht sind sie in den 2 Jahren ja besser geworden.

      Update : laut Rezensionen sind weiterhin unerklärliche Verbindungsprobleme vorhanden . Das Problem hatte ich ja auch vor 2 Jahren und das sogar trotz PoE Anbindung . Schade, weil das Bild an sich gut war . Die wollen scheinbar weiterhin die Nutzung über die App, was ich aber nicht unterstützen kann bei den sensiblen Daten

      1 Reply Last reply Reply Quote 0
      • Cinimod
        Cinimod Most Active @XBiT last edited by

        @xbit

        Super, das teste ich mal, herzlichen dank.

        1 Reply Last reply Reply Quote 0
        • W
          wegdir @XBiT last edited by

          @xbit sagte in Synology rts stream Reolink Kamera Vis:

                                                                                                                                      var request = require('request');                                                                                                                                                                                                                                                                                                                                                         // Konfiguration                                                                                                                                                                            var user = "XXX";  // Synology Benutzer mit Berechtigung die Kamera anzuzeigen                                                                                                                                                                            var pass = "XXX";  // Passwort zu eben eingegebenem Benutzer                                                                                                                                                                            var ip = "192.168.1.254";  // IP-Adresse eures Synology-NAS                                                                                                                                                                            var port = 5000;  // default Port der Surveillance Station                                                                                                                                                                            var cameraID = 5;  // ID der Kamera, welche angezeigt werden soll                                                                                                                                                                                                                                                                                                                                                         createState('0_userdata.' + instance + '.Kamera', {'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('0_userdata.' + instance + '.Kameras.Haustür', '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();                                            
          

          bekomme leider beim Widget Import - Fehlermeldung
          invalid.png ?

          Cinimod XBiT 2 Replies Last reply Reply Quote 0
          • W
            wegdir @wegdir last edited by

            @wegdir sagte in Synology rts stream Reolink Kamera Vis:

            Bin auf der Suche nach einem Fachmann der einem erklären kann wie man die Reolink Camera ins VIS einbindet.
            Habe eine Diskstation und die stellt auch die RTS Stream bereit. Zugriff via WEB gibt es bei Reolink nicht mehr seit dem das Flash Plugin gecancelt wurde. So bleibt nur der Zugriff über die REolink App was natürlich Mist ist.
            Suche also die Möglichkeit die Camera i, Vis zu integrieren - bei Instar klappt das problemlos - hab ne 2. Camera von Instar.

            ONFiv Adapter erkennt zwar die Adresse aber nicht den Stream

            Synology stellt folgendes bereit
            rtsp://syno:xxxxxxxxxaa60ff294ce309f68dbbe3@192.168.178.45:554/Sms=5.unicast

            rtsp://192.168.178.45:5000/webman/3rdparty/SurveillanceStation/cgi/rtsp.cgi?Sms=5.unicast&DsId=0&StmKey=xxxxxxaa60ff294ce309f68dbbe3
            aber Wiedergabe VLC scheitert auch daran

            Habe auch in Docker - motioneye aber hier weiss ich nciht wie die Überageb/Umwandlung/Breitstellung erfolgen soll.

            Vielleicht hat einer dasselbe Problem oder eine Lösung

            Danke im voraus

            Cameramodel ist RLC-420-5MP

            1 Reply Last reply Reply Quote 0
            • Cinimod
              Cinimod Most Active @wegdir last edited by

              @wegdir sagte in Synology rts stream Reolink Kamera Vis:

              bekomme leider beim Widget Import - Fehlermeldung
              invalid.png

              Das liegt daran das es sich nicht um ein Widget handelt, es ist ein Javascript.

              Hast du diese URL mal getestet ? ggf. erstmal m VLC PLayer oder so ... erstmal schauen was funktioniert und was nicht ..

              1 Reply Last reply Reply Quote 0
              • XBiT
                XBiT @wegdir last edited by

                @wegdir

                Das Script muss im iobroker Admin unter Skripte abgelegt werden (Javascript)

                Danach hast du in den Objekten unter 0_userdata.0.Kamera einen Datenpunkt mit dem link.

                diesen kannst du mit einen HTML Basic Widget in deiner VIS anzeigen.

                W 1 Reply Last reply Reply Quote 1
                • W
                  wegdir @XBiT last edited by

                  @xbit musste den Wert Kamera.Haustür auf Kamera ändern -wobei ich nicht direkt weiss ob es wirklich daran lag aber vorher ging es nicht - und dann ging es - vielen Lieben Dank

                  ganz großen Dank für Deine Mühe

                  👍

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

                    @wegdir

                    Also bei mir tut das Skript nicht was es soll ... habe die Einstellungen konfiguriert, scheint aber nicht zu tun was es soll.

                    
                    javascript.0
                    2022-01-16 09:53:49.803	error	Request error: Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: IP: 192.168.178.99 is not in the cert's list:
                    
                    javascript.0
                    2022-01-16 09:53:49.802	info	script.js.common.Datenpunkt_erzeugen.rstp_stream_Synology: Error update SurveillanceStation Stream URL: SyntaxError: Unexpected token u in JSON at position 0
                    
                    javascript.0
                    2022-01-16 09:53:49.780	info	script.js.common.Datenpunkt_erzeugen.rstp_stream_Synology: registered 0 subscriptions and 1 schedule
                    
                    javascript.0
                    2022-01-16 09:53:49.730	info	Start javascript script.js.common.Datenpunkt_erzeugen.rstp_stream_Synology
                    

                    Die IP meiner DS ist nicht in der "cert´s list" .... keine Ahnung wo ich die eintragen soll

                    Irgendwie scheint es schon ein Problem beim erstellen des Verzeichnis zu geben:

                    
                    javascript.0
                    2022-01-16 10:07:35.685	warn	at processTicksAndRejections (internal/process/task_queues.js:82:21)
                    
                    javascript.0
                    2022-01-16 10:07:35.685	warn	at endReadableNT (internal/streams/readable.js:1334:12)
                    
                    javascript.0
                    2022-01-16 10:07:35.685	warn	at IncomingMessage.emit (events.js:412:35)
                    
                    javascript.0
                    2022-01-16 10:07:35.684	warn	at Object.onceWrapper (events.js:519:28)
                    
                    javascript.0
                    2022-01-16 10:07:35.684	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                    
                    javascript.0
                    2022-01-16 10:07:35.684	warn	at Request.emit (events.js:400:28)
                    
                    javascript.0
                    2022-01-16 10:07:35.684	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                    
                    javascript.0
                    2022-01-16 10:07:35.684	warn	at Request.emit (events.js:400:28)
                    
                    javascript.0
                    2022-01-16 10:07:35.684	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                    
                    javascript.0
                    2022-01-16 10:07:35.683	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                    
                    javascript.0
                    2022-01-16 10:07:35.683	warn	at script.js.common.Datenpunkt_erzeugen.rstp_stream_Synology:28:13
                    
                    javascript.0
                    2022-01-16 10:07:35.683	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                    
                    javascript.0
                    2022-01-16 10:07:35.681	warn	State "0_userdata.0.Kameras." not found
                    
                    javascript.0
                    2022-01-16 10:07:35.150	info	script.js.common.Datenpunkt_erzeugen.rstp_stream_Synology: registered 0 subscriptions and 1 schedule
                    
                    javascript.0
                    2022-01-16 10:07:35.138	info	Start javascript script.js.common.Datenpunkt_erzeugen.rstp_stream_Synology
                    
                    XBiT 1 Reply Last reply Reply Quote 0
                    • XBiT
                      XBiT @Cinimod last edited by

                      @cinimod

                      Sorry mein Fehler wie @wegdir schon sagte habe ich vor dem posten das Script verändert aber habe dabei was vergessen, weshalb es nicht geht ... ich hänge es nochmal ungeändert (bis auf PW etc) an.

                      var request = require('request');
                       
                      // Konfiguration
                      var user = "XXX";  // Synology Benutzer mit Berechtigung die Kamera anzuzeigen
                      var pass = "XXX";  // Passwort zu eben eingegebenem Benutzer
                      var ip = "192.168.1.254";  // IP-Adresse eures Synology-NAS
                      var port = 5000;  // default Port der Surveillance Station
                      var cameraID = 5;  // ID der Kamera, welche angezeigt werden soll
                       
                      createState('0_userdata.' + instance + '.Kameras.Haustür', {'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('0_userdata.' + instance + '.Kameras.Haustür', '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();
                      
                      Cinimod 1 Reply Last reply Reply Quote 0
                      • Cinimod
                        Cinimod Most Active @XBiT last edited by Cinimod

                        @xbit sagte in Synology rts stream Reolink Kamera Vis - gelöst:

                        Hab noch mal ne Frage, wie ist es mit der cameraID, wo finde ich die?

                        Der Link wurde jetzt erstellt, jedoch beim Testen in Browser kommt nur ne Fehlermeldung, möglicherweise wegen der falschen camID ?!

                        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"
                        Set-Cookie: id=Woyp8vQSjN9XI1a3YLPrNW1BwW1L_ywT8Wx_bXl5t1k0ARLvQNtvVTCJhMUSrZCYGYoRe0-bHTsoDUBlRp_O1Y;expires=Sun, 23-Jan-2022 11:32:51 GMT;path=/;HttpOnly
                        
                        {"success":true}
                        

                        Meine SurveillanceStation läuft auch auf 5001, muss ich dann die die Links auf https ändern ?

                        XBiT 1 Reply Last reply Reply Quote 0
                        • XBiT
                          XBiT @Cinimod last edited by XBiT

                          @cinimod

                          am schnellsten geht es mit dem Synology Adapter, dann im Objektbaum bei synology.0.SurveillanceStation.cameras.Haustür.id schauen da steht die ID. (Haustür gegen dein Kameranamen tauschen).

                          wegen https musst du mal schauen habe ich nicht getestet weil eh nur im LAN/VPN erreichbar und ich da http nutze.

                          Beste Grüße

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

                            @xbit sagte in Synology rts stream Reolink Kamera Vis - gelöst:

                            '&format=mjpeg&_sid='

                            Ich nutze mjpeg nicht , aber der Synology Adapter gibt doch auch den Link dazu aus !?

                            ............method=Stream&format=mjpeg&......................
                            

                            e5a24918-8f43-43c5-bf37-175a3bd70fa8-grafik.png

                            XBiT 1 Reply Last reply Reply Quote 0
                            • XBiT
                              XBiT @Glasfaser last edited by

                              @glasfaser

                              ja ist mir auch gerade aufgefallen, da ich das Skript schon recht lange so im Einsatz habe denke ich mal es war früher beim Synology Adapter noch nicht drin?

                              So ist es ja noch einfacher eine Kamera die von Haus aus kein mjpeg macht ins VIS zu bekommen.

                              Cinimod 1 Reply Last reply Reply Quote 0
                              • Cinimod
                                Cinimod Most Active @XBiT last edited by Cinimod

                                @xbit

                                Lustigerweise bekomme ich den Synology Adapter auch nicht grün, das hatte ich bereits versucht, und abgesehen von dem Cam Stream Link hab ich auch keine Verwendung dafür, demnach wollte ich den nicht unnötig betreiben.

                                Vielleicht kann mir ja damit jemand auf die sprünge helfen, ist der Link einmal erstellt braucht ja auch der Adapter nicht weiter laufen gell ?

                                bekomme diesen Fehler im Log:

                                synology.0
                                2022-01-16 17:38:12.075	debug	* No response, read next.
                                
                                synology.0
                                2022-01-16 17:38:11.789	debug	* Get info from (firstPoll) api: DSM method: getPollingData params: {}
                                
                                synology.0
                                2022-01-16 17:38:11.788	debug	* sendPolling. namePolling = firstPoll | iteration = 0 | typeof poll = object | poll = {"api":"dsm","method":"getPollingData","params":{}}
                                
                                synology.0
                                2022-01-16 17:38:11.787	debug	-----------------------------------------------------------------------------------------------------
                                
                                synology.0
                                2022-01-16 17:38:11.787	debug	Error: Reconnection after 10s
                                
                                synology.0
                                2022-01-16 17:38:11.786	debug	*** ERROR : src: sendPolling syno[dsm][getPollingData] To use the adapter, the user must be in the Administrators group! code: 400 message: No such account or incorrect password
                                
                                synology.0
                                2022-01-16 17:38:11.786	debug	* No response, read next.
                                
                                synology.0
                                2022-01-16 17:38:11.509	debug	* Get info from (firstPoll) api: DSM method: getPollingData params: {}
                                
                                synology.0
                                2022-01-16 17:38:11.508	debug	* sendPolling. namePolling = firstPoll | iteration = 0 | typeof poll = object | poll = {"api":"dsm","method":"getPollingData","params":{}}
                                
                                synology.0
                                2022-01-16 17:38:11.508	debug	-----------------------------------------------------------------------------------------------------
                                
                                synology.0
                                2022-01-16 17:38:11.508	debug	Error: Reconnection after 10s
                                
                                synology.0
                                2022-01-16 17:38:11.507	debug	*** ERROR : src: sendPolling syno[dsm][getPollingData] To use the adapter, the user must be in the Administrators group! code: 400 message: No such account or incorrect password
                                
                                synology.0
                                2022-01-16 17:38:11.507	debug	* No response, read next.
                                
                                synology.0
                                2022-01-16 17:38:11.179	debug	* Get info from (firstPoll) api: DSM method: getPollingData params: {}
                                
                                synology.0
                                2022-01-16 17:38:11.179	debug	* sendPolling. namePolling = firstPoll | iteration = 0 | typeof poll = object | poll = {"api":"dsm","method":"getPollingData","params":{}}
                                
                                synology.0
                                2022-01-16 17:38:11.178	debug	-----------------------------------------------------------------------------------------------------
                                
                                
                                
                                
                                1 Reply Last reply Reply Quote 0
                                • Cinimod
                                  Cinimod Most Active last edited by

                                  @cinimod

                                  Hab es jetzt, hatte auch das Problem mit dem Passwort bei Version 1.0.3

                                  Hatte angenommen das ich das Passwort trotz verschwundenem Eingabefeld hätte eingeben können.
                                  Nach dem Update auf 2.0.1 war zu sehen das er nur das erste Zeichen des Passworts genommen hat. Jetzt hab ich auch die Entsprechenden Links, nun müsste ich ja auch den Adapter still legen können, ohne das die Links verschwinden.

                                  Glasfaser 2 Replies Last reply Reply Quote 0
                                  • Glasfaser
                                    Glasfaser @Cinimod last edited by

                                    @cinimod sagte in Synology rts stream Reolink Kamera Vis - gelöst:

                                    Hab es jetzt,
                                    ..... Nach dem Update auf 2.0.1

                                    😉

                                    https://forum.iobroker.net/topic/51410/läuft-der-synology-adapter-mit-dsm-7-auch/14

                                    Cinimod 1 Reply Last reply Reply Quote 0
                                    • Cinimod
                                      Cinimod Most Active @Glasfaser last edited by

                                      @glasfaser

                                      Ja ich weiß, hatte es nicht direkt hin bekommen, hatte es über die Katze installiert, dann war es in der Instanz verschwunden. Dann hatte ich es wieder über das Repository installiert. Und eben damit ging es offenbar nicht.

                                      Wie gesagt, hatte angenommen ich hätte mein Passwort trotzdem eingetragen. Und dann hat die DS den Account blockiert 🙄

                                      1 Reply Last reply Reply Quote 0
                                      • Glasfaser
                                        Glasfaser @Cinimod last edited by Glasfaser

                                        @cinimod sagte in Synology rts stream Reolink Kamera Vis - gelöst:

                                        ...... Jetzt hab ich auch die Entsprechenden Links,
                                        nun müsste ich ja auch den Adapter still legen können,

                                        ............ ohne das die Links verschwinden.

                                        Der sid ändert sich , deshalb wird im Script / Adapter ein Cron genutzt .

                                        ( ab wann er sich ändert , kann ich nicht sagen .)

                                        EDIT:

                                        .... sid wird ungültig

                                        https://forum.iobroker.net/topic/3742/synology-surveillance-station-api/40

                                        XBiT 1 Reply Last reply Reply Quote 0
                                        • XBiT
                                          XBiT @Glasfaser last edited by

                                          @glasfaser

                                          Es muss aber ein unterschied geben.. das Script muss ich immer mal starten um eine neue sid zu bekommen, der Adapter war bei mir schon ein paar Monate aus und der Link ging immer noch.
                                          In dem Link vom Adapter ist auch keine sid drin nur ein "StmKey" eventuell ist dieser länger gültig?

                                          Link vom Script:

                                          http://192.168.1.254:5000/webapi/SurveillanceStation/videoStreaming.cgi?api=SYNO.SurveillanceStation.VideoStream&version=1&method=Stream&cameraId=5&format=mjpeg&_sid=gjUGChCirR_hC6lZabIfLOFlHayAlvJf6DWDeVMphJw9Fn3sC6bgPRnXFnQQENXXXXXXXXXXXX

                                          Link vom Adapter:

                                          http://192.168.1.254:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Stream.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=5&StmKey="94f98bb3970cea0065ae87XXXXXXXXX"

                                          Glasfaser 1 Reply Last reply Reply Quote 0
                                          • Glasfaser
                                            Glasfaser @XBiT last edited by

                                            @xbit sagte in Synology rts stream Reolink Kamera Vis - gelöst:

                                            nur ein "StmKey" eventuell ist dieser länger gültig?

                                            Hier ist der gleiche "StmKey" drin wie beim Synology Adapter .
                                            Also wird er dort ausgelesen .

                                            Datenpunkt Synology

                                            http://xxxx:5000/webapi/entry.cgi?api=SYNO.SurveillanceStation.Stream.VideoStreaming&version=1&method=Stream&format=mjpeg&cameraId=7&StmKey="xxxxxxxxb14af12c072f7350"
                                            

                                            Synology Stream-Freigabe
                                            :
                                            353caf63-8c51-4ad5-afb6-0e3d3270fe1f-grafik.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            29
                                            3114
                                            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