Wir verwirklichen Ihre Ideen!Raum Heilbronn · info@appproject.de
AppProjectApp-Entwicklung · Smart Home · 3D-Druck
ISAPI

Hikvision-Kameras per URL steuern

Hikvision-Kameras haben mit ISAPI eine lokale Schnittstelle. Du steuerst sie direkt im Heimnetz per HTTP-Befehl – aus dem Browser, per curl oder aus einem Programm deiner Homematic-Zentrale. Hier findest du alle Befehle, die wir belegen konnten, sortiert nach Funktion.

Befehl für meine Hikvision erzeugen

Schnittstelle
ISAPI (Intelligent Security API, REST/XML über HTTP, teils JSON mit ?format=json)
Anmeldung
Digest, Basic
Standard
http://…:80
Auch für
HiLook (Hikvision-Marke)
Funktionen
21 von 21
Stand
November 2026

Gut zu wissen

  • Authentifizierung laut Guide per HTTP Basic oder Digest (RFC 2617); viele Firmwares erlauben ab Werk nur Digest – curl daher mit --digest -u {user}:{pass}.
  • Kein Login/Token nötig: jeder Request trägt die Anmeldung. Zu viele Fehlversuche sperren den Benutzer vorübergehend.
  • PUT-Befehle mit XML-Body: curl --digest -u {user}:{pass} -X PUT -H "Content-Type: application/xml" -d '<…>' http://{ip}:{port}/ISAPI/…
Alle Hinweise (8)
  • Kanalnummern: Konfigurations- und PTZ-URLs nutzen den Kanal (1), Streaming/Snapshot die Streaming-ID = Kanal×100+1 (101 Haupt-, 102 Substream); Aufnahme-Tracks üblich ebenso 101.
  • Konfigurations-PUTs (Bewegung, Privatzone, IR, Licht, Trigger) am sichersten als GET → Wert ändern → kompletten Block per PUT zurück; Teil-Bodies akzeptiert nicht jede Firmware.
  • Event-Verknüpfungen: PUT /ISAPI/Event/triggers/VMD-{kanal}/notifications ersetzt die gesamte Liste (email, center, record, IO, beep …).
  • Je nach Firmware muss ISAPI unter Netzwerk → Erweitert → Integrationsprotokoll aktiviert sein.
  • Unterstützte Funktionen je Modell über …/capabilities-URLs abfragen (z. B. /ISAPI/PTZCtrl/channels/1/capabilities, /ISAPI/Event/triggersCap).

Bewegungserkennung an

Im Generator öffnen

Alarmanlage scharf → Bewegungserkennung der Kamera einschalten

Laut Herstellerdokualle Modelle· IP Surveillance API 2.6 / ISAPI v2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<MotionDetection version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><enabled>true</enabled></MotionDetection>' 'http://KAMERA-IP/ISAPI/System/Video/inputs/channels/1/motionDetection'

Schema verlangt weitere Pflichtknoten (z. B. MotionDetectionLayout): erst GET, nur <enabled> auf true ändern, kompletten Block per PUT zurückschreiben.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<MotionDetection version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><enabled>true</enabled></MotionDetection>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/System/Video/inputs/channels/1/motionDetection'");

Quelle: vcentri.com

Bewegungserkennung aus

Im Generator öffnen

Jemand ist zu Hause → Bewegungserkennung ausschalten, keine Fehlalarme

Laut Herstellerdokualle Modelle· IP Surveillance API 2.6 / ISAPI v2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<MotionDetection version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><enabled>false</enabled></MotionDetection>' 'http://KAMERA-IP/ISAPI/System/Video/inputs/channels/1/motionDetection'

Wie bewegung_an mit <enabled>false</enabled> (GET → ändern → PUT). Smart-Events bei AcuSense separat.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<MotionDetection version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><enabled>false</enabled></MotionDetection>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/System/Video/inputs/channels/1/motionDetection'");

Quelle: vcentri.com

Push-Benachrichtigung an

Im Generator öffnen

Alle verlassen das Haus → Push-Nachrichten der Kamera einschalten

Laut Herstellerdokualle Modelle· IP Surveillance API 2.6 / ISAPI v2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<EventTriggerNotificationList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><EventTriggerNotification><id>center</id><notificationMethod>center</notificationMethod><notificationRecurrence>beginning</notificationRecurrence></EventTriggerNotification></EventTriggerNotificationList>' 'http://KAMERA-IP/ISAPI/Event/triggers/VMD-1/notifications'

Verknüpfung „center“ (Alarm an Zentrale senden) für Bewegung; Trigger-ID VMD-1 laut Guide. Dass Hik-Connect-Push darüber läuft, ist nicht dokumentiert. PUT ersetzt die ganze Liste: erst GET, Eintrag ergänzen, zurückschreiben.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<EventTriggerNotificationList version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><EventTriggerNotification><id>center</id><notificationMethod>center</notificationMethod><notificationRecurrence>beginning</notificationRecurrence></EventTriggerNotification></EventTriggerNotificationList>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Event/triggers/VMD-1/notifications'");

Quelle: vcentri.com

Push-Benachrichtigung aus

Im Generator öffnen

Wieder zu Hause → keine Push-Nachrichten mehr aufs Handy

Laut Herstellerdokualle Modelle· IP Surveillance API 2.6 / ISAPI v2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<EventTriggerNotificationList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"></EventTriggerNotificationList>' 'http://KAMERA-IP/ISAPI/Event/triggers/VMD-1/notifications'

Achtung: leere Liste entfernt alle Verknüpfungen. Besser GET, nur den center-Eintrag entfernen, Rest zurückschreiben.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<EventTriggerNotificationList version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042></EventTriggerNotificationList>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Event/triggers/VMD-1/notifications'");

Quelle: vcentri.com

Alarm oder Abwesenheit → Aufnahme starten bzw. Aufnahmeplan aktivieren

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X POST 'http://KAMERA-IP/ISAPI/ContentMgmt/record/control/manual/start/tracks/101'

Manuelle Aufnahme starten (Abschnitt 15.2.32). Guide nennt <ID> nur „recording channel ID“; üblich ist Track 101 für Kanal 1. Benötigt SD-Karte/NAS bzw. NVR.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X POST 'http://KAMERA-IP/ISAPI/ContentMgmt/record/control/manual/start/tracks/101'");

Quelle: download.isecj.jp

Anwesend → Aufnahme stoppen bzw. Aufnahmeplan deaktivieren

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X POST 'http://KAMERA-IP/ISAPI/ContentMgmt/record/control/manual/stop/tracks/101'

Manuelle Aufnahme stoppen (Abschnitt 15.2.33); Track-ID wie bei aufnahme_an.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X POST 'http://KAMERA-IP/ISAPI/ContentMgmt/record/control/manual/stop/tracks/101'");

Quelle: download.isecj.jp

Urlaub → Alarm-E-Mails mit Bild einschalten

Laut Herstellerdokualle Modelle· IP Surveillance API 2.6 / ISAPI v2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<EventTriggerNotificationList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><EventTriggerNotification><id>email</id><notificationMethod>email</notificationMethod><notificationRecurrence>beginning</notificationRecurrence></EventTriggerNotification></EventTriggerNotificationList>' 'http://KAMERA-IP/ISAPI/Event/triggers/VMD-1/notifications'

E-Mail-Verknüpfung für Bewegungsalarm; SMTP vorher unter /ISAPI/System/Network/mailing einrichten. PUT ersetzt die ganze Liste – GET, ergänzen, zurückschreiben.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<EventTriggerNotificationList version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><EventTriggerNotification><id>email</id><notificationMethod>email</notificationMethod><notificationRecurrence>beginning</notificationRecurrence></EventTriggerNotification></EventTriggerNotificationList>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Event/triggers/VMD-1/notifications'");

Quelle: vcentri.com

E-Mail-Alarm aus

Im Generator öffnen

Zurück → Alarm-E-Mails ausschalten

Laut Herstellerdokualle Modelle· IP Surveillance API 2.6 / ISAPI v2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<EventTriggerNotificationList version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"></EventTriggerNotificationList>' 'http://KAMERA-IP/ISAPI/Event/triggers/VMD-1/notifications'

Achtung: leere Liste entfernt alle Verknüpfungen. Besser GET, nur email-Eintrag entfernen, andere (center, record …) beibehalten.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<EventTriggerNotificationList version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042></EventTriggerNotificationList>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Event/triggers/VMD-1/notifications'");

Quelle: vcentri.com

Position anfahren

Im Generator öffnen

Bewegungsmelder an der Einfahrt löst aus → Kamera schwenkt auf die gespeicherte Position

Laut HerstellerdokuHikvision PTZ-/Speed-Dome-Kameras· ISAPI PTZ Service 2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT 'http://KAMERA-IP/ISAPI/PTZCtrl/channels/1/presets/1/goto'

Kein Body nötig (Abschnitt 4.16). Kanal bei Einzelkamera = 1.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT 'http://KAMERA-IP/ISAPI/PTZCtrl/channels/1/presets/1/goto'");

Quelle: download.catalogosicurezza.com

Schwenken / Neigen

Im Generator öffnen

Kamera per Taster oder Programm schrittweise bewegen

Laut HerstellerdokuHikvision PTZ-/Speed-Dome-Kameras· ISAPI PTZ Service 2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<PTZData version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><pan>WERT</pan><tilt>0</tilt><zoom>0</zoom></PTZData>' 'http://KAMERA-IP/ISAPI/PTZCtrl/channels/1/continuous'

pan/tilt/zoom je -100..100. Bewegung läuft weiter, bis alle Werte 0 gesendet werden.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<PTZData version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><pan>WERT</pan><tilt>0</tilt><zoom>0</zoom></PTZData>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/PTZCtrl/channels/1/continuous'");

Quelle: download.catalogosicurezza.com

Laut HerstellerdokuHikvision PTZ-/Speed-Dome-Kameras· ISAPI PTZ Service 2.0

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<PTZData version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><pan>WERT</pan><tilt>0</tilt><zoom>0</zoom><Momentary><duration>1000</duration></Momentary></PTZData>' 'http://KAMERA-IP/ISAPI/PTZCtrl/channels/1/momentary'

Bewegung für duration Millisekunden, stoppt selbst. Unterstützung über /ISAPI/PTZCtrl/channels/{kanal}/capabilities prüfen.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<PTZData version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><pan>WERT</pan><tilt>0</tilt><zoom>0</zoom><Momentary><duration>1000</duration></Momentary></PTZData>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/PTZCtrl/channels/1/momentary'");

Quelle: download.catalogosicurezza.com

Schnappschuss (Bild-URL)

Im Generator öffnen

Klingel gedrückt → aktuelles Bild abrufen und per Push oder Telegram verschicken

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' 'http://KAMERA-IP/ISAPI/Streaming/channels/101/picture'

ID = Kanal×100+1 (101). Optional ?videoResolutionWidth=…&videoResolutionHeight=…; nur Hauptstream, nur JPEG. Beispiel im Guide nutzt auch /channels/1/picture.

Erwartete Antwort: JPEG-Bilddaten (image/jpeg)

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' 'http://KAMERA-IP/ISAPI/Streaming/channels/101/picture'");

Quelle: download.isecj.jp

Nachtsicht (IR) an

Im Generator öffnen

Nachtsicht dauerhaft einschalten

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<IrcutFilter version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><IrcutFilterType>night</IrcutFilterType></IrcutFilter>' 'http://KAMERA-IP/ISAPI/Image/channels/1/IrcutFilter'

Tag/Nacht fest auf Nacht. Bei Hybridlicht-Modellen steuert zusätzlich SupplementLight das Licht.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<IrcutFilter version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><IrcutFilterType>night</IrcutFilterType></IrcutFilter>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Image/channels/1/IrcutFilter'");

