ein Reading zu mehreren machen?

Begonnen von curt, 23 Februar 2019, 05:20:49

Vorheriges Thema - Nächstes Thema

curt

Ich weiß gar nicht, wie ich die Frage formulieren soll - da mir die denkbaren/möglichen Ergebnisse nicht klar sind.

Gegeben sei ein Reading "timeoutdevs", das Reading ist
* leer
* genau ein Wert
* mehrere Werte, durch Komma getrennt

So beispielsweise:

timeoutdevs Bodenfeuchte_2,LuftM,Temperatur_Kinderzimmer


Das ist zwar schön, aber nicht handhabbar.

Ich sehe zwei Optionen (beide sah ich, kann ich aber nicht):
1) vermittels regExp irgendwie umbauen auf eine html-table-Struktur (im Reading selbst! vgl. Blitzer)
2) Jeden einzelnen Eintrag zu einem neuen Reading basteln. userReadings vermutlich.

Dabei ist wichtig, dass es Null, Ein oder mehr als einen Eintrag geben kann.

Wie mache ich das bitte am Besten?

Naja, anders gesagt: Ich kann sowas nicht. Ich hoffe immer, dass mir jemand möglichst mit Beispiel erklärt, wie man das macht. <seufzt>

P.S: Hintergrund meiner Frage ist das aus meiner Sicht geniale Modul "ReadingsSupervision", siehe dort.
RPI 4 - Jeelink HomeMatic Z-Wave

Wzut

man könnte dir vermutlich helfen wenn du ganze Geschichte erzählen würdest, d.h. was du mit den geteilten Informationen im Endeffekt anfangen willst.
Denn ob Bodenfeuchte_2,LuftM,Temperatur_Kinderzimmer nun nebeinander in Zeile stehen oder untereianderalle mit dem gleichen Wert , was bringt das ?
BTW: leer sollte da gar nicht vorkommen, sondern nur "none" und ich hatte dir im Ur Thread angeboten dich zu melden wenn eine Komma getrennte Liste nicht ausreichend ist. Ich kenne Blitzer nicht, also wie schaut eine Blitzer Table aus ?
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Wzut

Ich habe mir jetzt mal die Blitzer Ausgabe angeschaut , ne Liste mit Umbrüchen und html Tag davor und dahinter.
Wenn es nur das sein soll hier mein Vorschlag für ein userReading namens html zur Eingabe bei Raw definition
attr dein_Device userReadings html {my @a= split(',',ReadingsVal($name,'timeoutdevs','none'));; \
return '<html></html>' if ($a[0] eq 'none');;\
my $s='<html><p align=left>';; foreach (@a) {$s.=$_.'<br>';;} return $s.'</p></html>';;}
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

curt

Du sagtest, dass Du mit FTUI nichts am Hut hast. Also wollte ich Dich nicht belästigen, ist ja auch eine allgemeine Frage.

Ja - genau so hatte ich mir das vorgestellt. Wenn ich meinen goldenen Papporden "Freundlicher Helfer des Tages" verteilen dürfte - Du würdest ihn bekommen: Herzlichen Dank!
RPI 4 - Jeelink HomeMatic Z-Wave