Hey zusammen,
hier mal nur eine kurze Vorstellung zum Projekt Oled. Beim Durchforsten sämtlicher HowTos und Wikis ist eine Spritpreisanzeige auf einem OLED entstanden.
ESPeasyMEGA
define ESPEasy_wemos_test_OLED ESPEasy 192.168.0.244 80 espBridge wemos_test_OLED
attr ESPEasy_wemos_test_OLED IODev espBridge
attr ESPEasy_wemos_test_OLED Interval 300
attr ESPEasy_wemos_test_OLED group ESPEasy Device
attr ESPEasy_wemos_test_OLED presenceCheck 1
attr ESPEasy_wemos_test_OLED readingSwitchText 1
attr ESPEasy_wemos_test_OLED room ESPEasy
attr ESPEasy_wemos_test_OLED setState 3
httpmod von www.clever-tanken.de Tankstellen. Das XXXX ist die Tankstelle.
###Shell
define Shell HTTPMOD http://www.clever-tanken.de/tankstelle_details/XXXX 1800
attr Shell userattr reading01Name reading01Regex reading02Name reading02Regex
attr Shell group Spritpreise
attr Shell icon car
attr Shell reading01Name Diesel
attr Shell reading01Regex <span>Diesel</span>[^0-9]+([0-9\.]+)
attr Shell reading02Name SuperE5
attr Shell reading02Regex <span>Super E5</span>[^0-9]+([0-9\.]+)
attr Shell room Spritpreise
attr Shell stateFormat Liter_Diesel: Diesel
attr Shell timeout 5
### STAR
define Star HTTPMOD http://www.clever-tanken.de/tankstelle_details/XXXX 1800
attr Star userattr reading01Name reading01Regex reading02Name reading02Regex
attr Star group Spritpreise
attr Star icon car
attr Star reading01Name Diesel
attr Star reading01Regex <span>Diesel</span>[^0-9]+([0-9\.]+)
attr Star reading02Name SuperE5
attr Star reading02Regex <span>Super E5</span>[^0-9]+([0-9\.]+)
attr Star room Spritpreise
attr Star stateFormat Liter_Diesel: Diesel
attr Star timeout 5
###BFT_Walther
define BFT_Walther HTTPMOD http://www.clever-tanken.de/tankstelle_details/XXXX 1800
attr BFT_Walther userattr reading01Name reading01Regex reading02Name reading02Regex
attr BFT_Walther group Spritpreise
attr BFT_Walther icon car
attr BFT_Walther reading01Name Diesel
attr BFT_Walther reading01Regex <span>Diesel</span>[^0-9]+([0-9\.]+)
attr BFT_Walther reading02Name SuperE5
attr BFT_Walther reading02Regex <span>Super E5</span>[^0-9]+([0-9\.]+)
attr BFT_Walther room Spritpreise
attr BFT_Walther stateFormat Liter_Diesel: Diesel
attr BFT_Walther timeout 5
###Tankcenter
define TankCenter HTTPMOD http://www.clever-tanken.de/tankstelle_details/XXXX 1800
attr TankCenter userattr reading01Name reading01Regex reading02Name reading02Regex
attr TankCenter group Spritpreise
attr TankCenter icon car
attr TankCenter reading01Name Diesel
attr TankCenter reading01Regex <span>Diesel</span>[^0-9]+([0-9\.]+)
attr TankCenter reading02Name SuperE5
attr TankCenter reading02Regex <span>Super E5</span>[^0-9]+([0-9\.]+)
attr TankCenter room Spritpreise
attr TankCenter stateFormat Liter_Diesel: Diesel
attr TankCenter timeout 5
###logfile
define FileLog_Spritpreise FileLog ./log/spritpreise-NK-%Y-%m.log (Shell|Star|BFT_Walther|TankCenter):(SuperE5|Diesel).*
attr FileLog_Spritpreise alias Log Spritpreise
attr FileLog_Spritpreise logtype text
###ReadingGroup
define Benzinpreise readingsGroup (Shell|Star|BFT_Walther|TankCenter):(SuperE5|Diesel).*
attr Benzinpreise notime 1
attr Benzinpreise room Spritpreise
attr Benzinpreise valueFormat {'%.2f €'}
#attr Spritpreise style style="font-size:16px" # führt ggf. zu einem PERL WARNING
#attr Spritpreise valueStyle {Werte($READING,$VALUE)} # führt ggf. zu einem PERL WARNING
###Plot
define SVG_FileLog_Spritpreise_1 SVG FileLog_Spritpreise:SVG_FileLog_Spritpreise_1:CURRENT
attr SVG_FileLog_Spritpreise_1 group Spritpreisverlauf
attr SVG_FileLog_Spritpreise_1 room Spritpreise
hier werden die Readings an das OLED gesendet
define t_oled_at at +*00:02:00 { system('curl http://192.168.0.244/control?cmd=oled,7,2,' . "D%20" . ReadingsVal("Shell","Diesel",0) . "%20E5%20" . ReadingsVal("Shell","SuperE5",0))};;{ system('curl http://192.168.0.244/control?cmd=oled,4,2,' . "D%20" . ReadingsVal("BFT_Walther","Diesel",0) . "%20E5%20" . ReadingsVal("BFT_Walther","SuperE5",0))};;{ system('curl http://192.168.0.244/control?cmd=oled,6,2,' . "Shell" )};;{ system('curl http://192.168.0.244/control?cmd=oled,3,2,' . "BFT%20Walther" )}
attr t_oled_at room ESPEasy
Gibt es einen bestimmten Grund warum Du im at einen blockierenden shell command (system) nutzt und nicht einfach ein "set <esp> oled ..."?
Ich hatte es so auf diesem Weg am besten verstanden mit um die Readings zu senden.
Über den set Befehl sollte es auch gehen