WBS Sensor - Daten zerlegen

Begonnen von peko3006, 04 Dezember 2015, 10:56:45

Vorheriges Thema - Nächstes Thema

frank

ZitatDa aber im userReading alles ankommt sollte das unerheblich sein oder?
du hast es immer noch nicht ganz verstanden, denn bei dir gibt es dein definiertes userreading watt immer noch nicht.

du hast nur ein reading gas, dass dein modul erzeugt. der inhalt wird nie zerlegt werden.

eventuell unterstützt das wbs modul keine userreadings.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

dev0

#31
Zitat von: peko3006 am 09 Dezember 2015, 12:51:31
Da aber im userReading alles ankommt sollte das unerheblich sein oder?
Was kommt alles im userReading an?

Zitat von: frank am 09 Dezember 2015, 13:28:40
eventuell unterstützt das wbs modul keine userreadings.
Die Vermutung hatte ich auch, aber zumindest mit einem setreading funktioniert es in meiner Testumgebung.

Edit:
@peko3006: teste mal mit setreading den Wert in gas oder state zu ändern, den du im userReading verarbeitest.

viegener

Das Problem könnte sein, dass das verwendete Modul nicht die offiziellen Funktionen zum ReadingsUpdate verwendet, sondern direkt die Readings im hash setzt. Damit werden die userReadings nicht getriggert...

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

dev0

Zitat von: viegener am 09 Dezember 2015, 13:43:54
Damit werden die userReadings nicht getriggert...
Tippe ich auch drauf.

viegener

Ich habe mal als quick hack das 18_WBS.pm umgestellt, sodass ReadingsSingleUpdate verwendet wird. Das findet sich anbei.
Da ich das jetzt nicht testen konnte, auf eigene Gefahr! Wenn jemand testen will, runterladen 18_WBS.pm im FHEM-Directory umbennen (...sav oder so) angehängte Datei ins FHEM-Verzeichnis und FHEM neu starten. Dann mal abwarten...

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

peko3006

Super. Es klappt. Da muss man erstmal drauf kommen.

Das das noch kein Anderer moniert hat wundert mich.

Wie bekommt ihr denn eure WLAN/LAN Nodes Daten ins FHEM?
Vielleicht bietet sich da ja auch noch etwas anderes an.

peko3006

Hallo Leute ich muss das Thema noch einmal aufgreifen. Ich habe jetzt ein Tablet im Korridor postioniert was mittels Bewegunsgmelder aktiviert wird (Strom an/aus -> Display aktiv) und Daten aus dem FHEM und paar Bilder aus einem Fotoordner anzeigt. Funktioniert soweit auch ganz hervorragend.

Nun zum Problem. Um den Ladezustand zu monitoren lasse ich mit per Automate bei Display ON per URL Aufruf diesen übertragen.
Die definition sieht so aus.

define PIRMotion WBS motion 99
attr PIRMotion userReadings motion { my $val = ReadingsVal($name,"motion",0);; $val =~ s/.*M;;(\d+).*/$1/;; return $val;;}, \
battlevel { my $val = ReadingsVal($name,"motion",0);; $val =~ s/.*batt;;(\d+).*/$1/;; return $val;;}


und in FHEm kommt beim Aufruf von

{ReadingsVal("PIRMotion","motion",0)} folgendes an

M;0|batt;46

Leider werden die Werte nicht den Varibalen battlevel und Motion zueordnet.

Sieht jemand den Fehler?

Wenn ich es in der Konsole ausführe geht es
echo "M;0|batt;62" | perl -pe 's/.*batt;(\d+).*/$1/'
ergibt : 62