---
# System prepended metadata

title: 'Unitoptek kamera mozgásérékelés integrálása HA alá '
tags: [alarm, unitoptek, home assistant, motion detection]

---

# Unitoptek kamera mozgásérékelés integrálása HA alá

A kamerát ONVIF-ként lehet integrálni HA alá, de nekem a motion detect része a kamera entitásnak nem működik.
Pontosabban, vagy mindig "Clear", vagy mindig "Detected".

A kamera web felületén a PC view >> Settings >> Alarm >> Alarm rész a mozgásérzékelésnél a következő lehetőségeket mutatja:
![image](https://hackmd.io/_uploads/BJdkZ6qH-e.png)

Van azonban egy rejtett lehetőség, amivel webhook-ot köthetünk a detect eseményre.

A `/cgi-bin/hi3510/param.cgi?cmd=getalarmserverattr` URL betölti az aktuális alarm server beállításokat.
Valami ilyesmit fogunk látni:
```
var as_server="";
var as_port="";
var as_username="";
var as_password="";
var as_info="";
```

A felülethez setter is tartozik, amit a cmd=setalarmserverattr címen tudunk elérni.

```
/cgi-bin/hi3510/param.cgi[?cmd=setalarmserverattr&-as_server={ide_jöjjön_a_server_ip_cime_vagy_domainje}&-as_
port={ide_jöjjön_a_port}&-as_username={ide_jöjjön_az_a_usernev_amit_majd_kuld}&-as_password={ide_pedig_a_jelszo}]
```

Ha minden paraméter rendben volt akkor a hívás után egy:
```
[Succeed]set ok.
```
üzenettel nyugtázza, hogy a beállításokat elmentette.
Visszaellenőrizhetjük a `/cgi-bin/hi3510/param.cgi?cmd=getalarmserverattr` meghívásával, hogy sikerült a mentés.

Az alarm server hívást be is kell kapcsolni.
Először is ellenőrizzük le, hogy az alarm server hívás be van-e kapcsolva, a `/cgi-bin/hi3510/param.cgi?cmd=getmdalarm&-aname=server` url-en.
```
var md_server_switch="off";
```

Alapból ki van kapcsolva ez az opció. Nosza kapcsoljuk be a 
`/cgi-bin/hi3510/param.cgi?cmd=setmdalarm&-aname=server&-switch=on` URL segítségével.

Ha mindent jól csináltunk a következő mozgás detektáláskor a kamera egy HTTP requestet küld a beállított alarm serverre a beállított portra.
![image](https://hackmd.io/_uploads/rJg2wp9rbl.png)

A beállított szerveren a `/api/alarm.asp?username=itt_a_username&userpwd=itt_a_password&rea=0&io=0` url-re fog becsapódni a GET kérés. Fontos, hogy csak https protokollal működik, tehát a http->https átirányítás nem fog működni, és az egyéb átirányítások sem, mert a kamera nem kezeli a redirectet.

A beállított as_username és as_password fog a username és userpwd paraméterben megérkezni.
Ez jól jöhet a különböző kamerák megkülönböztetésében a server oldalon.

Ebből a GET requestből server oldalon MQTT hívást generálhatunk a HA MQTT serverére, így adva tudtára a HomeAssistantnak, hogy a kamera mozgást érzékelt.