Externe Integration - netatmo Kamera Problem

Hallo zusammen!

@Terdious

Ich habe ein Problem mit meiner Netatmo-Kamera, die nicht angezeigt wird. Aber wenn ich die lokale URL über CAMERA_URL abrufe, funktioniert es (z. B. wenn ich sie in die Kamera-Integration einfüge).

Hier ist der Log-Eintrag in einer Schleife:

[2026-08-08T10:08:54.221Z] [WARN] [netatmo-camera] Kamerasnapshot überschreitet nach der Neukodierung weiterhin das 96-KB-Budget — dieses Frame wird übersprungen

[2026-08-08T10:10:54.964Z] [WARN] [netatmo-camera] Kamerasnapshot überschreitet nach der Neukodierung weiterhin das 96-KB-Budget — dieses Frame wird übersprungen

Hallo @spenceur!

Entschuldige bitte, aber eine alte Begrenzung war implementiert, weil der Core sie vorher nicht akzeptiert hat. Das Bild ist zu groß.

Der Core wurde korrigiert, aber die externe Integration wurde bei mir nicht aktualisiert.

Claude kümmert sich darum :wink:

Ich halte dich auf dem Laufenden

Danke für den Hinweis, das ist in 1.1.2 behoben :tada:
Was passiert ist: Die Integration hat die Kamerabilder auf 96 KB begrenzt — ein Workaround für eine alte Core-Grenze (der Host-API war hinter einem 100-KB-JSON-Parser, der einen 413-Fehler zurückgab). Eure Snapshots überschritten selbst nach Re-Encoding diese Grenze, daher wurde jedes Bild ignoriert → keine Bilder im Dashboard. Der Live-Stream funktionierte jedoch, da er nicht diesen Weg nutzt (daher euer Workaround mit CAMERA_URL, der funktioniert).
Was sich in 1.1.2 ändert:

  • Der Core parst nun den Host-API mit einer dedizierten Grenze von 20 MB → Rückkehr zum echten Budget von 150 KB;
  • Wenn ein Snapshot selbst bei minimaler Qualität zu groß bleibt, wird er nun automatisch verkleinert, statt verworfen zu werden — ein kleines Bild ist besser als kein Bild.
    Sollte in etwa einer Stunde verfügbar sein, aktualisiert die Integration (Supervision → Update erzwingen) und das Bild sollte erscheinen. Falls es weiterhin Probleme gibt, sendet mir die netatmo-camera-Logs nach dem Update.

Gute Nachricht: Die Trigger sind da! :tada: Verfügbar in 1.2.0.

Neue Funktionen (verwendbar als Szenario-Trigger)

Gerät Funktionen
Innen- und Außenkamera Bewegung, Person erkannt
Außenkamera (Presence) + Tier erkannt, Fahrzeug erkannt
Rauchmelder Rauch

Diese Erkennungen sind punktuell: Sie existieren nur im Netatmo-Ereignisstream, keine API-Abfrage kann sie abrufen — genau deshalb benötigen sie Webhooks.

Wie funktioniert das

Jede Erkennung geht auf Ja, kehrt dann aber nach einer Minute automatisch auf Nein zurück (Netatmo sendet nie ein „Erkennung beendet“-Ereignis). In einem Szenario verwende also den Trigger „Wert wird Ja“.

:warning: Eine notwendige Manipulation

Falls deine Kameras bereits in Gladys vorhanden waren, erscheinen diese neuen Funktionen nicht von alleine:

  1. Aktualisiere die Integration (Überwachung → Update erzwingen)
  2. Gehe zum Entdeckungs-Bildschirm
  3. Klicke auf Aktualisieren bei jeder Kamera (und beim Rauchmelder)

Die Webhooks müssen natürlich konfiguriert sein (Gladys Plus Open API-Schlüssel in der Konfiguration eingefügt), damit die Erkennungen gemeldet werden.

Wenn eine Erkennung nicht gemeldet wird

Stelle die Integrationsprotokolle auf debug ein und sende mir, was du während einer Erkennung siehst. Eine erkannte Erkennung erzeugt eine Zeile wie Netatmo event: movement on ext:netatmo:.... Falls Netatmo einen Ereignisnamen verwendet, den ich nicht vorgesehen habe, kann das in einer Minute korrigiert werden.

Super, ich habe mein Gerät aktualisiert, aber jetzt habe ich ein komisches Rechteck. Normal so ^^ ?

Das sind sicher Meta-tmo-Brillen :joy:

Es ist nur so, dass die von Netatmo hinzugefügten Funktionen von Gladys nicht erkannt werden.

