Skip to content
  • 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
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [gelöst] ioBroker.onvif-Adapter - Fehlermeldung bei Kamera..

NEWS

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

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

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

[gelöst] ioBroker.onvif-Adapter - Fehlermeldung bei Kamera..

Scheduled Pinned Locked Moved ioBroker Allgemein
cameraonvifadapter
97 Posts 9 Posters 15.4k Views 10 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.
  • JensenJ Jensen

    ja, steht aber nur auf digest

    GlasfaserG Online
    GlasfaserG Online
    Glasfaser
    wrote on last edited by
    #54

    @Jensen

    Habe auch diese Cam PTZIP204WX4IR

    so sind meine Einstellungen und es funktioniert !

    Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

    1 Reply Last reply
    0
    • JensenJ Offline
      JensenJ Offline
      Jensen
      wrote on last edited by
      #55

      ich teste schon

      1 Reply Last reply
      0
      • JensenJ Offline
        JensenJ Offline
        Jensen
        wrote on last edited by
        #56

        bis jetzt noch nichts Neues
        ich starte die Kamera neu
        was könnte ich noch tun, um dieser falschen IP auf die Schliche zu kommen?

        GlasfaserG 1 Reply Last reply
        0
        • JensenJ Jensen

          bis jetzt noch nichts Neues
          ich starte die Kamera neu
          was könnte ich noch tun, um dieser falschen IP auf die Schliche zu kommen?

          GlasfaserG Online
          GlasfaserG Online
          Glasfaser
          wrote on last edited by Glasfaser
          #57

          @Jensen sagte in [gelöst] ioBroker.onvif-Adapter - Fehlermeldung bei Kamera..:

          was könnte ich noch tun, um dieser falschen IP auf die Schliche zu kommen?

          Ping sie mal an ... die gibt es irgendwie in deinem Netzwerk.

          Was möchtest du denn haben mit deiner Cam ... die Snapshot

          http://192.168.178.64/onvif-http/snapshot?auth=YWRtaW46MTEK
          
          oder 
          
          http://user:password@192.168.178.64/onvif-http/snapshot?auth=YWRtaW46MTEK
          

          so sieht es eigenlich aus mit dem normalen ONVIF Adapter

          .
          2.JPG

          1.JPG

          Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

          1 Reply Last reply
          0
          • JensenJ Offline
            JensenJ Offline
            Jensen
            wrote on last edited by
            #58

            oh, oh, oh
            ich habe jetzt im onvif.0 jede Menge Datenpunkte 😊 😊 😊

            ja, Snapshot und PTZ Steuerung brauche ich letztendlich, und Darstellung im VIS

            GlasfaserG 1 Reply Last reply
            0
            • JensenJ Offline
              JensenJ Offline
              Jensen
              wrote on last edited by
              #59

              danke für die URLs
              beide funktionieren, allerdings nicht mit user:password
              aber das lag wohl am Browser (stand in irgendeinem Thread), da forsche ich mal noch

              1 Reply Last reply
              0
              • JensenJ Jensen

                oh, oh, oh
                ich habe jetzt im onvif.0 jede Menge Datenpunkte 😊 😊 😊

                ja, Snapshot und PTZ Steuerung brauche ich letztendlich, und Darstellung im VIS

                GlasfaserG Online
                GlasfaserG Online
                Glasfaser
                wrote on last edited by
                #60

                @Jensen sagte in [gelöst] ioBroker.onvif-Adapter - Fehlermeldung bei Kamera..:

                ich habe jetzt im onvif.0 jede Menge Datenpunkte

                und alles jetzt da ... funktioniert es jetzt !?

                Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                1 Reply Last reply
                0
                • JensenJ Offline
                  JensenJ Offline
                  Jensen
                  wrote on last edited by
                  #61

                  ok, ich muß mich etwas korrigieren
                  die vielen Datenpunkte habe ich im onvif-alt.0
                  dort kann ich aber schon meine beiden definierten Presets anfahren
                  auch ein reboot hat funktioniert

                  im onvif.0 leider weiter das gleiche unbefriedigende Ergebnis
                  der Scan läuft ewig (muß manuell abgebrochen werden), Datenpunkte werden nicht erstellt
                  am Ende immer diese ominöse IP im Log (die auch auf Ping nicht antwortet)

                  GlasfaserG 1 Reply Last reply
                  0
                  • JensenJ Jensen

                    ok, ich muß mich etwas korrigieren
                    die vielen Datenpunkte habe ich im onvif-alt.0
                    dort kann ich aber schon meine beiden definierten Presets anfahren
                    auch ein reboot hat funktioniert

                    im onvif.0 leider weiter das gleiche unbefriedigende Ergebnis
                    der Scan läuft ewig (muß manuell abgebrochen werden), Datenpunkte werden nicht erstellt
                    am Ende immer diese ominöse IP im Log (die auch auf Ping nicht antwortet)

                    GlasfaserG Online
                    GlasfaserG Online
                    Glasfaser
                    wrote on last edited by Glasfaser
                    #62

                    @Jensen sagte in [gelöst] ioBroker.onvif-Adapter - Fehlermeldung bei Kamera..:

                    die vielen Datenpunkte habe ich im onvif-alt.0
                    dort kann ich aber schon meine beiden definierten Presets anfahren

                    Deshalb nutzte ich diesen Adapter 😉 ( onvif-alt. )

                    Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                    1 Reply Last reply
                    0
                    • JensenJ Offline
                      JensenJ Offline
                      Jensen
                      wrote on last edited by
                      #63

                      ok, wenn er funktioniert, dann nehme ich den auch
                      geht damit alles?

                      • Bild im VIS
                      • Presets im VIS ansteuern
                      • Snapshots timergesteuert auf FTP Server
                      • vielleicht noch was mit MotionDetection
                      GlasfaserG 1 Reply Last reply
                      0
                      • JensenJ Jensen

                        ok, wenn er funktioniert, dann nehme ich den auch
                        geht damit alles?

                        • Bild im VIS
                        • Presets im VIS ansteuern
                        • Snapshots timergesteuert auf FTP Server
                        • vielleicht noch was mit MotionDetection
                        GlasfaserG Online
                        GlasfaserG Online
                        Glasfaser
                        wrote on last edited by Glasfaser
                        #64

                        @Jensen sagte in [gelöst] ioBroker.onvif-Adapter - Fehlermeldung bei Kamera..:

                        • Bild im VIS

                        Nicht über den Adapter ... nur über ein HTML Widget ( ..Screenshot Aktualisiert )

                        • Presets im VIS ansteuern

                        per JScript / Blockly dann steuerbar

                        • Snapshots timergesteuert auf FTP Server

                        per JScript / Blockly dann steuerbar

                        • vielleicht noch was mit MotionDetection

                        per JScript / Blockly dann steuerbar

                        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                        1 Reply Last reply
                        0
                        • JensenJ Offline
                          JensenJ Offline
                          Jensen
                          wrote on last edited by
                          #65

                          @Glasfaser
                          für heute muß ich Schluss machen
                          ganz ganz vielen Dank für die Hilfe, du hast meinen Abend gerettet
                          wenn du noch hilfreiche Tips zu den vorher genannten 4 geplanten Punkten hast, ich wäre ein dankbarer Abnehmer
                          In diesem Sinne, einen schönen Abend!
                          Gruß Jens

                          GlasfaserG 1 Reply Last reply
                          0
                          • JensenJ Jensen

                            @Glasfaser
                            für heute muß ich Schluss machen
                            ganz ganz vielen Dank für die Hilfe, du hast meinen Abend gerettet
                            wenn du noch hilfreiche Tips zu den vorher genannten 4 geplanten Punkten hast, ich wäre ein dankbarer Abnehmer
                            In diesem Sinne, einen schönen Abend!
                            Gruß Jens

                            GlasfaserG Online
                            GlasfaserG Online
                            Glasfaser
                            wrote on last edited by Glasfaser
                            #66

                            @Jensen

                            Die CAM nutze ich so nicht , habe eher die Original Hikvision im Einsatz.
                            Das Problem ist das die vorhandene Firmware auf der Cam nicht viel zulässt .

                            Die normale Hikvision kann man direkt mit einem Http Befehl ansteuern .

                            für die Anpviz habe ich es mal angepasst , kannst du gerne zum weiteren Ausprobieren nutzen
                            War von mir ein Testlauf :

                            Hier mal ein Script zum steuern

                            Zeile 245 / 247 anpassen !

                            /* Nachbau HIKVISON
                            
                            Steuerung meiner einzigen ONVIF Kamera via Javascript
                            
                            https://github.com/futomi/node-onvif/tree/master/sample
                            
                            hostname: "192.168.178.XXX",
                            
                            username: "username",
                            
                            password: "passwort"
                            
                            {1}
                            
                            Presets direkt in Kamera-Webserver (sihe hostname) speichern.
                            
                            Todo: 
                            
                            Presets speichern und dabei Snapshot für Preview in vis.0 speichern
                            
                            Presets löschen und dabei neutrales Vorschaubild in vis.0 erstellen
                            
                            Wie AutoPan oder Pattern oder Tour aufrufen?
                            
                            23.07.2017 Presets zugefügt
                            
                            14.08.2017 Test beendet, umbeannt
                            
                            */
                            
                            const fC = false;
                            
                            const logging = false;
                            
                            const dest_path = '/opt/iobroker/iobroker-data/files/vis.0/snapsonvif.jpg'; // OS X Pfad
                            
                            const pfad = 'javascript.0.VIS.Kamera.1.PTZ.';
                            
                            const idSpeed     = pfad + 'Geschwindigkeit';
                            
                            const idStoppzeit = pfad + 'Stoppzeit';
                            
                            const idStopp =     pfad + 'Stopp';
                            
                            const idRechts =    pfad + 'rechts';
                            
                            const idLinks =     pfad + 'links';
                            
                            const idHoch =      pfad + 'hoch';
                            
                            const idRunter =    pfad + 'runter';
                            
                            const idZoomIn =    pfad + 'ZoomIn';
                            
                            const idZoomOut =   pfad + 'ZoomOut';
                            
                            const idGotoPreset =   pfad + 'gotoPreset';
                            
                            const onvif = require('node-onvif');
                            
                            const fs = require('fs');
                            
                            createState(idSpeed, 1, fC, {
                            
                              def: 1,
                            
                              min: 0,
                            
                              max: 1,
                            
                              name: 'Kamera 1 PTZ Geschwindkeit bei Bewegung',
                            
                              desc: 'Geschwindigkeit von 0-1 bei der Bewegung',
                            
                              type: 'number'
                            
                            });
                            
                            createState(idStoppzeit, 1, fC, {
                            
                              def: 0,
                            
                              min: 0,
                            
                              name: 'Kamera 1 PTZ Stoppzeit',
                            
                              desc: 'Dauer in Sekunden bis zum Stopp der Bewegung',
                            
                              type: 'number',
                            
                              unit: 's'
                            
                            });
                            
                            createState(idStopp, false, fC, {
                            
                              def: false,
                            
                              name: 'Kamera 1 PTZ Stopp',
                            
                              desc: 'Sofortiger Stopp der Bewegung',
                            
                              type: 'boolean',
                            
                              role: 'switch'
                            
                            });
                            
                            createState(idRechts, false, fC, {
                            
                              def: false,
                            
                              name: 'Kamera 1 PTZ rechts',
                            
                              desc: 'Bewegung nach rechts',
                            
                              type: 'boolean',
                            
                              role: 'switch'
                            
                            });
                            
                            createState(idLinks, false, fC, {
                            
                              def: false,
                            
                              name: 'Kamera 1 PTZ links',
                            
                              desc: 'Bewegung nach links',
                            
                              type: 'boolean',
                            
                              role: 'switch'
                            
                            });
                            
                            createState(idHoch, false, fC, {
                            
                              def: false,
                            
                              name: 'Kamera 1 PTZ oben',
                            
                              desc: 'Bewegung nach oben',
                            
                              type: 'boolean',
                            
                              role: 'switch'
                            
                            });
                            
                            createState(idRunter, false, fC, {
                            
                              def: false,
                            
                              name: 'Kamera 1 PTZ unten',
                            
                              desc: 'Bewegung nach unten',
                            
                              type: 'boolean',
                            
                              role: 'switch'
                            
                            });
                            
                            createState(idZoomIn, false, fC, {
                            
                              def: false,
                            
                              name: 'Kamera 1 PTZ Zoom in',
                            
                              desc: 'Bild vergößern',
                            
                              type: 'boolean',
                            
                              role: 'switch'
                            
                            });
                            
                            createState(idZoomOut, false, fC, {
                            
                              def: false,
                            
                              name: 'Kamera 1 PTZ Zoom out',
                            
                              desc: 'Bild verkleinern',
                            
                              type: 'boolean',
                            
                              role: 'switch'
                            
                            });
                            
                            createState(idGotoPreset, 0, fC, {
                            
                              def:  0,
                            
                              name: 'Kamera 1 PTZ Preset Wähler',
                            
                              desc: 'Preset auswählen (Zahlen von 1 bis X)',
                            
                              type: 'number'
                            
                            });
                            
                            
                            
                            log('Start the discovery process.');
                            
                            //Find the ONVIF network cameras
                            
                            onvif.startDiscovery((info) => {
                            
                            // Show the device name and the URL of the end point
                            
                            log('- ' + info.urn);
                            
                            log('  - ' + info.name);
                            
                            log('  - ' + info.xaddrs[0]);
                            
                            });
                            
                            // Stop the discovery process in 3 seconds
                            
                            setTimeout(() => {
                            
                            onvif.stopDiscovery(() => {
                            
                              log('Stopped the discovery process.');
                            
                            {1}
                            
                            });
                            
                            }, 3000);
                            
                            
                            
                            // Create an OnvifDevice object
                            
                            const device = new onvif.OnvifDevice({
                            
                              xaddr: 'http://192.168.178.64/onvif/device_service',
                            
                              user : 'DeinBenutzer',
                            
                              pass : 'DeinPasswort'
                            
                            });
                            
                            function movePTZ (ptz_x, ptz_y, ptz_z, stoptime) {
                            
                              // https://github.com/futomi/node-onvif#ptzmoveparams-callback
                            
                              device.init((error) => {
                            
                                  if (error) {
                            
                                      log('[ERROR] ' + error.message);
                            
                                      return;
                            
                                  } else {
                            
                                      // +++ CONTROL via PTZ 
                            
                                      var ptzlog = '';
                            
                                      ptz_x = (ptz_x <=1 && ptz_x >=-1) ? ptz_x : 0;
                            
                                      ptz_y = (ptz_y <=1 && ptz_y >=-1) ? ptz_y : 0;
                            
                                      ptz_z = (ptz_z <=1 && ptz_z >=-1) ? ptz_z : 0;
                            
                                      if (ptz_x > 0) ptzlog = 'Schwenk nach rechts';
                            
                                      if (ptz_x < 0) ptzlog = 'Schwenk nach links';
                            
                                      if (ptz_y > 0) ptzlog = 'Schwenk nach oben';
                            
                                      if (ptz_y < 0) ptzlog = 'Schwenk nach unten';
                            
                                      if (ptz_z > 0) ptzlog = 'Zoom in';
                            
                                      if (ptz_z < 0) ptzlog = 'Zoom out';
                            
                                      ptzlog += ' für ' + stoptime + 's';
                            
                                      if (logging) log(ptzlog);
                            
                                      // Create the parameters
                            
                                      var params = {
                            
                                          'speed': {
                            
                                              x: ptz_x, // Speed of pan (in the range of -1 to 1.0)
                            
                                              y: ptz_y, // Speed of tilt (in the range of -1 to 1.0)
                            
                                              z: ptz_z  // Speed of zoom (in the range of -1 to 1.0)
                            
                                          },
                            
                                          'timeout': 30 // seconds
                            
                                      };
                            
                                      // Move the camera
                            
                                      device.ptzMove(params, (error) => {
                            
                                          if (error) {
                            
                                              log(error.message, 'error');
                            
                                          } else {
                            
                                              log('Camera moved!');
                            
                                          }
                            
                                      });
                            
                            
                            
                                      // Stop to the PTZ in X seconds
                            
                                      setTimeout(() => {
                            
                                          device.ptzStop((error) => {
                            
                                              if (error) {
                            
                                                  log(error.message, 'error');
                            
                                              } else {
                            
                                                  log('Succeeded to stop after ' + stoptime + ' seconds.');
                            
                                              }
                            
                                          });
                            
                                      }, stoptime * 1000);  // stopzeit
                            
                                  }
                            
                              });
                            
                            }
                            
                            function stopMoving () {
                            
                              device.ptzStop((error) => {
                            
                                  if (error) {
                            
                                      log(error.message, 'error');
                            
                                  } else {
                            
                                      log('Succeeded to stop.');
                            
                                  }
                            
                              });
                            
                            }
                            
                            // https://github.com/futomi/node-onvif#gotopresetparams-callback-method
                            
                            function gotoPreset (presetNumber) { // 1,2,3 kommt als ganze Zahl
                            
                              if (presetNumber > 0) {
                            
                                  device.init((error) => {
                            
                                      if (error) {
                            
                                          log('[ERROR] ' + error.message, 'error');
                            
                                          return;
                            
                                      } /*else {*/
                            
                                      // The OnvifServicePtz object
                            
                                      var ptz = device.services.ptz;
                            
                                      if (ptz) {
                            
                                          var profile = device.getCurrentProfile(); // debug
                            
                                          log(JSON.stringify(profile, null, '  ')); // debug log
                            
                            
                            
                                          var params = {
                            
                                              'ProfileToken': profile['token'],
                            
                                              'PresetToken' : presetNumber.toString(),
                            
                                              'Speed'       : {'x': 1, 'y': 1, 'z': 1}
                            
                                          };
                            
                            
                            
                                          device.services.ptz.gotoPreset(params, (error, result) => {
                            
                                              if (error) {
                            
                                                  log('[ERROR] ' + error.message, 'error');
                            
                                              } else {
                            
                                                  if (logging) log('Preset: ' + JSON.stringify(result.data, null, '  ')); // statt result.['data']
                            
                                                  log('Camera moved to Preset #' + presetNumber.toString());
                            
                                              }
                            
                                          });
                            
                                      } else {
                            
                                          log('[ERROR] Your ONVIF network camera does not support the PTZ service.');
                            
                                      }
                            
                                      //}
                            
                                  });
                            
                              } else {
                            
                                  log('Preset für Kamera 1 kein valider Preset-Wert'); // debug log
                            
                              }
                            
                            }
                            
                            // Bild an telegram schicken
                            
                            function sendImage (pfad, bildtext) {
                            
                              setTimeout(function() {
                            
                                  sendTo('telegram.1', {
                            
                                      text: pfad,
                            
                                      caption: bildtext
                            
                                  });
                            
                                  log('Webcam Bild per telegram verschickt');
                            
                              }, 2 * 1000);
                            
                            }
                            
                            function saveImage () {
                            
                                  // Initialize the OnvifDevice object
                            
                                  device.init((error) => {
                            
                                      if (error) {
                            
                                          log('[ERROR] ' + error.message, 'error');
                            
                                          return;
                            
                                      } else {
                            
                                          if (logging) log('The OnvifDevice object has been initialized successfully.');
                            
                                          // +++ Get the detailed device information
                            
                                          var device_info = device.getInformation();
                            
                                          if (logging) log(JSON.stringify(device_info, null, '  '));
                            
                                          // +++ Get the UDP stream URL
                            
                                          var url = device.getUdpStreamUrl();
                            
                                          if (logging) log('UDP-Stream: ' + url);
                            
                            
                            
                                          // +++ Get Profile
                            
                                          var profile = device.getCurrentProfile();
                            
                                          if (logging) log('Profile: ' + JSON.stringify(profile, null, '  ')); // Viele Infos
                            
                                          // für debug: 
                            
                                          //log('http: ' + profile.stream.http);
                            
                            
                            
                                          var cam_info = 'ONVIF Bild' + '\n'
                            
                                                       + 'Model: ' + device_info.Model + '\n'
                            
                                                       + 'Firmware: ' + device_info.FirmwareVersion + '\n'
                            
                                                       + 'Seriennummer: ' + device_info.SerialNumber + '\n'
                            
                                                       + 'Harware ID: ' + device_info.HardwareId + '\n'
                            
                                                       + 'RTSP-Stream: ' + url;     
                            
                            
                            
                                          // +++ Get the data of the snapshot
                            
                                          log('fetching the data of the snapshot...');
                            
                                          device.fetchSnapshot((error, res) => {
                            
                                              if (error) {
                            
                                                  log(error.message, 'error');
                            
                                                  return;
                            
                                              }
                            
                                              // Save the data to a file and send via telegram
                            
                                              fs.writeFile(dest_path + 'onvif_snapshot.jpg', res.body, function (error) { // Anpassen an die OS X gegebenheiten (oder per Telegram senden)
                            
                                                  if (error) {
                            
                                                      log(error.message, 'error');
                            
                                                  } else {
                            
                                                      sendImage(dest_path + 'onvif_snapshot.jpg', cam_info);
                            
                                                      log('Image sent!');
                            
                                                  }
                            
                                              });
                            
                                          });
                            
                                      }
                            
                                  });    
                            
                            }
                            
                            // Start beim Setzen auf true
                            
                            // Links
                            
                            on({id: idLinks, val: true},function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 var stoppzeit = getState(idStoppzeit).val;
                            
                                 var speed = getState(idSpeed).val;
                            
                                 movePTZ(-1 * speed , 0, 0, stoppzeit);
                            
                                 setStateDelayed(idLinks, false, 500); // ggf , 500 + (stoppzeit * 1000)
                            
                              }
                            
                            });
                            
                            // rechts
                            
                            on({id: idRechts, val: true}, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 var stoppzeit = getState(idStoppzeit).val;
                            
                                 var speed = getState(idSpeed).val;
                            
                                 movePTZ(1 * speed , 0, 0, stoppzeit);
                            
                                 setStateDelayed(idRechts, false, 500);
                            
                              }
                            
                            });
                            
                            // oben
                            
                            on({id: idHoch, val: true}, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 var stoppzeit = getState(idStoppzeit).val;
                            
                                 var speed = getState(idSpeed).val;
                            
                                 movePTZ(0, 1 * speed, 0, stoppzeit);
                            
                                 setStateDelayed(idHoch, false, 500, 500);
                            
                              }
                            
                            });
                            
                            // runter
                            
                            on({id: idRunter, val: true}, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 var stoppzeit = getState(idStoppzeit).val;
                            
                                 var speed = getState(idSpeed).val;
                            
                                 movePTZ(0, -1 * speed, 0, stoppzeit);
                            
                                 setStateDelayed(idRunter, false, 500);
                            
                              }
                            
                            });
                            
                            // vergrößern
                            
                            on({id: idZoomIn, val: true}, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 var stoppzeit = getState(idStoppzeit).val;
                            
                                 var speed = getState(idSpeed).val;
                            
                                 movePTZ(0, 0, 1 * speed, stoppzeit);
                            
                                 setStateDelayed(idZoomIn, false, 500);
                            
                              }
                            
                            });
                            
                            // verkleinern
                            
                            on({id:idZoomOut, val: true}, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 var stoppzeit = getState(idStoppzeit).val;
                            
                                 var speed = getState(idSpeed).val;
                            
                                 movePTZ(0, 0, -1 * speed, stoppzeit);
                            
                                 setStateDelayed(idZoomOut, false, 500);
                            
                              }
                            
                            });
                            
                            // sofortiger Stopp
                            
                            on(idStopp, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 stopMoving();
                            
                                 setStateDelayed(idStopp, false, 500);
                            
                                 setState(idGotoPreset, 0);
                            
                              }
                            
                            });
                            
                            // bei Bedienung aller Knöpfe sofert Preset Anzeige löschen 
                            
                            // klappt noch nicht so richtig, da laufende Fahrt zum Presetpunkt noch beendet wird
                            
                            on({
                            
                              id: [idStopp, idZoomOut, idZoomIn, idRunter, idHoch, idRechts, idLinks], 
                            
                              change: 'any'
                            
                            }, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 setState(idGotoPreset, 0);
                            
                              }
                            
                            });
                            
                            // zum bereits gespeicherten Preset X fahren (Ganze Zahl, kommt aus VIS, Scenes oder Script)
                            
                            on(idGotoPreset, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 gotoPreset(parseInt(obj.state.val,10)); // vorher 10 wird später zu einem String gewandelt
                            
                                 setStateDelayed(idGotoPreset, 0, 500); // reset
                            
                              }
                            
                            });
                            
                            // Skriptstart
                            
                            //setTimeout(saveImage, 15000);
                            
                            // setTimeout(goHome, 1000);
                            
                            /*
                            
                            setTimeout(function() {
                            
                              movePTZ(1,0,0,5); // rechts, 2 sek
                            
                            }, 1000);
                            
                            */
                            
                            
                            const idHochRechts = pfad + 'hochrechts';
                            
                            
                            
                            createState(idHochRechts, false, fC, {def: false,name: 'Kamera 1 PTZ obenrechts',desc: 'Bewegung nach obenrechts',type: 'boolean',role: 'switch'});
                            
                            
                            
                            
                            
                            
                            
                            on(idHochRechts, function (obj) {
                            
                              if (!obj.state.ack && obj.state.val) {
                            
                                 var stoppzeit = getState(idStoppzeit).val;
                            
                                 var speed = getState(idSpeed).val;
                                 
                                 movePTZ(1 * speed , 0, 0, stoppzeit);
                            
                                 movePTZ(0, 1 * speed, 0, stoppzeit);
                            
                                 setStateDelayed(idHochRechts, false, 500);
                                 
                              }
                            
                            });
                            
                            
                            
                            

                            hier das Widget :
                            gesteuert wird über SimpleAPI , muss du dann anpassen

                            [{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/onvif-alt.0.849a40d5db54.ptz.presets.Preset 1?value=true","text":"Home"},"style":{"left":"16px","top":"17px","width":"133px","height":"37px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/onvif-alt.0.849a40d5db54.ptz.presets.Preset 2?value=true","text":"links"},"style":{"left":"153px","top":"17px","width":"133px","height":"37px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/onvif-alt.0.849a40d5db54.ptz.presets.Preset 3?value=true","text":"mitte"},"style":{"left":"16px","top":"63px","width":"133px","height":"37px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/onvif-alt.0.849a40d5db54.ptz.presets.Preset 4?value=true","text":"rechts"},"style":{"left":"153px","top":"63px","width":"133px","height":"37px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/javascript.0.VIS.Kamera.1.PTZ.ZoomIn?value=true","text":"Zoom +"},"style":{"left":"21px","top":"133px","width":"76px","height":"37px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/javascript.0.VIS.Kamera.1.PTZ.Stopp?value=true","text":"Stop"},"style":{"left":"111px","top":"133px","width":"86px","height":"38px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/javascript.0.VIS.Kamera.1.PTZ.ZoomOut?value=true","text":"Zoom -"},"style":{"left":"211px","top":"133px","width":"73px","height":"37px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"","text":"","src":"/vis.0/dorn/control_arrow_up_left.png","imageHeight":"98"},"style":{"left":"21px","top":"186px","width":"76px","height":"58px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/javascript.0.VIS.Kamera.1.PTZ.hoch?value=true","text":"","src":"/vis.0/dorn/control_arrow_up.png"},"style":{"left":"116px","top":"186px","width":"76px","height":"58px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"","text":"","src":"/vis.0/dorn/control_centr_arrow_up_right.png"},"style":{"left":"209px","top":"186px","width":"76px","height":"58px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/javascript.0.VIS.Kamera.1.PTZ.links?value=true","text":" ","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,"src":"/vis.0/dorn/control_centr_arrow_left.png","imageHeight":"98","alt":""},"style":{"left":"21px","top":"261px","width":"76px","height":"58px","overflow-x":"","overflow-y":"","position":"","opacity":"","cursor":"","text-align":"center","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/javascript.0.VIS.Kamera.1.PTZ.Stopp?value=true","text":"","src":"/vis.0/dorn/audio_stop.png"},"style":{"left":"110px","top":"261px","width":"86px","height":"58px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/javascript.0.VIS.Kamera.1.PTZ.rechts?value=true","text":"","src":"/vis.0/dorn/control_arrow_right.png","imageHeight":"98"},"style":{"left":"209px","top":"261px","width":"76px","height":"58px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"","text":"","src":"/vis.0/dorn/control_centr_arrow_down_left.png"},"style":{"left":"21px","top":"336px","width":"76px","height":"58px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"","text":"","src":"/vis.0/dorn/control_centr_arrow_down_right.png"},"style":{"left":"209px","top":"336px","width":"76px","height":"58px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplIconHttpGet","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0,"url":"http://192.168.178.11:8087/set/javascript.0.VIS.Kamera.1.PTZ.runter?value=true","text":"","src":"/vis.0/dorn/control_centr_arrow_down.png"},"style":{"left":"116px","top":"336px","width":"76px","height":"58px","z-index":"5"},"widgetSet":"jqui"},{"tpl":"tplJquiSelectList","data":{"oid":"javascript.0.VIS.Kamera.1.PTZ.gotoPreset","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","values":"1;2","texts":"1;2","height":"100","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,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"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-zindex":0},"style":{"left":"131px","top":"104px","z-index":"9999"},"widgetSet":"jqui"}]
                            


                            .
                            1.JPG

                            Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                            1 Reply Last reply
                            0
                            • JensenJ Offline
                              JensenJ Offline
                              Jensen
                              wrote on last edited by
                              #67

                              @Glasfaser
                              oh prima, danke, ich baue das mal ein
                              Was kann die HIKVISION mehr oder besser?
                              Welchen Typ genau würdest du empfehlen?

                              GlasfaserG 1 Reply Last reply
                              0
                              • JensenJ Jensen

                                @Glasfaser
                                oh prima, danke, ich baue das mal ein
                                Was kann die HIKVISION mehr oder besser?
                                Welchen Typ genau würdest du empfehlen?

                                GlasfaserG Online
                                GlasfaserG Online
                                Glasfaser
                                wrote on last edited by Glasfaser
                                #68

                                @Jensen

                                Habe zwei DS-2DE2A404IW-DE3 als PTZ ( ist dann Baugleich LTS/Anpviz PTZIP204WX4IR nur eigeschränkte Firmware )

                                Sonst auch die DS-2CE78U1T-IT3F. Objektiv 2.8 mm

                                Zur Qualität der Auflösung/Bilder von den günstigen kann man auch nicht sagen ... eigenlich gleich .

                                Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                1 Reply Last reply
                                0
                                • JensenJ Offline
                                  JensenJ Offline
                                  Jensen
                                  wrote on last edited by
                                  #69

                                  diese Modelle schaue ich mir auch mal an
                                  Mit deinen Skripten habe ich keinen Erfolg.
                                  Man muß dazu ja node-onvif installieren, das bekomme ich nicht hin.
                                  Sehe ich das richtig, daß in dem VIS Beispiel dann ein Mix aus Funktionalitäten des ioBroker Adapters und dieses node-onvif verwendet wird, oder liege ich komplett falsch?

                                  GlasfaserG 1 Reply Last reply
                                  0
                                  • JensenJ Offline
                                    JensenJ Offline
                                    Jensen
                                    wrote on last edited by
                                    #70

                                    oh oh, diese HIKVISION (DS-2DE2A404IW-DE3) liegen preislich gleich nochmal 100€ höher (240€)
                                    Hat man denn das wirklich dran?

                                    Bis jetzt verwende ich China HjT Modelle für ca. 30€ und bin damit rundum zufrieden.
                                    Webinterface, Snapshot per URL, automatische Snapshots zum FTP Server, Alarmsnapshots zum FTP Server, Einbindung ins VIS und das alles innerhalb von wenigen Minuten eingerichtet.
                                    Nur weil ich jetzt gern eine PTZ Kamera hätte, fange ich wieder von vorn an. Bei diesen Preisen komme ich ins Grübeln.

                                    GlasfaserG 1 Reply Last reply
                                    0
                                    • JensenJ Jensen

                                      diese Modelle schaue ich mir auch mal an
                                      Mit deinen Skripten habe ich keinen Erfolg.
                                      Man muß dazu ja node-onvif installieren, das bekomme ich nicht hin.
                                      Sehe ich das richtig, daß in dem VIS Beispiel dann ein Mix aus Funktionalitäten des ioBroker Adapters und dieses node-onvif verwendet wird, oder liege ich komplett falsch?

                                      GlasfaserG Online
                                      GlasfaserG Online
                                      Glasfaser
                                      wrote on last edited by
                                      #71

                                      @Jensen sagte in [gelöst] ioBroker.onvif-Adapter - Fehlermeldung bei Kamera..:

                                      node-onvif installieren,

                                      In JS eintragen ..

                                      1.JPG

                                      ein Mix aus Funktionalitäten des ioBroker Adapters und dieses node-onvif verwendet wird,

                                      ja richtig ... ist ein Mix ..

                                      Bei der Orginal ist es dann alles per HTTP

                                      Beispiel :

                                      Preset

                                      http://user:passwort@192.168.178.53:80/PTZ/channels/1/PTZControl?command=GOTO_PRESET&presetNo=1&speed=7&mode=start
                                      

                                      hoch

                                      http://user:passwort@192.168.178.53/PTZ/channels/1/PTZControl?command=TILT_UP&speed=2&mode=START
                                      

                                      Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                      1 Reply Last reply
                                      0
                                      • JensenJ Jensen

                                        oh oh, diese HIKVISION (DS-2DE2A404IW-DE3) liegen preislich gleich nochmal 100€ höher (240€)
                                        Hat man denn das wirklich dran?

                                        Bis jetzt verwende ich China HjT Modelle für ca. 30€ und bin damit rundum zufrieden.
                                        Webinterface, Snapshot per URL, automatische Snapshots zum FTP Server, Alarmsnapshots zum FTP Server, Einbindung ins VIS und das alles innerhalb von wenigen Minuten eingerichtet.
                                        Nur weil ich jetzt gern eine PTZ Kamera hätte, fange ich wieder von vorn an. Bei diesen Preisen komme ich ins Grübeln.

                                        GlasfaserG Online
                                        GlasfaserG Online
                                        Glasfaser
                                        wrote on last edited by
                                        #72

                                        @Jensen sagte in [gelöst] ioBroker.onvif-Adapter - Fehlermeldung bei Kamera..:

                                        Nur weil ich jetzt gern eine PTZ Kamera hätte,

                                        Reicht wie gesagt auch aus ... mußt du nur ein wenig mixen ...

                                        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                        1 Reply Last reply
                                        0
                                        • JensenJ Offline
                                          JensenJ Offline
                                          Jensen
                                          wrote on last edited by
                                          #73

                                          Sollte das mit dem Installieren so einfach sein, nein.
                                          Der Rechner pfeift, ganz hohe Systemlast, ich muß wohl mal einen Neustart machen.

                                          GlasfaserG 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
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          399

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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