Zum Hauptinhalt springen

Axis Smart-Home-Integration, kostenlos und Open Source

Axis-Integration für Gladys Assistant

Axis-Kameras, Türsprechanlagen und Lautsprecher lokal: Bilder, Erkennungen, Klingeln.

Bringt Axis-Netzwerkkameras, Türsprechanlagen (Netzwerk-Intercoms) und Netzwerklautsprecher lokal in Gladys, über ihre VAPIX-API: Kamerabilder, Bewegung, Objekte, Personen und Fahrzeuge aus AXIS Object Analytics, der PIR-Sensor, Geräuscherkennung, Sabotage, Tag und Nacht, die digitalen Eingänge, das Klingeln einer Türsprechanlage, das Infrarotlicht, die Audioclips der Lautsprecher und die Ausgänge (Relais) für deine Szenen. Kein Cloud-Konto, nichts verlässt dein Netzwerk.

Developed without the hardware: feedback welcome. Diese Integration wurde nach der öffentlichen VAPIX-Dokumentation, der Home-Assistant- Integration axis und der Bibliothek axis von Kane610 (mit ihren echten Geräteantworten) geschrieben, ohne ein Axis-Gerät zur Hand. Wenn etwas nicht wie beschrieben funktioniert, eröffne bitte ein Ticket auf github.com/guim31/gladys-axis/issues mit den Protokollen der Integration (LOG_LEVEL=debug).

Diese Integration ist nicht mit Axis Communications verbunden. AXIS ist eine Marke der Axis AB.

Was du brauchst​

  • Eine Axis-Kamera, -Türsprechanlage oder einen Axis-Lautsprecher, den Gladys in deinem Netzwerk erreicht, mit funktionierender Weboberfläche (Port 80 oder 443 mit HTTPS).
  • Ein lokales Konto des Geräts. Ein Operator-Konto reicht für alles (Bilder, Ereignisse, Infrarotlicht, Ausgänge, Clips); ein Betrachter-Konto kann nur lesen. Das erste Konto eines Axis-Geräts ist root: Besser legst du ein eigenes Operator-Konto gladys an.
  • Für die Live-Ereignisse: AXIS OS 11 oder neuer nutzt den WebSocket-Ereignisstrom über den Webport; ältere Firmwares nutzen den RTSP-Metadatenstrom, daher muss auch der RTSP-Port (standardmäßig 554) erreichbar sein.
  • Gladys 5.1 oder neuer.

Einrichtung​

Einstellungen​

Öffne in Gladys die Integration und dann den Reiter Konfiguration:

  • Adressen der Geräte: die IP-Adressen (oder Namen) deiner Geräte, durch Kommas getrennt, z. B. 192.168.1.90, 192.168.1.91. Füge :Port hinzu, wenn die Weboberfläche nicht auf Port 80 läuft, und https:// für HTTPS (das selbstsignierte Zertifikat des Geräts wird akzeptiert). Schreib nie das Passwort in die Adresse.
  • Benutzername und Passwort: das lokale Konto der Geräte. Das Passwort wird nur an die Geräte gesendet, nie an eine Cloud.
  • Adressen der anderen Geräte, Deren Benutzername, Deren Passwort: optional, für Geräte (zum Beispiel eine Türsprechanlage) mit anderen Zugangsdaten.
  • Kamerabilder: wie oft das Bild jeder zu Gladys hinzugefügten Kamera erneuert wird (standardmäßig alle 5 Minuten, oder nur bei Ereignissen). Eine erkannte Person oder ein Klingeln sendet immer ein neues Bild.
  • Steuern der Ausgänge erlauben: standardmäßig aus. An einer Türsprechanlage öffnen die Ausgänge (Relais) Tür oder Tor: Diese werden nur von der Szenenaktion gesteuert, sobald diese Einstellung an ist, und sind nie ein Schalter.
  • Sprache der Namen: die Sprache der Funktionsnamen (beim Hinzufügen eines Geräts festgelegt) und der Texte für Szenen. Standardmäßig Französisch.

Öffne dann den Reiter Erkennung: Jede Kamera (jede Videoquelle einer Mehrsensor-Kamera), Türsprechanlage und jeder Lautsprecher ist aufgeführt. Füge die gewünschten hinzu.

Konfigurationsaktionen​

  • Verbindung testen: liest alle Geräte neu und meldet pro Gerät eine Zeile mit Modell, Videoquellen und dem Weg der Live-Ereignisse (WebSocket oder RTSP). Nach einem abgelehnten Passwort ist das der Weg für einen neuen Versuch, sobald das Passwort korrigiert ist.
  • Im Netzwerk suchen: lässt Gladys nach den Axis-Geräten im Netzwerk suchen (mDNS _axis-video._tcp und UPnP) und listet sie: konfiguriert, zum Hinzufügen (kopiere die Adresse in Adressen der Geräte) oder unter einer neuen Adresse gefunden. Bonjour und UPnP müssen auf den Geräten an sein (standardmäßig sind sie es).
  • Audioclips: listet die Audioclips jedes Geräts nach Nummer und Name, für die Szenenaktion Audioclip abspielen.
  • Adresse des Videostreams anzeigen: die RTSP-Adresse einer Kamera, für die Integration „RTSP-Kamera“ von Gladys. Das Passwort ist durch PASSWORD ersetzt: Gib es selbst ein.

Die Geräte​

Kameras​

Jede Videoquelle wird ein Gerät. Seine Funktionen, jede nur, wenn die Kamera sie hat:

FunktionWas sie zeigt
BildDas Kamerabild, erneuert gemäß Kamerabilder
OnlineDie Kamera antwortet
BewegungAXIS Video Motion Detection, die Überwachungsprofile, die ONVIF-Bewegungsregeln
ObjektanalyseEin Szenario von AXIS Object Analytics wurde ausgelöst
PersonEin als Person eingestuftes Objekt (AXIS Object Analytics)
FahrzeugEin als Fahrzeug eingestuftes Objekt (AXIS Object Analytics)
PIR-SensorDer PIR-Sensor der Kamera
GeräuscherkennungDer Geräuschpegel-Auslöser der Kamera
SabotageDie Kamera wurde bewegt, abgedeckt oder geblendet
NachtmodusDie Kamera ist im Nachtmodus (Infrarot-Sperrfilter entfernt)
InfrarotlichtDer Infrarotstrahler: an oder aus aus Gladys
EingangJeder digitale Eingang, benannt wie auf der Kamera (z. B. Garden gate), oder „Eingang 1“

Die Erkennungen, die eine Kamera in ihren Ereignissen meldet, fügen ihre Funktion hinzu (ein Sensor pro vorhandenem Ereignis): Fehlt eine erwartete Funktion, löse die Erkennung einmal aus, öffne dann Erkennung erneut und aktualisiere das Gerät.

Die Ausgänge (Relais) einer Kamera sind nie eine Funktion: siehe die Szenenaktion Ausgang (Relais) steuern.

Türsprechanlagen​

Eine Axis-Türsprechanlage (A8105-E, A8207-VE, I8016-LVE, I8116-E…) ist eine Kamera mit der Funktion Türklingel: Diese geht auf 1, wenn jemand die Ruftaste drückt, zehn Sekunden später zurück auf 0 und löst Jemand klingelt an der Tür mit einem neuen Bild aus. Die Ruftaste wird erkannt, wenn ihr Eingang so heißt (Call button, Doorbell, Klingel…), oder als erster Eingang einer AXIS I8116-E. Das Türrelais ist ein Ausgang: siehe Ausgang (Relais) steuern.

Netzwerklautsprecher​

Ein Axis-Netzwerklautsprecher (C1310-E, C1410…) wird ein Gerät mit der Funktion Online; er spielt seine Audioclips über die Szenenaktion Audioclip abspielen ab.

Dashboard​

Das Widget Axis zeigt die Geräte online, die Personen und Klingeln der letzten 24 Stunden, die neuesten mit ihrem Bild, und den Zustand jedes Geräts. Wähle in seinen Einstellungen ein Gerät, oder lass das Feld leer für alle.

Die Kamerabilder und jede Funktion kannst du auch mit den üblichen Boxen von Gladys zum Dashboard hinzufügen.

Szenen​

Auslöser​

  • Person von einer Kamera erkannt: Eine Kamera hat eine Person gesehen (AXIS Object Analytics oder ein Überwachungsprofil). Filter auf die Kamera; die Variablen geben den Namen der Kamera und den des Szenarios. Das Kamerabild ist beim Start der Szene aktuell, „Kamerabild senden“ sendet also das richtige. Höchstens ein Ereignis pro Kamera alle 15 Sekunden.
  • Jemand klingelt an der Tür: Die Ruftaste wurde gedrückt. Filter auf die Türsprechanlage; die Variable gibt ihren Namen. Auch das Bild ist aktuell.

