Netatmo: Unterschied zwischen den Versionen

Aus FHEMWiki
K (Kleinere Korrekturen und Ergänzungen)
(Ergänzung durch neuerdings erforderlichen refresh token, Update seit 16.07.)
 
(20 dazwischenliegende Versionen von 10 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{SEITENTITEL:netatmo}}
{{SEITENTITEL:netatmo}}{{Infobox Modul
{{Infobox Modul
|ModPurpose=Datenimport von privaten und öffentlichen netatmo Wetterstationen.
|ModPurpose=Datenimport von privaten und öffentlichen netatmo Wetterstationen.
|ModType=d
|ModType=d
<!-- |ModCategory= (noch?) nicht verwendet -->
<!-- |ModCategory= (noch?) nicht verwendet -->
|ModCmdRef=netatmo
|ModCmdRef=netatmo
|ModForumArea=[http://forum.fhem.de/index.php/board,8.0.html Codeschnipsel]
|ModForumArea=Sonstige Systeme
|ModTechName=38_netatmo.pm
|ModTechName=38_netatmo.pm
|ModOwner=Andre / justme1968 ([http://forum.fhem.de/index.php?action=profile;u=430 Forum] / [[Benutzer_Diskussion:Justme|Wiki]])}}
|ModOwner=Markus M. ([https://forum.fhem.de/index.php?action=profile;u=291 Forum] / [[Benutzer_Diskussion:Markus M.|Wiki]])}}
Das FHEM-Modul [[netatmo]] ermöglicht den Datenimport von privaten und öffentlichen netatmo Wetterstationen. Eine Übersicht über die verfügbaren öffentlichen Stationen findet sich auf der Seite [http://www.netatmo.com/de-DE/weathermap Weathermap].


Das Fhem-Modul [[netatmo]] ermöglicht den Datenimport von privaten und öffentlichen netatmo Wetterstationen. Eine Übersicht über die zugreifbaren öffentlichen Stationen findet sich auf der Seite [http://www.netatmo.com/de-DE/weathermap Weathermap].
Auch für den Zugriff auf die öffentlichen Stationen ist ein netatmo Account nötig.
 
Wird ein ACCOUNT definiert, legt das Modul (bei aktivem autocreate) selbst die Geräte an: MODULE, HOME, CAMERA, PERSON.
 
Für die Netatmo Kameras (Welcome, Presence) können rein lokal verwendet werden: Live-Video-Stream, aktuelles Standbild und lokal gespeicherte Video-Clips deren ID?Key bereits bekannt sind. Alle weiteren Funktionen (Erkennung, Unterscheidung Person/Gesicht (Welcome) bzw. Unterscheidung Person/Tier/Fahrzeug (Presence) sowie Push-Events und Erzeugung neuer Events) sind nur mit einer aktiven Kopplung und Kommunikation über die Netatmo Server möglich.


Auch für den Zugriff auf die öffentlichen Stationen ist ein netatmo Account nötig.
== Vorgehensweise ==
1. Man benötigt einen Netatmo Account (Email und Passwort). Diesen legt man an
* in der [[netatmo]]-App (z.B. auf dem iPad)
* auf der [http://www.netatmo.com Homepage] (den Login Dialog aufklappen und auf den Text "Anmelden" klicken)
 
2. Man benötigt eine Client_ID und den Client_Secret. Diese Informationen muss man auf [http://dev.netatmo.com dieser Seite] generieren. Hierfür meldet man sich mit den zuvor erstellten Account-Daten an und erstellt dann eine "eigene App". Hier werden einige Daten abgefragt, man muss jedoch nichts eingeben. Es reicht der App-Titel (z.B. "FHEM-AtmoNet" - Hinweis: Laut netatmo-Entwicklerrichtlinien ist der Begriff "netatmo" im App-Namen nicht zulässig) und eine kurze Beschreibung (z.B. "meine erste eigene app..."). Auf der dann folgenden Seite tauchen die Client_ID and der Client_Secret auf. Diese Daten braucht man wiederum in FHEM.
 
3. refresh Token erstellen, auf ebendieser Seite, bei "choose scopes" entsprechend anhaken
 
3. In FHEM ein Device anlegen mit den o.g. Informationen:
:<code>define Wetter netatmo ACCOUNT <Email> <Passwort> <Client_ID> <Client_Secret> <refresh token></code>


Text zum Teil übernommen aus diesem [http://forum.fhem.de/index.php/topic,14457.msg183413.html#msg183413 Forenbeitrag].
Hinweis: Das Wort "ACCOUNT" muss in diesem define angegeben werden. Also nicht durch die o.g. Account-Daten ersetzen!


* Man benötigt einen Netatmo Account (Email und Passwort). Diesen legt man am einfachsten in einer App (z.B. auf dem iPad) an. Auf der [http://www.netatmo.com Homepage] geht das leider nicht. Zumindest habe ich keine Möglichkeit gefunden.
Ist das modul netatmo unbekannt, muß evtl. noch ein update von FHEM durchgeführt werden. Erscheint weiterhin eine Fehlermeldung, fehlen zum Betrieb des netatmo Moduls möglicherweise einzelne Komponenten, die auf Betriebssystemebene nachinstalliert werden müssen:


* Man benötigt eine Client_ID und den Client_Secret. Diese Informationen muss man auf [http://dev.netatmo.com dieser Seite] generieren. Und zwar, indem man sich mit den zuvor erstellten Account-Daten anmeldet und dann eine "eigene App" anlegt. Hier werden viele Daten abgefragt. Man muss aber nichts eingeben. Es reicht der App-Titel (z.B. "Fhematmo") und eine kurze Beschreibung (z.B. "meine erste eigene app. Toll..."). Auf der dann folgenden Seite tauchen die Client_ID and der Client_Secret auf. Diese Daten braucht man wiederum in FHEM.
:<code> sudo apt-get install libjson-perl libdigest-md5-file-perl liblwp-protocol-https-perl liblwp-protocol-http-socketunix-perl</code>


* Das FHEM device mit den o.g. Informationen  anlegen <br /><code>define Wetter netatmo ACCOUNT Email Passwort Client_ID Client_Secret</code>
4. Am besten das neue Device noch schnell in einen Raum schieben, damit man es besser findet:
:<code>attr Wetter room Aussen</code>


* Am besten das neue Device noch schnell in einen Raum schieben, damit man es besser findet: <br /><code>attr Wetter room Aussen</code>
5. Jetzt taucht in FHEM in der GUI beim Wetter-Device die Option "public " auf.


* Jetzt taucht in FHEM bei dem Device in der GUI auch die option "public" auf.  
6. Sollte nach kurzer Zeit beim Wetter-Device der Status "Invalid Access Token" auftauchen, muss unter Umständen die Zeit zwischen den Anfragen vergrößert werden. Manchmal sind die Netatmo Server überlastet/unerreichbar.


* Das Modul versucht automatisch zu erkennen ob es auf einer [[AVM Fritz!Box|FritzBox]] läuft und dann das dort vorhandene SSL und UTF-8 Problem zu umgehen.
7. Mit dem Kommando:
:<code>get Wetter public <latitude> <longitude> <radius></code>
geeignete öffentliche Wetterstationen suchen. <latitude> und <longitude> vom Wunschort findet man recht schnell über Google.


* Alle im netatmo Account bekannten eigenen oder freigegebenen Stationen werden automatisch per autocreate in Fhem angelegt.
Alternativ kann man auch mit Hilfe der PLZ Stationen in der Umgebung finden:
:<code>get Wetter public <PLZ></code>


===Alt===
Aus der angezeigten Liste kann man die gewünschte Station auswählen und die <ID_der_gewählten_Station> <longitude> <latitude> kopieren.
* Mit <code>get Wetter public <latitude> <longitude> <radius></code> geeignete öffentliche Wetterstationen suchen. <latitude> und <longitude> vom Wunschort findet man recht schnell über Google.
Stationen in Österreich findet man, wenn der PLZ ein a: vorangestellt wird.


* Mit <code>define WetterstationmeinerWahl netatmo PUBLIC <ID_der_gewählten_Station> <latitude> <longitude> </code> den eigentlichen Datenlieferanten erzeugen.
8. Device mit define anlegen:
Dazu aus der Liste der Suchergebnisse die untere "Define"-Zeile Copy&Paste ins fhem Feld.
:Beispielsweise: <code>define Berlinwetter netatmo PUBLIC 70:ee:50:00:66:86 02:00:00:00:71:b2 temperature,humidity 70:ee:50:00:66:86 pressure</code>  
Das erzeugt ein neues Device (mit dem Namen "Berlinwetter" als freier Name der Wetterstation) das intern aus mehreren Modulen besteht und liest pro Modul die öffentlichen readings aus.


===Neu===
9. Alle im netatmo-Account bekannten eigenen und freigegebenen Stationen werden automatisch per autocreate in FHEM angelegt.
* Mit <code>get Wetter public</code> oder <code>get Wetter public <plz></code>


* Mit <code>get Wetter public <ID_der_gewählten_Station></code> oder <code>get Wetter public <ID_der_gewählten_Station> <plz></code> das passende define für die gewählte Station anzeigen und per copy&paste übernehmen.
== Links ==
* Support-Thread des neuen Moduls im {{Link2Forum|Topic=53500.|Message=451696l|LinkText=Forum}}
* Erklärung des in Teilen identischen alten Moduls in {{Link2Forum|Topic=14457|Message=184798|LinkText=Beitrag 184798}} im FHEM Forum.
* Text zum Teil übernommen aus dem {{Link2Forum|Topic=14457|Message=83413l|LinkText=Forenbeitrag 183413}}.


* Ausführliche Erklärung vorerst in [http://forum.fhem.de/index.php/topic,14457.msg184798.html#msg184798 diesem Beitrag] im Fhem Forum.


[[Kategorie:Wetterstationen]]
[[Kategorie:Wetterstationen]]

Aktuelle Version vom 16. Juli 2023, 21:08 Uhr

netatmo
Zweck / Funktion
Datenimport von privaten und öffentlichen netatmo Wetterstationen.
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Sonstige Systeme
Modulname 38_netatmo.pm
Ersteller Markus M. (Forum / Wiki)
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!

Das FHEM-Modul netatmo ermöglicht den Datenimport von privaten und öffentlichen netatmo Wetterstationen. Eine Übersicht über die verfügbaren öffentlichen Stationen findet sich auf der Seite Weathermap.

Auch für den Zugriff auf die öffentlichen Stationen ist ein netatmo Account nötig.

Wird ein ACCOUNT definiert, legt das Modul (bei aktivem autocreate) selbst die Geräte an: MODULE, HOME, CAMERA, PERSON.

Für die Netatmo Kameras (Welcome, Presence) können rein lokal verwendet werden: Live-Video-Stream, aktuelles Standbild und lokal gespeicherte Video-Clips deren ID?Key bereits bekannt sind. Alle weiteren Funktionen (Erkennung, Unterscheidung Person/Gesicht (Welcome) bzw. Unterscheidung Person/Tier/Fahrzeug (Presence) sowie Push-Events und Erzeugung neuer Events) sind nur mit einer aktiven Kopplung und Kommunikation über die Netatmo Server möglich.

Vorgehensweise

1. Man benötigt einen Netatmo Account (Email und Passwort). Diesen legt man an

  • in der netatmo-App (z.B. auf dem iPad)
  • auf der Homepage (den Login Dialog aufklappen und auf den Text "Anmelden" klicken)

2. Man benötigt eine Client_ID und den Client_Secret. Diese Informationen muss man auf dieser Seite generieren. Hierfür meldet man sich mit den zuvor erstellten Account-Daten an und erstellt dann eine "eigene App". Hier werden einige Daten abgefragt, man muss jedoch nichts eingeben. Es reicht der App-Titel (z.B. "FHEM-AtmoNet" - Hinweis: Laut netatmo-Entwicklerrichtlinien ist der Begriff "netatmo" im App-Namen nicht zulässig) und eine kurze Beschreibung (z.B. "meine erste eigene app..."). Auf der dann folgenden Seite tauchen die Client_ID and der Client_Secret auf. Diese Daten braucht man wiederum in FHEM.

3. refresh Token erstellen, auf ebendieser Seite, bei "choose scopes" entsprechend anhaken

3. In FHEM ein Device anlegen mit den o.g. Informationen:

define Wetter netatmo ACCOUNT <Email> <Passwort> <Client_ID> <Client_Secret> <refresh token>

Hinweis: Das Wort "ACCOUNT" muss in diesem define angegeben werden. Also nicht durch die o.g. Account-Daten ersetzen!

Ist das modul netatmo unbekannt, muß evtl. noch ein update von FHEM durchgeführt werden. Erscheint weiterhin eine Fehlermeldung, fehlen zum Betrieb des netatmo Moduls möglicherweise einzelne Komponenten, die auf Betriebssystemebene nachinstalliert werden müssen:

sudo apt-get install libjson-perl libdigest-md5-file-perl liblwp-protocol-https-perl liblwp-protocol-http-socketunix-perl

4. Am besten das neue Device noch schnell in einen Raum schieben, damit man es besser findet:

attr Wetter room Aussen

5. Jetzt taucht in FHEM in der GUI beim Wetter-Device die Option "public " auf.

6. Sollte nach kurzer Zeit beim Wetter-Device der Status "Invalid Access Token" auftauchen, muss unter Umständen die Zeit zwischen den Anfragen vergrößert werden. Manchmal sind die Netatmo Server überlastet/unerreichbar.

7. Mit dem Kommando:

get Wetter public <latitude> <longitude> <radius>

geeignete öffentliche Wetterstationen suchen. <latitude> und <longitude> vom Wunschort findet man recht schnell über Google.

Alternativ kann man auch mit Hilfe der PLZ Stationen in der Umgebung finden:

get Wetter public <PLZ>

Aus der angezeigten Liste kann man die gewünschte Station auswählen und die <ID_der_gewählten_Station> <longitude> <latitude> kopieren. Stationen in Österreich findet man, wenn der PLZ ein a: vorangestellt wird.

8. Device mit define anlegen: Dazu aus der Liste der Suchergebnisse die untere "Define"-Zeile Copy&Paste ins fhem Feld.

Beispielsweise: define Berlinwetter netatmo PUBLIC 70:ee:50:00:66:86 02:00:00:00:71:b2 temperature,humidity 70:ee:50:00:66:86 pressure

Das erzeugt ein neues Device (mit dem Namen "Berlinwetter" als freier Name der Wetterstation) das intern aus mehreren Modulen besteht und liest pro Modul die öffentlichen readings aus.

9. Alle im netatmo-Account bekannten eigenen und freigegebenen Stationen werden automatisch per autocreate in FHEM angelegt.

Links