diff --git a/homeassistant/util/dt.py b/homeassistant/util/dt.py index 656f77b3289..a9a6ca4e3a3 100644 --- a/homeassistant/util/dt.py +++ b/homeassistant/util/dt.py @@ -79,10 +79,11 @@ def as_utc(dattim: dt.datetime) -> dt.datetime: return dattim.astimezone(UTC) -def as_timestamp(dt_value: dt.datetime) -> float: +def as_timestamp(dt_value: dt.datetime | str) -> float: """Convert a date/time into a unix time (seconds since 1970).""" - if hasattr(dt_value, "timestamp"): - parsed_dt: dt.datetime | None = dt_value + parsed_dt: dt.datetime | None + if isinstance(dt_value, dt.datetime): + parsed_dt = dt_value else: parsed_dt = parse_datetime(str(dt_value)) if parsed_dt is None: