Seite 40 von 43

Re: FOSHKplugin

Verfasst: 25 Sep 2024, 18:09
von gms2k
Moin,

kleines Problem, nach dem upgrade meines MINI PC´s von Linux Mint 21.3 auf 22 "Wilma" hat FOSHKplugin den Betrieb eingestellt, habs dadurch gemerkt das seit dem Upgrade keine Daten mehr in PWS und HA eintrudeln.

Ganz offensichtlich und den warnings nach wurde wohl an python bzw pip in 22 einiges geändert,
somit hilft auch ein -repair oder upgrade des plugins nicht.

Hat das Problem noch jemand und gibt es eventuell schon ein Workaround @olicat ?

Gruß Georg

Re: FOSHKplugin

Verfasst: 25 Sep 2024, 18:49
von olicat
Hi!

Was passiert denn beim Start von FOSHKplugin? Gibt es eine Fehlermeldung?
Welche FOSHKplugin-Version setzt Du ein? Die aktuelle Beta v0.10 sollte mit dem aktuellen pip klarkommen.

Oliver

Re: FOSHKplugin

Verfasst: 25 Sep 2024, 19:18
von gms2k
Beim Start passiert gar nichts, springt wieder in den prompt ohne Meldung. bei -repair kommt error: externally-managed-environment, scheinbar wird nur noch virtual environment unterstützt. Beim Ausführen der py kommen jede Menge SyntaxWarnings.

Allerdings habe ich die stable v0.09, die beta versuche ich morgen mal.

Update: Habs doch gleich getestet, die beta v0.10 funktioniert tatsächlich, alles wieder im Lot. :thumbup:

Danke !

Gruß Georg

Re: FOSHKplugin

Verfasst: 09 Nov 2024, 08:50
von ProfMobilux
Ich versuche ein TAGFILE für das Wetternetz Sachsen (https://www.wetternetz-sachsen.de/) zu erstellen, um dort per HTTP Get die Daten einzuliefern. Ich scheitere aber immer an der Fehlermeldung

Code: Alles auswählen

09.11.2024 08:44:16.236 <ERROR> FWD-38: save to /opt/loxberry/data/plugins/foshkplugin/ : no input file specified
Ich habe bereits absolute Pfade zum Infile verwendet und auch die Beispiele aus der Hilfe 1:1 kopiert - immer die gleiche Fehlermeldung. Vielleicht sieht ja jemand den Fehler von mir...

Forward sieht so aus:

Code: Alles auswählen

[Forward-38]
FWD_ENABLE = True
FWD_CMT = TAGFILE Pool via FTP
FWD_OPTION = config=tag-def_wns.conf
FWD_INTERVAL = 60
FWD_IGNORE =
FWD_TYPE = TAGFILE
FWD_EXEC =
FWD_URL = /opt/loxberry/log/plugins/foshkplugin/
Tag Definition tag-def_wns.conf (liegt in /opt/loxberry/conf/plugins/foshkplugin/):

Code: Alles auswählen

[Tagfile]
infile = infile_wns.txt
outfile = outfile_wns.txt
append = False
task = save
tag = [[@keyname]]
postscript =  ""
dtime_format = "%A, %d.%m.%Y %H:%M"
locale_format = ""
pre_count = ""
dec_count = ""
dec_separator default = .
Und das Infile infile_wns.txt (liegt in /opt/loxberry/conf/plugins/foshkplugin/) - nur als Beispiel aus der Hilfe kopiert:

Code: Alles auswählen

time;aqtime;temperature;temp min;temp min time;temp max;temp max time;humidity;pressure;pressure min;pressure min time;pressure max;pressure max time
[[@time]];[[@aqtime]];[[@tempc]];[[@tempc_min]];[[@tempc_min_time]];[[@tempc_max]];[[@tempc_max_time]];[[@humidity]];[[@baromrelhpa]];[[@baromrelhpa_min]];[[@baromrelhpa_min_time]];[[@baromrelhpa_max]];[[@baromrelhpa_max_time]]

Re: FOSHKplugin

Verfasst: 09 Nov 2024, 09:07
von olicat
Moin,

welche Version von FOSHKplugin setzt Du ein?
Ich habe Deine Daten 1:1 uebernommen und nur die Pfade (FWD_URL und die Speicherorte) angepasst. Das Ergebnis ist eine Datei outfile_wns.txt mit folgendem Inhalt:

Code: Alles auswählen

time;aqtime;temperature;temp min;temp min time;temp max;temp max time;humidity;pressure;pressure min;pressure min time;pressure max;pressure max time
Samstag, 09.11.2024 09:04;Samstag, 09.11.2024 09:04;3.4;3.2;Samstag, 09.11.2024 08:17;4.7;Samstag, 09.11.2024 00:00;92;1030.0;1029.09;Samstag, 09.11.2024 08:11;1030.82;Samstag, 09.11.2024 01:08
Im snd-Log gibt es keine Fehlermeldung, stattdessen:

Code: Alles auswählen

09.11.2024 09:06:00.454 FWD-38: save to /home/engel/Documents/Daten/Haus/Verkabelung/Wetterstation/Froggit-Projekt/GW2000-FOSHKplugin/outfile_wns.txt : OK
Ansonsten kann es sich nur noch um ein Problem bei den Pfaden oder den entsprechenden Rechten handeln.

Oliver

Re: FOSHKplugin

Verfasst: 09 Nov 2024, 11:21
von ProfMobilux
Hallo Oli,

ich bin der mit der LoxBerry Wetterstation ;-) Ich nutze die 0.10 Beta:

