[gelöst] Wert schon im Readinglist ersetzen

Begonnen von kjmEjfu, 09 März 2021, 19:01:34

Vorheriges Thema - Nächstes Thema

kjmEjfu

Hallo,

ich kämpfe mal wieder mit meinen begrenzten Perl-Kenntnissen.

Also im Topic openWB/global/ChargeMode steht ein Wert von 0 - 4.
Ich will aber nicht die Zahl stehen lassen, sondern direkt im Readinglist die Zahl durch ihre Bedeutung ersetzen.

Jetzt habe ich sowas gebastelt
$DEVICETOPIC/global/ChargeMode:.* {my %h=(0=>'SofortLaden',1=>'MinPV',2=>'NurPV',3=>'Stop',4=>'Standby'); return $h{$EVENT}}
aber dann passiert gar nichts.

Sowas habe ich auch schon mal versucht:

$DEVICETOPIC/global/ChargeMode:.*  { $EVENT =~ s/"ChargeMode":4/"ChargeMode":"Standby"/g; $EVENT =~ s/"ChargeMode":3/"ChargeMode":"Stop"/g; return $EVENT }

Gleiches Ergebnis.
Wie mache ich das richtig?

Danke für Tipps.
Migriere derzeit zu Home Assistant

Otto123

Hi,

funktioniert eigentlich:
{my $EVENT=1;;my %h=(0=>'SofortLaden',1=>'MinPV',2=>'NurPV',3=>'Stop',4=>'Standby');;return $h{$EVENT}}
Bist Du sicher, dass im Event nur die Zahl steht? Logge doch mal:
{Log 1, "Das ist der Event -$EVENT-"}

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

kjmEjfu

2021.03.10 08:50:44.766 1: Das ist der Event -3-

Also ja, ist nur die Zahl.

Dein Codeschnipsel mag auch nicht  :(
Migriere derzeit zu Home Assistant

Otto123

Das wundert mich, wenn ich das hier in die FHEM Kommandozeile einwerfe:
{my $EVENT=3;;my %h=(0=>'SofortLaden',1=>'MinPV',2=>'NurPV',3=>'Stop',4=>'Standby');;return $h{$EVENT}}
Kommt das zurück
Stop
Wenn ich daraus ein notify und einen Dummy bastle:
defmod n_Test notify Test {my %h=(0=>'SofortLaden',1=>'MinPV',2=>'NurPV',3=>'Stop',4=>'Standby');;Log 1, "Das ist der Event:$EVENT -> $h{$EVENT}"}
attr n_Test room Test

defmod Test dummy
attr Test room Test

Und set Test 4 eingebe, bekomme ich das im Log:
2021.03.10 11:09:18 1: Das ist der Event:4 -> Standby
Also: Am Perl liegt es nicht ;)

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

kjmEjfu

Schön dass du keine Lösung hast, bei der ich denke "oh man, wie konnte ich das nur übersehen" :-D
Hab schon mqtt2.template durchwühlt, aber das hilft auch nicht.

Mein Workaround wäre den Wert nummerisch zu belassen und ein zusätzliches Userreading zu setzen. Anders wäre es aber natürlich schicker.
Migriere derzeit zu Home Assistant

kjmEjfu

{ 'ChargeMode' => 'test'}

funktioniert.

{my $EVENT=1;my %h=(0=>'SofortLaden',1=>'MinPV',2=>'NurPV',3=>'Stop',4=>'Standby');'ChargeMode' => '$h{$EVENT}'}

aber wieder nicht.
Migriere derzeit zu Home Assistant

Otto123

So:
openWB/global/ChargeMode:.* {my %h=(0=>'SofortLaden',1=>'MinPV',2=>'NurPV',3=>'Stop',4=>'Standby'); return {ChargeMode=>$h{$EVENT}}}

ca. 27 "Versuch / Irrtum" Versuche und verstehendes Lesen der Doku :)
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

kjmEjfu

Yeah  ;D

Danke dir!

Dann bastel ich jetzt mal weiter und vielleicht fällt ein MQTT-Template für die openWB dabei ab :-)
Migriere derzeit zu Home Assistant

hyper2910

Habe mein OPENWWB per MQTT eingebunden und kann per Alexa das Laden Starten, beenden.

Schön sieht das in FHEM nicht aus!   Wie habt ihr die OpenWB in FHEM dargestellt?

Bin für Anregungen offen.
Cubietruck mit FHEM, CUL V3 443MHz, 2 x CULV3 868MHz, Milights, Max Heizungssteuerung, Homematic, IT,

rudolfkoenig

Was genau ist "in FHEM"?
Und was waere denn schoen?

hyper2910

Aktuell sieht das ganze in FHEM so aus:



Vielleicht hat jeman ja was schickes gebastelt.
Cubietruck mit FHEM, CUL V3 443MHz, 2 x CULV3 868MHz, Milights, Max Heizungssteuerung, Homematic, IT,

kjmEjfu

Und was genau stört dich daran?

Wobei ich nicht glaube, dass zufällig einer der OpenWB-Nutzer in DIESEN Thread schaut und dir ein $hübsches Layout zeigt.
Migriere derzeit zu Home Assistant

sledge

\begin{OT}
Um ehrlich zu sein: Ich visualisiere openWB in FHEM "gar nicht". Greife nur die Daten zu eigenen Berechnungszwecken ab, um alles in "einer" Datenbank gespeichert zu habem - das war's.

Liegt aber vermutlich daran, dass mir die Einstelllungen in openWB (PV-Laden + Zielladen) vollkommen genügen und es damit gut automatisiert ist? Ich will ja nach Möglichkeit gar nicht Hand anlegen müssen.
\end{OT}




FHEM: debian Intel-NUC / 25 x MAX!, 15 x HM-bidcos, MQTT, 3 x 1wire, 20 x Shelly, 20 x Tasmota, 12 x Yeelight, Opentherm-GW, Espeasy, alexa-fhem, kodi, unifi, musiccast, ...