Alarmanlagen-Forum - Alarmforum - Fachforum für Sicherheitstechnik

Normale Version: Hikvision ISAPI
Sie sehen gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Ich möchte gerne die Funktion "Smart-Ereignis -> Einbruchmeldung" aktivieren/deaktivieren können, und zwar über Hikvision ISAPI anstatt über die Weboberfläche.
Somit könnte ich diese Steuerung auf meinen ioBroker übertragen.

Bisher habe ich herausgefunden das mal dazu einen Curl-Aufruf mit einer bestimmten XML-Datei nutzen muss.
Hat jemand hier Erfahrungswerte oder Infos wo man nachschauen kann?

Oder geht es vielleicht sogar via SSH?

Kameramodell: DS-2CD2387G2H-LISU/SL
Hat eine Weile gedauert das Internetz zu durchforsten, aber ich bin fündig geworden und möchte Euch daran teilhaben lassen.

1. Sicherheit -> Authentifizierung -> Web-Authentifizierung muss umgestellt werden auf "digest/basic"

2. Mit folgendem Befehl die XML-Daten der Kamera holen (PW und IP anpassen ):
Code:
curl -X GET "http://admin:XXXXXXXX@192.168.1.64/ISAPI/Smart/FieldDetection/1

Der Output sieht dann ungefähr so aus:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<FieldDetection version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<id>1</id>
<enabled>false</enabled>
<enableDualVca>false</enableDualVca>
<startTriggerTime>500</startTriggerTime>
<endTriggerTime>500</endTriggerTime>
<normalizedScreenSize>
<normalizedScreenWidth>1000</normalizedScreenWidth>
<normalizedScreenHeight>1000</normalizedScreenHeight>
</normalizedScreenSize>
<FieldDetectionRegionList size="4" >
<FieldDetectionRegion version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<id>1</id>
<enabled>false</enabled>
<sensitivityLevel>40</sensitivityLevel>
<timeThreshold>0</timeThreshold>
<detectionTarget>human</detectionTarget>
<alarmConfidence opt="low,mediumLow,mediumHigh,high">low</alarmConfidence>
</FieldDetectionRegion>
<FieldDetectionRegion version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<id>2</id>
<enabled>false</enabled>
<sensitivityLevel>40</sensitivityLevel>
<timeThreshold>0</timeThreshold>
<detectionTarget>human</detectionTarget>
<alarmConfidence opt="low,mediumLow,mediumHigh,high">low</alarmConfidence>
</FieldDetectionRegion>
<FieldDetectionRegion version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<id>3</id>
<enabled>false</enabled>
<sensitivityLevel>40</sensitivityLevel>
<timeThreshold>0</timeThreshold>
<detectionTarget>human</detectionTarget>
<alarmConfidence opt="low,mediumLow,mediumHigh,high">low</alarmConfidence>
</FieldDetectionRegion>
<FieldDetectionRegion version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
<id>4</id>
<enabled>false</enabled>
<sensitivityLevel>40</sensitivityLevel>
<timeThreshold>0</timeThreshold>
<detectionTarget>human</detectionTarget>
<alarmConfidence opt="low,mediumLow,mediumHigh,high">low</alarmConfidence>
</FieldDetectionRegion>
</FieldDetectionRegionList>
<isSupportMultiScene>false</isSupportMultiScene>
<isSupportHumanMisinfoFilter>true</isSupportHumanMisinfoFilter>
<isSupportVehicleMisinfoFilter>true</isSupportVehicleMisinfoFilter>
</FieldDetection>

Der gesamte Text wird als Datei abgespeichert, z.B. "EinbruchmeldungAUS.xml"
Entscheidend ist hier Zeile 4 (enabled false), das ändern wir auf "true" und speichern das ganze noch einmal als "EinbruchmeldungAN.xml".

3. Mit folgendem Befehl kann nun entweder die AN.xml oder AUS.xml an die Kamera gesendet werden (ggf. Pfad vor Dateiname ergänzen):
Code:
curl -T EinbruchmeldungAN.xml http://admin:XXXXXXXX@192.168.1.64/ISAPI/Smart/FieldDetection/1

Wichtig scheint den Rest des Textes in der XML nicht zu verändern (einige Zeilen kann man weglassen, einige erzeugen eine Fehlermeldung).

Als Ergänzung: man kann auch weitere Smart-Funktionen mit dieser Methode steuern:
Code:
/ISAPI/Smart/LineDetection/1
/ISAPI/Smart/SceneChangeDetection/1

Interessant für mich persönlich wäre nun noch "Bild -> Szene" und "Smart-Ereignis -> Verknüfpungsmethode -> Lichtblitzalarm bzw. Akustische Warnung" sobald ich das gefunden habe liefere ich es nach.
Hier noch ein paar Interessante Punkte die man ggf. über die API ansteuern möchte:

Szene: http://192.168.1.64/ISAPI/Image/channels...ngScenario
Einbrucherkennung Benachrichtigung: http://192.168.1.64/ISAPI/Event/triggers/fielddetection
Linienüberschreitung: http://192.168.1.64/ISAPI/Event/triggers/linedetection
Zusatzbeleuchtung: http://192.168.1.64/ISAPI/Image/channels...ementLight

Hab mir die Umschaltung der Benachrichtigung in meine ioBroker-Visualisierung eingebaut. Kann man natürlich auch an die Variable "Abwesenheit" koppeln.

[attachment=5325] [attachment=5326]

Sollte jemand hier nicht weiterkommen, schreibt mich gerne an.
Super, Danke für Deine Erfahrungen. Die helfen mir weiter.
Referenz-URLs