* add sensor platform * transl. of distance already covered by dev.class * add untested files to .coveragerc * add missing state translations * remove translation key for distance sensor * proximity entity do not use HA number system * fix * extend tests * make const final to be usable as key for TypedDict * remove proximity from .coveragerc * replace typeddict by simple dict definition * make black happy * rework to create proximity sensor for each tracked entity and always recalculate all entites * apply review comments * move direction of travel calc out of the loop * make direction of travel an enum sensor * remove unique_id from sensors * don't set distance=0 when in monitored zone * set None when direction is unknown * keep distance 0 in case arrived for legacy entity * exclude from nearest when in ignored zone * keep distance=0 when arrived * use description name for entity name * remove uneeded typing * uses consistent variable name * fix debug messages * use entity_id as loop var * rename device_state to tracked_entity_state * correct MRO for sensor entity classes
30 lines
746 B
Python
30 lines
746 B
Python
"""Constants for Proximity integration."""
|
|
|
|
from typing import Final
|
|
|
|
from homeassistant.const import UnitOfLength
|
|
|
|
ATTR_DIR_OF_TRAVEL: Final = "dir_of_travel"
|
|
ATTR_DIST_TO: Final = "dist_to_zone"
|
|
ATTR_ENTITIES_DATA: Final = "entities_data"
|
|
ATTR_IN_IGNORED_ZONE: Final = "is_in_ignored_zone"
|
|
ATTR_NEAREST: Final = "nearest"
|
|
ATTR_PROXIMITY_DATA: Final = "proximity_data"
|
|
|
|
CONF_IGNORED_ZONES = "ignored_zones"
|
|
CONF_TOLERANCE = "tolerance"
|
|
|
|
DEFAULT_DIR_OF_TRAVEL = "not set"
|
|
DEFAULT_DIST_TO_ZONE = "not set"
|
|
DEFAULT_NEAREST = "not set"
|
|
DEFAULT_PROXIMITY_ZONE = "home"
|
|
DEFAULT_TOLERANCE = 1
|
|
DOMAIN = "proximity"
|
|
|
|
UNITS = [
|
|
UnitOfLength.METERS,
|
|
UnitOfLength.KILOMETERS,
|
|
UnitOfLength.FEET,
|
|
UnitOfLength.YARDS,
|
|
UnitOfLength.MILES,
|
|
]
|