1 """Support for esphome datetimes."""
3 from __future__
import annotations
5 from datetime
import datetime
6 from functools
import partial
8 from aioesphomeapi
import DateTimeInfo, DateTimeState
13 from .entity
import EsphomeEntity, esphome_state_property, platform_async_setup_entry
17 """A datetime implementation for esphome."""
20 @esphome_state_property
22 """Return the state of the entity."""
24 if state.missing_state:
26 return dt_util.utc_from_timestamp(state.epoch_seconds)
29 """Update the current datetime."""
30 self.
_client_client.datetime_command(self.
_key_key,
int(value.timestamp()))
33 async_setup_entry = partial(
34 platform_async_setup_entry,
35 info_type=DateTimeInfo,
36 entity_type=EsphomeDateTime,
37 state_type=DateTimeState,
None async_set_value(self, datetime value)
datetime|None native_value(self)