Hallo,
ich versuche gerade ein Display das an einem ESP hängt mit Daten aus FHEM zu füllen.
der grundsätzliche Befehl im Browser lautet:
http://192.168.113.71/cm/cmnd=DisplayText[z][l1c1] Text (Browsereingabe)
Ebenfalls habe ich einen zweiten ESP mit einem Sensor über MQTT2 eingebunden. Hier wird das WasserVolumen angezeigt.
Es soll das WasserVolumen im Display angezeigt werden
Der Wassersonsor ist mit GartenTank benannt !
wie kann ich das bewerkstelligen, dass wenn sich sich das WasserVolumen ändert, das an das Display übermittelt wird ?
Danke !
mfg
Wendelin
Zitat von: wendeling am 14 September 2021, 17:52:56
http://192.168.113.71/cm/cmnd=DisplayText[z][l1c1] Text (Browsereingabe)
wie kann ich das bewerkstelligen, dass wenn sich sich das WasserVolumen ändert, das an das Display übermittelt wird ?
Ein notify definieren, das auf die Wasserstandmeldung reagiert und in diesem notify die URL mit dem "Text" (Wasserstand) aufrufen.
defmod n_wasser notify GartenTank:<readingDesWasservolumens> {GetFileFromURL("http://192.168.113.71/cm/cmnd=DisplayText[z][l1c1] ".$EVENT)}
Hallo,
funktioniert leider nicht !?
Irgendwie reagiert das notify nicht auf das event !?
Es wird alle 10 sec. neu geschrieben.
Hier das Notify:
defmod n_wasser notify MQTT2_DVES_694411:WasserVolumen {GetFileFromURL("http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] ".$EVENT)}
Hier der Sensor:
Internals:
CFGFN
CID DVES_694411
DEF DVES_694411
DEVICETOPIC MQTT2_DVES_694411
FUUID 614048fb-f33f-8758-5f92-75954f9e0c8da59a
IODev myBroker
LASTInputDev myBroker
MSGCNT 3562
NAME MQTT2_DVES_694411
NR 1002786
STATE -213 Liter
TYPE MQTT2_DEVICE
myBroker_MSGCNT 3562
myBroker_TIME 2021-09-14 18:41:19
.attraggr:
.attrminint:
.userReadings:
HASH(0xa23a080)
READINGS:
2021-09-14 09:03:00 BASE 18
2021-09-14 09:03:00 DeviceName SP04
2021-09-14 09:03:00 Emulation 0
2021-09-14 09:03:00 FLAG 0
2021-09-14 09:03:00 FriendlyName1 Tasmota
2021-09-14 09:03:00 FriendlyName2
2021-09-14 09:03:00 FriendlyName3
2021-09-14 09:03:00 FriendlyName4
2021-09-14 09:03:00 FriendlyName5
2021-09-14 09:03:00 FriendlyName6
2021-09-14 09:03:00 FriendlyName7
2021-09-14 09:03:00 FriendlyName8
2021-09-14 09:03:00 GPIO_1 1
2021-09-14 09:03:00 GPIO_10 1
2021-09-14 09:03:00 GPIO_11 1
2021-09-14 09:03:00 GPIO_12 1
2021-09-14 09:03:00 GPIO_13 1
2021-09-14 09:03:00 GPIO_14 1
2021-09-14 09:03:00 GPIO_2 1
2021-09-14 09:03:00 GPIO_3 1
2021-09-14 09:03:00 GPIO_4 1
2021-09-14 09:03:00 GPIO_5 1
2021-09-14 09:03:00 GPIO_6 1
2021-09-14 09:03:00 GPIO_7 1
2021-09-14 09:03:00 GPIO_8 1
2021-09-14 09:03:00 GPIO_9 1
2021-09-14 09:22:49 Heap 23
2021-09-14 09:19:14 Info1_FallbackTopic cmnd/DVES_694411_fb/
2021-09-14 09:19:14 Info1_GroupTopic cmnd/tasmotas/
2021-09-14 09:19:14 Info1_Module Generic
2021-09-14 09:19:14 Info1_Version 9.5.0(sensors)
2021-09-14 09:19:14 Info2_Hostname tasmota_694411-1041
2021-09-14 09:19:14 Info2_IPAddress 192.168.113.xxx
2021-09-14 09:19:14 Info2_WebServerMode Admin
2021-09-14 09:19:14 Info3_RestartReason Software/System restart
2021-09-14 09:19:14 LWT Online
2021-09-14 09:22:49 LoadAvg 19
2021-09-14 09:02:45 LogHost
2021-09-14 09:02:45 LogPort 514
2021-09-14 09:22:49 MqttCount 1
2021-09-14 09:02:45 MqttLog 0
2021-09-14 09:03:00 NAME Generic
2021-09-14 09:19:14 POWER
2021-09-14 18:41:19 SR04_Distance 107.333
2021-09-14 09:02:45 SerialLog_2_Active 2
2021-09-14 09:03:00 SetOption3 ON
2021-09-14 09:22:49 Sleep 50
2021-09-14 09:22:49 SleepMode Dynamic
2021-09-14 09:02:45 SysLog_0_Active 0
2021-09-14 09:02:45 TelePeriod 10
2021-09-14 18:41:19 Time 2021-09-14T17:41:19
2021-09-14 09:22:49 Uptime 0T00:03:39
2021-09-14 09:22:49 UptimeSec 219
2021-09-14 18:41:19 WasserVolumen -213
2021-09-14 09:02:45 WebLog 2
2021-09-14 09:03:00 WebPassword ****
2021-09-14 09:22:49 Wifi_AP 1
2021-09-14 09:22:49 Wifi_BSSId 2C:3A:FD:97:E6:E0
2021-09-14 09:22:49 Wifi_Channel 11
2021-09-14 09:22:49 Wifi_Downtime 0T00:00:03
2021-09-14 09:22:49 Wifi_LinkCount 1
2021-09-14 09:22:49 Wifi_Mode 11n
2021-09-14 09:22:49 Wifi_RSSI 100
2021-09-14 09:22:49 Wifi_SSId xxxxx
2021-09-14 09:22:49 Wifi_Signal -32
2021-09-14 09:19:24 btn_1 0
2021-09-14 09:19:24 btn_2 0
2021-09-14 09:19:24 btn_3 0
2021-09-14 09:19:24 btn_4 0
2021-09-14 09:19:24 btn_5 0
2021-09-14 09:19:24 btn_6 0
2021-09-14 09:19:24 btn_7 0
2021-09-14 09:19:24 btn_8 0
2021-09-14 09:19:24 dn SP04
2021-09-14 09:19:24 fn_1 Tasmota
2021-09-14 09:19:24 ft %prefix%/%topic%/
2021-09-14 09:19:24 hn tasmota_694411-1041
2021-09-14 09:19:24 if 0 2021-09-14 09:19:24
2021-09-14 09:19:24 lk 1
2021-09-14 09:19:24 lt_st 0
2021-09-14 09:19:24 mac B4E62D694411
2021-09-14 09:19:24 md Generic
2021-09-14 09:19:24 ofln Offline
2021-09-14 09:19:24 onln Online
2021-09-14 09:19:24 rl_1 0
2021-09-14 09:19:24 rl_2 0
2021-09-14 09:19:24 rl_3 0
2021-09-14 09:19:24 rl_4 0
2021-09-14 09:19:24 rl_5 0
2021-09-14 09:19:24 rl_6 0
2021-09-14 09:19:24 rl_7 0
2021-09-14 09:19:24 rl_8 0
2021-09-14 09:19:24 sho_1 0
2021-09-14 09:19:24 sho_2 0
2021-09-14 09:19:24 sho_3 0
2021-09-14 09:19:24 sho_4 0
2021-09-14 09:19:24 sn_SR04_Distance 107.807
2021-09-14 09:19:24 sn_Time 2021-09-14T08:19:24
2021-09-14 09:19:24 so_11 0
2021-09-14 09:19:24 so_114 0
2021-09-14 09:19:24 so_117 0
2021-09-14 09:19:24 so_13 0
2021-09-14 09:19:24 so_17 0
2021-09-14 09:19:24 so_20 0
2021-09-14 09:19:24 so_30 0
2021-09-14 09:19:24 so_4 0
2021-09-14 09:19:24 so_68 0
2021-09-14 09:19:24 so_73 0
2021-09-14 09:19:24 so_82 0
2021-09-14 09:19:24 state_1 OFF
2021-09-14 09:19:24 state_2 ON
2021-09-14 09:19:24 state_3 TOGGLE
2021-09-14 09:19:24 state_4 HOLD
2021-09-14 09:19:24 sw 9.5.0
2021-09-14 09:19:24 swc_1 -1
2021-09-14 09:19:24 swc_2 -1
2021-09-14 09:19:24 swc_3 -1
2021-09-14 09:19:24 swc_4 -1
2021-09-14 09:19:24 swc_5 -1
2021-09-14 09:19:24 swc_6 -1
2021-09-14 09:19:24 swc_7 -1
2021-09-14 09:19:24 swc_8 -1
2021-09-14 09:19:24 t tasmota_694411
2021-09-14 09:19:24 tp_1 cmnd
2021-09-14 09:19:24 tp_2 stat
2021-09-14 09:19:24 tp_3 tele
2021-09-14 09:19:24 ty 0
2021-09-14 09:19:24 ver 1
Attributes:
DbLogExclude .*
IODev myBroker
alias GartenTank
icon sani_water_tap
readingList ##DVES_694411:tele/tasmota_694411/LWT:.* LWT
##DVES_694411:cmnd/tasmota_694411/POWER:.* POWER
##DVES_694411:tasmota/discovery/B4E62D694411/config:.* { json2nameValue($EVENT) }
DVES_694411:tasmota/discovery/B4E62D694411/sensors:.* { json2nameValue($EVENT) }
##DVES_694411:tele/tasmota_694411/INFO1:.* { json2nameValue($EVENT) }
##DVES_694411:tele/tasmota_694411/INFO2:.* { json2nameValue($EVENT) }
##DVES_694411:tele/tasmota_694411/INFO3:.* { json2nameValue($EVENT) }
##DVES_694411:tele/tasmota_694411/STATE:.* { json2nameValue($EVENT) }
##DVES_694411:stat/tasmota_694411/RESULT:.* { json2nameValue($EVENT) }
DVES_694411:tele/tasmota_694411/SENSOR:.* { json2nameValue($EVENT) }
room 0_Info_2,EG_Garten,MQTT2_DEVICE
stateFormat WasserVolumen Liter
userReadings WasserVolumen {int((ReadingsNum($name,"SR04_Distance",0)-112.3) * 43) }
Das sind doch simpelste FHEM-Basics...
Schau Dir im Event Monitor an, wie der event genau aussieht.
Dort kannst Du per Mausklick sogar automatisch ein passendes notify aus dem event anlegen lassen und musst danach nur noch den Ausführungsteil ergänzen.
Hallo,
vielleicht bin ich zu blöde dafür !
folgendes sehe ich im EventMonitor :
2021-09-14 19:21:29 MQTT2_DEVICE MQTT2_DVES_694411 WasserVolumen: -173
2021-09-14 19:21:29 MQTT2_DEVICE MQTT2_DVES_B5F6E6 DisplayText: [z][l1c1]
so wie ich das sehe, wird was gesendet aber ohne Information !?
hier noch einmal mein neu generiertes Notify :
Internals:
.COMMAND {GetFileFromURL("http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] ".$EVENT)}
CFGFN
DEF MQTT2_DVES_694411:WasserVolumen {GetFileFromURL("http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] ".$EVENT)}
FUUID 6140d8ef-f33f-8758-f5b5-9de0c317facf6cbb
NAME MQTT2_DVES_694411_notify_1
NOTIFYDEV MQTT2_DVES_694411
NR 1007099
NTFY_ORDER 50-MQTT2_DVES_694411_notify_1
REGEXP MQTT2_DVES_694411:WasserVolumen
STATE active
TRIGGERTIME 1631640009.69308
TYPE notify
.attraggr:
.attrminint:
Helper:
DBLOG:
state:
DBL:
TIME 1631639791.70075
VALUE active
READINGS:
2021-09-14 19:20:15 state active
Zitat von: wendeling am 14 September 2021, 19:25:23
vielleicht bin ich zu blöde dafür !
Das kann ich nicht beurteilen, aber für solche Eventualitäten wurde ja extra das hier geschaffen:
Zitat von: betateilchen am 14 September 2021, 18:54:19
Schau Dir im Event Monitor an, wie der event genau aussieht.
Dort kannst Du per Mausklick sogar automatisch ein passendes notify aus dem event anlegen lassen
Mach das doch einfach mal!
Wieso heißt das device eigentlich plötzlich MQTT2_DVES_694411 wo Du doch oben geschrieben hattest
Zitat von: wendeling am 14 September 2021, 17:52:56
Der Wassersonsor ist mit GartenTank benannt !
Hallo,
das war nur der alias Name , mein Fehler.
Aber ich habe es jetzt über den EventMonitor gemacht !
Das Notify reagiert auch, aber leider wird nicht das $EVENT mit gesendet , oder warum sehe ich nur "2021-09-14 19:21:29 MQTT2_DEVICE MQTT2_DVES_B5F6E6 DisplayText: [z][l1c1]" ?
Hier fehlt am Ende der Wert des Events !
Gruß
Wendelin
Das was du oben gepostet hast funktioniert wirklich:
Zitat
http://192.168.113.71/cm/cmnd=DisplayText[z][l1c1] Text (Browsereingabe)
Weil schicken tust du ja was anderes:
Zitat
GetFileFromURL("http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] ".$EVENT)
EDIT: wobei das "vernünftiger" aussieht?
Dann was ist denn: MQTT2_DVES_B5F6E6
Bzw. was verbirgt sich hinter http://192.168.113.71 ?
EDIT: das ist wohl das Display?
Soll nur dort das Reading DisplayText gesetzt werden?
Spiegelt das "nur" zurück was auf dem Display steht?
Bzw.: was ist nun was und was genau willst du?EDIT: Hast du das notify nun per Eventmonitor angelegt? Wie wäre dann ein list davon? :)
Gruß, Joachim
zeig doch mal das notify, das jetzt angelegt wurde.
Bei mir funktioniert das problemlos, getestet mit einem dummy, bei dem ich den Wert einfach manuell setze.
2021.09.14 19:43:02 5: Cmd: >setreading dummy_test WasserVolumen -456<
2021.09.14 19:43:02 5: Starting notify loop for dummy_test, 1 event(s), first is WasserVolumen: -456
defmod dummy_test_notify_1 notify dummy_test:WasserVolumen:.* {GetFileFromURL("http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] ".$EVENT)}
ergibt im Logfile:
2021.09.14 19:43:02 5: Cmd: >{GetFileFromURL("http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] ".$EVENT)}<
2021.09.14 19:43:02 5: HttpUtils url=http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] WasserVolumen: -456 Blocking via http
Wenn Du nur den Zahlenwert (-456) haben möchtest, kannst Du $EVENT auch durch $EVTPART1 ersetzen.
2021.09.14 19:47:56 5: Cmd: >{GetFileFromURL("http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] ".$EVTPART1)}<
2021.09.14 19:47:56 5: HttpUtils url=http://192.168.113.71/cm?cmnd=DisplayText[z][l1c1] -789 Blocking via http
Vielleicht ist das Leerzeichen zwischen c1] und dem Wert das Problem? Dann könntest Du anstatt des Leerzeichens auch &20 in der URL verwenden.
Zitat von: MadMax-FHEM am 14 September 2021, 19:48:02
Bzw.: was ist nun was und was genau willst du?
Das ist doch eigentlich alles eindeutig beschrieben?
Zitat von: betateilchen am 14 September 2021, 19:51:55
Das ist doch eigentlich alles eindeutig beschrieben?
Habs ja doch schon gestrichen...
...weil noch mal gelesen und erkannt...
Hallo,
wir haben es geschafft!!
Es funktioniert !!
hier nun der DEF im Notify:
MQTT2_DVES_694411:WasserVolumen:.* {GetFileFromURL("http://192.168.113.71/cm?cmnd=DisplayText[l1c14]".$EVTPART1)}
Das Problem war nach dem " das Leerzeichen !
Das [z] habe ich herausgenommen , da das nur das komplette Display löscht. Ist jetzt aber nicht mehr nötig .
Vielen Dank betateilchen
Gruß
Wendelin