Die Funktionen (Bewegung, Person, Eingang…) können eine Szene auch mit dem üblichen Auslöser „Zustand eines Geräts ändert sich“ starten.

Aktionen​

  • Kamerabild aktualisieren: nimmt ein neues Bild einer Kamera für Gladys auf, um es danach in einer Nachricht zu senden.
  • Audioclip abspielen: spielt einen auf einem Axis-Lautsprecher, einer Türsprechanlage oder Kamera gespeicherten Clip ab, nach Nummer oder Name (leer: der erste Clip). Die Konfigurationsaktion Audioclips listet sie.
  • Ausgang (Relais) steuern: ein Impuls von 1, 3 oder 10 Sekunden, oder einen Ausgang aktivieren oder deaktivieren, ab 1 unter den Ausgängen des Geräts nummeriert. An einer Türsprechanlage öffnet das die Tür: Das geht nur, wenn Steuern der Ausgänge erlauben an ist, und der Befehl wird einmal gesendet, nie wiederholt.

Ideen für Szenen​

  • Es klingelt an der Tür: Wenn jemand an der Tür klingelt, sende das Bild der Türsprechanlage in einer Nachricht und spiele mit Audioclip abspielen einen Gong auf dem Lautsprecher im Wohnzimmer.
  • Nachtwache: Wenn die Kamera der Einfahrt zwischen Mitternacht und 6 Uhr eine Person erkennt, schalte die Gartenbeleuchtung ein, spiele den Clip „Warnung“ auf dem Hornlautsprecher und sende das Kamerabild.
  • Das Tor für eine bekannte Ankunft öffnen: Wenn dein Telefon nach Hause kommt, steuere Ausgang 1 der Türsprechanlage mit einem Impuls von 1 Sekunde (nur nach dem Erlauben und nur, wenn du das Risiko einer Szene akzeptierst, die eine Tür öffnet).

Live-Video​

Gladys zeigt Kamerabilder, keinen Live-Videostream. Für Live-Video nutze die Aktion Adresse des Videostreams anzeigen und füge die RTSP-Adresse in der Integration „RTSP-Kamera“ von Gladys hinzu.

Aktualisierung und Grenzen​

  • Die Live-Ereignisse kommen sofort an: WebSocket ab AXIS OS 11, RTSP-Metadatenstrom sonst, immer eine von Gladys geöffnete Verbindung pro Gerät (nichts im Router zu öffnen). Ein verlorener Stream wird neu geöffnet (nach 5 Sekunden, dann bis zu 5 Minuten zwischen zwei Versuchen).
  • Die Integration liest die Eingänge und das Infrarotlicht alle 5 Minuten, jede Minute, solange ein Ereignisstrom unterbrochen ist. Dabei wartet sie nie darauf, dass Gladys die Geräte abfragt.
  • Die Bilder werden mit höchstens 640 Pixeln Breite aufgenommen, von der Kamera verkleinert (Gladys nimmt Bilder von höchstens 150 KB), nie öfter als alle 6 Sekunden pro Kamera.
  • Ein Wert, der sich nicht ändert, wird alle 6 Stunden erneut gesendet, damit Gladys ihn nie als veraltet anzeigt.
  • VAPIX hat kein Kontingent. Axis-Geräte sperren eine Adresse eine Zeit lang nach wiederholt falschen Passwörtern: Die Integration stoppt bei der ersten Ablehnung und versucht es erst mit einer neuen Konfiguration oder mit Verbindung testen wieder.

