Home Assistant Unofficial Reference 2024.12.1
homeassistant.components.elkm1 Namespace Reference

Namespaces

 alarm_control_panel
 
 binary_sensor
 
 climate
 
 config_flow
 
 const
 
 discovery
 
 entity
 
 light
 
 logbook
 
 models
 
 scene
 
 sensor
 
 switch
 

Functions

ConfigEntry|None _async_find_matching_config_entry (HomeAssistant hass, str prefix)
 
Panel _async_get_elk_panel (HomeAssistant hass, ServiceCall service)
 
None _create_elk_services (HomeAssistant hass)
 
tuple[int, int] _elk_range_validator (str rng)
 
Elk|None _find_elk_by_prefix (HomeAssistant hass, str prefix)
 
list[dict[str, str]] _has_all_unique_prefixes (list[dict[str, str]] value)
 
dict[str, str] _host_validator (dict[str, str] config)
 
None _included (list[tuple[int, int]] ranges, bool set_to, list[bool] values)
 
bool async_setup (HomeAssistant hass, ConfigType hass_config)
 
bool async_setup_entry (HomeAssistant hass, ElkM1ConfigEntry entry)
 
bool async_unload_entry (HomeAssistant hass, ElkM1ConfigEntry entry)
 
bool async_wait_for_elk_to_sync (Elk elk, int login_timeout, int sync_timeout)
 
str hostname_from_url (str url)
 

Variables

 _LOGGER = logging.getLogger(__name__)
 
 CONFIG_SCHEMA
 
 DEVICE_SCHEMA
 
 DEVICE_SCHEMA_SUBDOMAIN
 
 ElkM1ConfigEntry
 
list PLATFORMS
 
 SET_TIME_SERVICE_SCHEMA
 
 SPEAK_SERVICE_SCHEMA
 
int SYNC_TIMEOUT = 120
 

Detailed Description

Support the ElkM1 Gold and ElkM1 EZ8 alarm/integration panels.

Function Documentation

◆ _async_find_matching_config_entry()

ConfigEntry | None homeassistant.components.elkm1._async_find_matching_config_entry ( HomeAssistant  hass,
str   prefix 
)
private

Definition at line 225 of file __init__.py.

◆ _async_get_elk_panel()

Panel homeassistant.components.elkm1._async_get_elk_panel ( HomeAssistant  hass,
ServiceCall  service 
)
private
Get the ElkM1 panel from a service call.

Definition at line 395 of file __init__.py.

◆ _create_elk_services()

None homeassistant.components.elkm1._create_elk_services ( HomeAssistant  hass)
private
Create ElkM1 services.

Definition at line 404 of file __init__.py.

◆ _elk_range_validator()

tuple[int, int] homeassistant.components.elkm1._elk_range_validator ( str  rng)
private

Definition at line 114 of file __init__.py.

◆ _find_elk_by_prefix()

Elk | None homeassistant.components.elkm1._find_elk_by_prefix ( HomeAssistant  hass,
str  prefix 
)
private
Search all config entries for a given prefix.

Definition at line 328 of file __init__.py.

◆ _has_all_unique_prefixes()

list[dict[str, str]] homeassistant.components.elkm1._has_all_unique_prefixes ( list[dict[str, str]]  value)
private
Validate that each m1 configured has a unique prefix.

Uniqueness is determined case-independently.

Definition at line 130 of file __init__.py.

◆ _host_validator()

dict[str, str] homeassistant.components.elkm1._host_validator ( dict[str, str]  config)
private
Validate that a host is properly configured.

Definition at line 102 of file __init__.py.

◆ _included()

None homeassistant.components.elkm1._included ( list[tuple[int, int]]  ranges,
bool  set_to,
list[bool]  values 
)
private

Definition at line 321 of file __init__.py.

◆ async_setup()

bool homeassistant.components.elkm1.async_setup ( HomeAssistant  hass,
ConfigType  hass_config 
)
Set up the Elk M1 platform.

Definition at line 179 of file __init__.py.

◆ async_setup_entry()

bool homeassistant.components.elkm1.async_setup_entry ( HomeAssistant  hass,
ElkM1ConfigEntry  entry 
)
Set up Elk-M1 Control from a config entry.

Definition at line 234 of file __init__.py.

◆ async_unload_entry()

bool homeassistant.components.elkm1.async_unload_entry ( HomeAssistant  hass,
ElkM1ConfigEntry  entry 
)
Unload a config entry.

Definition at line 339 of file __init__.py.

◆ async_wait_for_elk_to_sync()

bool homeassistant.components.elkm1.async_wait_for_elk_to_sync ( Elk  elk,
int  login_timeout,
int  sync_timeout 
)
Wait until the elk has finished sync. Can fail login or timeout.

Definition at line 347 of file __init__.py.

◆ hostname_from_url()

str homeassistant.components.elkm1.hostname_from_url ( str  url)
Return the hostname from a url.

Definition at line 97 of file __init__.py.

Variable Documentation

◆ _LOGGER

homeassistant.components.elkm1._LOGGER = logging.getLogger(__name__)
private

Definition at line 71 of file __init__.py.

◆ CONFIG_SCHEMA

homeassistant.components.elkm1.CONFIG_SCHEMA
Initial value:
1 = vol.Schema(
2  {DOMAIN: vol.All(cv.ensure_list, [DEVICE_SCHEMA], _has_all_unique_prefixes)},
3  extra=vol.ALLOW_EXTRA,
4 )

Definition at line 173 of file __init__.py.

◆ DEVICE_SCHEMA

homeassistant.components.elkm1.DEVICE_SCHEMA
Initial value:
1 = vol.All(
2  cv.deprecated(CONF_TEMPERATURE_UNIT),
3  vol.Schema(
4  {
5  vol.Required(CONF_HOST): cv.string,
6  vol.Optional(CONF_PREFIX, default=""): vol.All(cv.string, vol.Lower),
7  vol.Optional(CONF_USERNAME, default=""): cv.string,
8  vol.Optional(CONF_PASSWORD, default=""): cv.string,
9  vol.Optional(CONF_AUTO_CONFIGURE, default=False): cv.boolean,
10  vol.Optional(CONF_TEMPERATURE_UNIT, default="F"): cv.temperature_unit,
11  vol.Optional(CONF_AREA, default={}): DEVICE_SCHEMA_SUBDOMAIN,
12  vol.Optional(CONF_COUNTER, default={}): DEVICE_SCHEMA_SUBDOMAIN,
13  vol.Optional(CONF_KEYPAD, default={}): DEVICE_SCHEMA_SUBDOMAIN,
14  vol.Optional(CONF_OUTPUT, default={}): DEVICE_SCHEMA_SUBDOMAIN,
15  vol.Optional(CONF_PLC, default={}): DEVICE_SCHEMA_SUBDOMAIN,
16  vol.Optional(CONF_SETTING, default={}): DEVICE_SCHEMA_SUBDOMAIN,
17  vol.Optional(CONF_TASK, default={}): DEVICE_SCHEMA_SUBDOMAIN,
18  vol.Optional(CONF_THERMOSTAT, default={}): DEVICE_SCHEMA_SUBDOMAIN,
19  vol.Optional(CONF_ZONE, default={}): DEVICE_SCHEMA_SUBDOMAIN,
20  },
21  ),
22  _host_validator,
23 )

Definition at line 149 of file __init__.py.

◆ DEVICE_SCHEMA_SUBDOMAIN

homeassistant.components.elkm1.DEVICE_SCHEMA_SUBDOMAIN
Initial value:
1 = vol.Schema(
2  {
3  vol.Optional(CONF_ENABLED, default=True): cv.boolean,
4  vol.Optional(CONF_INCLUDE, default=[]): [_elk_range_validator],
5  vol.Optional(CONF_EXCLUDE, default=[]): [_elk_range_validator],
6  }
7 )

Definition at line 141 of file __init__.py.

◆ ElkM1ConfigEntry

homeassistant.components.elkm1.ElkM1ConfigEntry

Definition at line 67 of file __init__.py.

◆ PLATFORMS

list homeassistant.components.elkm1.PLATFORMS
Initial value:
1 = [
2  Platform.ALARM_CONTROL_PANEL,
3  Platform.BINARY_SENSOR,
4  Platform.CLIMATE,
5  Platform.LIGHT,
6  Platform.SCENE,
7  Platform.SENSOR,
8  Platform.SWITCH,
9 ]

Definition at line 73 of file __init__.py.

◆ SET_TIME_SERVICE_SCHEMA

homeassistant.components.elkm1.SET_TIME_SERVICE_SCHEMA
Initial value:
1 = vol.Schema(
2  {
3  vol.Optional("prefix", default=""): cv.string,
4  }
5 )

Definition at line 90 of file __init__.py.

◆ SPEAK_SERVICE_SCHEMA

homeassistant.components.elkm1.SPEAK_SERVICE_SCHEMA
Initial value:
1 = vol.Schema(
2  {
3  vol.Required("number"): vol.All(vol.Coerce(int), vol.Range(min=0, max=999)),
4  vol.Optional("prefix", default=""): cv.string,
5  }
6 )

Definition at line 83 of file __init__.py.

◆ SYNC_TIMEOUT

int homeassistant.components.elkm1.SYNC_TIMEOUT = 120

Definition at line 69 of file __init__.py.