Formatierung stateFormat syntax

Begonnen von eule66, 04 Mai 2017, 16:59:01

Vorheriges Thema - Nächstes Thema

eule66

Hallo zusammen

Ich habe ein kleines Problem mit der Ansicht meiner Temperaturen, ich möchte gerne das "temperature" nicht mit angezeigt bekommen.
Kann ich das über stateFormat ändern und wenn ja gibt es eine Übersicht der stateFormat Syntax?

Danke und Grüße

Thorsten Pferdekaemper

Hi,
zeig mal ein list eines dieser Devices.
Gruß,
   Thorsten
FUIP

eule66

Internals:
   DEF        28.FF6795521604 60
   IODev      myLocalOWServer
   LAST_READ_FAILED 0
   NAME       Kellertemp.
   NOTIFYDEV  global
   NR         119
   NTFY_ORDER 50b-Kellertemp.
   STATE      temperature: 16.75  alarm: 1
   TYPE       OWDevice
   Readings:
     2017-05-04 18:09:28   alarm           1
     2017-05-04 18:09:28   state           temperature: 16.75  alarm: 1
     2017-05-04 18:09:28   temperature     16.75
   Fhem:
     address    28.FF6795521604
     alerting   1
     bus        bus.0
     interfaces temperature
     interval   60
     getters:
       address
       crc8
       family
       fasttemp
       id
       locator
       r_address
       r_id
       r_locator
       temperature
       temperature10
       temperature11
       temperature12
       temperature9
       temphigh
       templow
       type
     polls:
       temperature
     setters:
       temphigh
       templow
     state:
       temperature
Attributes:
   IODev      myLocalOWServer
   model      DS18B20
   room       Keller,OWDevice

Thorsten Pferdekaemper

Hi,

attr Kellertemp. stateFormat temperature

Das ganze ist in der Commandref beschrieben.
Gruß,
   Thorsten
FUIP

eule66

Ok alles klar danke

Hab es jetzt in der commandref gefunden.

Was mir nur noch nicht ganz klar ist, gibt es eine Übersicht wie ich den Wert weiter formatieren kann z. B. wieviele stellen nach dem komma, oder in rot oder in Fahrenheit oder grad usw? Dazu hab ich nichts gefunden

justme1968

auch das steht in der commandref.

siehe den link zu set magic" und devStateStyle

attr Kellertemp stateFormat [$name:temperature:r1] rundet z.b. auf eine nachkomma stelle.

wenn du noch mehr brauchst gilt die {...} perl code version.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Thorsten Pferdekaemper

Zitat von: eule66 am 04 Mai 2017, 19:10:18Was mir nur noch nicht ganz klar ist, gibt es eine Übersicht wie ich den Wert weiter formatieren kann z. B. wieviele stellen nach dem komma, oder in rot oder in Fahrenheit oder grad usw? Dazu hab ich nichts gefunden
Ich glaube, farbig oder blinkend geht mit stateFormat nicht, bin mir aber nicht ganz sicher.
Der Rest geht mit Perl. Dazu gibt es einiges an Doku, z.B. hier:
https://wiki.selfhtml.org/wiki/Perl
Ansonsten frag' hier, wenn Du was bestimmes machen willst.
Gruß,
   Thorsten
FUIP

mw77

Bei mir steht sowas zum Beispiel in stateFormat:

<b>Temp: temperature°C <br/><div style='color:blue'>Hum: humidity%</div> Batterie: battery</b></div>

Sieht dann wie auf dem Bild aus
HM, HMIP, Shelly, und anderes

Thorsten Pferdekaemper

Ah, ok. Es wird also das, was da drin steht einfach in's html reinkopiert. Dann geht natürlich farbig...
Gruß,
   Thorsten
FUIP

KernSani

RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Thorsten Pferdekaemper

Zitat von: KernSani am 04 Mai 2017, 20:30:03
Selfhtml Perl wird abgeschaltet :-(
Ja, aber die Liste mit den Links ist immer noch gut.
Gruß,
   Thorsten
FUIP

eule66

Hallo

ich nochmal hab jetzt folgendes aus der commdref ausprobiert:
Es soll die Zahl aus einem Reading auf 2 Nachkommastellen formatiert werden:

[mydevice:myreading:d:sprintf("%.2f",$1)]

folgendes hab ich eingegeben: attr Kellertemp. stateFormat Kellertemp.:temperature:d:sprintf("%.2f",$1)

und das kommt raus siehe Bild      was mache ich falsch, es wurde auf eine Nachkommastelle gerundet statt auf 2 und die Ansicht ist s...

justme1968

schau dir bitte noch mal mein beispiel von oben an. weder dort noch in der commandref steht etwas von sprintf.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

eule66

Hallo justme1968

Wenn ich es so eingebe wie du das angegeben hast geht es auch nicht

justme1968

was genau hast du eingegeben und was geht nicht?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968