Netatmo: Unterschied zwischen den Versionen

Aus FHEMWiki
KKeine Bearbeitungszusammenfassung
(Ergänzung durch neuerdings erforderlichen refresh token, Update seit 16.07.)
 
(16 dazwischenliegende Versionen von 9 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=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 verfügbaren ö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.
Auch für den Zugriff auf die öffentlichen Stationen ist ein netatmo Account nötig.


Text zum Teil übernommen aus diesem [http://forum.fhem.de/index.php/topic,14457.msg183413.html#msg183413 Forenbeitrag].
Wird ein ACCOUNT definiert, legt das Modul (bei aktivem autocreate) selbst die Geräte an: MODULE, HOME, CAMERA, PERSON.


===HowTo===
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.


1. Man benötigt einen Netatmo Account (Email und Passwort). Diesen legt man am einfachsten in der [[netatmo]]-App (z.B. auf dem iPad) an. Auf der [http://www.netatmo.com Homepage] geht das scheinbar nicht. Zumindest wurde bisher keine Möglichkeit gefunden.
== 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-Netatmo") 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 wiederrum in FHEM.
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. In FHEM ein device anlegen mit den o.g. Informationen:
3. refresh Token erstellen, auf ebendieser Seite, bei "choose scopes" entsprechend anhaken


<code>define Wetter netatmo ACCOUNT <Email> <Passwort> <Client_ID> <Client_Secret></code>
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>


Hinweis: Das Wort "ACCOUNT" muss in diesem define angegeben werden. Also nicht durch die o.g. Account-Daten ersetzen!
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:
:<code> sudo apt-get install libjson-perl libdigest-md5-file-perl liblwp-protocol-https-perl liblwp-protocol-http-socketunix-perl</code>


4. Am besten das neue Device noch schnell in einen Raum schieben, damit man es besser findet:  
4. Am besten das neue Device noch schnell in einen Raum schieben, damit man es besser findet:  
 
:<code>attr Wetter room Aussen</code>
<code>attr Wetter room Aussen</code>


5. Jetzt taucht in FHEM in der GUI beim Wetter-Device die Option "public " auf.  
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, dann muss in der Fhem-Installation nach der Datei 38_netatmo.pm gesucht und darin "https" durch "http" ersetzt werden.
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.
 
[Edit] Inzwischen gibt es ein attribut nossl. Das auf 1 setzen und der https-Fehler wird umgangen:
 
<code>attr Wetter nossl 1</code>
 
[Edit2] Dieser SSL- und ein weiterer UTF-8-Fehler traten hauptsächlich auf [[AVM Fritz!Box|FritzBox]] auf. Die aktuelle Version prüft automatisch auf welcher Hardware Fhem läuft und setzt die korrekten Einstellungen.


7. Mit dem Kommando:
7. Mit dem Kommando:
 
:<code>get Wetter public <latitude> <longitude> <radius></code>  
<code>get Wetter public <longitude> <latitude> <radius></code>  
geeignete öffentliche Wetterstationen suchen. <latitude> und <longitude> vom Wunschort findet man recht schnell über Google.
 
geeignete öffentliche Wetterstationen suchen. <longitude> und <latitude> vom Wunschort findet man recht schnell über Google.


Alternativ kann man auch mit Hilfe der PLZ Stationen in der Umgebung finden:
Alternativ kann man auch mit Hilfe der PLZ Stationen in der Umgebung finden:
 
:<code>get Wetter public <PLZ></code>
<code>get Wetter public <PLZ></code>


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


8. Mit dem Kommando
8. Device mit define anlegen:
 
Dazu aus der Liste der Suchergebnisse die untere "Define"-Zeile Copy&Paste ins fhem Feld.
<code>define Wetterstation netatmo public <ID_der_gewählten_Station> <longitude> <latitude></code>  
: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.


wird dann der eigentliche Datenlieferant erzeugen, dessen Readings mitgeloggt werden können.
9. Alle im netatmo-Account bekannten eigenen und freigegebenen Stationen werden automatisch per autocreate in FHEM angelegt.


9. Alle im netatmo-Account bekannten eigenen und freigegebenen Stationen werden automatisch per autocreate in Fhem angelegt.
== 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