Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [GELÖST] HikVision CAM per Script Anweisung steuern (REQUEST)

NEWS

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

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

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

[GELÖST] HikVision CAM per Script Anweisung steuern (REQUEST)

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
communication
10 Beiträge 4 Kommentatoren 2.1k Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • T Offline
    T Offline
    Timme
    schrieb am zuletzt editiert von Timme
    #1

    Hallo,
    ich möchte gerne bei meiner HikVision Kamera die Motion Detection abstellen wenn ich z Hause bin.

    WebOberfläche.JPG

    In der HikVision HIKVISION ISAPI_2.6-IPMD Service.pdf kann man die unterschiedlichen Befehle nachlesen.

    Für die Aktivierung oder Deaktivierung kannman per Get und Put die Anweisung schicken.
    Mit dem Programm Postman funktioniert das einwandfrei.
    So kann man per

    GET http://IPADRESSE/ISAPI/System/Video/inputs/channels/1/motionDetection

    den Status abfragen und bekommt:

    <?xml version="1.0" encoding="UTF-8"?>
    <MotionDetection version="2.0" xmlns="http://www.std-cgi.com/ver20/XMLSchema">
    <enabled>true</enabled>
    <enableHighlight>true</enableHighlight>
    <samplingInterval>2</samplingInterval>
    <startTriggerTime>500</startTriggerTime>
    <endTriggerTime>500</endTriggerTime>
    <regionType>grid</regionType>
    <Grid>
    <rowGranularity>18</rowGranularity>
    <columnGranularity>22</columnGranularity>
    </Grid>
    <MotionDetectionLayout version="2.0" xmlns="http://www.std-cgi.com/ver20/XMLSchema">
    <sensitivityLevel>20</sensitivityLevel>
    <layout>
    <gridMap>000000000000000000000000000000000000000200000000000000000000000040000000008000000000000000000000003000000000</gridMap>
    </layout>
    </MotionDetectionLayout>
    <enableWithMoving>true</enableWithMoving>
    </MotionDetection>

    Den Fett markierten Bereich kann man auf False umschreiben und per PUT wieder über Postman zurückschicken. Und Motion Detection ist wieder deaktiviert.
    Das funktioniert soweit einwandfrei.

    Nur wie kann ich dies per IOBrocker lösen?

    Hat jemand eine Idee?

    LG
    Timme

    1 Antwort Letzte Antwort
    0
    • T Offline
      T Offline
      Timme
      schrieb am zuletzt editiert von
      #2

      Hallo,
      ich habe gelesen, dass evt. über eine CURL, die Anweisung zur CAM geschickt werden kann.

      Somit müßte ich in IO Brocker zwei XML Dateien ablegen.
      Z.B. Motion_An.xml und Motion_Aus.xml
      In beiden Datein ist dann der gesamte XML Block von oben enthalten mit dem jeweiligen Zeilenunterschied
      <enabled>true</enabled> oder <enabled>false</enabled>

      Diese Anweisung dann per Java oder Blockly zu CAM schicken.
      Ich bin im IO Brocker noch ein Anfänger und wüste nicht wie ich es realisieren könnte.

      Könnte mir jemand hier helfen?

      Danke
      Gruß

      1 Antwort Letzte Antwort
      0
      • T Offline
        T Offline
        Timme
        schrieb am zuletzt editiert von Timme
        #3

        Problem gelöst! :-)

        Wie im obigen Fred geschrieben funktioniert es mit dem Programm Postman
        Hier kann man per GET und PUT die Anweisung direkt verschicken.

        Nach vielem, lesen habe ich herausgefunden, dass man die PUT Anweisung für JAVA in ein Request umwandeln muß.

        Jettzt kommt wieder das Program Postman zum Einsatz. Diese Programm kann die XML in ein Request übersetzten.

        Das obige XML File sieht dann in JavaScript wie folgt aus:

        var request = require("request");

        var options = { method: 'PUT',
        url: 'http://admin:DPASSWORD@IPADRESSE/ISAPI/System/Video/inputs/channels/1/motionDetection',
        headers:
        { 'cache-control': 'no-cache',
        Connection: 'keep-alive',
        'content-length': '877',
        'accept-encoding': 'gzip, deflate',
        Host: 'IPADRESSE',
        'Postman-Token': 'IrgendeinTokenvonPostman',
        'Cache-Control': 'no-cache',
        Accept: '/',
        'User-Agent': 'PostmanRuntime/7.13.0',
        Authorization: 'Basic irgend ne nummer von Postman',
        'Content-Type': 'application/json' },
        body: '<?xml version="1.0" encoding="UTF-8"?>\n<MotionDetection version="2.0" xmlns="http://www.std-cgi.com/ver20/XMLSchema">\n <enabled>true</enabled>\n <enableHighlight>true</enableHighlight>\n <samplingInterval>2</samplingInterval>\n <startTriggerTime>500</startTriggerTime>\n <endTriggerTime>500</endTriggerTime>\n <regionType>grid</regionType>\n <Grid>\n <rowGranularity>18</rowGranularity>\n <columnGranularity>22</columnGranularity>\n </Grid>\n <MotionDetectionLayout version="2.0" xmlns="http://www.std-cgi.com/ver20/XMLSchema">\n <sensitivityLevel>20</sensitivityLevel>\n <layout>\n <gridMap>000000000000000000000000000000000000000200000400000000000000000040000000008000000000000000000000003000000000</gridMap>\n </layout>\n </MotionDetectionLayout>\n <enableWithMoving>false</enableWithMoving>\n</MotionDetection>\n' };

        request(options, function (error, response, body) {
        if (error) throw new Error(error);

        console.log(body);
        });]

        Das Script kann man sicherlich noch einkürzen - funktioniert auf jedenfall im IO-Broker.

        Also für alle diejenigen, die eine HIKVision Kamera im Einsatz haben und igrendweche Einstellungen per Skript machen möchten, können dies mit diesen recht einfach Weg machen.

        Falls detailierte Beschreibung gewünscht einfach mal melden.

        Gruß
        Timme

        WiednitzW 1 Antwort Letzte Antwort
        0
        • E Offline
          E Offline
          eifeladmin
          schrieb am zuletzt editiert von
          #4

          Hi,

          hab hier einen Beitrag zu Kamera gefunden.
          Was müsste man anpassen um das zum Laufen zu bekommen?
          Oder muss man noch was installieren?
          Hab nur mal IP Adresse und Kennwort angepasst, funktioniert aber leider nicht.
          Wäre super wenn das funktionieren würde.
          VG

          GlasfaserG 1 Antwort Letzte Antwort
          0
          • E eifeladmin

            Hi,

            hab hier einen Beitrag zu Kamera gefunden.
            Was müsste man anpassen um das zum Laufen zu bekommen?
            Oder muss man noch was installieren?
            Hab nur mal IP Adresse und Kennwort angepasst, funktioniert aber leider nicht.
            Wäre super wenn das funktionieren würde.
            VG

            GlasfaserG Offline
            GlasfaserG Offline
            Glasfaser
            schrieb am zuletzt editiert von Glasfaser
            #5

            @eifeladmin
            Was hast du im Log stehen , ein Error / Warning !?

            Hast Du im Adapter Javascript" request " aktiviert !?

            Unbenannt.JPG

            Welche Hikvison Cam hast du .

            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 Antwort Letzte Antwort
            0
            • E Offline
              E Offline
              eifeladmin
              schrieb am zuletzt editiert von
              #6

              Eine Warnung / Error bekomme ich keine.
              Request hab ich im Adapter aktiviert.
              Ich hab eine DS-2CD3132F-IWS, den befehlt hab ich mal im Browser eingegeben und auch eine Rückmeldung erhalten.
              Kann ich das Ergebnis im Webinterface sehen? Müsste dann der Haken raus rein bei Bewegungserkennung?

              GlasfaserG 1 Antwort Letzte Antwort
              0
              • E eifeladmin

                Eine Warnung / Error bekomme ich keine.
                Request hab ich im Adapter aktiviert.
                Ich hab eine DS-2CD3132F-IWS, den befehlt hab ich mal im Browser eingegeben und auch eine Rückmeldung erhalten.
                Kann ich das Ergebnis im Webinterface sehen? Müsste dann der Haken raus rein bei Bewegungserkennung?

                GlasfaserG Offline
                GlasfaserG Offline
                Glasfaser
                schrieb am zuletzt editiert von
                #7

                @eifeladmin
                Hast Du auch darauf geachtet bzw. dieses geändert.

                Zitat :

                Mit dem Programm Postman funktioniert das einwandfrei.
                
                Host: 'IPADRESSE',
                Postman-Token': 'IrgendeinTokenvonPostman',
                Authorization: 'Basic irgend ne nummer von Postman',
                
                

                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 ..

                E 1 Antwort Letzte Antwort
                0
                • GlasfaserG Glasfaser

                  @eifeladmin
                  Hast Du auch darauf geachtet bzw. dieses geändert.

                  Zitat :

                  Mit dem Programm Postman funktioniert das einwandfrei.
                  
                  Host: 'IPADRESSE',
                  Postman-Token': 'IrgendeinTokenvonPostman',
                  Authorization: 'Basic irgend ne nummer von Postman',
                  
                  
                  E Offline
                  E Offline
                  eifeladmin
                  schrieb am zuletzt editiert von
                  #8

                  @Glasfaser
                  Das war ja meine Frage ob ich dort noch was anpassen muss.
                  Wo bekomm ich den das Token und die Nummer her?
                  Hab damit leider noch nie gearbeitet.

                  1 Antwort Letzte Antwort
                  0
                  • T Timme

                    Problem gelöst! :-)

                    Wie im obigen Fred geschrieben funktioniert es mit dem Programm Postman
                    Hier kann man per GET und PUT die Anweisung direkt verschicken.

                    Nach vielem, lesen habe ich herausgefunden, dass man die PUT Anweisung für JAVA in ein Request umwandeln muß.

                    Jettzt kommt wieder das Program Postman zum Einsatz. Diese Programm kann die XML in ein Request übersetzten.

                    Das obige XML File sieht dann in JavaScript wie folgt aus:

                    var request = require("request");

                    var options = { method: 'PUT',
                    url: 'http://admin:DPASSWORD@IPADRESSE/ISAPI/System/Video/inputs/channels/1/motionDetection',
                    headers:
                    { 'cache-control': 'no-cache',
                    Connection: 'keep-alive',
                    'content-length': '877',
                    'accept-encoding': 'gzip, deflate',
                    Host: 'IPADRESSE',
                    'Postman-Token': 'IrgendeinTokenvonPostman',
                    'Cache-Control': 'no-cache',
                    Accept: '/',
                    'User-Agent': 'PostmanRuntime/7.13.0',
                    Authorization: 'Basic irgend ne nummer von Postman',
                    'Content-Type': 'application/json' },
                    body: '<?xml version="1.0" encoding="UTF-8"?>\n<MotionDetection version="2.0" xmlns="http://www.std-cgi.com/ver20/XMLSchema">\n <enabled>true</enabled>\n <enableHighlight>true</enableHighlight>\n <samplingInterval>2</samplingInterval>\n <startTriggerTime>500</startTriggerTime>\n <endTriggerTime>500</endTriggerTime>\n <regionType>grid</regionType>\n <Grid>\n <rowGranularity>18</rowGranularity>\n <columnGranularity>22</columnGranularity>\n </Grid>\n <MotionDetectionLayout version="2.0" xmlns="http://www.std-cgi.com/ver20/XMLSchema">\n <sensitivityLevel>20</sensitivityLevel>\n <layout>\n <gridMap>000000000000000000000000000000000000000200000400000000000000000040000000008000000000000000000000003000000000</gridMap>\n </layout>\n </MotionDetectionLayout>\n <enableWithMoving>false</enableWithMoving>\n</MotionDetection>\n' };

                    request(options, function (error, response, body) {
                    if (error) throw new Error(error);

                    console.log(body);
                    });]

                    Das Script kann man sicherlich noch einkürzen - funktioniert auf jedenfall im IO-Broker.

                    Also für alle diejenigen, die eine HIKVision Kamera im Einsatz haben und igrendweche Einstellungen per Skript machen möchten, können dies mit diesen recht einfach Weg machen.

                    Falls detailierte Beschreibung gewünscht einfach mal melden.

                    Gruß
                    Timme

                    WiednitzW Offline
                    WiednitzW Offline
                    Wiednitz
                    schrieb am zuletzt editiert von
                    #9

                    @timme

                    Grüsse,

                    ich versuche grad in Postman die xml Datei, welche man durch Aufruf der Url

                    IPAdresse/ISAPI/System/Video/inputs/channels/1/motionDetection

                    erhält, in einen Request umzuwandeln. Mit welcher Funktion in Postman gelingt das ??? Code snippet > NodeJS Request ???

                    Das Thema ist zwar schon alt, aber vielleicht antwortet doch noch jemand.

                    Danke !

                    WiednitzW 1 Antwort Letzte Antwort
                    0
                    • WiednitzW Wiednitz

                      @timme

                      Grüsse,

                      ich versuche grad in Postman die xml Datei, welche man durch Aufruf der Url

                      IPAdresse/ISAPI/System/Video/inputs/channels/1/motionDetection

                      erhält, in einen Request umzuwandeln. Mit welcher Funktion in Postman gelingt das ??? Code snippet > NodeJS Request ???

                      Das Thema ist zwar schon alt, aber vielleicht antwortet doch noch jemand.

                      Danke !

                      WiednitzW Offline
                      WiednitzW Offline
                      Wiednitz
                      schrieb am zuletzt editiert von
                      #10

                      @wiednitz

                      Ich antworte mir selbst, denn selbst gelöst ! Inhalt im xml Format kommt in den Body !

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      808

                      Online

                      32.4k

                      Benutzer

                      81.6k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe