NEWS
Hikvision Kameras Aufnahme per IOB auslösen?
-
Hi
es geht mir um eine bestehende Installation von Hikvision Kameras (G1 Serie) mit Surveillance Station auf einem Synology NAS, die ich nicht verändern möchte (Autarkie) aber per IOB gezielt die Aufnahme triggern möchte.Bisher nutze ich die Bewegungserkennung und Events die Hikvision bietet und diese Auslöser nutzt die Surveillance Station um dann Aufnahmen zu starten und wieder zu beenden.
Diese Erkennung ist ok, aber nicht fehlerfrei. Nun ist IOB bei mir mit einer kleinen Alarmanlage ausgerüstet und ich suche eine Option im Alarmfall die Aufnahme sicher zu triggern um garantiert von dieser Zeit Aufnahmen zu haben.
Ich stelle mir dass wie ein HTTP-Befehl an die Kameras oder direkt an die Surveillance Station vor.
Habt Ihr dbzgl. eine Idee Tip wie man dies angehen kann und wonach ich schauen sollte? ONVIF erscheint mir eine zu tiefe Integration und Verschiebung in den IOB.
VG
-
@dieter_p
Ich habe einen ähnlichen Anwendungsfall, bei mir sind Reolink Kameras in der Surveillance Station von Synology eingebunden und Aufnahmen werden durch einen Homematic Bewegungsmelder getriggert (deutlich weniger Fehldetektionen als mit Motion-In-Picture Erkennung). Die gleiche Logik verwende ich auch an anderen Stellen mit anderen Kameras und Auslösern, das Skript ist daher recht universell nutzbar://Kameraaufzeichnung starten, wenn eine Bewegung auf der Terrasse erkannt wird on({id: 'hm-rpc.1.000XXX.1.MOTION'/*Motion*/, val: true}, function (obj) { try{ // Die URL triggered eine Aktionsregel der Surveillance Station an, welche die Kameraaufzeichnung der Terrassenkamera startet const url='https://192.168.178.100:5001/webapi/entry.cgi?api=SYNO.SurveillanceStation.ExternalEvent&method="Trigger"&version=1&eventId=2&eventName="This is external event2"&account="ACCOUNTNAME"&password="ACCOUNTPASSWORD"'; var encodedAlarmmessage = encodeURI(url); console.log("Bewegung an der Terrasse erkannt, Kameraaufzeichnung wird gestartet..."); //HTTP Request vorbereiten... var options = {url: url, method: 'GET', rejectUnauthorized: false, headers: { 'User-Agent': 'request' }}; //...und abschicken request(options); } catch{console.log("Es ist ein Fehler aufgetreten, es konnte keine Aufzeichnung gestartet werden...")}; });
Damit das Skript funktioniert, muss in der Surveillance Station eine Aktionsregel für die betroffene Kamera erstellt werden:
Über "Befehl Abrufen" findest du deine URL für das ioBroker Skript
Ich hoffe, das hilft dir weiter.
Gruß,
Percy
-
@percy
Puh krass, vielen lieben Dank! Da muß ich mich in Ruhe durschwurscheln aber das sieht sehr sehr brauchbar aus. Super, Danke! -
@percy
Vielen Dank Perci! Funktioniert 1a.Da ich es gerne Übermorgen auch noch verstehen möchte, habe ich es in einen Request-Block als Blockly in IOBroker gepackt aber der Rest ist identisch und Deine Idee zählt.
Anfangs hackte es irgendwie und die Aktionsregel wollte nicht auslösen. Nachdem ich dann zum x-ten mal den User dafür angelegt habe und diese Daten in den Befehl übernommen hab, klappte es dann super.
Nutze bei mir die Erkennungsmöglichkeiten der Kameras und nicht zB die Bewegungserkennung der Synology. Das soll und ist auch etwas treffsicherer, aber auch nicht perfekt und die Idee dies so noch perfektionieren zu können gefällt mir.