Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. [Neuer Adapter] Reolink Kamera

NEWS

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

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

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

[Neuer Adapter] Reolink Kamera

Scheduled Pinned Locked Moved Entwicklung
reolinkneuer adaptertestenkamera
1.1k Posts 158 Posters 460.6k Views 136 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    D Offline
    DarkDevil
    wrote on last edited by
    #940

    Guten Morgen zusammen,

    ich würde gerne das Infrarot Lämpchen meiner E1 Outdoor via Adapter steuern.
    Jedoch passiert nichts mit dem Bild, wenn ich in dem Datenpunkt "IR" on oder off eintrage.

    Adapter läuft auf der aktuellen Gibhub Version 1.2.1

    Bzw. habt ich auch das Problem, dass die Kamera (manchmal) im automatischen Modus nicht von Nacht auf Tag umschaltet?

    oelisonO 1 Reply Last reply
    0
    • D DarkDevil

      Guten Morgen zusammen,

      ich würde gerne das Infrarot Lämpchen meiner E1 Outdoor via Adapter steuern.
      Jedoch passiert nichts mit dem Bild, wenn ich in dem Datenpunkt "IR" on oder off eintrage.

      Adapter läuft auf der aktuellen Gibhub Version 1.2.1

      Bzw. habt ich auch das Problem, dass die Kamera (manchmal) im automatischen Modus nicht von Nacht auf Tag umschaltet?

      oelisonO Offline
      oelisonO Offline
      oelison
      wrote on last edited by
      #941

      @darkdevil Bei meiner RLC-823A geht "Auto", "Off" und "On". Der erste Buchstabe muss groß geschrieben sein. Laut API geht nur "Auto" und "Off". Ich vermute daher, dass "On" und "Auto" identisch sind. Also kann dann auch nur was im Bild zu sehen sein, wenn es Nacht ist. Vielleicht hilft das.

      I like Rust. ioBroker-Adapter: matrix, mediola-gateway, support for reolink

      1 Reply Last reply
      1
      • vowillV Offline
        vowillV Offline
        vowill
        wrote on last edited by vowill
        #942

        Hallo @oelison,
        danke für deine Arbeit an dem Adapter. Ich nutze ihn (aktuell v1.2.1) mit 3 Reolink E1 Outdoor Pro und es funktioniert bestens.
        Bei .settings.ptzPreset habe ich bisher mit 2 Positionen gearbeitet - mit 0 und 1 bezeichnet, da numerischer DP. Jetzt wollte ich eine weitere Position hinzufügen, mit 2 bezeichnet. Dies geht in der Web-Oberfläche der Reolink problemlos, aber leider nicht über den Adapter. Er lässt den Eintrag der Zahl "2" im o. g. Datenpunkt zwar zu, gibt dies aber nicht an die Kamera weiter.
        Ist dies ein Thema des Adapters, oder könnte es an anderer Stelle ein Problem geben?

        ioBroker im lxc auf NUC / Aktive Instanzen: 38

        skvarelS 1 Reply Last reply
        0
        • vowillV vowill

          Hallo @oelison,
          danke für deine Arbeit an dem Adapter. Ich nutze ihn (aktuell v1.2.1) mit 3 Reolink E1 Outdoor Pro und es funktioniert bestens.
          Bei .settings.ptzPreset habe ich bisher mit 2 Positionen gearbeitet - mit 0 und 1 bezeichnet, da numerischer DP. Jetzt wollte ich eine weitere Position hinzufügen, mit 2 bezeichnet. Dies geht in der Web-Oberfläche der Reolink problemlos, aber leider nicht über den Adapter. Er lässt den Eintrag der Zahl "2" im o. g. Datenpunkt zwar zu, gibt dies aber nicht an die Kamera weiter.
          Ist dies ein Thema des Adapters, oder könnte es an anderer Stelle ein Problem geben?

          skvarelS Online
          skvarelS Online
          skvarel
          Developer
          wrote on last edited by skvarel
          #943

          @vowill .. Der Adapter nimmt die ID des Presets und nicht den Namen.

          Das erste Preset ist die Nummer 1 im Datenpunkt.

          Ich habe bei meinen Reolinks die Presets so benannt, wie ich sie brauchen:

          Innenhof, Strand, Schwimmteich, Sonnendeck, Koiteich, Terrasse

          9a7bf8e3-a7b2-434e-97ba-3db866b16098-image.png

          Im Datenpunkt werden sie mit:

          1, 2, 3, 4, 5, 6, 7

          angesteuert

          9f246910-bdc5-4f1a-8c03-8c592c665ff0-image.png

          #TeamInventwo
          • vis-inventwo & vis-2-widgets-inventwo
          • vis-icontwo & vis-2-widgets-icontwo

          vowillV 1 Reply Last reply
          0
          • skvarelS skvarel

            @vowill .. Der Adapter nimmt die ID des Presets und nicht den Namen.

            Das erste Preset ist die Nummer 1 im Datenpunkt.

            Ich habe bei meinen Reolinks die Presets so benannt, wie ich sie brauchen:

            Innenhof, Strand, Schwimmteich, Sonnendeck, Koiteich, Terrasse

            9a7bf8e3-a7b2-434e-97ba-3db866b16098-image.png

            Im Datenpunkt werden sie mit:

            1, 2, 3, 4, 5, 6, 7

            angesteuert

            9f246910-bdc5-4f1a-8c03-8c592c665ff0-image.png

            vowillV Offline
            vowillV Offline
            vowill
            wrote on last edited by vowill
            #944

            @skvarel Danke! Vermutlich ist das bei deinen Reolink-Kameras dann anders implementiert als bei der Reolink E1 Outdoor Pro. Dort gibt es keine separate ID, sondern nur ein Namensfeld:

            Screenshot 2025-02-28 192650.png
            Wie gesagt, bei 3 angelegten Presets funktioniert die Auswahl mit den Nummern 0 und 1 für die ersten beiden (die ich ebenfalls mit den Namen "0" und "1" in der Web-Oberfläche bezeichnet habe), aber eben nicht bei dem dritten Preset.
            Was ich auch feststelle: Wenn die Kamera über die Web-Oberfläche gesteuert wird (einen anderer Preset anfahren, LED togglen, ...), werden diese Änderungen im DP im ioBroker nicht nachgetragen. In die andere Richtung, also vom ioBroker zur Kamera, werden Änderungen ohne Verzögerung umgesetzt.

            ioBroker im lxc auf NUC / Aktive Instanzen: 38

            skvarelS 3 Replies Last reply
            0
            • vowillV vowill

              @skvarel Danke! Vermutlich ist das bei deinen Reolink-Kameras dann anders implementiert als bei der Reolink E1 Outdoor Pro. Dort gibt es keine separate ID, sondern nur ein Namensfeld:

              Screenshot 2025-02-28 192650.png
              Wie gesagt, bei 3 angelegten Presets funktioniert die Auswahl mit den Nummern 0 und 1 für die ersten beiden (die ich ebenfalls mit den Namen "0" und "1" in der Web-Oberfläche bezeichnet habe), aber eben nicht bei dem dritten Preset.
              Was ich auch feststelle: Wenn die Kamera über die Web-Oberfläche gesteuert wird (einen anderer Preset anfahren, LED togglen, ...), werden diese Änderungen im DP im ioBroker nicht nachgetragen. In die andere Richtung, also vom ioBroker zur Kamera, werden Änderungen ohne Verzögerung umgesetzt.

              skvarelS Online
              skvarelS Online
              skvarel
              Developer
              wrote on last edited by skvarel
              #945

              @vowill .. ich habe mehrere E1 Outdoor hier laufen, allerdings ohne Pro

              Ja, der Adapter ist da eine Einbahnstraße! Wenn du die Presets im der App oder Webansicht steuerst, wird das Preset im Adapter nicht übernommen.

              #TeamInventwo
              • vis-inventwo & vis-2-widgets-inventwo
              • vis-icontwo & vis-2-widgets-icontwo

              1 Reply Last reply
              0
              • vowillV vowill

                @skvarel Danke! Vermutlich ist das bei deinen Reolink-Kameras dann anders implementiert als bei der Reolink E1 Outdoor Pro. Dort gibt es keine separate ID, sondern nur ein Namensfeld:

                Screenshot 2025-02-28 192650.png
                Wie gesagt, bei 3 angelegten Presets funktioniert die Auswahl mit den Nummern 0 und 1 für die ersten beiden (die ich ebenfalls mit den Namen "0" und "1" in der Web-Oberfläche bezeichnet habe), aber eben nicht bei dem dritten Preset.
                Was ich auch feststelle: Wenn die Kamera über die Web-Oberfläche gesteuert wird (einen anderer Preset anfahren, LED togglen, ...), werden diese Änderungen im DP im ioBroker nicht nachgetragen. In die andere Richtung, also vom ioBroker zur Kamera, werden Änderungen ohne Verzögerung umgesetzt.

                skvarelS Online
                skvarelS Online
                skvarel
                Developer
                wrote on last edited by skvarel
                #946

                @vowill Benne mal einfach deine Presets in echte Namen und steuere sie dann per Adapter mit 1,2,3 an. Das sollte klappen. Das mach ich bei insgesamt vier Reolinks so.

                3x E1 Outdoor und 1x E1 Zoom

                Ich nutze allerdings auch nicht die App, sondern die Browser am PC.

                In der PC Software siehe ich die IDs auch nicht, sind aber ja da. Sonst würde der Adapter ja nicht auf die Nummern reagieren.

                182beac1-43a6-4961-9bf6-e6b0e3a195ea-image.png

                183501bf-9af3-43c7-bf5e-f8380562e372-image.png

                #TeamInventwo
                • vis-inventwo & vis-2-widgets-inventwo
                • vis-icontwo & vis-2-widgets-icontwo

                1 Reply Last reply
                0
                • vowillV vowill

                  @skvarel Danke! Vermutlich ist das bei deinen Reolink-Kameras dann anders implementiert als bei der Reolink E1 Outdoor Pro. Dort gibt es keine separate ID, sondern nur ein Namensfeld:

                  Screenshot 2025-02-28 192650.png
                  Wie gesagt, bei 3 angelegten Presets funktioniert die Auswahl mit den Nummern 0 und 1 für die ersten beiden (die ich ebenfalls mit den Namen "0" und "1" in der Web-Oberfläche bezeichnet habe), aber eben nicht bei dem dritten Preset.
                  Was ich auch feststelle: Wenn die Kamera über die Web-Oberfläche gesteuert wird (einen anderer Preset anfahren, LED togglen, ...), werden diese Änderungen im DP im ioBroker nicht nachgetragen. In die andere Richtung, also vom ioBroker zur Kamera, werden Änderungen ohne Verzögerung umgesetzt.

                  skvarelS Online
                  skvarelS Online
                  skvarel
                  Developer
                  wrote on last edited by
                  #947

                  @vowill .. du nutzt auch die Browseransicht mit der direkten IP?

                  Bei all meinen Kameras sieht es so aus. Schon komisch, dass es bei der Pro anders aussieht.

                  b66ff207-2ac3-4264-b5fe-a5b7ef10c84b-image.png

                  #TeamInventwo
                  • vis-inventwo & vis-2-widgets-inventwo
                  • vis-icontwo & vis-2-widgets-icontwo

                  vowillV 1 Reply Last reply
                  0
                  • skvarelS skvarel

                    @vowill .. du nutzt auch die Browseransicht mit der direkten IP?

                    Bei all meinen Kameras sieht es so aus. Schon komisch, dass es bei der Pro anders aussieht.

                    b66ff207-2ac3-4264-b5fe-a5b7ef10c84b-image.png

                    vowillV Offline
                    vowillV Offline
                    vowill
                    wrote on last edited by
                    #948

                    @skvarel Nochmal danke.
                    Die Änderung des Namens von "2" auf einen anderen Text bringt wie zu erwarten keine Lösung.
                    Beim Zugriff über einen Browser kommt für die Presets das gleiche Bild, wie schon oben eingefügt, hier auf der rechten Seite zu sehen:

                    Screenshot_20230219_155726.png

                    @oelison, erstaunlich, dass der Adapter für eine große Reihe von unterschiedlichen Reolinks doch so weitgehend funktioniert. Dass dann einzelne Themen nicht laufen (wie vielleicht auch meines), , scheint verständlich.

                    ioBroker im lxc auf NUC / Aktive Instanzen: 38

                    1 Reply Last reply
                    0
                    • Merlin123M Offline
                      Merlin123M Offline
                      Merlin123
                      wrote on last edited by
                      #949

                      Ich hab immer mal wieder solche Meldungen drin:

                      
                      reolink.1
                      2025-03-02 15:03:44.720	error	get recording: AxiosError: timeout of 4000ms exceeded
                      
                      reolink.1
                      2025-03-02 15:03:44.605	error	drive infoAxiosError: timeout of 4000ms exceeded
                      
                      reolink.1
                      2025-03-02 15:03:44.604	error	get ai state general: AxiosError: timeout of 4000ms exceeded
                      
                      reolink.1
                      2025-03-02 15:03:44.604	error	get md state: AxiosError: timeout of 4000ms exceeded
                      

                      Tritt bei 3 verschiedenen Kameramodellen auf.
                      Aber nur hin und wieder mal

                      Beta-Tester

                      BananaJoeB ? 2 Replies Last reply
                      0
                      • Merlin123M Merlin123

                        Ich hab immer mal wieder solche Meldungen drin:

                        
                        reolink.1
                        2025-03-02 15:03:44.720	error	get recording: AxiosError: timeout of 4000ms exceeded
                        
                        reolink.1
                        2025-03-02 15:03:44.605	error	drive infoAxiosError: timeout of 4000ms exceeded
                        
                        reolink.1
                        2025-03-02 15:03:44.604	error	get ai state general: AxiosError: timeout of 4000ms exceeded
                        
                        reolink.1
                        2025-03-02 15:03:44.604	error	get md state: AxiosError: timeout of 4000ms exceeded
                        

                        Tritt bei 3 verschiedenen Kameramodellen auf.
                        Aber nur hin und wieder mal

                        BananaJoeB Offline
                        BananaJoeB Offline
                        BananaJoe
                        Most Active
                        wrote on last edited by
                        #950

                        @merlin123 sagte in [Neuer Adapter] Reolink Kamera:

                        Tritt bei 3 verschiedenen Kameramodellen auf.

                        per WLAN angebunden oder per LAN-Kabel?
                        Die Kameras antworten dann nicht auf eine http/https-Anfrage.

                        Alle zur gleichen Zeit? Ist ein automatischer Neustart eingestellt der zufällig zur Zeit passt?

                        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                        D Merlin123M 2 Replies Last reply
                        0
                        • BananaJoeB BananaJoe

                          @merlin123 sagte in [Neuer Adapter] Reolink Kamera:

                          Tritt bei 3 verschiedenen Kameramodellen auf.

                          per WLAN angebunden oder per LAN-Kabel?
                          Die Kameras antworten dann nicht auf eine http/https-Anfrage.

                          Alle zur gleichen Zeit? Ist ein automatischer Neustart eingestellt der zufällig zur Zeit passt?

                          D Offline
                          D Offline
                          docsnyder7
                          wrote on last edited by docsnyder7
                          #951

                          Guten Morgen... ist es mit dem vom Adapter erzeugten DP´s möglich bei einer Reolink die auch gelistet ist, per Script zb den DP´s für die Bewegungserkennung zu aktivieren bzw zu deaktivieren.
                          Ich hab eine 820 im Auge.
                          Dankeschön

                          1 Reply Last reply
                          0
                          • BananaJoeB BananaJoe

                            @merlin123 sagte in [Neuer Adapter] Reolink Kamera:

                            Tritt bei 3 verschiedenen Kameramodellen auf.

                            per WLAN angebunden oder per LAN-Kabel?
                            Die Kameras antworten dann nicht auf eine http/https-Anfrage.

                            Alle zur gleichen Zeit? Ist ein automatischer Neustart eingestellt der zufällig zur Zeit passt?

                            Merlin123M Offline
                            Merlin123M Offline
                            Merlin123
                            wrote on last edited by
                            #952

                            @bananajoe 2 mal Wifi, einmal PoE. Automatischer Neustart ist nicht eingestellt, wüsste zumindest nicht wo. (Also Instanzen definitiv nicht)

                            Ich seh das immer mal wieder im Log, hab aber bisher nicht auf den Zeitpunkt geachtet. Ist auch nicht sehr häufig.

                            Beta-Tester

                            1 Reply Last reply
                            0
                            • Merlin123M Merlin123

                              Ich hab immer mal wieder solche Meldungen drin:

                              
                              reolink.1
                              2025-03-02 15:03:44.720	error	get recording: AxiosError: timeout of 4000ms exceeded
                              
                              reolink.1
                              2025-03-02 15:03:44.605	error	drive infoAxiosError: timeout of 4000ms exceeded
                              
                              reolink.1
                              2025-03-02 15:03:44.604	error	get ai state general: AxiosError: timeout of 4000ms exceeded
                              
                              reolink.1
                              2025-03-02 15:03:44.604	error	get md state: AxiosError: timeout of 4000ms exceeded
                              

                              Tritt bei 3 verschiedenen Kameramodellen auf.
                              Aber nur hin und wieder mal

                              ? Offline
                              ? Offline
                              A Former User
                              wrote on last edited by
                              #953

                              @merlin123

                              hab ich auch seit der vorletzten Version .. glaub ich.da fing das auf einmal an.. ist auch nicht regelmaessig.
                              Meine Kameras sind alle POE und da startet auch weder Kamera noch Adapter.

                              1 Reply Last reply
                              1
                              • S seb2010

                                Für alle, die gerne per HTTP das AutoTracking schalten wollen würden:
                                Ich habe es hier im Adapter-Issue als Lösung angehängt: https://github.com/aendue/ioBroker.reolink/issues/29

                                Der Code dazu sieht bei mir wie folgt aus. Es wird erst die aktuelle Config gelesen (äußere axios-Klammer, damit alle sonstigen Parameter erhalten bleiben und nur das Auto-Tracking an und aus geschaltet wird. Dann wird die neue Config mit dem gewünschten Status geschrieben.
                                State kann true oder false sein.

                                async function setAutoTrack(state){
                                    const axios = require("axios")
                                    const https = require('https')
                                    var options = {url: "https://192.168.178.92/api.cgi?cmd=GetAiCfg&user=admin&password=xxxxx",
                                        jar: true, 
                                        json: [{ "cmd": "GetAiCfg", "action": 0, "param" : {"channel": 0}}],
                                        method: 'POST',
                                        headers: { 'Content-Type': 'application/x-www-form-urlencoded'
                                            }
                                        }
                                    log('Getting AICfg ')
                                    await axios({
                                        method: "post",
                                        url: options['url'],
                                        data: JSON.stringify(options['json']),
                                        headers: options['headers'],
                                        httpsAgent: new https.Agent({
                                            rejectUnauthorized: false
                                        })
                                    }).then(async function (response) {
                                        var body = response.data
                                        var aiCfg = body[0]['value']
                                        log(JSON.stringify(aiCfg))
                                        aiCfg['bSmartTrack'] = (state == true ? 1 : 0)
                                        var options = {url: "https://192.168.178.92/api.cgi?cmd=SetAiCfg&user=admin&password=xxxxx",
                                        jar: true, 
                                        json: [{ "cmd": "SetAiCfg", "action": 0, "param" : aiCfg}],
                                        method: 'POST',
                                        headers: { 'Content-Type': 'application/x-www-form-urlencoded'
                                            }
                                        }
                                        log('Setting AICfg ')
                                        await axios({
                                            method: "post",
                                            url: options['url'],
                                            data: JSON.stringify(options['json']),
                                            headers: options['headers'],
                                            httpsAgent: new https.Agent({
                                                rejectUnauthorized: false
                                            })
                                        }).then(function (response) {
                                            var body = response.data
                                            var aiCfg = body[0]['value']
                                            log(JSON.stringify(aiCfg))            
                                        }).catch(function(error){log('error:'+error.code+' '+error.config.url)});
                                    }).catch(function(error){log('error:'+error.code+' '+error.config.url)});
                                }
                                

                                Viel Spaß damit

                                D Offline
                                D Offline
                                DarkDevil
                                wrote on last edited by DarkDevil
                                #954

                                @seb2010 mich würde immer noch interessieren wie ich das AutoTracking schalten kann. Mit dem von dir erstellte Code kann ich leider nichts anfangen, bzw. bräuchte einen Tritt in die richtige Richtung :)

                                Wo wird dieser eingesetzt?

                                Github Issue: https://github.com/aendue/ioBroker.reolink/issues/29

                                S 1 Reply Last reply
                                0
                                • D DarkDevil

                                  @seb2010 mich würde immer noch interessieren wie ich das AutoTracking schalten kann. Mit dem von dir erstellte Code kann ich leider nichts anfangen, bzw. bräuchte einen Tritt in die richtige Richtung :)

                                  Wo wird dieser eingesetzt?

                                  Github Issue: https://github.com/aendue/ioBroker.reolink/issues/29

                                  S Offline
                                  S Offline
                                  seb2010
                                  wrote on last edited by
                                  #955

                                  @darkdevil Hier ist mein Code um das zu schalten per state=true/false:

                                  async function setAutoTrack(state){
                                      const axios = require("axios")
                                      const https = require('https')
                                      var options = {url: "https://xxx.xxx.xxx.xxx/api.cgi?cmd=GetAiCfg&user=admin&password=xxxxxxx",
                                          jar: true, 
                                          json: [{ "cmd": "GetAiCfg", "action": 0, "param" : {"channel": 0}}],
                                          method: 'POST',
                                          headers: { 'Content-Type': 'application/x-www-form-urlencoded'
                                              }
                                          }
                                      log('Getting AICfg ')
                                      await axios({
                                          method: "post",
                                          url: options['url'],
                                          data: JSON.stringify(options['json']),
                                          headers: options['headers'],
                                          httpsAgent: new https.Agent({
                                              rejectUnauthorized: false
                                          })
                                      }).then(async function (response) {
                                          var body = response.data
                                          var aiCfg = body[0]['value']
                                          log(JSON.stringify(aiCfg))
                                          aiCfg['bSmartTrack'] = (state == true ? 1 : 0)
                                          var options = {url: "https://xxx.xx.xxx.xxx/api.cgi?cmd=SetAiCfg&user=admin&password=xxxxxxxxxx",
                                          jar: true, 
                                          json: [{ "cmd": "SetAiCfg", "action": 0, "param" : aiCfg}],
                                          method: 'POST',
                                          headers: { 'Content-Type': 'application/x-www-form-urlencoded'
                                              }
                                          }
                                          log('Setting AICfg ')
                                          await axios({
                                              method: "post",
                                              url: options['url'],
                                              data: JSON.stringify(options['json']),
                                              headers: options['headers'],
                                              httpsAgent: new https.Agent({
                                                  rejectUnauthorized: false
                                              })
                                          }).then(function (response) {
                                              var body = response.data
                                              var aiCfg = body[0]['value']
                                              log(JSON.stringify(aiCfg))            
                                          }).catch(function(error){log('error:'+error.code+' '+error.config.url)});
                                      }).catch(function(error){log('error:'+error.code+' '+error.config.url)});
                                  }
                                  
                                  D 1 Reply Last reply
                                  0
                                  • S seb2010

                                    @darkdevil Hier ist mein Code um das zu schalten per state=true/false:

                                    async function setAutoTrack(state){
                                        const axios = require("axios")
                                        const https = require('https')
                                        var options = {url: "https://xxx.xxx.xxx.xxx/api.cgi?cmd=GetAiCfg&user=admin&password=xxxxxxx",
                                            jar: true, 
                                            json: [{ "cmd": "GetAiCfg", "action": 0, "param" : {"channel": 0}}],
                                            method: 'POST',
                                            headers: { 'Content-Type': 'application/x-www-form-urlencoded'
                                                }
                                            }
                                        log('Getting AICfg ')
                                        await axios({
                                            method: "post",
                                            url: options['url'],
                                            data: JSON.stringify(options['json']),
                                            headers: options['headers'],
                                            httpsAgent: new https.Agent({
                                                rejectUnauthorized: false
                                            })
                                        }).then(async function (response) {
                                            var body = response.data
                                            var aiCfg = body[0]['value']
                                            log(JSON.stringify(aiCfg))
                                            aiCfg['bSmartTrack'] = (state == true ? 1 : 0)
                                            var options = {url: "https://xxx.xx.xxx.xxx/api.cgi?cmd=SetAiCfg&user=admin&password=xxxxxxxxxx",
                                            jar: true, 
                                            json: [{ "cmd": "SetAiCfg", "action": 0, "param" : aiCfg}],
                                            method: 'POST',
                                            headers: { 'Content-Type': 'application/x-www-form-urlencoded'
                                                }
                                            }
                                            log('Setting AICfg ')
                                            await axios({
                                                method: "post",
                                                url: options['url'],
                                                data: JSON.stringify(options['json']),
                                                headers: options['headers'],
                                                httpsAgent: new https.Agent({
                                                    rejectUnauthorized: false
                                                })
                                            }).then(function (response) {
                                                var body = response.data
                                                var aiCfg = body[0]['value']
                                                log(JSON.stringify(aiCfg))            
                                            }).catch(function(error){log('error:'+error.code+' '+error.config.url)});
                                        }).catch(function(error){log('error:'+error.code+' '+error.config.url)});
                                    }
                                    
                                    D Offline
                                    D Offline
                                    DarkDevil
                                    wrote on last edited by
                                    #956

                                    @seb2010 Super vielen Dank, allerdings wo kommt der Code rein? Ist das ein Java Script?
                                    Ich arbeite vorwiegend mit Blockly

                                    oelisonO 1 Reply Last reply
                                    0
                                    • David G.D David G.

                                      @mading

                                      Cool, wusste garnicht, dass das so leicht ist mit ffmpeg.

                                      EDIT:

                                      P.S.
                                      So gehen die Videos direkt raus wenn fertig. Dann braucht man nicht die unnötig lange Pause.

                                      Screenshot_20241211_233738_Chrome~2.jpg

                                      P.P.S.
                                      Hast du im Bild und der URL dein Pw im Klartext?

                                      Eduard77E Online
                                      Eduard77E Online
                                      Eduard77
                                      wrote on last edited by Eduard77
                                      #957

                                      @david-g, @mading, @Gonzokalle .
                                      Darf ich fragen, wie habt Ihr es hinbekommen, dass das Video gesendet wird?

                                      Ich hebe Skript nachgebaut.
                                      Script.jpg

                                      ffmpeg hab ich installiert.

                                      edi77@DebianIO:~$ ffmpeg -version
                                      ffmpeg version 5.1.6-0+deb12u1 Copyright (c) 2000-2024 the FFmpeg developers
                                      built with gcc 12 (Debian 12.2.0-14)
                                      configuration: --prefix=/usr --extra-version=0+deb12u1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --disable-sndio --enable-libjxl --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-librav1e --enable-shared
                                      libavutil      57. 28.100 / 57. 28.100
                                      libavcodec     59. 37.100 / 59. 37.100
                                      libavformat    59. 27.100 / 59. 27.100
                                      libavdevice    59.  7.100 / 59.  7.100
                                      libavfilter     8. 44.100 /  8. 44.100
                                      libswscale      6.  7.100 /  6.  7.100
                                      libswresample   4.  7.100 /  4.  7.100
                                      libpostproc    56.  6.100 / 56.  6.100
                                      
                                      

                                      CamSnapshots Ordner erstellt.

                                      ordner.jpg

                                      Aber ich bekomme nur Text per Telegram gesendet.

                                      Wenn ich das befehl im Terminal eingebe dann wird aufgezeichnet.

                                      ffmpeg -y -i rtsp://admin:xxxxx@192.168.178.41:554/h264Preview_01_sub -t 30 -f mp4 -vcodec libx264 -pix_fmt yuv420p -vf scale=1024:768 -r 15 /opt/iobroker/CamSnapshots/Haustuere.mp4
                                      

                                      Oder habe ich denn Befehl falsch aufgeteilt?

                                      G David G.D 2 Replies Last reply
                                      0
                                      • Eduard77E Eduard77

                                        @david-g, @mading, @Gonzokalle .
                                        Darf ich fragen, wie habt Ihr es hinbekommen, dass das Video gesendet wird?

                                        Ich hebe Skript nachgebaut.
                                        Script.jpg

                                        ffmpeg hab ich installiert.

                                        edi77@DebianIO:~$ ffmpeg -version
                                        ffmpeg version 5.1.6-0+deb12u1 Copyright (c) 2000-2024 the FFmpeg developers
                                        built with gcc 12 (Debian 12.2.0-14)
                                        configuration: --prefix=/usr --extra-version=0+deb12u1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --disable-sndio --enable-libjxl --enable-pocketsphinx --enable-librsvg --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-libplacebo --enable-librav1e --enable-shared
                                        libavutil      57. 28.100 / 57. 28.100
                                        libavcodec     59. 37.100 / 59. 37.100
                                        libavformat    59. 27.100 / 59. 27.100
                                        libavdevice    59.  7.100 / 59.  7.100
                                        libavfilter     8. 44.100 /  8. 44.100
                                        libswscale      6.  7.100 /  6.  7.100
                                        libswresample   4.  7.100 /  4.  7.100
                                        libpostproc    56.  6.100 / 56.  6.100
                                        
                                        

                                        CamSnapshots Ordner erstellt.

                                        ordner.jpg

                                        Aber ich bekomme nur Text per Telegram gesendet.

                                        Wenn ich das befehl im Terminal eingebe dann wird aufgezeichnet.

                                        ffmpeg -y -i rtsp://admin:xxxxx@192.168.178.41:554/h264Preview_01_sub -t 30 -f mp4 -vcodec libx264 -pix_fmt yuv420p -vf scale=1024:768 -r 15 /opt/iobroker/CamSnapshots/Haustuere.mp4
                                        

                                        Oder habe ich denn Befehl falsch aufgeteilt?

                                        G Offline
                                        G Offline
                                        Gonzokalle
                                        wrote on last edited by
                                        #958

                                        @Edis77
                                        Ich habe es mit einer Zeile gemacht.
                                        Teste mal.

                                        ffmpeg -y -i rtsp://admin:xxxxxxxxxx@192.168.10.140:554/h264Preview_01_sub -t 10 -f mp4 -vcodec libx264 -pix_fmt yuv420p -vf scale=1280:720 -r 15 /opt/iobroker/Kamerabilder/Brief.mp4
                                        
                                        Eduard77E 1 Reply Last reply
                                        0
                                        • G Gonzokalle

                                          @Edis77
                                          Ich habe es mit einer Zeile gemacht.
                                          Teste mal.

                                          ffmpeg -y -i rtsp://admin:xxxxxxxxxx@192.168.10.140:554/h264Preview_01_sub -t 10 -f mp4 -vcodec libx264 -pix_fmt yuv420p -vf scale=1280:720 -r 15 /opt/iobroker/Kamerabilder/Brief.mp4
                                          
                                          Eduard77E Online
                                          Eduard77E Online
                                          Eduard77
                                          wrote on last edited by
                                          #959

                                          @gonzokalle
                                          Danke, alles in einer Zeile funktioniert.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          620

                                          Online

                                          32.4k

                                          Users

                                          81.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe