Home Assistant Unofficial Reference 2024.12.1
homeassistant.components.history_stats.data.HistoryStats Class Reference

Public Member Functions

None __init__ (self, HomeAssistant hass, str entity_id, list[str] entity_states, Template|None start, Template|None end, datetime.timedelta|None duration)
 
HistoryStatsState async_update (self, Event[EventStateChangedData]|None event)
 

Public Attributes

 entity_id
 
 hass
 

Private Member Functions

tuple[float, int] _async_compute_seconds_and_changes (self, float now_timestamp, float start_timestamp, float end_timestamp)
 
None _async_history_from_db (self, float current_period_start_timestamp, float current_period_end_timestamp)
 
list[State_state_changes_during_period (self, float start_ts, float end_ts)
 

Private Attributes

 _duration
 
 _end
 
 _entity_states
 
 _history_current_period
 
 _period
 
 _previous_run_before_start
 
 _start
 
 _state
 

Detailed Description

Manage history stats.

Definition at line 39 of file data.py.

Constructor & Destructor Documentation

◆ __init__()

None homeassistant.components.history_stats.data.HistoryStats.__init__ (   self,
HomeAssistant  hass,
str  entity_id,
list[str]  entity_states,
Template | None  start,
Template | None  end,
datetime.timedelta | None  duration 
)
Init the history stats manager.

Definition at line 42 of file data.py.

Member Function Documentation

◆ _async_compute_seconds_and_changes()

tuple[float, int] homeassistant.components.history_stats.data.HistoryStats._async_compute_seconds_and_changes (   self,
float  now_timestamp,
float  start_timestamp,
float   end_timestamp 
)
private
Compute the seconds matched and changes from the history list and first state.

Definition at line 176 of file data.py.

◆ _async_history_from_db()

None homeassistant.components.history_stats.data.HistoryStats._async_history_from_db (   self,
float  current_period_start_timestamp,
float  current_period_end_timestamp 
)
private
Update history data for the current period from the database.

Definition at line 144 of file data.py.

◆ _state_changes_during_period()

list[State] homeassistant.components.history_stats.data.HistoryStats._state_changes_during_period (   self,
float  start_ts,
float   end_ts 
)
private
Return state changes during a period.

Definition at line 161 of file data.py.

◆ async_update()

HistoryStatsState homeassistant.components.history_stats.data.HistoryStats.async_update (   self,
Event[EventStateChangedData] | None   event 
)
Update the stats at a given time.

Definition at line 63 of file data.py.

Member Data Documentation

◆ _duration

homeassistant.components.history_stats.data.HistoryStats._duration
private

Definition at line 59 of file data.py.

◆ _end

homeassistant.components.history_stats.data.HistoryStats._end
private

Definition at line 61 of file data.py.

◆ _entity_states

homeassistant.components.history_stats.data.HistoryStats._entity_states
private

Definition at line 58 of file data.py.

◆ _history_current_period

homeassistant.components.history_stats.data.HistoryStats._history_current_period
private

Definition at line 90 of file data.py.

◆ _period

homeassistant.components.history_stats.data.HistoryStats._period
private

Definition at line 54 of file data.py.

◆ _previous_run_before_start

homeassistant.components.history_stats.data.HistoryStats._previous_run_before_start
private

Definition at line 57 of file data.py.

◆ _start

homeassistant.components.history_stats.data.HistoryStats._start
private

Definition at line 60 of file data.py.

◆ _state

homeassistant.components.history_stats.data.HistoryStats._state
private

Definition at line 92 of file data.py.

◆ entity_id

homeassistant.components.history_stats.data.HistoryStats.entity_id

Definition at line 53 of file data.py.

◆ hass

homeassistant.components.history_stats.data.HistoryStats.hass

Definition at line 52 of file data.py.


The documentation for this class was generated from the following file: