Netatmo in FHEM integrieren

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

Vorheriges Thema - Nächstes Thema

justme1968

wird das nossl attribut gesetzt?

was bekommst du wenn du{netatmo_isFritzBox()}per telnet oder in die web command box eingibst?

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

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

Fritzi

Zitat von: justme1968 am 24 Juli 2014, 21:33:43
wird das nossl attribut gesetzt?

was bekommst du wenn du{netatmo_isFritzBox()}per telnet oder in die web command box eingibst?

gruss
  andre
Sorry, hat etwas gedauert, weil mir irgendwas die config zerschossen hatte. Musste ich erst wieder reparieren.

Nossl wurde nicht automatisch gesetzt. Ich hab's händisch wieder ergänzt. Das Log müllt sonst so zu.

Per Telnet kommt "0" raus.

fhem> {netatmo_isFritzBox()}
0
fhem>
FHEM 5.6 auf RaspberryPi2 mit Busware CUL culfw V1.61
CUL_HM     : HM-CC-RT-DN,HM-LC-SW1-FM,HM-LC-Sw1PBU-FM,HM-SEC-SC,HM-Sen-MDIR-O-2,HM-TC-IT-WM-W-EU
FBDECT      : Dect200
HUEDevice  : LCT001,LCT003

justme1968

dann wird die fritzbox nicht richtig erkannt. ich habe keine und kann das nicht selber testen.

hast du ein /usr/bin/ctlmgr_ctl file auf der fritzbox ?

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

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

Fritzi

FHEM 5.6 auf RaspberryPi2 mit Busware CUL culfw V1.61
CUL_HM     : HM-CC-RT-DN,HM-LC-SW1-FM,HM-LC-Sw1PBU-FM,HM-SEC-SC,HM-Sen-MDIR-O-2,HM-TC-IT-WM-W-EU
FBDECT      : Dect200
HUEDevice  : LCT001,LCT003

justme1968

kannst du dich auf der fritzbox einloggen und mal "[ -f /usr/bin/ctlmgr_ctl ] && echo 1 || echo 0" eingeben ?

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

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

Fritzi

#245
Zitat von: justme1968 am 24 Juli 2014, 21:56:41
kannst du dich auf der fritzbox einloggen und mal "[ -f /usr/bin/ctlmgr_ctl ] && echo 1 || echo 0" eingeben ?
Das ergibt 1.

Ich schätze, damit geht's. Ansonsten könnte man auf Shell-Ebene noch den hostname abfragen. Der ist standardmässig "fritz.box".
FHEM 5.6 auf RaspberryPi2 mit Busware CUL culfw V1.61
CUL_HM     : HM-CC-RT-DN,HM-LC-SW1-FM,HM-LC-Sw1PBU-FM,HM-SEC-SC,HM-Sen-MDIR-O-2,HM-TC-IT-WM-W-EU
FBDECT      : Dect200
HUEDevice  : LCT001,LCT003

justme1968

ich glaube ich hab das problem gefunden. ich hab die version oben noch mal ersetzt.

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

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

Fritzi

#247
Leider schmiert FHEM komplett ab. Auch ein manuelles Starten geht in die Hose.
# cd /var/media/ftp/fhem
# ./startfhem
# Undefined subroutine &main::json_decode called at ./FHEM/38_netatmo.pm line 562.

Zur Erinnerung: Den Totalabsturz hatten wir ja auch mit der unicode-Geschichte.
Neben der SSL-Sache, muss bei positiver Fritzbox-Erkennung unbedingt die decode-Sache gefixt werden.
FHEM 5.6 auf RaspberryPi2 mit Busware CUL culfw V1.61
CUL_HM     : HM-CC-RT-DN,HM-LC-SW1-FM,HM-LC-Sw1PBU-FM,HM-SEC-SC,HM-Sen-MDIR-O-2,HM-TC-IT-WM-W-EU
FBDECT      : Dect200
HUEDevice  : LCT001,LCT003

justme1968

ob du es glaubst oder nicht das war ein gutes zeichen :). die fritzbox erkennung hat funktioniert. ich hab mich nur vertippt und statt decode_json ein json_decode eingebaut.

also... noch mal aktualisiert.

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

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

Fritzi

Zitat von: justme1968 am 24 Juli 2014, 22:24:34
ob du es glaubst oder nicht das war ein gutes zeichen :). die fritzbox erkennung hat funktioniert. ich hab mich nur vertippt und statt decode_json ein json_decode eingebaut.
Das hatte ich auch schon vermutet. Ich melde mich gleich wieder...
FHEM 5.6 auf RaspberryPi2 mit Busware CUL culfw V1.61
CUL_HM     : HM-CC-RT-DN,HM-LC-SW1-FM,HM-LC-Sw1PBU-FM,HM-SEC-SC,HM-Sen-MDIR-O-2,HM-TC-IT-WM-W-EU
FBDECT      : Dect200
HUEDevice  : LCT001,LCT003

Fritzi

#250
Hier das Ergebnis: Läuft! Daumen hoch!

- "nossl 1" wird automatisch gesetzt.
- Fhem schmiert auch nicht mehr wegen dem unicode-Bug ab.
- auch die "get Wetter public <PLZ>"-Liste wird sauber geladen.

Einzige Unschönheit sind die Meldungen im Log:

14.07.24 22:34:02 0: Server shutdown
2014.07.24 22:34:19 3: nossl not allowed for netatmo DEVICE
2014.07.24 22:34:19 3: nossl not allowed for netatmo MODULE
2014.07.24 22:34:21 1: configfile: nossl not allowed for netatmo DEVICE
nossl not allowed for netatmo MODULE
2014.07.24 22:34:22 2: Error messages while initializing FHEM: configfile: nossl not allowed for netatmo DEVICE nossl not allowed for netatmo MODULE
FHEM 5.6 auf RaspberryPi2 mit Busware CUL culfw V1.61
CUL_HM     : HM-CC-RT-DN,HM-LC-SW1-FM,HM-LC-Sw1PBU-FM,HM-SEC-SC,HM-Sen-MDIR-O-2,HM-TC-IT-WM-W-EU
FBDECT      : Dect200
HUEDevice  : LCT001,LCT003

justme1968

#251
ich hab die warnung noch weg gemacht und diese version offiziell eingecheckt.

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

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

Fritzi

FHEM 5.6 auf RaspberryPi2 mit Busware CUL culfw V1.61
CUL_HM     : HM-CC-RT-DN,HM-LC-SW1-FM,HM-LC-Sw1PBU-FM,HM-SEC-SC,HM-Sen-MDIR-O-2,HM-TC-IT-WM-W-EU
FBDECT      : Dect200
HUEDevice  : LCT001,LCT003

Elektrolurch

Hallo Andre,

habe nun alles nach Anleitung gemacht und attr nossl für die FB gesetzt.
Nur zum Verständnis: <account> ist die Mail-Adresse, die man auf der Webseite eingeben muss. Das "@" muss man nicht als @@ oder so ähnlich schreiben?
In den internas steht jedenfalls die Mail-Adresse korrekt da.

Habe die ClientID und das secret von der Webseite koppiert.
Nach dem define erhalte ich allerdings die Meldung: invalid token

{netatmo_isFritzBox()}
liefert 1 zurück.

Internals:
   Clients    :netatmo:
   DEF        <meine Mail> <mein PW> <meine ClientID> <secret>
   NAME       WetterUmgebung
   NR         1080
   NTFY_ORDER 50-WetterUmgebung
   STATE      Error
   SUBTYPE    ACCOUNT
   TYPE       netatmo
   access_token
   client_id  <mein ClientID>   client_secret <mein secret>
   https      http
   password   <mein pw>
   refresh_token
   status     Invalid access token
   username   <meine Mail>
Attributes:
   nossl      1

Stand: vom heutigen Update.

Beim Anlegen von "WetterUmgebung" gibt es aber keine Fehlereintragungen im log.

verbose 4 und get WetterUmgebung public 80339
liefert:
2014.07.25 11:54:53 4: WetterUmgebung: refreshing token
2014.07.25 11:54:53 4: WetterUmgebung: {"error":"invalid_grant"}
2014.07.25 11:55:03 4: WetterUmgebung: {
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "80339",
               "short_name" : "80339",
               "types" : [ "postal_code" ]
            },
            {
               "long_name" : "Munich",
               "short_name" : "M",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Munich",
               "short_name" : "M",
               "types" : [ "administrative_area_level_3", "political" ]
            },
            {
               "long_name" : "Upper Bavaria",
               "short_name" : "Upper Bavaria",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Bavaria",
               "short_name" : "BY",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Germany",
               "short_name" : "DE",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "80339 Munich, Germany",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 48.1440251,
                  "lng" : 11.549941
               },
               "southwest" : {
                  "lat" : 48.12655400000001,
                  "lng" : 11.524615
               }
            },
            "location" : {
               "lat" : 48.13596159999999,
               "lng" : 11.5382059
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 48.1440251,
                  "lng" : 11.549941
               },
               "southwest" : {
                  "lat" : 48.12655400000001,
                  "lng" : 11.524615
               }
            }
         },
         "types" : [ "postal_code" ]
      }
   ],
   "status" : "OK"
}

2014.07.25 11:55:03 4: WetterUmgebung getpublicdata: 11.549941, 11.524615, 48.1440251, 48.126554
2014.07.25 11:55:03 4: WetterUmgebung: {"error":"invalid_grant"}
2014.07.25 11:55:03 4: WetterUmgebung: {"error":{"code":2,"message":"Invalid access token"}}


Die PLZ scheint ja aufgelöst zu werden, nur mit dem Token stimmt da was nicht....?

Gruß

Elektrolurch
configDB und Windows befreite Zone!

justme1968

ja <account> ist die email adresse. man muss nichts maskieren.

bitte stoppe und starte fhem noch mal und schau ob für die zugriffe auf die netatmo server etwas im log zu sehen ist.

weiter oben gab es glaube ich einen post das im password manche zeichen nicht erlaubt sind.

du kannst dir mal selber von hand eine url in dem hier http://dev.netatmo.com/doc/authentication/usercredbeschriebenen schema zusammen bauen und per browser abrufen. dann siehst du ob deine zugangs daten wirklich stimmen.

die plz auflösung geht über google. das hat mit dem netatmo account nichts zu tun. so lange du keine token bekommst stimmt noch etwas nicht.

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

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