(e2 plugin) Netatmo - Wetterstation

  • hier mit v80 auch leider noch http error 403 (forbidden)

    Boxen: im Betrieb die DMTwo, DMOne, DM920HD
    Image: u.a. DP Original (unstable)
    Skin...: Verschiedene

  • damit ich nicht nur mecker :-), habe ich mal geloggt. Der erste Aufruf nach E2-Start schlägt fehl, der 2. ist dann ok. Ich sehe keinen Unterschied.
    Andererseits ist das auch nicht schlimm, ich kann damit leben :winking_face:


    Die NetAtmo-Zeilen ohne [ sind zusätzliche prints in postRequest der lnetatmo.py. Alle IDs usw. habe ich unkenntlich gemacht, sind aber immer identisch zwischen der Versuchen.


    1.
    [Netatmo] set timer 10
    [Netatmo] update
    NetAtmo https://api.netatmo.net/oauth2/token # {'username': 'netatmo@', 'grant_type': 'password', 'client_id': '12345', 'scope': 'read_station read_thermostat', 'client_secret': 'hfw', 'password': 'xxx'} #
    [Netatmo] register notification domain
    [Netatmo] show popup
    NetAtmo https://api.netatmo.net/api/getuser # {'access_token': u'52baa'} #
    --- [Netatmo] STACK TRACE ---
    Traceback (most recent call last):
    File "/usr/lib/enigma2/python/Plugins/Extensions/Netatmo/NetatmoCore.py", line 120, in update
    self.user = UserData(User(authorization).rawData)
    File "/usr/lib/enigma2/python/Plugins/Extensions/Netatmo/lnetatmo.py", line 92, in __init__
    resp = postRequest(_GETUSER_REQ, postParams)
    File "/usr/lib/enigma2/python/Plugins/Extensions/Netatmo/lnetatmo.py", line 242, in postRequest
    resp = urllib2.urlopen(req).read()
    File "/usr/lib/python2.7/urllib2.py", line 126, in urlopen
    return _opener.open(url, data, timeout)
    File "/usr/lib/python2.7/urllib2.py", line 400, in open
    response = meth(req, response)
    File "/usr/lib/python2.7/urllib2.py", line 513, in http_response
    'http', request, response, code, msg, hdrs)
    File "/usr/lib/python2.7/urllib2.py", line 438, in error
    return self._call_chain(*args)
    File "/usr/lib/python2.7/urllib2.py", line 372, in _call_chain
    result = func(*args)
    File "/usr/lib/python2.7/urllib2.py", line 521, in http_error_default
    raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
    HTTPError: HTTP Error 403: Forbidden
    -----------------------------


    2.Versuch nach 10min
    [Netatmo] update
    NetAtmo https://api.netatmo.net/oauth2/token # {'username': 'netatmo@', 'grant_type': 'password', 'client_id': '12345', 'scope': 'read_station read_thermostat', 'client_secret': 'hfw', 'password': 'xxx'} #
    [Netatmo] show popup
    NetAtmo https://api.netatmo.net/api/getuser # {'access_token': u'52baa'} #
    NetAtmo https://api.netatmo.net/api/devicelist # {'access_token': u'52baa'} #

  • Jetzt sind die Daten wieder da und ich habe seit meinem letzen Bericht nichts geändert

    Boxen: im Betrieb die DMTwo, DMOne, DM920HD
    Image: u.a. DP Original (unstable)
    Skin...: Verschiedene

  • bei mir aktuallisiert er nicht


    letzte messung app, 19:34


    api -- 19:04
    aktualisieren funzt auch nicht

  • ich habe das jetzt mal im Log beobachtet (10min Intervall). Leider ist die Aktualisierung total unsicher . Es geht mal 3x dann 6x nur Fehler, dann wieder 2x ok, 4x Fehlerhaft. :loudly_crying_face:

  • ich habe mir das mal wieder auf http zurückgebaut. Ich beobachte das mal. Jedenfalls sind die Werte jetzt sofort nach E2-Start da und auch ein wildes "grün"-Aktuallsieren funktioniert immer..... *abwarten*


    Edit: also am https liegt es auch nicht, Fehler passieren auch mit http :face_with_rolling_eyes: *zu früh gefreut*

  • Hallo, gibt es eine Möglichkeit die Netatmobar zu verschieben?
    Bei mir wird die Bar am oberen Bildschirmrand nur zur hälfte angezeigt.
    Habe schon mehrere Skins probiert ändert aber nichts.

  • Danke für die schnelle Antwort.
    Leider hat mein alter Samsung Plasma nicht die Möglichkeit Overscan zu deaktivieren.

  • im Netatmo-Pluginverzeichnis gibt es einen "Skin" Ordner und darin eine "1280.xml". Diese kannst du anpassen:
    <screen flags="wfNoBorder" name="NetatmoBar" position="center,5" size="1230,30" title=" " backgroundColor="#00333333">


    die "5" ist dann deine Position die du vergrößern kannst. Nach Änderung immer E2 neu starten. Da diese Datei bei einem Update überschrieben wird, den ganzen Skinblock in die skin_user.xml übernehmen oder obige Datei immer wieder anpassen/kopieren.

  • Es gibt eine neue lnetatmo.py vom Kollegen Philippe Larduinat.
    damit scheint's wieder zu gehen.


    Scheinbar bannen die von Netatmo einen für einen Zeitraum wenn man falsch zugreift?!


    Über kurz oder lang scheint es auch Sinnvoller auf die getmeasure API zu wechseln anstatt last_data_store zu benutzen, da nur dieser Zugriff stabil ist...



    Nee ... jetzt kommt schon wieder der
    403: Forbidden


    ??!

  • ok, die haben auch Limitierungen eingebaut.
    Mit meiner eigenen CLIENT_ID und CLIENT_SECRET habe ich jetzt keine Probleme mehr.


    Auf Application Level hat man jetzt 2000 zugriffe pro Stunde - das ist wohl nach dem Fehler durch die API jetzt häufig erreich worden.


    Vielleich sollte jetzt doch die möglichkeit geschaffen werden seine eigene CLIENT_ID und CLIENT_SECRET zu benutzen, sonst könnte das vlt in Zukunft engwerden wenn man das Plugin benutzt.


    Hier der Auszug aus dem netatmo Forum:
    The default rate limitation is :
    Application level : 200 API requests per 10 seconds, 2000 per hour
    User Level : 50 API requests per 10 seconds, 500 per hour.