Quelle: download.isecj.jp

Nachtsicht (IR) aus

Im Generator öffnen

IR aus, z. B. hinter einer Scheibe, um Spiegelungen zu vermeiden

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<IrcutFilter version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><IrcutFilterType>day</IrcutFilterType></IrcutFilter>' 'http://KAMERA-IP/ISAPI/Image/channels/1/IrcutFilter'

Fest auf Tagmodus.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<IrcutFilter version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><IrcutFilterType>day</IrcutFilterType></IrcutFilter>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Image/channels/1/IrcutFilter'");

Quelle: download.isecj.jp

Nachtsicht (IR) automatisch

Im Generator öffnen

Nachtsicht wieder der Kamera überlassen

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<IrcutFilter version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><IrcutFilterType>auto</IrcutFilterType></IrcutFilter>' 'http://KAMERA-IP/ISAPI/Image/channels/1/IrcutFilter'

Automatische Tag/Nacht-Umschaltung.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<IrcutFilter version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><IrcutFilterType>auto</IrcutFilterType></IrcutFilter>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Image/channels/1/IrcutFilter'");

Quelle: download.isecj.jp

Privatsphäre-Modus an

Im Generator öffnen

Jemand ist zu Hause → Kamera schaut weg bzw. Bild wird abgedeckt

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<PrivacyMask version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><enabled>true</enabled></PrivacyMask>' 'http://KAMERA-IP/ISAPI/System/Video/inputs/channels/1/privacyMask'

Schaltet vorher angelegte Privatzonen ein (deckt nicht das ganze Bild ab). GET → enabled ändern → PUT.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<PrivacyMask version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><enabled>true</enabled></PrivacyMask>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/System/Video/inputs/channels/1/privacyMask'");

Quelle: download.isecj.jp

Privatsphäre-Modus aus

Im Generator öffnen

Alle sind weg → Kamera wieder scharf

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<PrivacyMask version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><enabled>false</enabled></PrivacyMask>' 'http://KAMERA-IP/ISAPI/System/Video/inputs/channels/1/privacyMask'

Privatzonen ausschalten.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<PrivacyMask version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><enabled>false</enabled></PrivacyMask>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/System/Video/inputs/channels/1/privacyMask'");

Quelle: download.isecj.jp

Licht / Spotlight an

Im Generator öffnen

Bewegungsmelder im Garten → Spotlight der Kamera einschalten

Laut HerstellerdokuColorVu-Kameras mit Weißlicht, AcuSense-Kameras mit Blitzlicht und Sirene (Live Guard)· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<SupplementLight version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><supplementLightMode>whitelight</supplementLightMode><mode>on</mode></SupplementLight>' 'http://KAMERA-IP/ISAPI/Image/channels/1/SupplementLight'

Weißlicht dauerhaft an; Helligkeit optional über <brightnessLimit>0–100</brightnessLimit> (nur bei mode on). Werte über /SupplementLight/capabilities prüfen.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<SupplementLight version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><supplementLightMode>whitelight</supplementLightMode><mode>on</mode></SupplementLight>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Image/channels/1/SupplementLight'");

Quelle: download.isecj.jp

Licht / Spotlight aus

Im Generator öffnen

Spotlight nach einigen Minuten wieder ausschalten

Laut HerstellerdokuColorVu-Kameras mit Weißlicht, AcuSense-Kameras mit Blitzlicht und Sirene (Live Guard)· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<SupplementLight version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><mode>off</mode></SupplementLight>' 'http://KAMERA-IP/ISAPI/Image/channels/1/SupplementLight'

Zusatzlicht aus (mode off; alternativ supplementLightMode close). Automatik: mode auto.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<SupplementLight version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><mode>off</mode></SupplementLight>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/Image/channels/1/SupplementLight'");

Quelle: download.isecj.jp

Sirene / Alarmton auslösen

Im Generator öffnen

Einbruchalarm der Homematic-Alarmanlage → Sirene der Kamera auslösen

CommunityAcuSense-Kameras mit Blitzlicht und Sirene (Live Guard)· AcuSense/Live-Guard-Modelle mit Lautsprecher

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT 'http://KAMERA-IP/ISAPI/Event/triggers/notifications/AudioAlarm/1/test?format=json'

Nicht in der offiziellen Doku; laut Community Test-Warnton ca. 5 s. ID je Modell verschieden (Beispiele 1 und 14). Offiziell nur Konfiguration über …/AudioAlarm?format=json.

Erwartete Antwort: JSON ResponseStatus OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT 'http://KAMERA-IP/ISAPI/Event/triggers/notifications/AudioAlarm/1/test?format=json'");

Quelle: community.home-assistant.io

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary '<IOPortData version="2.0" xmlns="http://www.isapi.org/ver20/XMLSchema"><outputState>high</outputState></IOPortData>' 'http://KAMERA-IP/ISAPI/System/IO/outputs/1/trigger'

Schaltet Alarmausgang (Relais) für externe Sirene; mit <outputState>low</outputState> wieder aus. Nur bei Kameras mit Alarmausgang.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("printf '<IOPortData version=\0422.0\042 xmlns=\042http://www.isapi.org/ver20/XMLSchema\042><outputState>high</outputState></IOPortData>' | curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT -H 'Content-Type: application/xml' --data-binary @- 'http://KAMERA-IP/ISAPI/System/IO/outputs/1/trigger'");

Quelle: download.isecj.jp

Kamera hängt → per Programm neu starten

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' -X PUT 'http://KAMERA-IP/ISAPI/System/reboot'

Nur PUT ist dokumentiert, kein Body. Benutzer braucht Administrator- bzw. Neustart-Rechte.

Erwartete Antwort: XML ResponseStatus mit statusCode 1 / statusString OK

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' -X PUT 'http://KAMERA-IP/ISAPI/System/reboot'");

Quelle: download.isecj.jp

Videostream (RTSP)

Im Generator öffnen

Live-Bild in Dashboard, NAS oder Tablet einbinden

Laut Herstellerdokualle Modelle· ISAPI General Application Guide 2019

curl
curl -s --digest -u 'BENUTZER:PASSWORT' 'http://KAMERA-IP/ISAPI/Streaming/channels/101'

RTSP statt HTTP (DESCRIBE/SETUP/PLAY, „GET“ nur Platzhalter): rtsp://{user}:{pass}@{ip}:554/ISAPI/Streaming/channels/101; 102 = Substream.

Erwartete Antwort: RTSP-Videostream (H.264/H.265)

Als Homematic-Skript (CCU3/OpenCCU)
HM-Skript
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("curl -s -m 10 --digest -u 'BENUTZER:PASSWORT' 'http://KAMERA-IP/ISAPI/Streaming/channels/101'");

Quelle: download.isecj.jp

Modellreihen

  • Hikvision Netzwerkkameras (Bullet/Dome/Turret, inkl. AcuSense/ColorVu)DS-2CD
  • AcuSense-Kameras mit Blitzlicht und Sirene (Live Guard)DS-2CD2, -LU/SL, /SL, -ISU/SL
  • ColorVu-Kameras mit WeißlichtDS-2CD, -L, -LU, -LS
  • Hikvision PTZ-/Speed-Dome-KamerasDS-2DE, DS-2DF, DS-2DY
  • HiLook by Hikvision IP-KamerasIPC-, PTZ-N

Häufige Fragen

Wie melde ich mich bei Hikvision-Befehlen an?

Hikvision nutzt Digest oder Basic. Im Generator wird die passende Anmeldung automatisch in den curl- und CCU-Befehl eingebaut.

Funktionieren die Befehle mit jedem Hikvision-Modell?

Nicht immer. Je Befehl steht dabei, für welche Modellreihe und Firmware er dokumentiert ist. Im Zweifel den Befehl einmal im Browser oder per curl testen und die Antwort der Kamera prüfen.

Quellen

Etwas funktioniert bei dir anders? Gib uns Bescheid – wir prüfen jede Meldung.