FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: fhem@supergut am 24 März 2019, 12:00:31

Titel: [gelöst] - readingsGroup zeigt korrekte Werte, aber mit ReadingsVal nicht alle
Beitrag von: fhem@supergut am 24 März 2019, 12:00:31
Moin,

kleines Problem hier: Ich habe eine readingsGroup .*:[tT]emp.*, die funktioniert einwandfrei für alle Werte. Dann sendet per selbstdefinierten Befehlen ein notify Temperaturwerte an einen MQTT Broker zur Anzeige auf einem entfernten Display.

Aber es funktioneren einige ReadingsVal nicht und liefern immer nur den gesetzten Wert 0, obwohl in der readingsGroup alle Werte einwandfrei zu sehen sind. Die Variable $bad steht als Platzhalter für weitere Werte.

Danke im Voraus. Schönen Restsonntag.

Die hier z.b. sind immer 0:

  my $comp1  = ReadingsVal("Computer","temperature",0);;\
  my $bad    = ReadingsVal("Bad","temperature",0);;\
  my $schlaf = ReadingsVal("NW-Dect200","temperature",0);;\



define c_mqttmsg cmdalias mqttmsgwork .* AS {qx(/usr/bin/mosquitto_pub -h 192.168.177.201 -t \"$EVTPART0\" -m \"$EVTPART1\")}
define c_mqttms2 cmdalias mqttmsghome .* AS {qx(/usr/bin/mosquitto_pub -h 127.0.0.1 -t \"$EVTPART0\" -m \"$EVTPART1\")}
define rg_fhemhome readingsGroup .*:[tT]emp.*
attr rg_fhemhome room fhemhome
define nt_fhemhome notify .*:[tT]emp.* {\
  my $wohn2  = ReadingsVal("SensorN171","Temp",0);;\
  my $comp1  = ReadingsVal("Computer","temperature",0);;\
  my $comp2  = ReadingsVal("SensorN170","Temp",0);;\
  my $bad    = ReadingsVal("Bad","temperature",0);;\
  my $schlaf = ReadingsVal("NW-Dect200","temperature",0);;\
  my $cmd = 'mqttmsgwork fhem/temphome "'.$bad.'y'.$wohn2.'y'.$comp1.'y'.$comp2.'y'.$bad.'y'.$schlaf.'y'.$bad.'y'.$bad.'"';;\
  my $cm2 = 'mqttmsghome fhem/temphome "'.$bad.'y'.$wohn2.'y'.$comp1.'y'.$comp2.'y'.$bad.'y'.$schlaf.'y'.$bad.'y'.$bad.'"';;\
  print STDERR $cmd;;\
  #fhem($cmd);;\
  fhem($cm2);;\
  }
attr nt_fhemhome room fhemhome



mqttmsgwork fhem/temphome "0y22.40y0y21.50y0y0y0y0"
Titel: Antw:readingsGroup zeigt alle korrekten Werte, aber mit ReadingsVal können nicht alle
Beitrag von: justme1968 am 24 März 2019, 12:03:58
readingsGroup hat keine eigenen readings. deshalb kann man ReadigsVal nicht verwenden.

du musst die werte aus den original devices holen.
Titel: Antw:readingsGroup zeigt alle korrekten Werte, aber mit ReadingsVal können nicht alle
Beitrag von: fhem@supergut am 24 März 2019, 12:11:17
Zitatdu musst die werte aus den original devices holen.

Danke. Aber wie? Die Werte sind doch irgendwo im FHEM gespeichert, wenn sie angezeigt werden können? Da muss man doch rankommen?
Titel: Antw:readingsGroup zeigt alle korrekten Werte, aber mit ReadingsVal können nicht alle
Beitrag von: justme1968 am 24 März 2019, 12:11:52
im original device. und nur da.
Titel: Antw:readingsGroup zeigt alle korrekten Werte, aber mit ReadingsVal können nicht alle
Beitrag von: fhem@supergut am 24 März 2019, 12:18:16
Danke, ist gelöst, manchmal sieht man den Wald blablabla... :-)

z.B $bad über das device MAX_12ec6f:
my $bad    = ReadingsVal("MAX_12ec6f","temperature",0);
Titel: Antw:readingsGroup zeigt alle korrekten Werte, aber mit ReadingsVal können nicht alle
Beitrag von: KernSani am 24 März 2019, 13:23:23
Zitat von: fhem@supergut am 24 März 2019, 12:18:16
Danke, ist gelöst, manchmal sieht man den Wald blablabla... :-)
Wäre schön, wenn du dann noch ein [gelösr] o.à. vor das Subject des ersten Posts schreibst :-)



Kurz, weil mobil
Titel: Antw:[gelöst] - readingsGroup zeigt korrekte Werte, aber mit ReadingsVal nicht alle
Beitrag von: KernSani am 25 März 2019, 23:29:36
und Themen bitte nicht schließen (möglicherweise gibt es Folge-Fragen)