Netatmo in FHEM integrieren

Begonnen von FotoFieber, 26 August 2013, 09:15:06

Vorheriges Thema - Nächstes Thema

Powersup

Browser habe ich keinen auf meinem Raspi, weiß jemand was ich da installieren muss?

Ein Ping funktioniert, allerdings kann ich nicht https bzw. 443 testen:
ping netatmo.com
PING netatmo.com (195.154.181.107) 56(84) bytes of data.
64 bytes from f0.netatmo.net (195.154.181.107): icmp_req=1 ttl=53 time=29.9 ms
64 bytes from f0.netatmo.net (195.154.181.107): icmp_req=2 ttl=53 time=29.5 ms
64 bytes from f0.netatmo.net (195.154.181.107): icmp_req=3 ttl=53 time=28.3 ms
64 bytes from f0.netatmo.net (195.154.181.107): icmp_req=4 ttl=53 time=28.3 ms
^C
--- netatmo.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 28.329/29.054/29.991/0.758 ms

pi@fhem1 ~ $ ping api.netatmo.net
PING front.netatmo.net (62.210.178.168) 56(84) bytes of data.
64 bytes from f4.netatmo.net (62.210.178.168): icmp_req=1 ttl=53 time=29.2 ms
64 bytes from f4.netatmo.net (62.210.178.168): icmp_req=2 ttl=53 time=30.0 ms
64 bytes from f4.netatmo.net (62.210.178.168): icmp_req=3 ttl=53 time=29.9 ms
^C
--- front.netatmo.net ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 29.242/29.738/30.014/0.378 ms


Benutzername ist eine E-Mail-Adresse, das PW war lang und mit Sonderzeichen, das habe ich jetzt testweise verkürzt und ohne Sonderzeichen geändert und alles (User, Password, client_id und secret) habe ich per copy & paste eingefügt, aber leider wieder ohne Erfolg.
Zitat2014.05.08 10:51:58 4: HttpUtils url=https://api.netatmo.net/oauth2/token
2014.05.08 10:51:59 2: netatmo_xyz: http request failed: https://api.netatmo.net/oauth2/token: Can't connect to https://api.netatmo.net:443:

Powersup

Ich habe jetzt mal mit nmap die Adresse api.netatmo.net auf Port 443 getestet und das scheint zu klappen. Kann jemand bestätigen, dass die IPs stimmen?
pi@fhem1 ~ $ nmap -p 443 api.netatmo.net

