Website-Icon Dein Smart Home Blog

netatmo welcome - Anwesenheits-Status mit dem Fibaro HomeCenter 2 auslesen

[vc_row][vc_column][vc_column_text]Nachdem wir am Montag den Test der netatmo welcome veröffentlicht haben, könnt Ihr bereits 2 Tage später die Kamera-API mit dem Fibaro HomeCenter 2 auslesen.

Als erstes müsst Ihr über "Scenes", "Add Scenes" eine neue LUA-Szene erstellen. Ihr kopiert dann den LUA-Code (findet Ihr weiter unten) in das Fenster für den Code. In dem Skript müsst Ihr nicht viel anpassen. Es müssen lediglich die Zeilen 8 - 11 angepasst werden.

Die Client ID/Client secret findet Ihr unter den App-Einstellung auf dev.netatmo.com. Mail-Adresse und Passwort sind eure Login-Daten für die netatmo-Seite.

Anmeldeinformation auf der netatmo-Seite

Wenn Ihr die Szene soweit eingerichtet habt, dann werdet Ihr beim ersten Start der Szene Fehler im Debug-Fenster erhalten. Beim Start werden die eingerichteten User auf der netatmo welcome ausgelesen, welche dann als Variablen eingerichtet werden müssen. Diese könnt Ihr unter "Panels", "Variables Panel" und mit einem Klick auf "Add" anlegen. Das Skript zeigt euch an, welche Variablen eingerichtet werden müssen. (Siehe Bild; in diesem Fall Daniel_status & Daniel_lastseen)

Das Debug nach dem ersten Start

Nachdem Ihr die Variablen in eurem Fibaro HomeCenter 2 eingerichtet habt, sollte kein roter Debug mehr erscheinen. Abwesenheitsmeldungen werden in Orange und Anwesenheitsmeldungen werden in Grün debuggt.

Der Debug nach Erstellung der Variablen

In der Grundeinstellung der Szene wird nur ein Debug geschrieben, wenn sich der Status einer eingetragenen Person ändert. Dadurch bleibt es ein wenig übersichtlicher. Sollte irgendetwas bei euch nicht funktionieren, dann könnt Ihr über die Zeile 13 in dem Skript den Debug aktivieren. Ersetzt in so einem Fall die 0 durch eine 1.

Einschränkungen der natatmo API

Es gibt leider seitens der API eine Einschränkung. Es dürfen pro Account "nur" 2000 Anfragen in einer Stunde gestellt werden. Das bedeutet im Umkehrschluss, dass die Szene nur alle 4 Sekunden (60 min * 60 sek = 3600 Sekunden/4 Sekunden Pause = 900 Calls * 2 = 1800 Calls; Szene besteht aus 2 API-Calls) ausgeführt werden kann. In unserer Testphase hat sich allerdings gezeigt, dass 4 Sekunden oft zu einem Fehler führen und von der API nichts zurückgeliefert wird, bzw. der Account für API-Calls gesperrt wird. Mit 8 Sekunden haben wir widerum gute Ergebnisse erzielt. Solltet Ihr unter eurem netatmo-Account auch noch andere Geräte von netatmo angebunden haben, denkt bitte daran, dass zum Beispiel die Wetterstation über das Fibaro Plugin API-Calls generiert oder wenn Ihr das Windmesser-Skript nutzt, auch zusätzliche API-Calls an netatmo gesendet werden.

Fehlermeldung bei zu niedrigen Refresh-Zeiten

8 Sekunden sind Stand jetzt unsere Empfehlung. Ihr könnt aber auch selbst mit den Werten ein wenig expementieren. Dazu findet Ihr im Skript in Zeile 12 eine lokale Variable "refresh", mit der Ihr die Sekunden selbst einstellen könnt.

Hier findet Ihr das Skript:

Virtuelles device für die netatmo welcome

Wenn Ihr neben den Variablen auch ein virtuelles device nutzen möchtet, dann stellen wir euch hier eins zum Download zur Verfügung. Dieses könnt Ihr dann einfach unter "devices" importieren.

In den erweiterten Einstellungen des virtuellen device findet Ihr unter dem Refresh-Button dreimal folgenden Code:

