
Dahua Technology patří mezi největší výrobce IP kamer na trhu. Každá kamera Dahua (IPC, PTZ i termální) s detekcí pohybu zpřístupňuje HTTP CGI endpoint, který vrací aktuální stav pohybu — TapHome tento endpoint využívá k tomu, aby z libovolné Dahua kamery udělal binární senzor pohybu pro spouštění scén, nahrávek nebo notifikací.
Šablona každou sekundu čte jediný CGI endpoint a odpověď mapuje na reed kontakt: pohyb detekován nebo bez pohybu. Není potřeba žádný další hardware, cloudový účet ani RTSP stream — TapHome a kamera komunikují přímo v lokální síti přes nezabezpečené HTTP.
Konfigurace
Síť
Šablona komunikuje s kamerou na TCP portu 80 přes nešifrované HTTP. Při importu šablony v TapHome zadej IP adresu kamery (doporučujeme DHCP rezervaci nebo statickou IP — Dahua kamery neposkytují stabilní mDNS jméno hosta).
| Parametr | Hodnota |
|---|---|
| Protokol | HTTP (port 80) |
| Poll interval | 1000 ms |
| Endpoint | /cgi-bin/eventManager.cgi?action=getEventIndexes&code=VideoMotion |
| Autentizace | žádná (viz upozornění níže) |
Šablona posílá neautentizované HTTP GET požadavky. Novější firmware Dahua vyžaduje HTTP Basic nebo Digest autentizaci u každého CGI volání a bez přihlašovacích údajů vrátí HTML stránku
401 Unauthorized. Toto HTML tělo neobsahuje řetězecError:No Events, takže šablona by přepnula na trvalý stav „pohyb aktivní". Musíš tedy buď povolit anonymní přístup naeventManager.cgina kameře, nebo vypnout HTTP autentizaci v bezpečnostním nastavení kamery. Pokud tvé prostředí vyžaduje autentizovaný přístup, nasaď před kameru lokální reverzní proxy, která vkládá přihlašovací údaje.
Šablona má natvrdo nastavené
UseHttps=Falsea používá port 80. Firmware vyžadující výhradně HTTPS není podporován. Pokud tvá kamera HTTPS vynucuje, vypni ho ve webovém rozhraní v Setting → Network → HTTPS.
Zapnutí detekce pohybu na kameře
Aby getEventIndexes&code=VideoMotion vrátil aktivní stav, detekce pohybu musí být na kameře explicitně zapnuta. U mnoha modelů Dahua je z výroby vypnutá.
- Přihlaš se do webového rozhraní kamery na
http://<ip-kamery>/ - Přejdi na Setting → Event → Video Detection → Motion Detection
- Zaškrtni Enable a klikni na Save
- Nastav detekční oblast (Area) — vyznač region(y), kde se má pohyb sledovat. Předvolené je aktivní celé snímání.
- Nastav citlivost Sensitivity (0 – 100, vyšší = snadnější spuštění) a práh Threshold (0 – 100, nižší = snadnější spuštění) podle živé waveform. Červená = detekovaný pohyb, zelená = bez pohybu.
- Nakonfiguruj časové okno Period (aktivační rozvrh) tak, aby pokrývalo hodiny, kdy má TapHome reagovat na pohyb (typicky 24/7).
- Nastav Anti-dither na 1 – 5 s, pokud chceš krátké časové rozestupy mezi po sobě jdoucími událostmi.
Kamera musí mít také uživatelský účet s právy Operator nebo vyššími (potřebné pro čtení eventManager.cgi v případě, že je autentizace vynucena).
Možnosti zařízení
Stav pohybu
Šablona poskytuje jedno reed-kontaktové zařízení, které odráží aktuální stav pohybu z kamery:
- Pohyb — kamera právě hlásí aktivní událost
VideoMotion - Bez pohybu — kamera odpovídá řetězcem
Error:No Events
Stav se odvozuje ze skriptu s jednosekundovým pollingem:
| |
Po skončení pohybu kamera drží událost aktivní ještě EventHandler.Delay sekund (předvoleně 30 s), než vrátí Error:No Events. Senzor v TapHome tedy zůstává aktivní až 30 sekund po posledním pohybu, i když PIR logika kamery už stav uvolnila. Pokud chceš kratší dobu držení, sniž hodnotu Delay v nastavení událostí kamery.
TapHome senzor používá standardní i18n označení Pohyb (aktivní) a Bez pohybu (klid), stejně jako ostatní binární senzory pohybu v systému.
Kompatibilní modely
Jakákoli IP kamera Dahua, která zpřístupňuje standardní HTTP API v1.40 (nebo novější) s endpointem eventManager.cgi — tedy převážná většina sérií IPC-H, IPC-K, IPC-E, PTZ a termálních kamer vydaných od roku 2013. Šablona je nezávislá na rozlišení, kodeku a objektivu — čte pouze binární příznak události.
Řešení potíží
Senzor je trvale ZAPNUTÝ (pořád ukazuje pohyb)
Jde o nejčastější problém se dvěma typickými příčinami:
- Na kameře je vynucena HTTP autentizace. Neautentizovaný požadavek šablony dostane v odpovědi HTML stránku
401 Unauthorized. Protože tato stránka neobsahuje řetězecError:No Events, šablona ji interpretuje jako „pohyb aktivní". Oprava: povol anonymní přístup naeventManager.cginebo vypni autentizaci na kameře. - Velmi starý firmware vrací prázdné tělo místo
Error:No Events, když je klid. Prázdný řetězec také neobsahuje hledaný marker, takže šablona hlásí pohyb neustále. Oprava: aktualizuj firmware kamery na verzi, která vrací správnou idle odpověď.
Otevři http://<ip-kamery>/cgi-bin/eventManager.cgi?action=getEventIndexes&code=VideoMotion v prohlížeči a prohlédni si surovou odpověď. Zdravá idle odpověď je textové tělo obsahující Error:No Events.
Senzor je trvale VYPNUTÝ (nikdy neukazuje pohyb)
- Detekce pohybu je na kameře vypnutá — znovu zkontroluj Setting → Event → Video Detection → Motion Detection → Enable
- Aktuální čas leží mimo nakonfigurované okno Period (aktivační rozvrh)
- Detekční oblast Area nepokrývá část scény, kde k pohybu dochází
- Sensitivity je příliš nízká nebo Threshold příliš vysoký — dolad’ je pomocí živé waveform ve webovém rozhraní
- Kamera se právě nachází v Anti-dither back-off okně po předchozí události
Žádná odpověď / timeout
- Ověř, že je kamera dostupná:
ping <ip-kamery>a otevřihttp://<ip-kamery>/v prohlížeči - Zkontroluj, že je HTTP na portu 80 zapnuto v Setting → Network → Port
- Zkontroluj, že je HTTPS vypnuto (nebo alespoň ne vynuceno) v Setting → Network → HTTPS
- Ověř, že TapHome CCU a kamera jsou ve stejné podsíti / VLAN