You can do it without node red. All you need is a person and you can extract the lat and lon into a sensor.template attribute that builds a URL. The gps speed is the tricky part, which is what I was wondering about.
binary_sensor:
- platform: template
sensors:
person_xxx_url:
value_template: "{{ state_attr('person.xxx', 'latitude') and state_attr('person.xxx', 'longitude') }}"
attribute_templates:
url: >
{% set lat = state_attr('person.xxx', 'latitude') %}
{% set lon = state_attr('person.xxx', 'longitude') %}
{% set zoom = 3 %}
https://embed.waze.com/nl/iframe?zoom={{ zoom }}&lat={{ lat }}&lon={{ lon }}&pin=1&desc=1
Well, the GPS speed doesn’t work much different than the Lat / Longtitude variables. If you are using Life360 or any other app it that gives you your GPS speed you can use it also as variable. I use a kind of IF state switch in node red but this will also be possible without Node-RED. you get the idea
Waze live map, that alway showing your position. A nice extra is that you can see traffic information around you
entities:
first next work location and start date & time from google calendar
Start time (in my case work starttime)
How much time is left until the next appointment (work branch / location)
Travel time to that location from the waze time travel integration
The route to that location also from the waze time travel integration (with a conditional card)
When i am at the location from my google calender then it shows the travel time and route to Home, i do this with a conditional card. “state_not: home”
Thanks petro, I got it working.
Just a note, it should be states[‘binary_sensor.person_xxx_url’].attributes.url instead of attribute.
I appreciate the help!
I did the change, but still no iframe showed…
Maybe something wrong in my side about variables?
Do i need to add something in configuration to have the variables?
I have an issue with displaying Waze in Iframe in Google Chrome. There is just an empty space, though Waze is displayed in Iframe in Microsoft Edge. I’ve tried cleaning cache and reset settings in Google Chrome, but it didn’t help.