Hier müsst Ihr dann natürlich eure Variablen einsetzen ;) Sollten weniger Personen bei euch im Haushalt leben, dann könnt Ihr den nicht benötigten Code, bzw. die nicht benötigten Labels des virtuellen device natürlich löschen.

In der Szene müsst Ihr noch in der Zeile 15 die lokale Variable vd_ID ändern und dort die ID eures virtuellen device eintragen. Dann wird der Refresh-Button bei jedem Durchlauf der Szene gedrückt und die Werte werden aktualisiert.

Und hier gibt es natürlich auch wieder die passenden Icons. Diesmal stellen wir euch allerdings vor die Qual der Wahl ;)

Anwendungsgebiet für die netatmo welcome Integration

Aufgrund der bereits oben erwähnten Einschränkung der netatmo-API (API nur alle 8 Sekunden abrufbar), der geringen Möglichkeit, dass aus bestimmten Gründen euer Gesicht (Im Winter Mütze auf, im Sommer Sonnenbrille auf) nicht erkannt wird und die API nur über das Internet abrufbar ist (Gefahr eines Ausfalls), verringern sich die Anwendungsgebiete erheblich. Um zum Beispiel den Alarm automatisch beim nach Hause kommen zu deaktivieren, wäre mir persönlich zu risikobehaftet.

Als eine reine Anwesenheitserkennung kann eine einzelne netatmo welcome nicht genutzt werden, da die Kamera nach einem bestimmten Zeitraum die Person automatisch auf abwesend stellt, sofern diese in dem Zeitraum nicht gesehen wurde. Theoretisch müssten in alle Räume Kameras gestellt werden. Finde ich persönlich aber ein wenig too-much, da ich ungern Bilder von meinem Sofa + auf dem Sofa sitzenden Personen in die Cloud schicken würde. ;)

Eigentlich will ich ja nur den Flur überwachen, damit ich weiß, wer grad die Haustür geöffnet hat, bzw. wer gerade nach Hause kommt. In diesem Fall könnte die netatmo welcome Integration vielleicht als fallback level (Rückfallebene) im Alarmfall genutzt werden. Das würde bedeuten, Ihr kommt nach Hause und vergesst den Alarm zu deaktivieren: Eure Sirenen gehen an und Ihr bekommt wilde Push-Mitteilungen, dass in eure/r Wohnung/Haus eingebrochen wurde. Theoretisch könntet Ihr dann den Alarm automatisch deaktivieren lassen, wenn euer Gesicht erkannt wird. Dies würde mit Sicherheit schneller gehen, als das Handy aus der Tasche zu holen, die Fibaro-App zu starten und damit den Alarm zu deaktivieren.

Eine andere Möglichkeit wäre natürlich eine persönliche Begrüßung über ein TTS-System oder ein farblich-passendes RGBW-Licht, sobald sich der Status eine Person von abwesend auf anwesend ändert. Vielleicht habt Ihr aber auch noch andere Ideen... Dann würden wir uns auf jeden Fall freuen, wenn Ihr uns ein Comment dazu schreibt. :)[/vc_column_text][/vc_column][/vc_row][vc_row full_width="" parallax="" parallax_image="" seperator_indeed_locker="Indeed Social Locker" lk_sl="" lk_t="" lk_la="horizontal" lk_dc="true" lk_dfn="true" lk_lt="2" lk_etl="0" lk_tl="30" lk_nru="0" lk_rl="0" lk_lra="30" lk_lrt="days" lk_io="" lk_lp="50" lk_dm="0" lk_thm="0" lk_tuo="0" lk_dt=" "][vc_column width="1/1" css=".vc_custom_1442767910088{background-color: #f4f4f4 !important;}"][vc_row_inner][vc_column_inner el_class="" width="1/4" css=".vc_custom_1442917949199{padding-top: 10px !important;padding-bottom: 5px !important;padding-left: 10px !important;}"][vc_single_image image="16142" alignment="center" style="vc_box_circle_2" border_color="grey" img_link_large="" img_link_target="_self" css_animation="" img_size="60x60"][/vc_column_inner][vc_column_inner el_class="" width="3/4"][vc_column_text]

New: Read this article in english

This article is now available in english on siio.com.[/vc_column_text][/vc_column_inner][/vc_row_inner][/vc_column][/vc_row]

Die mobile Version verlassen