Kleine Frage zur Aktion

„Kamera-Bild senden“

Wird das letzte Snapshot-Bild gesendet? Oder wird ein neues gemacht und gesendet?

Ich habe das Gefühl, dass es die erste Option ist und ich daher nicht das Bild zum Zeitpunkt t habe.

Ich denke an diejenigen, die Gladys länger nutzen und Webhooks verwenden, um Aktionen auszuführen und dabei ein Bild zu senden. Wenn das Bild zu alt ist, ist das schade :frowning:

Ich antworte dir, aber für die weitere Integration von Netatmo wird dir @Terdious nach seiner Rückkehr aus dem Urlaub mehr Details geben.

Nicht normal, aber beruhige dich: das kommt von Gladys selbst, nicht von deiner Installation oder der Integration, und es ist rein kosmetisch :slightly_smiling_face:

Das leere Etikett

Es handelt sich um die Funktion « Person erkannt ». Die Integration ordnet sie der Kategorie Anwesenheitsdetektor zu, mit einem binären Wert Ja/Nein — was die logische Wahl ist.

Allerdings bedeutete ein « Anwesenheitsdetektor » in Gladys bisher nur eine Sache: Dein Telefon, das im Netzwerk oder per Bluetooth gesehen wurde — ein Lebenszeichen, kein Ja/Nein. Diese Kombination aus Kategorie und Typ hatte daher weder einen übersetzten Titel noch ein Icon auf Seiten von Gladys, daher das leere graue Etikett. @Will_71 hatte recht :ok_hand:

Aber nichts ist kaputt: Die Erkennung wird korrekt gemeldet und der Auslöser funktioniert.

Korrigiert im Core

Der Pull Request ist offen, er wird in einer zukünftigen Version von Gladys enthalten sein:

  • Das Etikett heißt jetzt « Anwesenheitserkennung Ja/Nein » und erhält sein Icon;
  • Auf dem Dashboard zeigt es ein Badge Anwesenheit erkannt / Keine Anwesenheit an, statt eines Datums « gesehen vor X Minuten », was für eine Kamera keinen Sinn ergibt;
  • Im Szenario-Editor zeigte dieser Auslöser tatsächlich zwei nebeneinander liegende Selektoren (Ja/Nein + ein grauer Button « Gerät erkannt »): Es bleibt nur das normale Ja/Nein übrig, und du kannst auch auf die Rückkehr zu Nein auslösen.

Keine Manipulation erforderlich: Die bereits erstellten Funktionen werden nach dem Update korrekt angezeigt.

Der Pull Request:

https://github.com/GladysAssistant/Gladys/pull/2839

Und die drei identischen « Bewegungserkennung Ja/Nein »?

Diese Etiketten zeigen den Namen der Kategorie an, nicht den der Funktion — und Gladys hat keine Kategorie « Tier » oder « Fahrzeug », daher werden die drei Erkennungen als Bewegungsmelder eingestuft. Daher das Dreifache.

Kein Problem: Ihre Namen sind jedoch klar unterschieden (Bewegung, Tier erkannt, Fahrzeug erkannt, gefolgt vom Namen deiner Kamera), und das ist der Name, den du überall findest, wo es zählt, beginnend mit dem Auslöse-Selektor eines Szenarios. Und wenn dir die Standardnamen nicht gefallen, kannst du sie nach Belieben von der Gerätekarte aus umbenennen.

Deine Frage zu « Kamerabild senden »

Gute Nachrichten auf beiden Ebenen:

  • Auf Gladys-Seite sendet die Aktion nicht das letzte gespeicherte Snapshot: Wenn das Szenario ausgeführt wird, fordert der Core ein frisches Bild von der Integration an, mit 15 Sekunden Zeit zum Antworten;
  • Auf der Seite der Netatmo-Integration löst dieser Befehl tatsächlich eine echte Aufnahme zum Zeitpunkt t aus (zuerst lokal, über das Netatmo-VPN als Backup). Das letzte bekannte Snapshot wird nur als letzte Rettung geliefert, wenn das frische Bild nicht rechtzeitig ankommt — und in diesem Fall schreibt die Integration eine Warnung in ihre Protokolle (On-demand snapshot failed … — serving the last image).

Daher erhalten deine Szenarien das Bild des Moments. Was du altern siehst, ist wahrscheinlich das Bild, das auf dem Dashboard angezeigt wird, das durch den periodischen Zyklus (alle 2 Minuten) aktualisiert wird: Das ist normal und hat nichts mit der Aktion zu tun.

Die Korrekturen sind in Gladys Assistant 4.86 verfügbar!