Weather aktualisiert nicht automatisch

Begonnen von obi134, 02 März 2015, 21:14:57

Vorheriges Thema - Nächstes Thema

obi134

Hallo zusammen,

ich habe meinem RPi FHEM beigebracht und zeige auf einem Display zunächst die Wetterdaten an. Die Daten werden auch soweit richtig dargestellt. Allerdings muss man zum Aktualisieren der Werte den Browser aktualisieren. Es reicht nicht, den Bildschirm aufzuwecken. Dummys werden bei mir direkt aktualisiert, ohne den Browser mit F5 zu aktualisieren. Ist dies auch mit dem Wetter möglich?

Mein cfg-Teil:

# Weather
define myweather Weather 644832 600 de
attr myweather localicons 1
attr myweather room Unsorted
define wetteranzeige weblink htmlCode {WeatherAsHtml("myweather")}
attr wetteranzeige group Wetter
attr wetteranzeige room Info


Fhem info:
  Release  : 5.6
  OS       : linux
  Arch     : arm-linux-gnueabihf-thread-multi-64int
  Perl     : v5.14.2
  uniqueID : 02822cae4e171bb25e6c6710ff743eef
  upTime   : 8 days, 01:55:28

justme1968

weblinks werden nicht per longpoll aktualisiert.

du kannst entweder die seite per refresh attribut im fhemweb device refreshen lassen oder mit einer der beiden methoden hier: http://forum.fhem.de/index.php/topic,32305.msg248290.html#msg248290.

oder du nimmst statt WeatherAsHtml z.b. eine passend konfigurierte readingGroup. da werden die icons dann auch per longpoll aktualsiiert. irgendwo gibt es einen thread dazu.

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

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

betateilchen

Zitat von: justme1968 am 02 März 2015, 21:45:49
weblinks werden nicht per longpoll aktualisiert.

Wenn man sie in ein InfoPanel einbaut, werden sie zumindest per refresh automatisch aktualisiert.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

obi134

Hi andre, hi betateilchen,

danke für eure Antworten.

Refresh (hier 10 Sekunden) funktioniert z.B. mit
attr WEBtablet refresh 10

Alternativ wollte ich die andere Lösung von andre testen:

define Wetterrefresh at +*00:00:10 { \
   fhem("trigger WEBtablet JS:location.reload(true)");;\
}


Dies funktioniert aber nicht bei mir. Oder muss ich dafür etwas beim Browser beachten?

War das location von dir als Variable für z.B. den Raum gemeint?

obi134

#4
Ich habe das Aktualisieren nun über eine Dummy-Variable gelöst:


define wetterinfo dummy
attr wetterinfo alias &nbsp
attr wetterinfo devStateStyle style="text-align:left;;"
attr wetterinfo group Wetterliste
attr wetterinfo room Info

define wetterinfoholen at +*00:05:00 { \
    fhem("set wetterinfo " . \
        sprintf("\
            <table padding-bottom=\"0\" padding-top=\"0\">\
                <tr>\
                    <td><img width=\"70\" src=\"/fhem/icons/weather/%s\"></td>\
                    <td>%s<br>%s°C, %s%%<br>%s mbar %s<br>%s</td>\
                </tr>\
                <tr>\
                    <td><img width=\"70\" src=\"/fhem/icons/weather/%s\"></td>\
                    <td>%s: %s<br>min %s°C, max %s°C</td>\
                </tr>\
                <tr>\
                    <td><img width=\"70\" src=\"/fhem/icons/weather/%s\"></td>\
                    <td>%s: %s<br>min %s°C, max %s°C</td>\
                </tr>\
                <tr>\
                    <td><img width=\"70\" src=\"/fhem/icons/weather/%s\"></td>\
                    <td>%s: %s<br>min %s°C, max %s°C</td>\
                </tr>\
                <tr>\
                    <td><img width=\"70\" src=\"/fhem/icons/weather/%s\"></td>\
                    <td>%s: %s<br>min %s°C, max %s°C</td>\
                </tr>\
                <tr>\
                    <td><img width=\"70\" src=\"/fhem/icons/weather/%s\"></td>\
                    <td>%s: %s<br>min %s°C, max %s°C</td>\
                </tr>\
            </table>",\
            ReadingsVal("myweather","icon",0),\
            ReadingsVal("myweather","condition",0),\
            ReadingsVal("myweather","temp_c",0),\
            ReadingsVal("myweather","humidity",0),\
            ReadingsVal("myweather","pressure",0),\
            ReadingsVal("myweather","pressure_trend_txt",0),\
            ReadingsVal("myweather","wind_condition",0),\
            ReadingsVal("myweather","fc1_icon",0),\
            ReadingsVal("myweather","fc1_day_of_week",0),\
            ReadingsVal("myweather","fc1_condition",0),\
            ReadingsVal("myweather","fc1_low_c",0),\
            ReadingsVal("myweather","fc1_high_c",0),\
            ReadingsVal("myweather","fc2_icon",0),\
            ReadingsVal("myweather","fc2_day_of_week",0),\
            ReadingsVal("myweather","fc2_condition",0),\
            ReadingsVal("myweather","fc2_low_c",0),\
            ReadingsVal("myweather","fc2_high_c",0),\
            ReadingsVal("myweather","fc3_icon",0),\
            ReadingsVal("myweather","fc3_day_of_week",0),\
            ReadingsVal("myweather","fc3_condition",0),\
            ReadingsVal("myweather","fc3_low_c",0),\
            ReadingsVal("myweather","fc3_high_c",0),\
            ReadingsVal("myweather","fc4_icon",0),\
            ReadingsVal("myweather","fc4_day_of_week",0),\
            ReadingsVal("myweather","fc4_condition",0),\
            ReadingsVal("myweather","fc4_low_c",0),\
            ReadingsVal("myweather","fc4_high_c",0),\
            ReadingsVal("myweather","fc5_icon",0),\
            ReadingsVal("myweather","fc5_day_of_week",0),\
            ReadingsVal("myweather","fc5_condition",0),\
            ReadingsVal("myweather","fc5_low_c",0),\
            ReadingsVal("myweather","fc5_high_c",0)\
        )\
   );;\
}


Anhang: oben als HTML und unten mein dummy