
Dahua Technology zählt zu den größten Herstellern von IP-Überwachungskameras weltweit. Jede Dahua-Kamera (IPC, PTZ und Wärmebild) mit Bewegungserkennung bietet einen HTTP-CGI-Endpunkt, der den aktuellen Bewegungsstatus liefert — TapHome nutzt diesen Endpunkt, um aus jeder Dahua-Kamera einen binären Bewegungssensor zu machen, der Szenen, Aufzeichnungen oder Benachrichtigungen auslösen kann.
Die Vorlage pollt einmal pro Sekunde einen einzigen CGI-Endpunkt und bildet die Antwort auf einen Reed-Kontakt ab: Bewegung aktiv oder keine Bewegung. Keine zusätzliche Hardware, kein Cloud-Konto und kein RTSP-Stream nötig — TapHome und Kamera kommunizieren direkt im lokalen Netzwerk über unverschlüsseltes HTTP.
Konfiguration
Netzwerk
Die Vorlage spricht die Kamera auf TCP-Port 80 über unverschlüsseltes HTTP an. Gib beim Vorlagenimport in TapHome die IP-Adresse der Kamera ein (eine DHCP-Reservierung oder statische IP ist empfehlenswert — Dahua-Kameras veröffentlichen keinen stabilen mDNS-Hostnamen).
| Parameter | Wert |
|---|---|
| Protokoll | HTTP (Port 80) |
| Poll-Intervall | 1000 ms |
| Endpunkt | /cgi-bin/eventManager.cgi?action=getEventIndexes&code=VideoMotion |
| Authentifizierung | keine (siehe Hinweis unten) |
Die Vorlage sendet nicht authentifizierte HTTP-GETs. Neuere Dahua-Firmware verlangt HTTP-Basic- oder Digest-Authentifizierung bei jedem CGI-Aufruf und liefert ohne Zugangsdaten eine HTML-Seite
401 Unauthorized. Dieser HTML-Body enthält den StringError:No Eventsnicht, daher würde die Vorlage dauerhaft auf „Bewegung aktiv" schalten. Du musst daher entweder anonymen Zugriff aufeventManager.cgian der Kamera zulassen oder die HTTP-Authentifizierung in den Sicherheitseinstellungen der Kamera deaktivieren. Falls authentifizierter Zugriff zwingend ist, setze vor der Kamera einen lokalen Reverse-Proxy ein, der die Zugangsdaten injiziert.
In der Vorlage ist
UseHttps=Falsefest gesetzt und Port 80 wird verwendet. Firmware, die ausschließlich HTTPS erlaubt, wird nicht unterstützt. Falls deine Kamera HTTPS erzwingt, deaktiviere es in der Weboberfläche unter Setting → Network → HTTPS.
Bewegungserkennung in der Kamera aktivieren
Damit getEventIndexes&code=VideoMotion einen aktiven Status liefert, muss die Bewegungserkennung in der Kamera explizit aktiviert sein. Ab Werk ist sie bei vielen Dahua-Modellen deaktiviert.
- Logge dich in die Weboberfläche der Kamera unter
http://<kamera-ip>/ein - Navigiere zu Setting → Event → Video Detection → Motion Detection
- Setze den Haken bei Enable und klicke auf Save
- Definiere die Detektionszone (Area) — markiere die Region(en), in der Bewegung erkannt werden soll. Standardmäßig ist das gesamte Bild aktiv.
- Stelle Sensitivity (0 – 100, höher = leichter auslösbar) und Threshold (0 – 100, niedriger = leichter auslösbar) anhand der Live-Waveform ein. Rot = Bewegung erkannt, Grün = keine Bewegung.
- Konfiguriere das Zeitfenster Period (Scharfschaltplan) so, dass es die Stunden abdeckt, in denen TapHome auf Bewegung reagieren soll (typischerweise 24/7).
- Setze Anti-dither auf 1 – 5 s, falls du kurze Abstände zwischen aufeinanderfolgenden Ereignissen möchtest.
Die Kamera benötigt außerdem einen Benutzer mit Berechtigungen Operator oder höher (erforderlich für das Lesen von eventManager.cgi, wenn Authentifizierung erzwungen wird).
Gerätefunktionen
Bewegungsstatus
Die Vorlage exponiert ein einzelnes Reed-Kontakt-Gerät, das den aktuellen Bewegungsstatus der Kamera widerspiegelt:
- Bewegung — die Kamera meldet gerade ein aktives
VideoMotion-Ereignis - Keine Bewegung — die Kamera antwortet mit
Error:No Events
Der Status wird aus einem Polling-Skript mit 1-Sekunden-Takt abgeleitet:
| |
Endet die Bewegung, hält die Kamera das Ereignis noch EventHandler.Delay Sekunden (Standard 30 s) aktiv, bevor sie Error:No Events liefert. Der TapHome-Sensor bleibt daher bis zu 30 Sekunden nach der letzten Bewegung ausgelöst, auch wenn die PIR-Logik der Kamera bereits freigegeben hat. Für eine kürzere Haltezeit den Wert Delay in der Ereigniskonfiguration der Kamera reduzieren.
Der TapHome-Sensor verwendet die Standard-i18n-Labels Bewegung (aktiv) und Keine Bewegung (Ruhe) — konsistent mit anderen binären Bewegungssensoren im System.
Kompatible Modelle
Jede Dahua IP-Kamera, die die Standard-HTTP-API v1.40 (oder neuer) mit dem Endpunkt eventManager.cgi bereitstellt — das umfasst die meisten Serien IPC-H, IPC-K, IPC-E, PTZ und Wärmebildkameras ab Baujahr 2013. Die Vorlage ist unabhängig von Auflösung, Codec und Objektiv — sie liest ausschließlich das binäre Ereignis-Flag.
Fehlersuche
Sensor ist dauerhaft EIN (meldet ständig Bewegung)
Das häufigste Problem, üblicherweise mit zwei Ursachen:
- Auf der Kamera ist HTTP-Authentifizierung aktiv. Die nicht authentifizierte Anfrage der Vorlage wird mit einer HTML-Seite
401 Unauthorizedbeantwortet. Da diese Seite den StringError:No Eventsnicht enthält, interpretiert die Vorlage sie als „Bewegung aktiv". Behebung: anonymen Zugriff aufeventManager.cgizulassen oder Authentifizierung an der Kamera deaktivieren. - Sehr alte Firmware liefert im Ruhezustand einen leeren Body statt
Error:No Events. Ein leerer String enthält den Marker ebenfalls nicht, daher meldet die Vorlage durchgehend Bewegung. Behebung: Firmware auf eine Version aktualisieren, die die korrekte Idle-Antwort liefert.
Öffne http://<kamera-ip>/cgi-bin/eventManager.cgi?action=getEventIndexes&code=VideoMotion im Browser und prüfe die Rohantwort. Eine gesunde Idle-Antwort ist ein Plain-Text-Body, der Error:No Events enthält.
Sensor ist dauerhaft AUS (meldet nie Bewegung)
- Die Bewegungserkennung ist an der Kamera deaktiviert — erneut Setting → Event → Video Detection → Motion Detection → Enable prüfen
- Die aktuelle Zeit liegt außerhalb des konfigurierten Zeitfensters Period (Scharfschaltplan)
- Die Detektionszone Area deckt den Bildbereich, in dem Bewegung stattfindet, nicht ab
- Sensitivity ist zu niedrig oder Threshold zu hoch — per Live-Waveform in der Weboberfläche nachjustieren
- Die Kamera befindet sich im Anti-dither-Backoff-Fenster nach dem letzten Ereignis
Keine Antwort / Timeout
- Erreichbarkeit prüfen:
ping <kamera-ip>undhttp://<kamera-ip>/im Browser öffnen - HTTP auf Port 80 unter Setting → Network → Port aktiviert?
- HTTPS unter Setting → Network → HTTPS deaktiviert (oder zumindest nicht erzwungen)?
- TapHome-CCU und Kamera im selben Subnetz / VLAN?