[gelöst] Reading als state an dummy übergeben ohne Komma

Begonnen von ole30419, 28 Mai 2020, 11:57:42

Vorheriges Thema - Nächstes Thema

ole30419

Hallo,
ich versuche leider ohne Erfolg :-[ eine Reading über ein notify zugübergeben aber als ganze Zahl ohne Komma und ohne es mit stateFormat später zu bearbeiteten.
Ich habe eine Leistungsmesser von MomeMatic (HM-ES-PMSw1-Pl) und brauche, für openWB (Wallbox), die Leistung in Watt ohne Kommastelle.
Habe eine notify angelegt:

define PV_Module6Setzen notifyHM_Messung_Pwr {my $var= ReadingsVal("HM_Messung_Pwr","power",0); fhem("set PV_Module_aktuell_Watt_openWB $var ");}

Und über gebe es eine dummy ,,PV_Module_aktuell_Watt_openWB" nun wird unter ,,Readings" die Leistung in Watt angezeigt aber leider mit zwei stellen nach Komma.

Gibt es eine Möglichkeit ohne stateFormat das direkt im dummy under Readings ohne Kommastelle auszugeben?

Gruß Karsten
MfG Ole

Beta-User

Ähm, diese Konstruktion ist "komisch"...

Der Reihe nach:
- Wenn du etwas formatieren willst, geht das z.B. mit Perl-sprintf (bitte Doku selber suchen, das kann runden, alternativ "int").
- Werte zwischen verschiedenen Devices mit Eventhandlern "umzupacken" (v.a. in Dummy) ist meistens nicht nötig; hier klingt das danach, als wäre ein userReading der richtige Weg (oder gleich die formatierte Übermittlung an das Zieldevice, aber nicht an den dummy).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

ole30419

Ok, wenn das ,,komisch" ist  ;) dann versuch ich das mal besser zu erklären.

OpenWB holt sich Werte bei FHEM ab und zwar so:

http://<FHEM_IP>:<port>/fhem?XHR=1&cmd=%7BReadingsVal(%22<device>%22,%22<reading>%22,0)%7D

Also habe ich ein notify welchen in ein reading ein dummy schreibt, ich bekomme es aber nicht hin des Komma wegzunehmen.

Im Readings von  PV_Module_aktuell_Watt_openWB wird es immer mit Komma angezeigt zB: 2345.33

define PV_Module6Setzen notifyHM_Messung_Pwr {my $var= ReadingsVal("HM_Messung_Pwr","power",0); fhem("set PV_Module_aktuell_Watt_openWB $var ");}
MfG Ole

Beta-User

Na ja, und was spricht denn jetzt dagegen, das abzuholende Reading als userReading beim Ausgangsdevice zu halten?

"int" war ja genannt, ungetestet sollte das hier klappen:
attr HM_Messung_Pwr userReadings power_commaless:power.* {int(ReadingsVal($name,"power",0))}
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

amenomade

http://<FHEM_IP>:<port>/fhem?XHR=1&cmd=%7Bint(ReadingsVal(%22<device>%22,%22<reading>%22,0))%7D
sollte auch gehen
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

ole30419

@Beta-User Sorry ich habe vorher schon viele gesucht im Forum und es klappt auch einiges, aber manchmal blickt man es halt nicht....

@amenomade Danke genau damit hat es geklappt und ich brauch kein notify und dummy

Ich bin immer wieder begeistert von EUCH ;D ;D ;D ;D DANKE !!!!! :D ;D :D

MfG Ole