Starting Nmap 6.00 ( http://nmap.org ) at 2014-05-08 12:31 CEST
Nmap scan report for api.netatmo.net (62.210.178.168)
Host is up (0.031s latency).
Other addresses for api.netatmo.net (not scanned): 62.210.178.169 195.154.191.74 195.154.189.95
rDNS record for 62.210.178.168: f4.netatmo.net
PORT    STATE SERVICE
443/tcp open  https

Nmap done: 1 IP address (1 host up) scanned in 1.05 seconds


auch der komplette Pfad schein zu gehen, zumindest von der Konsole aus:
nmap -p 443 api.netatmo.net/oauth2/token

Starting Nmap 6.00 ( http://nmap.org ) at 2014-05-08 12:33 CEST
Illegal netmask value, must be /0 - /32 .  Assuming /32 (one host)
Nmap scan report for api.netatmo.net (62.210.178.168)
Host is up (0.030s latency).
Other addresses for api.netatmo.net (not scanned): 62.210.178.169 195.154.191.74 195.154.189.95
rDNS record for 62.210.178.168: f4.netatmo.net
PORT    STATE SERVICE
443/tcp open  https

Nmap done: 1 IP address (1 host up) scanned in 1.05 seconds


MartinWy

Habe gestern den Schwenk vom gatherNetatmo auf das FHEM-interne 38_netatmo-Modul durchgeführt.

Dabei gab es eine nicht unerhebliche Stolperfalle - diese hier zur allgemeinen Kenntnis: mein Netatmo-Anmeldekennwort beinhaltete als Sonderzeichen eine Raute (#). Bei der Anmeldung des Moduls am Netatmo-Server wurde der Login-String immer genau VOR diesem Sonderzeichen abgeschnitten - somit konnte kein Login erfolgen und nie der Status 'Connected' erreicht werden. Hab dann das Kennwort geändert (ohne Sonderzeichen) - danach funktionierte alles sofort und fehlerfrei.

Ich nehme mal an, das FHEM meint ab der # ist der Rest des Strings ein Kommentar.

Also: keine Kennworte mit # nutzen !!!

Ob es mit anderen Sonderzeichen auch nicht funktioniert, kann ich allerdings nicht sagen.

justme1968

arg. war das dein problem? schön das es jetzt endlich geht.

das # ist in fhem nirgends erlaubt. beim einlesen des config files wird alles hinter einer raute als kommentar angesehen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

MartinWy

Zitat von: justme1968 am 09 Mai 2014, 11:11:56
arg. war das dein problem? schön das es jetzt endlich geht.

das # ist in fhem nirgends erlaubt. beim einlesen des config files wird alles hinter einer raute als kommentar angesehen.

Na so wild war das nun auch nicht. Hab verbose = 5 im GLOBAL gesetzt und damit den abgeschnittenen String entdeckt - der Rest war dann easy.

Aber danke noch mal für die Bestätigung, das FHEM alles hinter der Raute als Kommentar liest.


Hat eigentlich schon jemand einen Plot gebaut, der alle 5 Werte der Netatmo-Masterstation anzeigen kann?

In Kürze bekomme ich den neuen Regenmesser von Netatmo geliefert - mal schauen, ob der problemlos mit dem Modul abfragbar sein wird.

Powersup

Habe weiter probiert und jetzt auch mal testweise das @ im Username mit @@ maskiert, aber leider wie vermutet hat das nix an meinen Problemen geändert.
Kann das Problem am HttpUtils liegen bzw. kann/muss ich etwas updaten oder noch nachinstallieren?


Gesendet von meinem iPad mit Tapatalk

Powersup

Zitat von: justme1968 am 29 Januar 2014, 00:31:49
und eine erste version zum testen:

  • mit seinem account unter http://dev.netatmo.com/dev/createapp eine client app erzeugen
  • in fhem das device für den account anlegen mit:
    define <device> netatmo <account> <password> <clientId> <clientSecret>
  • alle netatmo devices sollten automatisch per autocreate angelegt werden
Ich habe inzwischen 2 Applications bei Netatmo angelegt.
Wenn ich "nur" ein Device in FHEM mit
define NetatmoDevice1 netatmo ACCOUNT Netatmo-E-Mail-Adresse Netatmo-Passwort <clientId> <clientSecret>
anlege, dann bekomme ich weiterhin, wie beschrieben, diese Fehlermeldung:
2014.05.08 10:51:58 4: HttpUtils url=https://api.netatmo.net/oauth2/token
2014.05.08 10:51:59 2: NetatmoDevice1: http request failed: https://api.netatmo.net/oauth2/token: Can't connect to https://api.netatmo.net:443:


Definiere ich noch zusätzlich vorher
define NetatmoDevice1_1 netatmo NetatmoDevice1 #W36-1
define NetatmoDevice1 netatmo ACCOUNT Netatmo-E-Mail-Adresse Netatmo-Passwort <clientId> <clientSecret>

dann tut sich deutlich mehr:
2014.05.11 01:55:19 4: HttpUtils url=https://api.netatmo.net/oauth2/token
2014.05.11 01:55:19 2: NetatmoDevice1: http request failed: https://api.netatmo.net/oauth2/token: Can't connect to https://api.netatmo.net:443:
2014.05.11 01:55:19 3: NetatmoDevice1_1: I/O device is NetatmoDevice1
2014.05.11 01:55:19 4: HttpUtils url=https://api.netatmo.net/oauth2/token
2014.05.11 01:55:20 2: NetatmoDevice1: http request failed: https://api.netatmo.net/oauth2/token: Can't connect to https://api.netatmo.net:443:
2014.05.11 01:55:20 4: HttpUtils url=http://api.netatmo.net/api/devicelist
2014.05.11 01:55:20 4: http://api.netatmo.net/api/devicelist: HTTP response code 403
2014.05.11 01:55:20 4: HttpUtils http://api.netatmo.net/api/devicelist: Got data, length: 53
2014.05.11 01:55:20 4: NetatmoDevice1: {"error":{"code":2,"message":"Invalid access token"}}
2014.05.11 01:55:20 4: HttpUtils url=https://api.netatmo.net/oauth2/token
2014.05.11 01:55:20 2: NetatmoDevice1: http request failed: https://api.netatmo.net/oauth2/token: Can't connect to https://api.netatmo.net:443:
2014.05.11 01:55:20 4: HttpUtils url=http://api.netatmo.net/api/getmeasure

2014.05.11 01:55:21 4: http://api.netatmo.net/api/getmeasure: HTTP response code 403
2014.05.11 01:55:21 4: HttpUtils http://api.netatmo.net/api/getmeasure: Got data, length: 53
2014.05.11 01:55:21 4: NetatmoDevice1_1: {"error":{"code":2,"message":"Invalid access token"}}


Ich habe auch mittels "Reset keys" bei netatmo die Client_id und client_secret erneuert, aber auch das ohne Erfolg.


  • Kann jemand bitte seine funktionierende Konfig für netatmo aus der fhem.cfg posten?
  • Auf der Seite der erstellten Netatmo-Application steht für die Authetifizierung
    ZitatRequest token URL   http://api.netatmo.net/oauth2/token
    Authorize URL   http://api.netatmo.net/oauth2/authorize
    also beide URLs ohne https, aber warum versucht fhem bei mir das Ganze über https / Port 443? Wie ist das bei euch?
  • Ist der Name der Netatmo-Application in irgendeiner Weise wichtig bzw. muss ich diesen irgendwo benutzen?


Powersup

Was soll ich sagen, es funktioniert jetzt bei mir. Was war der Fehler? In der 38_netatmo.pm steht im Abschnitt um den Token zu generieren bei der url ein kleines unscheinbares "s" und daher wurde immer versucht per https sich zu authentifizieren, aber das schlug fehl. Wie kann es dann keinem anderen auffallen? Frühere Version?

justme1968

laut api dokumentation gehört das s beim aufruf https://api.netatmo.net/oauth2/token auf jeden fall hin.

siehe hier: http://dev.netatmo.com/doc/authentication/usercred und hier:http://dev.netatmo.com/doc/authentication/refreshtoken.

nur mit http statt  https sollte es gar nicht gehen und hat es bei meinen versuchen damals auch nicht. wenn es mit https nicht geht stimmt eventuell mit der ssl lib die du installiert hat nicht. das ist alles etwas seltsam. aber wenn es jetzt geht...

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Powersup

Hmm, jetzt bin ich noch mehr verwirrt. Auf der dev.netatmo.com Seite der App steht aber wiederum
ZitatRequest token URL   http://api.netatmo.net/oauth2/token
Authorize URL   http://api.netatmo.net/oauth2/authorize
???

Wie kann ich die ssl lib de- und dann wieder reinstallieren bzw. überprüfen?

torstensjag

Hallo,

also ich kann das bestätigen. Habe das "s" bei https entfernt und nun geht das modul bei mir wieder. Hatte seit einigen Tagen keine Daten bekommen, aber das nicht bemerkt, da ich nicht zu hause war.

Gruß
Torsten

Powersup

Endlich versteht mich jemand  ;D

Kannst du mal bitte dein Einträge aus der fhem.cfg posten? Bei mir werden im Log die Einträge abgerufen, aber nichts im fhem.cfg eingetragen und somit nicht gespeichert. Wie hast du das speichern und plotten realisiert?

Danke!

Gruß
Powersup

justme1968

wer hat noch alles as http/https problem?

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

torstensjag

Ich muss gestehen, ich speicher oder plotte noch nichts. Ich guck mir die Werte nur im WEB-Interface an.
Ich teste nur, ob die Werte stabil kommen, so dass ich sie zur Heizungssteuerung verwenden kann.
Ein Vorhaben für den nächsten Winter ;)
Ich habe FHEM erst vor kurzem entdeckt und teste mal alles mögliche aus.

Chris__1

kein Problem hier. Funktioniert alles per Autocreate so wie in der Modubeschreibung zu lesen ist.

Danke für das Modul, hatte bisher immer das script am laufen !