Skip to content

Latest commit

 

History

History
150 lines (99 loc) · 8.92 KB

README.md

File metadata and controls

150 lines (99 loc) · 8.92 KB

SDK Version Version
License Check Style Run Tests
SpendenWunschliste

ONVIF IO

Stellt die Verbindung zu einem ONVIF-Gerät her.

Inhaltsverzeichnis

1. Funktionsumfang

  • Interface für die Kommunikation mit einem ONVIF Profil S und/oder Profil T kompatiblen Gerät.
  • Ereignisverwaltung für Geräte welche Events unterstützen.

2. Voraussetzungen

  • IP-Symcon ab Version 6.1
  • Kameras oder Video-Encoder mit ONVIF Profil S und/oder Profil T Unterstützung.

3. Software-Installation

4. Einrichten der Instanzen in IP-Symcon

Unter 'Instanz hinzufügen' ist das 'ONVIF IO'-Modul unter dem Hersteller 'ONVIF' aufgeführt.
Module

Diese Instanz wird automatisch angelegt, wenn im 'Discovery-Modul' ein Gerät in Symcon angelegt wird.

Konfigurationsseite: Übersicht

Name Text Typ Beschreibung
Open Aktiv bool Öffnet/Aktiviert die Verbindung zum Gerät
Address Adresse string URL von dem Gerät (z.B. http://192.168.1.111:8080)
Username Benutzername string Benutzername für die Anmeldung
Password Passwort string Passwort zum Benutzernamen
EventHandler Ereignisse verarbeiten Bitmask Bit0: Subscribe, Bit1: PullPoint
WebHookIP Experteneinstellung (Abonnieren) string IP Adresse unter welcher IPS von dem Gerät aus erreichbar ist
WebHookPort Experteneinstellung (Abonnieren) int Port unter welchem IPS von dem Gerät aus erreichbar ist (3777)
WebHookHTTPS Experteneinstellung (Abonnieren) bool true wenn https benutzt werden soll
SubscribeInitialTerminationTime Experteneinstellung (Abonnieren) int Erstes Timeout welches beim abonnieren angefragt wird
SubscribeEventTimeout Experteneinstellung (Abonnieren) int Timeout bis wann das erste Ereignis eintreffen muss
PullPointInitialTerminationTime Experteneinstellung (Abfragen) int Erstes Timeout welches beim abonnieren angefragt wird
PullPointTimeout Experteneinstellung (Abfragen) int Timeout bis wann das Gerät warten soll, bevor es die Verbindung trennt
MessageLimit Experteneinstellung (Abfragen) int Maximal Anzahl von Ereignissen pro Abfrage

Config

Der Aktions-Bereich zeigt aktuelle Informationen zur Verbindung an.

Unter Geräteinformationen werden die gemeldeten Informationen und erkannten Fähigkeiten aufgeführt.

Konfigurationsseite: Ereignisse möglich

Es gibt zwei verschiedene Arten der Ereignisverarbeitung welche vom IO unterstützt werden.
Die bevorzugte Variante wird vom IO automatisch anhand der ermittelten Fähigkeiten der Geräte festgelegt.

Abonnieren

Für Geräte welche das ONVIF Profile S unterstützen, wird der Ereignis-Hook, auf welchen Symcon die Nachrichten des Endgerätes empfängt angezeigt.
Die IP-Adresse des Ereignis-Hook wird automatisch ermittelt, je nachdem über welchen Adresse das Gerät erreichbar ist.
Diese Erkennung funktioniert nicht bei NAT, da hier die externe Adresse Symcon nicht automatisch ermitteln kann.
Es müssen die Spezialschalter NATSupport und NATPublicIP benutzt werden

Sollte es nötig sein, so können bei Bedarf die eigene IP und der Port, sowie die Verwendung von https anstatt http, in den Experteneinstellungen (Ereignisse abonnieren) geändert und fixiert werden.

Wird der übliche Port (3777) von Symcon nicht benutzt (z.B. Port forwarding) so kann hier auch der Port, unter welchen Symcon erreichbar ist, angepasst werden.


Abfragen

Für Geräte welche das Profil S nicht unterstützen, gibt es außerdem noch die Möglichkeit die Ereignisse von dem Gerät abzufragen.
Hierzu baut Symcon der IO eine Verbindung zum Gerät auf und wartet auf eine Antwort. Das Gerät sendet bis zum erreichen der Wartezeit ein auftretendes Ereignis als Antwort an Symcon.
Anschließend baut Symcon die nächste Verbindung auf.
Bei dieser Art der Verarbeitung ist zu beachten, dass permanent ein PHP-Thread von der IO-Instanz belegt wird!


Allgemein

Sofern das Gerät ONVIF-Ereignisse unterstützt und Symcon sich erfolgreich am Gerät angemeldet hat, wird eine Adresse unter Abonnementreferenz angezeigt.

In der Tabelle wird eine Liste aller vom Gerät gemeldeten Ereignissen angezeigt, welche sich in Symcon nutzen lassen. Über das Feld Benutzt wird angezeigt ob das Ereignis in einer Instanz konfiguriert wurde. Und über das Zahnrad einer Zeile werden diese Instanzen tabellarisch angezeigt.

Die Fähigkeiten der Geräte werden beim Systemstart und anlegen von Instanzen ermittelt und innerhalb Symcon zwischengespeichert; da dieser Vorgang einige Zeit dauern kann.
Wird das Gerät selber umkonfiguriert, z.B. Änderung der Stream/ONVIF-Profile, oder erhält z.B. ein Firmware-Update, so kann über den Button Fähigkeiten neu laden die Instanz veranlasst werden die Fähigkeiten neu zu laden.

Konfigurationsseite: Ereignisse nicht möglich

Config

Geräte welche beim ermitteln der Fähigkeiten von Ereignissen eine Fehlermeldung an Symcon melden, werden mit einem entsprechenden Hinweis dargestellt.

5. Statusvariablen

Dieses Modul erzeugt keine Statusvariablen.

6. WebFront

Dieses Modul ist nicht für die Darstellung im Webfront geeignet.

7. PHP-Funktionsreferenz

Keine Funktionen verfügbar.

8. Aktionen

Keine Aktionen verfügbar.

9. Anhang

1. Changelog

Changelog der Library

2. Spenden

Die Library ist für die nicht kommerzielle Nutzung kostenlos, Schenkungen als Unterstützung für den Autor werden hier akzeptiert:

Wunschliste

10. Lizenz

IPS-Modul:
CC BY-NC-SA 4.0