NEU! UPGRADE IP 12 verfügbar!
Verbessertes LICHTWIDGET - MQTT Geräte Manager Update - sowie viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/bCsDsqM8

Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Ab sofort kann jeder die neue VISU & IFTTT testen. Info: viewtopic.php?f=8&t=5074

Release V 4 am 15. Juni 2024
Es gibt nun einen fixen Termin. Info: viewtopic.php?f=8&t=5117

NEU! Ausführliches Video Tutorial zur VISU
Jetzt werden alle Fragen beantwortet. Das Video: https://youtu.be/_El-zaC2Rrs

[Gelöst] [V4.0 IP4] Wie bekomme ich Unix-Zeit umgewandelt?

Informationen und Diskussionen über Logik-Engine und Logik-Editor
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Antworten

Ersteller
Marino
Reactions:
Beiträge: 313
Registriert: Fr Jul 24, 2020 6:44 am
Wohnort: Hamburg
Hat sich bedankt: 132 Mal
Danksagung erhalten: 145 Mal

[V4.0 IP4] Wie bekomme ich Unix-Zeit umgewandelt?

#1

Beitrag von Marino »

Hi,

ich frage OpenWeather ab. Hier kann man auch die Vorhersage abfragen für 5 Tage in 3 Stunden Zyklen.

Um damit etwas anzufangen und es geordnet darzustellen, brauche ich also die Zeit für die jeweilige Variable. Was für ein Glück, dass diese angegeben ist. Zur Verfügung steht einmal Unix Zeit (UTC) und das ganze als Text (ISO, UTC). Nun muss ich ja, um die Zeit richtig zu erhalten im Winter 1h und im Sommer 2h dazu rechnen, da angegeben als UTC.

Jetzt wären hier meiner Meinung nach 2 Möglichkeiten.
1. Unix-Zeit nehmen und im Winter 3600s und im Sommer 7200s addieren und anschließend umwandeln. Die Umrechnung von UTC in MEZ wäre damit einfach, aber es ist dann immer noch die Unix-Zeit.
2. Wohl noch schwieriger. Text zerlegen, Zeit isolieren und dann 1-2h addieren. Da muss beim addieren aber mehr beachtet werden.

Wie würdet Ihr das machen, bzw. macht das vielleicht schon jemand?

Viele Grüße
Nils
Zuletzt geändert von blaubaerli am Sa Sep 16, 2023 12:02 pm, insgesamt 2-mal geändert.
Viele Grüße
Nils


TWS 3500XL ID:1080 (VPN offen, Reboot nach Rücksprache)

gbglace
Reactions:
Beiträge: 3636
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1279 Mal
Danksagung erhalten: 1680 Mal

#2

Beitrag von gbglace »

Was hast Du damit vor?
Grüße
Göran

#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#3 PBM 3 Kanäle, #4 Modbus-Extension

tiagra
Reactions:
Beiträge: 24
Registriert: Fr Jun 03, 2022 12:22 am
Hat sich bedankt: 4 Mal
Danksagung erhalten: 13 Mal

#3

Beitrag von tiagra »

Was ist, wenn du dir die Zeiten zu deiner Abfrage einfach aus dem System ziehst und nicht die Zeiten aus der API nimmst? Die Minute Versatz sind bei Wetterdaten total unerheblich und du kannst sie einfach in deinem Lieblingsformat direkt wegspeichern zusammen mit den Daten aus der API?
TWS 3500M #780

Ersteller
Marino
Reactions:
Beiträge: 313
Registriert: Fr Jul 24, 2020 6:44 am
Wohnort: Hamburg
Hat sich bedankt: 132 Mal
Danksagung erhalten: 145 Mal

#4

Beitrag von Marino »

@gbglace
Ich möchte damit die Vorhersage ausgeben können, die ich ausgelesen habe und dafür muss die passende Zeit mit übermittelt werden. Mit Unix-Zeit oder UTC kann nicht jeder etwas anfangen und möchte auch nicht rechnen.
Meine Frau wünscht sich das so und möchte das sehen, wenn sie das Haus verlässt.

@tiagra
Das Problem dabei ist, dass ich nicht weiß, wann der Datensatz in der API geändert wird. Wenn ich die dazugehörige Zeit habe und nicht die Abfragezeit, hätte ich immer die zugehörige Zeit.
Wenn ich also die Zeit der Abfrage nehme, kann die Vorhersage in den nächsten drei Stunden beginnen. Die übernächste kann dann in 3 oder 6 Stunden beginnen. Das ist ein wenig zu ungenau. Oder habe ich Dich falsch verstanden?


Viele Grüße
Nils
Viele Grüße
Nils


TWS 3500XL ID:1080 (VPN offen, Reboot nach Rücksprache)

tiagra
Reactions:
Beiträge: 24
Registriert: Fr Jun 03, 2022 12:22 am
Hat sich bedankt: 4 Mal
Danksagung erhalten: 13 Mal

#5

Beitrag von tiagra »

