mirror of
https://github.com/home-assistant/core.git
synced 2025-07-15 01:07:10 +00:00
Add realtime true/false switch for Waze (#15228)
This commit is contained in:
parent
86658f310d
commit
664eae72d1
@ -31,8 +31,10 @@ CONF_DESTINATION = 'destination'
|
||||
CONF_ORIGIN = 'origin'
|
||||
CONF_INCL_FILTER = 'incl_filter'
|
||||
CONF_EXCL_FILTER = 'excl_filter'
|
||||
CONF_REALTIME = 'realtime'
|
||||
|
||||
DEFAULT_NAME = 'Waze Travel Time'
|
||||
DEFAULT_REALTIME = True
|
||||
|
||||
ICON = 'mdi:car'
|
||||
|
||||
@ -49,6 +51,7 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
||||
vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
|
||||
vol.Optional(CONF_INCL_FILTER): cv.string,
|
||||
vol.Optional(CONF_EXCL_FILTER): cv.string,
|
||||
vol.Optional(CONF_REALTIME, default=DEFAULT_REALTIME): cv.boolean,
|
||||
})
|
||||
|
||||
|
||||
@ -60,9 +63,10 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
|
||||
region = config.get(CONF_REGION)
|
||||
incl_filter = config.get(CONF_INCL_FILTER)
|
||||
excl_filter = config.get(CONF_EXCL_FILTER)
|
||||
realtime = config.get(CONF_REALTIME)
|
||||
|
||||
sensor = WazeTravelTime(name, origin, destination, region,
|
||||
incl_filter, excl_filter)
|
||||
incl_filter, excl_filter, realtime)
|
||||
|
||||
add_devices([sensor])
|
||||
|
||||
@ -80,12 +84,13 @@ class WazeTravelTime(Entity):
|
||||
"""Representation of a Waze travel time sensor."""
|
||||
|
||||
def __init__(self, name, origin, destination, region,
|
||||
incl_filter, excl_filter):
|
||||
incl_filter, excl_filter, realtime):
|
||||
"""Initialize the Waze travel time sensor."""
|
||||
self._name = name
|
||||
self._region = region
|
||||
self._incl_filter = incl_filter
|
||||
self._excl_filter = excl_filter
|
||||
self._realtime = realtime
|
||||
self._state = None
|
||||
self._origin_entity_id = None
|
||||
self._destination_entity_id = None
|
||||
@ -197,7 +202,7 @@ class WazeTravelTime(Entity):
|
||||
try:
|
||||
params = WazeRouteCalculator.WazeRouteCalculator(
|
||||
self._origin, self._destination, self._region)
|
||||
routes = params.calc_all_routes_info()
|
||||
routes = params.calc_all_routes_info(real_time=self._realtime)
|
||||
|
||||
if self._incl_filter is not None:
|
||||
routes = {k: v for k, v in routes.items() if
|
||||
|
Loading…
x
Reference in New Issue
Block a user