[Modul] Netatmo Camera (Presence / Welcome)

Hi Demel,

super. Probiere ich gerade aus. Leider fehlt mir noch etwas zum Erfolg.

$notifWebhook = $_IPS['new_notifications'];
$url = NetatmoSecurity_GetSnapshotFilename4Notification($instID, $notifWebhook['id']);

Hier bekomme ich leider immer false zurück.
Hole ich die notification ID korrekt?

EDIT: Konnte mir selbst helfen:

$notifWebhook = $_IPS['new_notifications'];
$notifWebhook = json_decode($notifWebhook, true);

foreach ($notifWebhook as &$value) {
    if (isset($value['event_type'])) {

        if (isset($value['subevent_id'])) {

            $event_type = $value['event_type'];
            SetValueString($Camera_ID, IPS_GetName($instID));
            SetValueString($Event_Type_ID, $event_type);  
            SetValueInteger($camId, $instID);

            $url = NetatmoSecurity_GetSnapshotFilename4Notification($instID, $value['subevent_id']);
            SetValueString($Snapshot_URL_ID, $url);
        }
    }
}

sorry, ich hatte keine Benachrichtigungsmail bekommen/gesehen…

Also es gibt sowohl Snapshot zu der event_id (ist die o.g. id) also auch die subevent_id´s.

Ist beides denkbar. nach meiner Beobachtung kommen die subevent_id, wenn es mehrere Aufnahmen gibt zu einer Ereignis, wenn nicht ggfs. nur die id (= event_id).
100%'ig habe ich die diesbezügliche Systematik aber nicht verstanden

Hallo Demel,

ich habe eine Netatmo Presence Kamera im Einsatz

Seit einigen Tagen bekomme ich folgende Fehlermeldung im Log:

20.07.2023, 08:56:32 | NetatmoSecurityIO | url=https://api.netatmo.net/oauth2/token, statuscode=214, err=got http-code 400

Ich habe in der Instanz die Zugangsdaten ausgetauscht/aktualisiert, und auch mal ClientID/Secret erneuert.

Webrecherche hat zum Statuscode 214 leider nichts ergeben.

Im Einsatz ist Symcon 6.4 und die aktuelle Beta des Moduls.

Hat jemand zufällig eine Idee.

Gruß
Christian

selbes Thema wie hier
betrifft alle Netatmo-Produkte.

Der Zugriff via Entwicklerschlüssel ist so wie bisher nicht mehr möglich, gibt aber ein Workaround (Modulstore/Beta), indem man einen Token auf der Entwicklerseite erzeugt und im Modul einträgt.

Der Zugriff über OAuth vis Symcon funktioniert leider auch nicht kehr - irgendwas ist bei Netatmao nicht anders und es funktioniert nicht mehr. @paresy ist da noch dran

Danke, das mit dem Token hat funktioniert.

1 „Gefällt mir“

Hallo Demel,

danke für das Modul und den aktuellen Workaround.
Ich bekomme derzeit allerdings noch einmal täglich (0:30 Uhr - Timer CleanupPath) die folgenden Warnungen/Fehlermeldungen.

  • Warning: Invalid argument supplied for foreach()
    Error in Script /var/lib/symcon/modules/.store/demel42.netatmo.security/NetatmoSecurityCamera/module.php on Line 4118
  • Warning: count(): Parameter must be an array or an object that implements Countable
    Error in Script /var/lib/symcon/modules/.store/demel42.netatmo.security/NetatmoSecurityCamera/module.php on Line 4143

Wär nett, wenn Du Dir das mal ansehen würdest.

Gruß
Marwin

hab ich gefunden, einer deiner Kamera-Instanzen hat ein leeres Media-Objekt „Ereignisse“.

Fix ist klar, kommt auch, dauert aber eventuell noch einige Tage, da ich gerade noch ein paar Änderungen gemacht habe und die noch etwas teste.

Danke für die schnelle Antwort!
Du hast Recht. Es ist allerdings das Media-Objekt „Benachrichtigungen“. Bei einer meiner beiden Kamera-Instanzen (Presence und Welcome) ist die entsprechende .dat-Datei leer. Dabei ist mir aufgefallen, dass die „Benachrichtigungen“ bei beiden Kameras nicht mehr aktualisiert werden.
Die „Ereignisse“ werden regelmäßig aktualisiert. Die php-Skripte „BuildTimeline“ und „ProcessStreamURL“ laufen regelmäßig. Das php-Skript „ProcessNotifocation“ allerdings seit dem 11.07. nicht mehr. Hast Du eine Idee?

Hast natürlich recht, verwechselt.

Eventuell hattest Du mal Probleme mit der Erreichbarkeit des Webhook?
Mal im Netatmo-Entwicklerkonto bei der App schauen, was der Webhook sagt und dann den Webhook neu registrieren.
Zb. durch deaktivieren und aktivieren der Instanz, vorher Debug aktivieren, dann siehst du, ob sich was tut.

Danke für den Hinweis. Läuft wieder :+1:

Hallo zusammen, seit kurzem bekomme ich folgende Fehler Meldung

Kennt die wer?

Leider sind s nicht so gut zu lesen, besonders wenn de Text ausserhalb des abgebildeten Bereichs liegt :wink:

also bitte den Text der Meldung mal via Kontextmenü kopieren und posten.
Dann kann ich sehen, an welcher Stelle des Moduls das hakt.

1 „Gefällt mir“

18.08.2023, 13:26:10 | TimerPool | NetatmoSecurityIO (NetatmoSecurityConfig #43699) (UpdateData):
Warning:
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 5542776 bytes) in /var/lib/symcon/modules/.store/demel42.netatmo.security/libs/common.php(10) : eval()'d code on line 2399
in /- on line 1

Kannst du mir nich sagen, welche Modul-Version das ist (Instanz-dormular → Information)

image

ok, so ganz trifft die Teilenummer nicht, aber ich hätte einen Verdacht.

Es geht hierum

        $this->SendDebug(__FUNCTION__, 'ApiCalls=' . print_r($stats_new, true), 0);

        $this->WriteAttributeString('ApiCallStats', json_encode($stats_new));
    }

die angegebene Zeile 2399 ist das Ende der Funktion (und das passt ja nicht so ganz), aber es ist entweder das SendDebug oder das WriteAttributeString.

Am besten wäre es, wenn du in der settings.json mal nach der Instanz suchst und da das Attribute _ ApiCallStats_ anschaust, wie groß das ist. Kann man natürlich nicht ganz so einfach zählen, es geht mir eher darum, über wieviele Bildschirmseite es geht, ob es wirklich „riesig“ ist oder was auch immer …

Was kann man noch machen:

  • Aktualisier mal auf die 1.33, das gibt es dieses SendDebug nicht mehr
    → wenn der Fehler dann nicht mehr auftritt, war es ein Problem des SendDebug, wenn nicht, ist es eher das json_encode
  • im Panel „Expert“ gibt es ein Button „API-Statistik löschen“, das müsste dieses Attribut leeren

das komische ist aber, das sich diese Variable bei jedem Aufruf dieser Funktion bereinigt und nur die kumulierten Daten der letzten Stunde, Tag und Monat behält.
Ich weis nicht, wie gut du mit so etwas umgehen kannst, aber ideal wäre es, wenn du aus der settings.json dieses Attribut mal in einer Datei speichern könntest; dann könnte ich es mir mal ansehen, warum das ein Problem ist

danke finde aber die 1.33 im Store unter Beta nicht
image

Grundsätzlich hat es sich erstmal durch das " * im Panel „Expert“ gibt es ein Button „API-Statistik löschen“, das müsste dieses Attribut leeren" beruhigt!

ahmm, die 1.33 hatte ich nich gar nicht veröffentlicht :face_with_open_eyes_and_hand_over_mouth:

prima

1 „Gefällt mir“

Hallo zusammen, gibt es Änderungen in der Befehlszeile? Mein Kamera Skript (an & aus) laufen ohne Fehler jedoch aber auch ohne Auswirkung ;-(
Lief eigentlich bis zum update ohne Probleme