@Marino Ok ich kenne die API nicht. In meiner Welt fragt man was, und kriegt sofort eine Antwort - in deinem Fall leider mit einem für dich unleserlichen Zeitstempel. Ich aber ging dann doch davon aus, dass du nach einer bestimmten Vorhersage fragst und dazu dann auch sofort die Antwort bekommst. Aber wie gesagt, ich kenne die API nicht.
TWS 3500M #780

Ersteller
Marino
Reactions:
Beiträge: 313
Registriert: Fr Jul 24, 2020 6:44 am
Wohnort: Hamburg
Hat sich bedankt: 132 Mal
Danksagung erhalten: 145 Mal

#6

Beitrag von Marino »

Das hier ist in etwa ein Datensatz von denen, die ausgelesen werden:

Code: Alles auswählen

   {
      "clouds": {
        "all": 48
      },
      "pop": 0,
      "sys": {
        "pod": "d"
      },
      "dt_txt": "2023-09-15 12:00:00",
      "visibility": 10000,
      "weather": [
        {
          "description": "scattered clouds",
          "main": "Clouds",
          "id": 802,
          "icon": "03d"
        }
      ],
      "dt": 1694779200,
      "main": {
        "temp_kf": -2.8,
        "temp": 17.6,
        "grnd_level": 1017,
        "temp_max": 20.4,
        "sea_level": 1021,
        "humidity": 64,
        "pressure": 1021,
        "temp_min": 17.6,
        "feels_like": 17.09
      },
      "wind": {
        "gust": 5.57,
        "speed": 4.17,
        "deg": 139
      }
    },
Da die nächsten 5 Tage in 40 Zeitfenstern a 3 Stunden dargestellt sind, gibt es 40 Datensätze.

"dt": 1694779200 wäre hier die Zeit, also "15.09.2023 um 12:00:00 Uhr" (UTC), was aber +2h sein müsste, also "15.09.2023 um 14:00:00 Uhr"
Also: 1694779200 (Unix UTC) + 7200 (s, da Sommerzeit +2h) = 1694786400 (Unix, MEZ) = "15.09.2023 um 14:00:00 Uhr"

"dt_txt": "2023-09-15 12:00:00": Hier sieht man, dass es UTC ist und da müsste man auch 2h zu addieren.

So die Ausgabe in etwa. Wenn ich das also umrechnen könnte, dann wäre jeder Wert des Datensatzes zugehörig zu der Zeit.

Wenn ich die aktuellen Werte abfrage, ist das kein Problem, denn da zählt ja auch die Abfragezeit, da es zur Zeit der Abfrage aktuell ist.

Es geht halt um die Vorhersage und da bekomme ich die nächsten 40 Zeitfenster zu je 3 Stunden (5 Tage in Summe) als Array zurück, wo jeder Datensatz die unix-UTC-Zeit des jeweiligen Datensatzes enthält, nachdem man es zuordnen müsste. Daher meine Frage.


Viele Grüße
Nils
Zuletzt geändert von Marino am Fr Sep 15, 2023 3:36 pm, insgesamt 1-mal geändert.
Viele Grüße
Nils


TWS 3500XL ID:1080 (VPN offen, Reboot nach Rücksprache)

Robert_Mini
Reactions:
Beiträge: 3761
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1175 Mal
Danksagung erhalten: 2078 Mal

#7

Beitrag von Robert_Mini »

Hallo Nils!

Antwort zu deiner Frage: mit dem Unix-Zeit-Wandler Baustein

Eingang mit den unix Zeitwert verknüpfen und ausgangsseitig die Konponenten freischalten, die du brauchst.

Edit: hier der Link zur Doku:
https://elabnet.atlassian.net/wiki/spac ... /416645837

Lg Robert
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von Robert_Mini am Fr Sep 15, 2023 3:50 pm, insgesamt 1-mal geändert.
Timberwolf Server 2500 / #117 (VPN offen + reboot nach Rückfrage) / zusätzlich: 3500M/#935, 3500L/#1297

Ersteller
Marino
Reactions:
Beiträge: 313
Registriert: Fr Jul 24, 2020 6:44 am
Wohnort: Hamburg
Hat sich bedankt: 132 Mal
Danksagung erhalten: 145 Mal

#8

Beitrag von Marino »

Wie konnte ich den bloß übersehen?
Ich habe hier im Forum gesucht und immer nur den anderen gefunden (Uhr-Zeit). Irgendwie ist der mir durchgegangen.

Vielen Dank für den Tipp!
Der Baustein rechnet sogar direkt die 2h auf die lokale Zeit zu und gibt gleich MEZ aus.

Thread kann gerne geschlossen werden.


Viele Grüße
Nils
Viele Grüße
Nils


TWS 3500XL ID:1080 (VPN offen, Reboot nach Rücksprache)

Robert_Mini
Reactions:
Beiträge: 3761
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1175 Mal
Danksagung erhalten: 2078 Mal

#9

Beitrag von Robert_Mini »

Gern geschehen. Hab den Thread als "gelöst" markiert.

lg
Robert
Timberwolf Server 2500 / #117 (VPN offen + reboot nach Rückfrage) / zusätzlich: 3500M/#935, 3500L/#1297
Antworten

Zurück zu „Logikengine & Logik-Editor“