WS3600 - Wie hole ich Daten von einem externen Host

Begonnen von odie13690, 17 Juli 2015, 07:45:55

Vorheriges Thema - Nächstes Thema

odie13690

Hallo,

ich wollte meine WH1080 in FHEM einbinden. Dazu habe ich zunächst pywws auf dem selben RasPi genutzt, auf dem auch FHEM läuft. Prinzipiell hat das auch funktioniert. Allerdings lief pywws nicht zuverlässig, da aufgrund Auslastung mehr oder weder regelmäßig die Verbindung WH1080 abriss.

Nun habe ich pywws auf einem zweiten RasPi laufen. Das läuft jetzt. Leider bekomme ich die Daten aus der auf dem zweiten RasPi liegenden ws3600.txt nicht von FHEM ausgelesen. Mit define myWS1080 WS3600 "ssh pywws@weather.example.com cat /var/www/weather/data/ws3600.txt" laut Wiki komme ich nicht weiter. Habe es mit
define myWS1080 WS3600 "ssh LokaleIP cat /var/www/weather/data/ws3600.txt"
define myWS1080 WS3600 "LokaleIP cat /var/www/weather/data/ws3600.txt"
define myWS1080 WS3600 "LokaleIP cat /var/www/weather/data/ws3600.txt"
define myWS1080 WS3600 "ssh pywws@LokaleIP cat /var/www/weather/data/ws3600.txt" vergeblich versucht...

odie13690

franky08

Aber hoffendlich "Locale IP" auch mit der richtigen IP ersetzt, oder? Auf dem localhost ist das die 127.0.0.1!

VG
Frank

P.S. Ich mache das über fowsr auf dem Host und lese die Daten über F2F und das WS3600 Modul in fhem (hauptinstanz) ein
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

Rince

Ich denke, das Problem liegt an der Rechtevergabe bzw. dem Anmelden an dem fhem-Rechner an sich. Also ein Netzwerk-Freigabe-Problem.

Halbgute Lösung 1
Gib per NFS die Logfiles auf dem WS-Raspberry frei,
mounte dir in der fstab auf dem fhem-Raspberry das Verzeichnis an einen sinnvollen Ort, den du von fhem aus einfach nutzen kannst. Ein Unterordner von ./ logs oder so.


Bessere Lösung:
pywws kann doch MQTT spielen.
Du müßtest dazu einen MQTT Broker installieren (tendentiell auf dem fhem-Raspberry).
Dann gibt es für fhem ein MQTT Modul.

Vorteil:
Du hättest direkt die Werte in fhem. Solange du nur TXT Dateien einliest (das ist das, was du offensichtlich willst?), kannst du zwar Graphen erstellen, bekommst aber letztlich keine Events, die dir in fhem irgend etwas nützen.


Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

odie13690

Zitat von: franky08 am 17 Juli 2015, 08:26:38
Aber hoffendlich "Locale IP" auch mit der richtigen IP ersetzt, oder? Auf dem localhost ist das die 127.0.0.1!

LokaleIP habe ich durch die IP des WS-RasPi im Netzwerk ersetzt...

Zitat von: Rince am 17 Juli 2015, 09:25:32
Ich denke, das Problem liegt an der Rechtevergabe bzw. dem Anmelden an dem fhem-Rechner an sich. Also ein Netzwerk-Freigabe-Problem.

Halbgute Lösung 1
Gib per NFS die Logfiles auf dem WS-Raspberry frei,
mounte dir in der fstab auf dem fhem-Raspberry das Verzeichnis an einen sinnvollen Ort, den du von fhem aus einfach nutzen kannst. Ein Unterordner von ./ logs oder so.


Bessere Lösung:
pywws kann doch MQTT spielen.
Du müßtest dazu einen MQTT Broker installieren (tendentiell auf dem fhem-Raspberry).
Dann gibt es für fhem ein MQTT Modul.

Vorteil:
Du hättest direkt die Werte in fhem. Solange du nur TXT Dateien einliest (das ist das, was du offensichtlich willst?), kannst du zwar Graphen erstellen, bekommst aber letztlich keine Events, die dir in fhem irgend etwas nützen.

Ich denke auch, dass es auch ein Rechteproblem ist. Kenne mich leider zu wenig in Linux aus. Wie wäre denn die korrekte Syntax für FHEM im lokalen Netzwerk, wenn das Rechteproblem geklärt ist?

MQTT bzw. die von dir geschilderten Vorteile hören sich sehr gut an. Gibt es dazu ein HowTo, wie ich das auf einem RasPi einrichte?

odie13690

Rince

#4
Auf dem WS Rechner:
http://pywws.readthedocs.org/en/latest/essentials/dependencies.html#mqtt

Genau gemmen kann ich kaum weiter helfen als Google, da ich das auch noch nie gemacht habe...


Ich würde zunächst mal die Commandref lesen:
http://fhem.de/commandref#MQTT_DEVICE

Daraus geht hervor, dass es ein mehrstufiges Modul ist.
Server=>Clients
Was die Bridge ist, weiß ich nicht.

Vermutlich:
MQTT => MQTT_Bridge => MQTT_Device


Für den Broker (wohl der MQTT Server), kann ich auch nur googlen:
http://www.reddit.com/r/raspberry_pi/comments/2tbsj8/running_mosquitto_mqtt_broker_on_raspberry_pi/
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

odie13690

Hallo,

habe jetzt erstmal NFS eingerichtet. Klappt auch soweit.

Bzgl. pywws scheint es mir allerdings so zu sein, dass die Daten nur solange in die ws3600.txt geschrieben werden, wie Putty läuft. Sollte das nicht auch (weiter) laufen, wenn ich Putty beende?

odie13690

Rince

Nö.
Wenn du über Putty in der Shell was anwirfst, wird es mit der Shell zusammen beendet.


Es gibt 2 Tools, die das umgehen, hab ich aber grad net im Kopf :(
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

P.A.Trick

Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn