stateformat Problem (gelöst)

Begonnen von Dieter68, 18 Februar 2018, 18:37:04

Vorheriges Thema - Nächstes Thema

Dieter68

Hallo,

ich bekomme von einem ESP8266 entweder den Status "Sta: on" oder "Sta: off".

Jetzt wollte ich die beiden Strings auf "on" oder "off" beschneiden.

Ich habe das mit {substr(ReadingsVal,6,3);} versucht.

Da bekomme ich aber folgende Fehlermeldung "Error evaluating ESPEasy_Heizung_Heizkreispumpe stateFormat: Not enough arguments for main::ReadingsVal at (eval 630) line 1, near "ReadingsVal,"


Ich habe mir zwar diverse Seiten zum Thema Perl durchgelesen aber irgendwie komme ich keinen Schritt weiter.

Es wäre klasse wenn Ihr mir erklären könntet wie man die Readings auf on oder off beschneiden kann.

Danke und Gruß
Dieter68

JensS

Schau dir mal den Abschnitt "Perl specials" in der commandref an:
ZitatReadingsVal(<devicename>,<reading>,<defaultvalue>)
Gibt den Inhalt der "readings" zurück (den Inhalt der in dem "Readings"-Abschnitt von "list device" angezeigt wird)
ReadingsVal("wz", "measured-temp", "20")

Gruß Jens
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.

MadMax-FHEM

ReadingsVal("Devicename", "Readingname", "Ersatzwert")

D.h. 3 Paramter...

Kurz, da nur Handy...

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)

Frank_Huber

Bei espeasy gibt es auch ein Attribut zum state einstellen.
Steht default auf 3 (3 Stellen vom reading Name)

Mit dem Handy online, daher kurz gefasst...


Dieter68

Zitat von: Frank_Huber am 18 Februar 2018, 20:00:35
Bei espeasy gibt es auch ein Attribut zum state einstellen.
Steht default auf 3 (3 Stellen vom reading Name)

Mit dem Handy online, daher kurz gefasst...

Hallo.

danke für die Info. Ich habe jetzt mal versucht den Wert auf 0 zu stellen aber dann bekomme ich an Stelle von Sta: on   jetzt opened angezeigt ???

Das bringt mich jetzt leider auch nicht weiter.  Ideal wäre wenn man einfach nur on oder eben off angezeigt bekommen würde.

Oder habe ich da jetzt etwas falsch verstanden?

Gruß
Dieter68

Dieter68

Hallo,

was ist denn mit Ersatzwert gemeint ?

Ich hänge mal ein Bild von dem Device an - eventuell könnt Ihr mir dann etwas genauer helfen

Danke aber schon mal für die Infos.

MadMax-FHEM

#6
Lies halt die Doku zu ReadingsVal...

Für den Fall dass das Reading beim angegebenen Gerät nicht gelesen werden konnte: Ersatzwert...

ReadingsVal ist eine Funktion die entweder den Reading-Wert oder eben den Ersatz-Wert liefert...

Wieder nur Handy, wieder nur kurz...

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)

Dieter68

Habe ich gelesen.

Aber man kann ja  auch einfach nur "" also keinen Ersatzwert eingeben. Das steht so nicht in der Hilfe.

Gruß
Dieter68

MadMax-FHEM

Fraglich welchen Sinn ein leerer Ersatzwert hat.
Anhand des Ersatzwerts sollte/könnte man prüfen, dass eben der Wert nicht aus dem Reading stammt...

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)

Dieter68

Zitat von: MadMax-FHEM am 18 Februar 2018, 20:39:03
Fraglich welchen Sinn ein leerer Ersatzwert hat.
Anhand des Ersatzwerts sollte/könnte man prüfen, dass eben der Wert nicht aus dem Reading stammt...

Gruß, Joachim


Da hast Du natürlich Recht nur ich bin Anfänger und froh wenn ich hier auch nur einen Schritt weiter komme.

Um da auf solche Feinheiten zu prüfen müsste man(ich) schon mehr Ahnung von der Sache haben.

Im Grunde möchte ich bei der Pumpe einfach nur je nach Betriebszustand verschiedene Icons anzeigen was ja mit devstateIcon gehen soll.

Jetzt habe ich ja die Zustände "Sta: on"   und  "Sta: off" was die Sache nicht gerade erleichtert.

Beispiele wie das mit "on" und "off" geht habe ich genug aber mit meinen Zuständen bekomme ich das einfach nicht hin.

Jetzt wollte ich eben das "Sta:" einfach abschneiden und hoffentlich so einen Wechsel der Icons hin bekommen.

Die Elektronik macht mir keine Probleme aber eben die Meldungen in FHEM einzubinden schon und von Perl habe ich leider auch keine Ahnung.

Ich dachte halt mit learning by doing komme ich am besten in das Thema FHEM rein.

Gruß
Dieter68

Frank_Huber

Hier einer meiner sonoffs.
StateFormat funktioniert tadellos. (https://uploads.tapatalk-cdn.com/20180218/18aef62eeddfe49a6202be4f9706f0a3.jpg)

Mit dem Handy online, daher kurz gefasst...


Dieter68

Zitat von: Frank_Huber am 18 Februar 2018, 21:05:09
Hier einer meiner sonoffs.
StateFormat funktioniert tadellos. (https://uploads.tapatalk-cdn.com/20180218/18aef62eeddfe49a6202be4f9706f0a3.jpg)

Mit dem Handy online, daher kurz gefasst...


Bei meinem Sonoff funktioniert das auch wunderbar mit den Icons rot grün und blau.

Aber bei der Nummer mit den Pumpen will es einfach nicht klappen ?????

Ich forsche da mal weiter ..... :-\

Gruß
Dieter68

Frank_Huber

#12
Nach deinem Screenshot müsste "attr Name stateFormat Status" funktionieren.

Dieter68

Zitat von: Frank_Huber am 18 Februar 2018, 21:30:47
Nach deinem Screenshot müsste "attr Name stateFormat Status" funktionieren.


Danke das war die Lösung ....

Meine Güte habe ich da umständlich gedacht.

Ich muss noch viel lernen und hoffentlich blicke ich da mal richtig durch.

Danke und Gruß
Dieter68

Frank_Huber

Hauptsache läuft. [emoji106][emoji6]

Mit dem Handy online, daher kurz gefasst...