Fehlerbehebung​

  • „Benutzername oder Passwort abgelehnt“: Prüfe sie auf der Weboberfläche des Geräts, korrigiere sie in der Konfiguration und nutze dann Verbindung testen.
  • „Dieses Konto darf das nicht“: Verwende ein Operator-Konto.
  • Das Gerät antwortet nicht: Prüfe Adresse und Port und ob Gladys es erreicht (gleiches Netzwerk, keine Firewall dazwischen).
  • „Die Live-Ereignisse sind unterbrochen“: Prüfe bei einer älteren Firmware, ob der RTSP-Port (554) erreichbar und RTSP auf dem Gerät aktiv ist. Eingänge und Infrarotlicht werden weiterhin jede Minute gelesen.
  • Eine Erkennung fehlt: Aktiviere sie auf der Kamera (Szenario von AXIS Object Analytics, VMD-Profil, Geräuschpegel-Auslöser), löse sie einmal aus und aktualisiere dann das Gerät in Erkennung.
  • Das Klingeln einer Türsprechanlage wird nicht gesehen: Benenne den Eingang der Ruftaste auf der Türsprechanlage Call button und nutze dann Verbindung testen.
  • Details: Setze LOG_LEVEL=debug für die Integration, um jedes Ereignis und jedes Lesen in ihren Protokollen zu sehen. Passwörter erscheinen dort nie.

Grenzen​

  • Ohne die Hardware entwickelt: Die Ereignisthemen, die Streams und die Regel der Ruftaste stammen aus der Dokumentation und der Arbeit von Home Assistant, nicht aus einem Test an einem echten Gerät.
  • Kein Live-Video in Gladys (nur Kamerabilder), kein Schwenken, Neigen oder Zoomen.
  • Die Ausgänge sind absichtlich nur eine Szenenaktion: nie ein Schalter, nie für einen Sprachassistenten erreichbar.
  • Die Audioclips werden abgespielt, nicht hochgeladen: Nimm sie auf dem Gerät auf.
  • Bei einer Mehrsensor-Kamera erscheinen die Funktionen von AXIS Object Analytics zuerst auf der ersten Videoquelle; die anderen erhalten sie bei ihrer ersten Erkennung.
  • Die bei der Netzwerksuche gefundenen Geräte werden nicht von selbst hinzugefügt: Kopiere ihre Adresse in die Konfiguration.

Konfigurationseinstellungen​

Diese Einstellungen fragt Axis in seinem Konfigurationsbildschirm in Gladys ab.

EinstellungTypPflichtfeldBeschreibung
Deine Axis-GerätesectionNeinAxis-Kameras, Türsprechanlagen und Netzwerklautsprecher in deinem Netzwerk, über ihre VAPIX-API. Verwende ein lokales Konto des Geräts, am besten ein eigenes Operator-Konto. Nichts läuft über eine Cloud. Die Aktion „Im Netzwerk suchen“ listet die gefundenen Axis-Geräte.
Adressen der GerätestringJaIP-Adressen oder Namen, durch Kommas getrennt, mit :Port, falls nicht 80, https:// für HTTPS.
BenutzernamestringNein
PasswortsecretJaWird nur an die Geräte gesendet, nie an eine Cloud. Axis-Geräte sperren eine Adresse nach wiederholten Fehlversuchen: Die Integration stoppt bei der ersten Ablehnung.
Geräte mit anderen ZugangsdatensectionNeinOptional: eine Türsprechanlage oder Kamera, deren Benutzername oder Passwort von den obigen abweicht.
Adressen der anderen GerätestringNein
Deren BenutzernamestringNein
Deren PasswortsecretNein
KamerabilderselectNeinWie oft das Bild jeder hinzugefügten Kamera erneuert wird. Eine Person oder ein Klingeln sendet immer ein neues.
Steuern der Ausgänge erlaubenbooleanNeinErlaubt Szenen, die Ausgänge (Relais) zu steuern: An einer Türsprechanlage öffnen sie Tür oder Tor. Nur Szenenaktion, nie ein Schalter. Standardmäßig aus.
Sprache der NamenselectNeinSprache der Funktionsnamen und der Texte für Szenen. Die Namen werden beim Hinzufügen festgelegt.

So installierst du Axis in Gladys​

  1. Öffne in Gladys Integrationen: Axis erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
  2. Klicke auf Installieren. Gladys lädt das Docker-Image (ghcr.io/guim31/gladys-axis:1.0.1) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration).
  3. Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
  4. Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/guim31/gladys-axis.

Axis benötigt Gladys >=5.1.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.

Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.

Über externe Integrationen​

Axis ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von guim31 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.

Abonniere den Newsletter von Gladys Assistant

Ein paar E-Mails im Monat zu neuen Releases und Neuigkeiten aus dem Projekt. Verschickt von Pierre-Gilles Leymarie, dem Gründer des Projekts. Jederzeit abbestellbar 🙂