Hallo zusammen,
wenn ich bei einem MQTT_Device ein Reading in der Art:
subscribeReading_irgendwas /hooks/devices/3/SensorData/irgendwas
anklicke, erhalte ich ein Popup-Fenster mit folgendem Inhalt:
fhemweb.js line 1016: TypeError: selVal is null
Mache ich was falsch, oder ist das noch ein Fehler ?
Definieren konnte ich ohne Probleme:
attr device subscribeReading_irgendwas /hooks/devices/3/SensorData/irgendwas
Hier das List eines exemplarischen Devices:
Internals:
DEF KE.th
IODev MQTT
NAME KE.th
NOTIFYDEV KE.th
NR 500
STATE T: 20.20 H: 63.00
TYPE MQTT_DEVICE
qos 0
retain 0
READINGS:
2017-08-15 20:46:49 Battery ok
2017-08-15 20:46:49 Dewpoint 12.94
2017-08-15 20:46:49 Humidity 63.00
2017-08-15 20:46:49 Temperature 20.20
2017-08-15 20:46:48 Voltage 3.64
2017-08-15 20:46:49 state T: 20.20 H: 63.00
2017-08-15 20:46:49 transmission-state incoming publish received
message_ids:
sets:
subscribe:
/hooks/devices/3/SensorData/Humidity
/hooks/devices/3/SensorData/Temperature
/hooks/devices/3/SensorData/Voltage
subscribeExpr:
^\/hooks\/devices\/3\/SensorData\/Humidity$
^\/hooks\/devices\/3\/SensorData\/Temperature$
^\/hooks\/devices\/3\/SensorData\/Voltage$
subscribeReadings:
/hooks/devices/3/SensorData/Humidity Humidity
/hooks/devices/3/SensorData/Temperature Temperature
/hooks/devices/3/SensorData/Voltage Voltage
Attributes:
IODev MQTT
alias Keller Klima
comment Accu neu geladen am 12.4.2017
event-on-change-reading Battery
event-on-update-reading Humidity,state
icon weather_light_meter
room Keller
stateFormat state
subscribeReading_Humidity /hooks/devices/3/SensorData/Humidity
subscribeReading_Temperature /hooks/devices/3/SensorData/Temperature
subscribeReading_Voltage /hooks/devices/3/SensorData/Voltage
userReadings state:state:Humidity.* {"T: ".ReadingsVal("KE.th","Temperature",0)." H: ".ReadingsVal("KE.th","Humidity",0)} , Battery:Humidity.* { ReadingsVal("KE.th","Voltage",2.9)<3.3 ? "low" : "ok" } , Dewpoint:Humidity.* {myDewpoint($name,"Temperature","Humidity")}
VG
Klaus
Ich habe keinen MQTT Broker, habe trotzdem eine FHEM-MQTT-Instanz mit "define MQTT MQTT" angelegt. Ich bekomme dabei folgende Meldungen im Log:
Zitat2017.08.15 21:31:05 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/00_MQTT.pm line 103.
2017.08.15 21:31:05 3: Opening MQTT device
2017.08.15 21:31:05 1: PERL WARNING: Use of uninitialized value $nameOrConf in -f at .../SerialPort.pm line 285.
2017.08.15 21:31:05 1: PERL WARNING: Use of uninitialized value in subroutine entry at .../SerialPort.pm line 311.
2017.08.15 21:31:05 3: Can't open : No such file or directory
aber keine Rueckgabe im Frontend, und MQTT wird angelegt. Optimal faende ich in solchen Faellen eine sinnvolle Rueckgabe (usage) und eine Option "none" fuer Leute wie mich, also ohne Broker.
Danach habe ich KE.th wie vorhin angegeben definiert.
Auf das gezeigte Reading konnte ich nicht klicken, aber ein klick aufs Attribut hat bei mir auch den gleichen Fehler verursacht. Ursache: in der Rueckgabewert von "attr KE.th ?" kommt dieses Attribut nicht vor, nur indirekt als subscribeReading_.*
Ich habe diese Sorte von Problemen in fhemweb.js jetzt gefixt, das Attribut wird zur Liste hinzugefuegt, falls es noch nicht vorhanden ist.
Zitat von: rudolfkoenig am 15 August 2017, 22:11:33
Auf das gezeigte Reading konnte ich nicht klicken, aber ein klick aufs Attribut hat bei mir auch den gleichen Fehler verursacht. Ursache: in der Rueckgabewert von "attr KE.th ?" kommt dieses Attribut nicht vor, nur indirekt als subscribeReading_.*
Ich habe diese Sorte von Problemen in fhemweb.js jetzt gefixt, das Attribut wird zur Liste hinzugefuegt, falls es noch nicht vorhanden ist.
Klar, meinte natürlich Attribut....
Super, dann werde ich morgen mal testen .. ==> Danke
VG
Klaus