Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Kamera PTZ Steuerung von Vis

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Kamera PTZ Steuerung von Vis

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

      Hallo zusammen,

      ich mal wieder 😊 Brauchte mal einen Tipp wie ich 2 Kamera von dem angefügten Script Steuern kann ? So wie es jetzt ist Funktioniert es mit einen Kamera. Position 0 und 1
      Jetzt soll eine weitere Kamera dazu kommen mit einer anderen IP:
      http://******@192.168.2.111/param.cgi?cmd=preset&-act=goto&-number=
      Diese soll dann auf Position 2 und 3 reagieren. Wie mache ich das am schlausten ?

      // Steuerkreuz
      createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS
      var webcam_wz_steuerung_url ='http://******@192.168.2.110/param.cgi?cmd=preset&-act=goto&-number=',
          request = require('request'),
          idPresetKameraWZ = "javascript.0.Kamera_Wohnzimmer_Preset"; // Valuelist 0 bis 3 für Presets 1 - 4
      
      on({
          id:'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung',
          change: 'any'
      }, function (data) {
          var steuerbefehl_wz = webcam_wz_steuerung_url + data.newState.val;
          
          request(steuerbefehl_wz, function (err, state, body){
              if (body) {
                  //setState(idPresetKameraWZ, 5); // verhindert, dass im View eine der 4 Steuertasten für Presets aktiviert wird
                  log('Webcam Wohnzimmer Manueller PTZ-Steuerung: ' + data.newState.val, 'info');
                  log(steuerbefehl_wz, 'debug');
              } else {
                  log('Drehbefehl' + data.newState.val + 'nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!', 'info');  
              }
          });  
      });
      

      Grüße Timo

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

        Prinzip:

        // Steuerkreuz
        createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS
        var url = 'http://******@192.168.2.';
        var param = '/param.cgi?cmd=preset&-act=goto&-number=';
        
        on({id: 'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung'}, function(dp) {
           var pos = dp.state.val;
           var addr = 110;
           if(pos >= 2) {
              pos = pos - 2;
              addr = 111;
           }
           var cmd = url + addr + param + pos;
           request(cmd, function (err, state, body){
                if (body) {
                    log(cmd, 'debug');
                } else {
                    log('Drehbefehl ' + pos + ' nicht übertragen, Kamera ' + addr + ' nicht bewegt, Fehler bei Ansteuerung!', 'warn');  
                }
            });  
        });
        
        1 Reply Last reply Reply Quote 0
        • K
          kasperfunsurfer last edited by

          Hilfe ich kriege es nicht hin. Wie müsste das ganze aussehen ???

          createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS
          var webcam_wz_steuerung_url ='http://****@192.168.2.110:81/param.cgi?cmd=preset&-act=goto&-number=',
          var url = 'http://****@192.168.2.';
          var param = '/param.cgi?cmd=preset&-act=goto&-number=';
          
              request = require('request'),
              idPresetKameraWZ = "javascript.0.Kamera_Wohnzimmer_Preset"; // Valuelist 0 bis 3 für Presets 1 - 4
          
          on({
              id:'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung',
              change: 'any'
          }, function (data) {
              var steuerbefehl_wz = webcam_wz_steuerung_url + data.newState.val;
              
              request(steuerbefehl_wz, function (err, state, body){
          
          on({id: 'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung'}, function(dp) {
             var pos = dp.state.val;
             var addr = 110;
             if(pos >= 2) {
                pos = pos - 2;
                addr = 111;
             }
             var cmd = url + addr + param + pos;        
          
              });  
          });
          
          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @kasperfunsurfer last edited by

            @kasperfunsurfer
            Habe es oben ergänzt.

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

              Funktioniert leider nicht. In den Objekten wir 2 und 3 gesetzt aber der Drehbefehl wird nicht übertragen. Es fehlt der Port 81.
              192.168.2.110:81

              // Steuerkreuz
               createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS
               var url = 'http://****@192.168.2.';
               var param = '/param.cgi?cmd=preset&-act=goto&-number=';
                
               on({id: 'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung'}, function(dp) {
                  var pos = dp.state.val;
                  var addr = 111;
                  if(pos >= 2) {
                     pos = pos - 2;
                     addr = 111;
                  }
                  var cmd = url + addr + param + pos;
                  request(cmd, function (err, state, body){
                      if (body) {
                           log(cmd, 'debug');
                       } else {
                           log('Drehbefehl' + pos + 'nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!', 'warn');  
                       }
                   });  
               });
              
              

              17:35:13.408 info javascript.0 Stop script script.js.Kamera_Test_2
              17:35:13.468 info javascript.0 Start javascript script.js.Kamera_Test_2
              17:35:13.468 info javascript.0 script.js.Kamera_Test_2: registered 1 subscription and 0 schedules
              17:35:17.027 warn javascript.0 script.js.Kamera_Test_2: Drehbefehl0nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!
              17:35:18.081 warn javascript.0 script.js.Kamera_Test_2: Drehbefehl0nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!
              17:35:38.262 warn javascript.0 script.js.Kamera_Test_2: Drehbefehl1nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @kasperfunsurfer last edited by

                @kasperfunsurfer sagte:

                Es fehlt der Port 81.

                Dann füge den Port hinzu

                 var param = ':81/param.cgi?cmd=preset&-act=goto&-number=';
                
                K 1 Reply Last reply Reply Quote 0
                • K
                  kasperfunsurfer @paul53 last edited by

                  @paul53 sauber so geht es schon mal.

                  Jetzt haben wir ja 192.168.2.111 Position 2 und 3

                  wie würde es jetzt aussehen mit noch einer Kamera 192.168.2.110 Position 0 und 1 ????

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @kasperfunsurfer last edited by

                    @kasperfunsurfer sagte:

                    noch einer Kamera 192.168.2.110 Position 0 und 1 ????

                    Ist doch enthalten:
                    Vis 0, 1: Kamera 192.168.2.110 Pos. 0, 1
                    Vis 2, 3: Kamera 192.168.2.111 Pos. 0, 1

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

                      Das ist jetzt mein Komlpettes Script was fehlt denn da bzw. was muss da noch hin ?

                      // Steuerkreuz
                       createState("VIS.Webcam_Wohnzimmer_Steuerung", {name: 'VIS Webcam Wohnzimmer Steuerung'}); // right, left, up, down, ... komt von VIS
                       var url = 'http://****@192.168.2.';
                       var param = ':81/param.cgi?cmd=preset&-act=goto&-number=';
                        
                       on({id: 'javascript.0.VIS.Webcam_Wohnzimmer_Steuerung'}, function(dp) {
                          var pos = dp.state.val;
                          var addr = 111;
                          if(pos >= 2) {
                             pos = pos - 2;
                             addr = 111;
                          }
                          var cmd = url + addr + param + pos;
                          request(cmd, function (err, state, body){
                               if (body) {
                                   log(cmd, 'debug');
                               } else {
                                   log('Drehbefehl' + pos + 'nicht übertragen, Kamera nicht bewegt, Fehler bei Ansteuerung!', 'warn');  
                               }
                           });  
                       });
                      
                      
                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @kasperfunsurfer last edited by

                        @kasperfunsurfer
                        Zeile 8 ist falsch !

                           var addr = 110;
                        
                        K 1 Reply Last reply Reply Quote 0
                        • K
                          kasperfunsurfer @paul53 last edited by

                          @paul53 sauber stimmt mal wieder.

                          Mal wieder vielen DANK und großes Lob an dich !!

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          926
                          Online

                          31.6k
                          Users

                          79.6k
                          Topics

                          1.3m
                          Posts

                          2
                          11
                          789
                          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