Re: PWS-Upload zu weiteren Wetterdiensten
Verfasst: 26 Mär 2021, 09:57
Hi!
Vorerst abschliessend:
Ich kann den Dienst weather365.net mit WSWin beliefern.
Allerdings gibt es dabei ein paar Klippen zu umschiffen, weshalb ich das so nicht jedermann empfehlen will.
Das Problem liegt darin, dass WSWin die Daten nicht wie vom Wetterdienstleister erwartet im Body der Nachricht, sondern in der URL verpackt.
Daher muss hier der Umweg ueber die Erzeugung einer Datei durch WSWin und dem Versand dieser Datei mit einem Fremdprogramm (curl) erfolgen.
Ein weiteres Problem ergibt sich daraus, dass WSWin bei der Erzeugung von Dateien nicht den eigentlich konfigurierten Separator "&" nutzt, sondern stattdessen CRLF als Trennzeichen einsetzt.
Daher muss die von WSWin erzeugte Datei vor dem Versand auch noch in das passende Format gebracht werden.
Eine Batchdatei, die von WSWin im Intervall zum Konvertieren der Datei und deren Versand per http/POST gestartet wird, startet immer als Fenster mit Fokus - alle 5 Minuten draengelt sich also ein kleines schwarzes Dos-Fenster in den Vordergrund. Das macht die parallele Arbeit auf dem Geraet nicht zur Freude.
Ablauf:
Die Vorlagendatei muss im WSWin in einem freien Slot unter Internet/Einstellungen/WWW eingetragen und aktiviert sowie die stationID vom Anbieter als Login eingetragen werden.
Zusaetzlich muss der 5-Minuten-Intervall (Internet Update) aktiviert werden.
Somit erzeugt WSWin alle 5 Minuten eine Datei im ungefaehr erforderlichen Format.
Damit diese Datei versandt wird, ist ein Eintrag der Batchdatei unter Datei/Optionen/Zeitsteuerung2 erforderlich. Auch hier ist ein 5-Minuten-Intervall einzustellen.
Erforderlich ist zusaetzlich das Programm cURL.
Alle 5 Minuten erzeugt somit WSWin eine Export-Datei, die dann - ebenfalls im 5 Minuten-Intervall - durch diese Batchdatei verarbeitet und versandt wird.
Ziemlich viel Aufwand dafuer, oder?
Wenn WSWin jedoch auch http/POST-requests mit Daten im Body koennte, muesste man in der Vorlagendatei einfach nur 1Typ=0 in 1Typ=1 aendern und koennte auf die Batchdatei (und somit auf das immer wieder aufblitzende schwarze Dos-Fenster) verzichten. Vielleicht kann Werner Krenn zum POST-Problem etwas sagen - ich glaube immer noch, das mir da schlicht eine noetige Option in der Vorlage fehlt.
Vorlage und Batch-Datei sind hier im ZIP-File enthalten.
Gruss, Oliver
BTW:
Mit curl koennte man uebrigens auch Dateien per ftps versenden. Damit haben doch einige WSWin-Nutzer auch so ihre Probleme, oder? Bei Bedarf kann ich dazu bestimmt auch etwas schreiben.
Vorerst abschliessend:
Ich kann den Dienst weather365.net mit WSWin beliefern.
Allerdings gibt es dabei ein paar Klippen zu umschiffen, weshalb ich das so nicht jedermann empfehlen will.
Das Problem liegt darin, dass WSWin die Daten nicht wie vom Wetterdienstleister erwartet im Body der Nachricht, sondern in der URL verpackt.
Daher muss hier der Umweg ueber die Erzeugung einer Datei durch WSWin und dem Versand dieser Datei mit einem Fremdprogramm (curl) erfolgen.
Ein weiteres Problem ergibt sich daraus, dass WSWin bei der Erzeugung von Dateien nicht den eigentlich konfigurierten Separator "&" nutzt, sondern stattdessen CRLF als Trennzeichen einsetzt.
Daher muss die von WSWin erzeugte Datei vor dem Versand auch noch in das passende Format gebracht werden.
Eine Batchdatei, die von WSWin im Intervall zum Konvertieren der Datei und deren Versand per http/POST gestartet wird, startet immer als Fenster mit Fokus - alle 5 Minuten draengelt sich also ein kleines schwarzes Dos-Fenster in den Vordergrund. Das macht die parallele Arbeit auf dem Geraet nicht zur Freude.
Ablauf:
Die Vorlagendatei muss im WSWin in einem freien Slot unter Internet/Einstellungen/WWW eingetragen und aktiviert sowie die stationID vom Anbieter als Login eingetragen werden.
Zusaetzlich muss der 5-Minuten-Intervall (Internet Update) aktiviert werden.
Somit erzeugt WSWin alle 5 Minuten eine Datei im ungefaehr erforderlichen Format.
Damit diese Datei versandt wird, ist ein Eintrag der Batchdatei unter Datei/Optionen/Zeitsteuerung2 erforderlich. Auch hier ist ein 5-Minuten-Intervall einzustellen.
Erforderlich ist zusaetzlich das Programm cURL.
Alle 5 Minuten erzeugt somit WSWin eine Export-Datei, die dann - ebenfalls im 5 Minuten-Intervall - durch diese Batchdatei verarbeitet und versandt wird.
Ziemlich viel Aufwand dafuer, oder?
Wenn WSWin jedoch auch http/POST-requests mit Daten im Body koennte, muesste man in der Vorlagendatei einfach nur 1Typ=0 in 1Typ=1 aendern und koennte auf die Batchdatei (und somit auf das immer wieder aufblitzende schwarze Dos-Fenster) verzichten. Vielleicht kann Werner Krenn zum POST-Problem etwas sagen - ich glaube immer noch, das mir da schlicht eine noetige Option in der Vorlage fehlt.
Vorlage und Batch-Datei sind hier im ZIP-File enthalten.
Gruss, Oliver
BTW:
Mit curl koennte man uebrigens auch Dateien per ftps versenden. Damit haben doch einige WSWin-Nutzer auch so ihre Probleme, oder? Bei Bedarf kann ich dazu bestimmt auch etwas schreiben.