Wetteranzeige
-
-
@stein17, ich kenne mich mit Skin-Programmierung gar nicht aus. Gerne auch ignorieren, was ich sage, wenn ich hier das Thema verfehle ...
Ansonsten, normalerweise funktionieren alle wichtigen Kalender-Funktionen, Zeit-Funktionen, APIs (z.B. Wetter) mit UTC (im Prinzip, was du GMT nennst). Typische "Zeitprobleme" werden normalerweise im Computer vollkommen in praktisch UTC programmiert (wobei da die interne Uhr halt zu einem bestimmten UTC-Zeitpunkt anfängt zu laufen, oft 1970-01-01 00:00), und erst bei der Darstellung für den Benutzer in die gewünschte (lokale) Zeitzone gewandelt. Häufige Fehler(die ich sah) sind beispielsweise der Versuch von Programmierern, Zeitarithmetik in lokaler Zeit zu machen - führt sehr oft zu (manchmal schwer zu findenden) Fehlern, Ein Grund ist dass (wegen Sommerzeit) die Zeitdifferenz zwischen UTC und lokaler Zeit keine Konstante ist. Auch ist die lokale Zeit nicht immer eindeutig (bei uns gibt es eine Stunde im Jahr zwischen 2 und 3 Uhr, die zweimal vorkommt), Das alles sind Gründe (bei weitem nicht die einzigen), wieso normalerweise APIs in UTC designed sind. Kurzes Googlen scheint das auch für MSN Weather zu bestätigen. Sollte auch leicht zu bestätigen sein, durch Überprüfen von Sonnenaufgang/Untergang (beim Wetter selbst merkt man sonst 2 Stunden nicht so leicht). -
Meiner Meinung ist das die Zeit vom Receiver übernommen wird und da gab es noch nie Probleme mit der Sommer oder Winter Zeit auch nicht beim Wetter Plugin.
-
Für MSN Weather kann ich meinen Punkt nicht leicht zeigen, und möchte den auch nicht behaupten ohne Beleg. Bei einem offenen Wetter-API (open-meteo.com) eine Abfrage für Berlin (die man auch auf seinem Receiver absetzen kann, oder auf Linux oder Windows oder MAC PC):
curl "https://api.open-meteo.com/v1/forecast?latitude=52.52&longitude=13.41¤t=temperature_2m&daily=sunrise&hourly=temperature_2m,rain"
Mit dem Ergebnis
Quellcode
- {"latitude":52.52,"longitude":13.419998,"generationtime_ms":0.05900859832763672,"utc_offset_seconds":0,"timezone":"GMT","timezone_abbreviation":"GMT","elevation":38.0,"current_units":{"time":"iso8601","interval":"seconds","temperature_2m":"°C"},"current":{"time":"2024-07-12T10:30","interval":900,"temperature_2m":24.0},"hourly_units":{"time":"iso8601","temperature_2m":"°C","rain":"mm"},"hourly":{"time":["2024-07-12T00:00","2024-07-12T01:00","2024-07-12T02:00","2024-07-12T03:00","2024-07-12T04:00","2024-07-12T05:00","2024-07-12T06:00","2024-07-12T07:00","2024-07-12T08:00","2024-07-12T09:00","2024-07-12T10:00","2024-07-12T11:00","2024-07-12T12:00","2024-07-12T13:00","2024-07-12T14:00","2024-07-12T15:00","2024-07-12T16:00","2024-07-12T17:00","2024-07-12T18:00","2024-07-12T19:00","2024-07-12T20:00","2024-07-12T21:00","2024-07-12T22:00","2024-07-12T23:00","2024-07-13T00:00","2024-07-13T01:00","2024-07-13T02:00","2024-07-13T03:00","2024-07-13T04:00","2024-07-13T05:00","2024-07-13T06:00","2024-07-13T07:00","2024-07-13T08:00","2024-07-13T09:00","2024-07-13T10:00","2024-07-13T11:00","2024-07-13T12:00","2024-07-13T13:00","2024-07-13T14:00","2024-07-13T15:00","2024-07-13T16:00","2024-07-13T17:00","2024-07-13T18:00","2024-07-13T19:00","2024-07-13T20:00","2024-07-13T21:00","2024-07-13T22:00","2024-07-13T23:00","2024-07-14T00:00","2024-07-14T01:00","2024-07-14T02:00","2024-07-14T03:00","2024-07-14T04:00","2024-07-14T05:00","2024-07-14T06:00","2024-07-14T07:00","2024-07-14T08:00","2024-07-14T09:00","2024-07-14T10:00","2024-07-14T11:00","2024-07-14T12:00","2024-07-14T13:00","2024-07-14T14:00","2024-07-14T15:00","2024-07-14T16:00","2024-07-14T17:00","2024-07-14T18:00","2024-07-14T19:00","2024-07-14T20:00","2024-07-14T21:00","2024-07-14T22:00","2024-07-14T23:00","2024-07-15T00:00","2024-07-15T01:00","2024-07-15T02:00","2024-07-15T03:00","2024-07-15T04:00","2024-07-15T05:00","2024-07-15T06:00","2024-07-15T07:00","2024-07-15T08:00","2024-07-15T09:00","2024-07-15T10:00","2024-07-15T11:00","2024-07-15T12:00","2024-07-15T13:00","2024-07-15T14:00","2024-07-15T15:00","2024-07-15T16:00","2024-07-15T17:00","2024-07-15T18:00","2024-07-15T19:00","2024-07-15T20:00","2024-07-15T21:00","2024-07-15T22:00","2024-07-15T23:00","2024-07-16T00:00","2024-07-16T01:00","2024-07-16T02:00","2024-07-16T03:00","2024-07-16T04:00","2024-07-16T05:00","2024-07-16T06:00","2024-07-16T07:00","2024-07-16T08:00","2024-07-16T09:00","2024-07-16T10:00","2024-07-16T11:00","2024-07-16T12:00","2024-07-16T13:00","2024-07-16T14:00","2024-07-16T15:00","2024-07-16T16:00","2024-07-16T17:00","2024-07-16T18:00","2024-07-16T19:00","2024-07-16T20:00","2024-07-16T21:00","2024-07-16T22:00","2024-07-16T23:00","2024-07-17T00:00","2024-07-17T01:00","2024-07-17T02:00","2024-07-17T03:00","2024-07-17T04:00","2024-07-17T05:00","2024-07-17T06:00","2024-07-17T07:00","2024-07-17T08:00","2024-07-17T09:00","2024-07-17T10:00","2024-07-17T11:00","2024-07-17T12:00","2024-07-17T13:00","2024-07-17T14:00","2024-07-17T15:00","2024-07-17T16:00","2024-07-17T17:00","2024-07-17T18:00","2024-07-17T19:00","2024-07-17T20:00","2024-07-17T21:00","2024-07-17T22:00","2024-07-17T23:00","2024-07-18T00:00","2024-07-18T01:00","2024-07-18T02:00","2024-07-18T03:00","2024-07-18T04:00","2024-07-18T05:00","2024-07-18T06:00","2024-07-18T07:00","2024-07-18T08:00","2024-07-18T09:00","2024-07-18T10:00","2024-07-18T11:00","2024-07-18T12:00","2024-07-18T13:00","2024-07-18T14:00","2024-07-18T15:00","2024-07-18T16:00","2024-07-18T17:00","2024-07-18T18:00","2024-07-18T19:00","2024-07-18T20:00","2024-07-18T21:00","2024-07-18T22:00","2024-07-18T23:00"],"temperature_2m":[19.4,19.0,18.3,18.3,18.6,18.8,19.7,19.3,20.5,20.7,22.8,25.1,25.9,25.7,23.6,22.4,22.7,22.4,21.9,21.3,20.9,20.9,20.8,20.6,20.5,18.7,17.1,15.9,15.3,14.9,14.2,14.4,15.5,17.4,19.2,20.5,21.7,22.0,22.9,22.8,22.7,22.5,21.6,20.1,18.5,17.4,16.6,16.0,15.5,15.0,14.9,14.0,13.9,14.9,16.7,18.3,20.0,21.7,23.4,24.3,24.9,25.5,25.6,25.7,25.6,25.0,24.3,23.1,21.7,20.7,20.1,19.5,18.9,18.0,17.3,16.5,16.0,16.9,19.1,21.7,23.9,25.3,26.5,27.4,28.2,28.7,28.9,29.0,28.9,28.6,27.9,26.6,25.0,23.6,22.7,22.1,21.7,21.3,21.0,20.8,20.5,20.2,20.2,20.4,20.8,21.3,22.0,22.9,23.7,24.4,25.1,25.6,25.9,25.9,25.6,24.9,23.8,22.7,21.7,20.7,19.7,18.8,17.9,17.5,17.8,18.6,19.1,20.3,20.8,21.4,22.3,23.3,24.1,24.5,24.7,24.7,24.5,24.1,23.4,22.2,20.7,19.4,18.5,17.7,17.0,16.3,15.7,15.5,16.0,17.0,18.3,19.9,21.9,23.6,24.8,25.7,26.5,27.0,27.3,27.4,27.2,26.9,26.3,25.3,24.2,23.0,21.8,20.5],"rain":[0.00,0.00,0.00,0.00,0.00,0.50,0.30,1.10,0.50,0.10,0.00,0.00,0.00,0.00,1.90,6.60,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,1.90,0.20,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.20,0.20,0.20,0.30,0.30,0.30,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00]},"daily_units":{"time":"iso8601","sunrise":"iso8601"},"daily":{"time":["2024-07-12","2024-07-13","2024-07-14","2024-07-15","2024-07-16","2024-07-17","2024-07-18"],"sunrise":["2024-07-12T02:58","2024-07-13T02:59","2024-07-14T03:01","2024-07-15T03:02","2024-07-16T03:03","2024-07-17T03:05","2024-07-18T03:06"]}}
Aber jetzt halte ich mich wieder zurück, da ich keine Ahnung habe von Skin-Programmierung (aber durchaus Erfahrung in APIs, Kalender und Zeit-Funktionen und Programmierung) und auch nicht beurteilen kann, ob das relevant ist für Skin-Programmierung.
Übrigens läuft die interne Receiver Uhr auch (praktisch gesehen) in UTC. Für die Anzeige (z.B. date-Kommando) wird die eingestellte Zeitzone angezeigt. Systemaufrufe wie time() geben selbstverständlich Sekunden basierend auf Unix-Zeitstempel (praktisch basierend auf UTC) zurück. D.h. In England und USA und sonstwo auf der Welt zum selben Zeitpunkt den identischen Zeitstempel.Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von buers () aus folgendem Grund: Tippfehler korrigiert, der genau Zeitstempel (des Sonnenaufgangs) betraf, und damit möglicherweise für die Argumentation sinnentstellend war.
-
Danke, ich habe alle möglichen py, s, die mit dem Wetterplugin zu tun haben, mir näher angeschaut.
Ich habe von Python null Ahnung, eventuell schafft es jemand die Intervalle der Wetteraktualisierung zu verändern.
Kann auch sein, dass es neuerdings so von MSN vorgegeben ist.
Einmal das: MSNWeather.py aus Sources
def getObservationTime(self):
skey = "-1"
if skey in weathermsn.weatherData.weatherItems:
item = weathermsn.weatherData.weatherItems[skey]
if item.observationtime != "":
c = time.strptime(item.observationtime, "%H:%M:%S")
return time.strftime("%H:%M", c)
else:
return _("n/a")
else:
return _("n/a")
Eben habe ich das gefunden, der Pfad ist: usr/lib/enigma2/python/Components/WeatherMSN.pyc
Wenn ich mir die py im Git anschaue, dann könnte das die richtige Stelle sein
from enigma import eEnv, eTimer
from Plugins.Extensions.WeatherPlugin.MSNWeather import MSNWeather
class WeatherMSN:
TIMER_INTERVAL = 1800
def __init__(self):
self.weatherData = MSNWeather()
self.callbacks = []
self.callbacksAllIconsDownloaded = []
self.timer = eTimer()
self.timer.callback.append(self.getData)
def getData(self):
self.timer.stop()
self.weatherData.getDefaultWeatherData(self.callback, self.callbackAllIconsDownloaded)
self.timer.startLongTimer(self.TIMER_INTERVAL)
def updateWeather(self, weather, result, errortext):
if result == MSNWeather.OK:
self.timer.stop()
self.weatherData = weather
self.weatherData.callback = None
self.weatherData.callbackShowIcon = None
self.weatherData.callbackAllIconsDownloaded = None
self.callback(result, errortext)
self.callbackAllIconsDownloaded()
self.timer.startLongTimer(self.TIMER_INTERVAL)
Was bedeutet der Wert 1800 ?
Mein letztes Update ist schon 2 Stunden 50 Minuten her.
Für HD Skin habe ich es fertig, MSN und Open Meteo.stein17 -
geromino schrieb:
Meiner Meinung ist das die Zeit vom Receiver übernommen wird und da gab es noch nie Probleme mit der Sommer oder Winter Zeit auch nicht beim Wetter Plugin.
stein17
-
Teilen
- Facebook 0
- Twitter 0
- Google Plus 0
- Reddit 0