Autor Thema: Maskieren von Systemvariablen in AT bzw. Notify  (Gelesen 2635 mal)

Offline cwagner

  • Sr. Member
  • ****
  • Beiträge: 686
Maskieren von Systemvariablen in AT bzw. Notify
« am: 30 November 2013, 11:52:16 »
Hallo,

vielleicht kann das einer der Profis erklären: Warum gibt es unterschiedliche Vorgehensweisen beim Behandeln von beispielsweise % in AT oder Notify Befehlen?

my $menge = sprintf("%.1f",(ReadingsVal("Wetterstation","rain",0) - ReadingsVal("RegenmengeOffset","state",0))/1.185);
funktioniert in einem AT, in einem Notify muss ich aber verdoppeln:

my $menge = sprintf("%%.1f",(ReadingsVal("Wetterstation","rain",0) - ReadingsVal("RegenmengeOffset","state",0))/1.185);
 ???

Christian
Raspi 2B+3B: Raspbian 10,Perl v5.28.1, FHEM 6.1. 270 Entities in DbLog  für Heizung mit FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HM (CUL), 1-Wire (FT232RL & DS2480B), EnOcean (TCM EPS3), MQTT2. Im Einsatz u.a. DOIF, PID20, Threshold, OWX NewGen; Micropelt IRTV, Volkszähler

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 21280
Antw:Maskieren von Systemvariablen in AT bzw. Notify
« Antwort #1 am: 30 November 2013, 12:06:29 »
das hat den grund das in einem at % (früher) für das auslösende event stand. inzwischen ist das auf $EVENT umgestellt aber um rückwärts kompatibel zu sein wird % immer noch durch das event ersetzt wenn im code kein $EVENT vorkommt.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, …

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

Offline cwagner

  • Sr. Member
  • ****
  • Beiträge: 686
Antw:Maskieren von Systemvariablen in AT bzw. Notify
« Antwort #2 am: 30 November 2013, 15:30:10 »
Vielen Dank für diese Antwort - daraus schließe ich hoffentlich richtig, dass ich am besten nur noch $EVENT, $DEVICE usw nehme unabhängig von eventuellen älteren Notationen in Beispielen oder auch Commandref?

Herzliche Grüße

Christian
Raspi 2B+3B: Raspbian 10,Perl v5.28.1, FHEM 6.1. 270 Entities in DbLog  für Heizung mit FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HM (CUL), 1-Wire (FT232RL & DS2480B), EnOcean (TCM EPS3), MQTT2. Im Einsatz u.a. DOIF, PID20, Threshold, OWX NewGen; Micropelt IRTV, Volkszähler

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 21280
Antw:Maskieren von Systemvariablen in AT bzw. Notify
« Antwort #3 am: 30 November 2013, 15:38:16 »
ja. in einem at solltest du $EVENT & co. verwenden.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, …

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

 

decade-submarginal