Readingsval in iframe-URL für Weblink

Begonnen von bgewehr, 09 August 2019, 14:29:54

Vorheriges Thema - Nächstes Thema

bgewehr

Hallo, ich versuche, die Position meines Autos als Karte zu visualisieren. Nur so, weil es geht. Fragt nicht...
Mein Ansatz


define carMap weblink iframe https://maps.google.com/maps?width=700&height=440&hl=en&q={ReadingsVal('carnet', 'position_lat', "")},{ReadingsVal('carnet', 'position_lon', "")}&ie=UTF8&t=&z=10&iwloc=B&output=embed


löst aber die {} nicht in die Readings auf. Was mache ich falsch?
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

bgewehr

Per Forumssuche ermittelt befürchte ich, dass das Modul einfach keine Perl-Auflösung seiner Parameter durchführt. Hat jemand eine andere Idee? Utils-Funktionen könnten gehen, sind ja aber auch perl-code...
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

Otto123

#2
Hi,

und diese Variante?
define w_Frlink weblink htmlCode { WeatherAsHtml("w_Frankfurt") }

ich verstehe das so, dass Du damit eine Perlfunktion aufrufst die den "Link" zurückgibt?

Sowas als Minimalvariante geht z.B:
defmod w_Frlink weblink htmlCode { return '<iframe src="https://heinz-otto.blogspot.com/"></iframe>' }

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

bgewehr

Du hast mich auf eine gute Fährte gelenkt, danke dafür.


defmod n_carnetMap notify carnet:location.* {\
my $url = 'https://maps.google.com/maps?width=700&height=440&hl=en&q='.ReadingsVal('carnet','position_lat',0).','.ReadingsVal('carnet','position_lng',0).'&ie=UTF8&t=&z=16&iwloc=B&output=embed';;;;\
fhem("defmod carnetMap1 weblink iframe ".$url);;;;\
}


Das hier macht nun, was es soll.
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

Otto123

#4
Mit dem Nachteil: rotes Fragezeichen :)
Deswegen lege ich mal noch einen kurzen Versuch nach:
Für die Raw Definition
defmod carnetMap2 weblink htmlCode {\
my $lat=51.3445432;;\
my $lng=12.3750251;;\
my $url="https://maps.google.com/maps?hl=en&q=$lat,$lng&ie=UTF8&t=&z=16&iwloc=B&output=embed";;\
return "<iframe src=$url width=700 height=440></iframe>"\
}

Musst Du nur noch deine Readings einfüllen :)
Daher habe ich den iframe Tag https://www.w3schools.com/html/html_iframe.asp

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz