(gelöst) Syntax-Problem beim Schalten einer Steckdose

Begonnen von uron, 09 März 2023, 10:52:50

Vorheriges Thema - Nächstes Thema

uron

Nun bin ich schon einige Jahre hier im Forum unterwegs und habe erfolgreich einige Devices in mein System integriert, scheitere aber seit ein paar Tagen an einer scheinbar einfachen Aufgabenstellung. Offenbar stehe ich dabei auf dem Schlauch und brauche Hilfe:
Mein ursprünglicher Algorithmus ist um einiges komplexer, deshalb habe ich das Problem auf das offenbare Kernproblem reduziert und stelle es hier zur Diskussion:

Ich möchte einen an eine Shelly SmartPlugS-Steckdose angeschlossenen Lüfter mit folgender Befehlsfolge einschalten:
define PVLuefterON at +*00:02 {if (Value("LeistungsmesserShellyPlugS") eq "off") {fhem ("set LeistungsmesserShellyPlugS on")}}

Über die Shelly-App und FHEM-Web klappt das Einschalten manuell einwandfrei, jedoch nicht über die o.g. Logik.

Zu Verdeutlichung hier noch das List des Device
Internals:
   DEF        192.168.2.163
   DURATION   0
   FUUID      64079440-f33f-aab4-edd1-7f8668b3527a20e2
   INTERVAL   1
   NAME       LeistungsmesserShellyPlugS
   NR         698
   SHELLYID   shellyplug-s-80646F83F09A
   STATE      off
<br>
0 W
   TCPIP      192.168.2.163
   TYPE       Shelly
   eventCount 91463
   READINGS:
     2023-03-09 10:49:29   KW              0.000
     2023-03-09 10:19:14   cloud           enabled(connected)
     2023-03-09 10:36:00   energy          12.3
     2023-03-07 20:45:12   firmware        v1.12.2
     2023-03-09 10:49:27   inttemp         28.89
     2023-03-09 10:18:50   network         <html>connected to <a href="http://192.168.2.163">192.168.2.163</a></html>
     2023-03-09 10:35:51   overpower       0
     2023-03-09 10:35:51   power           0
     2023-03-09 10:39:02   relay           off
     2023-03-09 10:39:02   state           off
Attributes:
   alias      PV-Luefter
   devStateIcon on*:black_Steckdose.on off*:black_Steckdose.off
   icon       vent_ventilation_level_1
   interval   1
   model      shellyplug
   room       Büro,Shelly-Devices
   stateFormat relay
<br>
power W
   userReadings KW {sprintf("%.3f",ReadingsVal($name,"power",0)/1000) }


Könnt ihr mir helfen, von Schlauch zu kommen?
RasPi-FHEM  FHEMobile  CUL  FS20-, HM-, Intertechno-, AVM- und Shelly-Aktoren, Vitoconnect 100, Vitocal 200-S, Optolink, FTUI auf iPad, FTUI auf iPhone, Stromzähler von Powerfox, Wechselrichter Growatt MIN 4600 TL-XH, RasPi-ioBroker

Otto123

an dem Stück code kann es mMn nicht liegen. Das macht was es soll: alle zwei Minuten wird eingeschaltet, falls ausgeschaltet war.
Ist Deine Erwartung eine Andere?
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

MadMax-FHEM

#2
Zitat von: Otto123 am 09 März 2023, 11:05:32
an dem Stück code kann es mMn nicht liegen. Das macht was es soll: alle zwei Minuten wird eingeschaltet, falls ausgeschaltet war.

Sehe ich auch so, sofern in STATE (nicht state wg. Value() statt ReadingsVal() ) auch "off" steht und nicht (durch das Modul/Device oder stateFormat o.ä.) was anderes...

Zitat von: Otto123 am 09 März 2023, 11:05:32
Ist Deine Erwartung eine Andere?

Ja wäre auch meine Frage, weil
Zitat
Über die Shelly-App und FHEM-Web klappt das Einschalten manuell einwandfrei, jedoch nicht über die o.g. Logik.
war mir (auch) etwas wenig "Fehlerbeschreibung" ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

uron

"STATE" (Internals) und "state" (Readings) steht lt. list ja auf "off".
Rufe ich DeviceOverview auf, sehe ich dort unter "Internals"
STATE

off
<br>
0 W

RasPi-FHEM  FHEMobile  CUL  FS20-, HM-, Intertechno-, AVM- und Shelly-Aktoren, Vitoconnect 100, Vitocal 200-S, Optolink, FTUI auf iPad, FTUI auf iPhone, Stromzähler von Powerfox, Wechselrichter Growatt MIN 4600 TL-XH, RasPi-ioBroker

MadMax-FHEM

Naja aber "off <br> 0W" ist halt nicht "identisch" zu "off"...

Entweder mittels "match" abfragen oder (viel besser) ReadingsVal("LeistungsmesserShellyPlugS", "state", "n.a.") eq "off"

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

uron

Oh man, darauf wäre ich wirklich nicht gekommen - klappt jetzt!
Vielen Dank!
RasPi-FHEM  FHEMobile  CUL  FS20-, HM-, Intertechno-, AVM- und Shelly-Aktoren, Vitoconnect 100, Vitocal 200-S, Optolink, FTUI auf iPad, FTUI auf iPhone, Stromzähler von Powerfox, Wechselrichter Growatt MIN 4600 TL-XH, RasPi-ioBroker

MadMax-FHEM

Zitat von: uron am 09 März 2023, 11:35:55
Oh man, darauf wäre ich wirklich nicht gekommen - klappt jetzt!
Vielen Dank!

Packst du noch deine Lösung rein :)

Man kann sich die zwar (er)denken aber wenn es da steht... 8)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)