prgname = "FOSHKplugin"
prgver = "v0.10"
betaver = " Beta 240921"

Die Verzeichnisse sind ja alle durch das FOSHKplugin beschreibbar - er überschreibt ja auch seine eigene Config. Wenn ich den Sourcecode richtig verstanden habe, ist bei der Fehlermeldung die Variable "infile" leer ( = ""). Das verstehe ich halt nicht...

Ich installiere das FOSHKplugin mal neu.

Re: FOSHKplugin

Verfasst: 09 Nov 2024, 17:40
von ProfMobilux
So, ich habe es hingebracht. Es sind (zumindestens im LoxBerry) absolute anstatt von relativen Pfaden notwendig! In der Hilfe stehen aber überall nur relative Pfade drin. Das war mal mein erster Denkfehler. So sieht es jetzt aus:

Meine foshkplugin.conf:

Code: Alles auswählen

[Forward-38]
FWD_ENABLE = True
FWD_CMT = TAGFILE Pool via FTP
FWD_OPTION = config=/opt/loxberry/config/plugins/foshkplugin/tag-def_wns.conf
FWD_URL = /opt/loxberry/log/plugins/foshkplugin/
FWD_INTERVAL = 60
FWD_IGNORE =
FWD_TYPE = TAGFILE
FWD_EXEC =
Tag-Defintion:

Code: Alles auswählen

[Tagfile]
infile = /opt/loxberry/config/plugins/foshkplugin/infile_wns.txt
outfile = /opt/loxberry/log/plugins/foshkplugin/outfile_wns.txt
append = False
task = save
tag = [[@keyname]]
postscript =  ""
dtime_format = "%A, %d.%m.%Y %H:%M"
locale_format = ""
pre_count = ""
dec_count = ""
dec_separator default = .
Damit kommt:

Code: Alles auswählen

09.11.2024 17:37:30.742 FWD-38: save to /opt/loxberry/log/plugins/foshkpluginoutfile_wns.txt : OK
Mein zweiter Denkfehler bzw. was ich nicht verstehe:

Wozu dient überhaupt die Option FWD_URL in der foshkplugin.conf wenn ich nur in ein File speichern will und nicht per ftp/http weiter senden möchte? Die scheint mir zum Speichern der Datei überhaupt nicht notwendig bzw. wird ignoriert:

Code: Alles auswählen

FWD_URL = /opt/loxberry/log/plugins/foshkplugin/
Der Pfad wird nicht verwendet. In der Hilfe steht dazu aber "# you may specify a local path, a ftp or http address", das hat mich total auf die falsche Fährte gelenkt.

Re: FOSHKplugin

Verfasst: 10 Nov 2024, 00:26
von olicat
Hi!

Der Nachteil bei relativen Pfaden ist immer, man weiss nicht genau, wo man ist.
In einer Standard-Installation (generic) von FOSHKplugin liegen Programm foshkplugin.py und Config-Datei foshkplugin.conf im selben Verzeichnis. Wie auch alle anderen notwendigen Dateien.
Im LoxBerry ist das deutlicher strukturierter - da muessen dann eben auch die in- und out-Files an den korrekten Orten stehen - sonst werden diese nicht gesehen und eingelesen.
Ohne Angabe eines Verzeichnisses erwartet Python zusaetzlich angesprochene Dateien im Verzeichnis des Programms.
Logischer waere natuerlich die Suche im Config-Verzeichnis, sofern kein absoluter Pfad angegeben wurde. Ich muesste dann aber erraten, was der Nutzer eigentlich will (etwa, wenn es die Datei sowohl unter config als auch unter data gibt).
Knifflig. Ich muss mal gucken, wie ich das hinbekomme.
Vermutlich ist es aber einfacher, bei LoxBerry auf die Verwendung von absoluten Pfaden hinzuweisen.
In der Hilfe steht dazu aber "# you may specify a local path, a ftp or http address", das hat mich total auf die falsche Fährte gelenkt.
Auch das muss ich mir wohl nochmal anschauen.
Tatsechlich wird die FWD_URL nur fuer http- und ftp-Transfers aktiv genutzt. Allerdings darf FWD_URL auch nicht leer sein, sonst wird der Forward nicht ausgefuehrt.
Ich hatte mir da bestimmt was gedacht ...

Wichtigste Frage:
Kannst Du denn nun ueber einen TAGFILE-Forward auch das Wetternetz Sachsen mit Daten beliefern?
Ich wuerde erwarten, das Du als FWD_URL die Adresse des Wetternetz Sachsen angeben und in der Tag-Konfiguration statt task = save ein task = GET eintragen musst.
Wahrscheinlich klappt das auch, wenn wie bisher als task = save angegeben ist (dann erfolgt der Versand per http/GET zusaetzlich zur Erzeugung des Ausgabefiles).

Oliver

Re: FOSHKplugin

Verfasst: 10 Nov 2024, 08:03
von ProfMobilux
Ich denke auch, dass einfach ein zusätzlicher Hinweis in der Hilfe zu den absoluten Pfaden ausreicht. Ich ergänze das im Wiki.

Ans Wetternetzwerk Sachsen mache ich mich als nächstes. Musste ja erst einmal das grundsätzliche Problem lösen ;-) Wenn das klappt, würde ich es auch im Wiki ergänzen.

Re: FOSHKplugin

Verfasst: 10 Nov 2024, 09:16
von ProfMobilux
Der Functionblock dtime funktioniert bei mir nicht wie erwartet. Er gibt immer einen Unix Timestamp aus. tdiff funktioniert hingegen wie erwartet:

Code: Alles auswählen

[[@[dtime(@time,%H:%M:%S)]]]
[[@[tdiff(@time,%H:%M:%S)]]]
Das ergibt:

Code: Alles auswählen

1731226287
08:11:27
Dann vielleicht noch ein weiterer Bug:

Setzt man in der Config "LOX_TIME = True", dann bekommt man die Loxtime nicht nur im Tag "loxtime" sondern auch im Tag "time", was ihn dann aber unbrauchbar macht. Erwartet hätte ich, dass time weiterhin einen Unix Timestamp enthält und loxtime den Loxone-Timestamp.