[gelöst]ReadingsVal - GetHttpFile Frage

Begonnen von gonzo_6, 29 Oktober 2017, 13:30:09

Vorheriges Thema - Nächstes Thema

gonzo_6

Ich verstehe es gerade mal wieder nicht, warum läuft das nicht?
ESPEasy_ESP_07_NXT:code:.1539 {
my $hell=ReadingsVal("wohn_hell","lux","");;
GetHttpFile("192.168.178.36", "/control?cmd=NEXTION,z0.val=".$hell) }


wenn ich http://192.168.178.36/control?cmd=NEXTION,z0.val=100 im Browser direkt eingebe geht es...
das scheint etwas mit der Variablen nicht zu passen denn wenn ich auch .$temp weg lasse und einen Wert reinsetze geht es auch (vor dem ") :-(

[/code]
ESPEasy_ESP_07_NXT:code:.1539 {
my $hell=ReadingsVal("wohn_hell","lux","");;
GetHttpFile("192.168.178.36", "/control?cmd=NEXTION,text.txt=\"$hell\"") }

das funktioniert zB. Aber nicht bei "zahlenwerten", als Text klappt es zumindest jetzt.


viegener

Rätselhaft: Was ist .$temp? und vor welchem "???

Gib doch mal den Wert von $hell im Debug aus, also
Debug "hell ist :$hell:"

Vielleicht sind da ja Leerzeichen davor oder sonstige Unwägbarkeiten?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

gonzo_6

$hell soll ja den "lux" wert von wohn_hell übernehmen (ReadingsVal("wohn_hell","lux",""))

Wie funktioniert Debug denn??? Ich kann es in die Befehlszeile so leider nicht eingeben?

viegener

nein die Code-Zeile gehört natürlich in den perl-teil den Du da geschrieben hast.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

gonzo_6

#4
Vielen Dank für den Tip mit Debug damit bin ich dem Problem auf die schliche gekommen. Es lag daran das ich im $hell komma Werte hatte.
Alle Val Angaben von Progress und Slider erwarten Werte ohne Nachkomma.
Gelöst dadurch das ich ein Userreading in wohn_hell und lux erstelle.
helligkeit { int ( ReadingsVal("wohn_hell","lux",0) + 0.5 ) }
Anschießend kann ich es so ans Display per notify senden :
wohn_hell:lux:.* {
my $hell=ReadingsVal("wohn_hell","helligkeit","");;
Debug "hell ist: $hell  "."/control?cmd=NEXTION,j0.val=$hell";
GetHttpFile("192.168.178.36", "/control?cmd=NEXTION,z0.val=$hell") }


Hab ESPEasy dabei auch von direkt http umgestellt auf mqqt, ich habe das Gefühl es ist irgendwie universeller.

viegener

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können