[gelöst] Frage zu Ersatzwert von Readingsval

Begonnen von TomLee, 15 Juni 2018, 15:43:48

Vorheriges Thema - Nächstes Thema

TomLee

Hallo,

kann mir wer sagen weshalb ich nicht "Error" als Ausgabe bekomme wenn das Reading list_SHOPPING_ITEM keinen Inhalt hat und ich folgendes in die Befehlszeile eingebe:

{ReadingsVal("Echo", "list_SHOPPING_ITEM", "Error")}

Gruß

Thomas

marvin78

Was bekommst du denn? Hat es wirklich keinen Inhalt oder wird nur keiner dargestellt? Ist der Inhalt vielleicht ein Leerstring.

Wenn es keinen Inhalt hat, ist es trotzdem vorhanden. Den Fallback-Wert erhälst du nur, wenn das Reading nicht defined ist. Leer ist auch ein Wert.

Demnächst bitte etwas mehr Infos posten.

rabehd

Zitatwenn das Reading list_SHOPPING_ITEM keinen Inhalt hat
Das geht nicht, siehe marvin78
Auch funktionierende Lösungen kann man hinterfragen.

TomLee

Ok, dann andersherum.

Kann ich in einem notify mit if auf einen Leerstring prüfen, siehe hier.

TomLee

Ok, nochmal nachgelesen und das was ich schon versucht habe ist auf einen Leerstring zu prüfen. Klappt aber nicht.

Otto123

Mach mal ein list echo in dem Zustand wo Du der Meinung bist, es ist ein Leerstring im reading: list_SHOPPING_ITEM

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Beta-User

#6
{length(ReadingsVal("Echo", "list_SHOPPING_ITEM", "Error")} wäre vielleicht noch interessant ;) ?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

TomLee

Internals:
   CHANGED   
   DEF        crypt:305b09085443185550170c4e405c0f79111e0d5a095e0d5d165XXX crypt:3c5e071147594e0XXX
   IODev     
   NAME       Echo
   NR         366
   NTFY_ORDER 50-Echo
   STATE      connected
   TYPE       echodevice
   model      ACCOUNT
   OLDREADINGS:
   READINGS:
     2018-06-15 06:54:43   2FACode         not used
     2018-06-15 06:54:44   BrowserLanguage de-DE
     2018-06-15 06:54:44   BrowserUserAgent D0mNJGT328HQPD4ufLXXX
     2018-06-15 06:54:45   COOKIE_STATE    OK
     2018-06-15 06:54:44   COOKIE_TYPE     NEW
     2018-05-14 21:44:33   alarm_count     0
     2018-06-14 17:05:31   autocreate_devices stop
     2018-03-20 00:14:23   aws_outputformat mp3
     2018-03-20 11:29:13   aws_pythonversion 0.0.3
     2018-06-15 16:52:28   list_SHOPPING_ITEM
     2018-06-12 09:49:34   list_TASK       o._k._kündigen,waschbeckenarmatur
     2018-05-14 21:44:33   musicalarm_count 0
     2018-03-19 23:45:34   pom_ipaddress   192.168.188.26
     2018-05-14 21:44:33   reminder_count  0
     2018-06-15 06:54:33   state           connected
     2018-05-14 21:44:33   timer_count     0
     2018-05-14 21:44:33   timer_id        -
     2018-05-14 21:44:33   timer_remainingtime 0
     2018-06-15 17:02:04   tou             o. k. kündigen,waschbeckenarmatur
     2018-03-19 23:45:18   tts_ipaddress   192.168.188.26
     2018-06-14 17:05:31   version         0.0.37
   helper:
     DEVICETYPE A15ERDAKK5HXXX
     RUNLOGIN   0
     RUNNING_REQUEST 0
     SERVER     layla.amazon.de
     TWOFA     
     VERSION   
     CMD_QUEUE:
     ITEMS:
       SHOPPING_ITEM:
         butter     ABLFB4UU38CN0#6d85cd25-2a19-4917-8d5a-c0d79ed4d4da
       TASK:
         o._k._kündigen ABLFB4UU38CN0#361b41ac-9775-471b-b877-0e05ef7f5b46
         waschbeckenarmatur ABLFB4UU38XXX#c17dcb06-8850-4080-bcb5-007a14d4d68b
     notifications:
       _14dee0df9b234fc683e1978550a8170c:
       _G090L90964221XXX:
       _G090L90964430XXX:
       _account:
Attributes:
   TTS_normalize 5
   browser_language de-DE
   browser_useragent_random 1
   comment    <a href="https://mwinkler.jimdo.com/smarthome/eigene-module/echodevice/"></a>
   event-on-change-reading .*
   icon       echo
   room       Echo
   server     layla.amazon.de
   userReadings tou {my $sl = ReadingsVal('Echo','list_TASK',''); $sl =~ tr/_/ /; return $sl;}
   verbose    0

TomLee

"length" hatte ich auch schon durch, versuchs aber später auch nochmal.

Otto123

ich bin der Meinung jetzt steht "" im Reading ... also eq "" müsste wahr ergeben.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

TomLee

{length(ReadingsVal("Echo","list_SHOPPING_ITEM","Error"))}

ergibt jetzt wenigstens "0", ist ja jetzt wenigstens etwas.

@Otto

nicht nur jetzt, sondern dann schon die ganze Zeit, mit all meinen versuchen. Klappt ja aber nicht.

Ich möchte das Filewrite nicht ausgeführt wird wenn das Reading "" ist, also ne nicht eq.



Beta-User

Zitat von: TomLee am 15 Juni 2018, 17:55:29
{length(ReadingsVal("Echo","list_SHOPPING_ITEM","Error"))}
ergibt jetzt wenigstens "0", ist ja jetzt wenigstens etwas.
Dann mach das filewrite() nur, wenn da was drinsteht. Einfachste Variante von "Mach nur, wenn nicht" ist unless (), kann man genau wie if () bei Perl nach hinten nehmen. 
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

TomLee

Danke. Werd ich später versuchen, jetzt ist keine Zeit.

TomLee

Habs. Danke dir.

Auch wenn ich mir mit der Syntax nicht sicher bin klappt's jetzt mit :

Echo:list_SHOPPING_ITEM:.* {FileWrite({ FileName=>"/tmp/einkaufsliste.txt", ForceType=>"file" },split(/\,/,$EVTPART1))};;unless ({length($EVTPART1)} ne "0")

Beta-User

Da sind einige Fehler drin. Keine ; , Klammern und Syntax wie sonst if
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files