mirror of
https://github.com/home-assistant/core.git
synced 2025-07-14 08:47:10 +00:00
Add coordinator test for Yale Smart Living (#98638)
This commit is contained in:
parent
577f545113
commit
3b31c58eba
@ -1507,7 +1507,6 @@ omit =
|
||||
homeassistant/components/yale_smart_alarm/alarm_control_panel.py
|
||||
homeassistant/components/yale_smart_alarm/binary_sensor.py
|
||||
homeassistant/components/yale_smart_alarm/button.py
|
||||
homeassistant/components/yale_smart_alarm/coordinator.py
|
||||
homeassistant/components/yale_smart_alarm/entity.py
|
||||
homeassistant/components/yale_smart_alarm/lock.py
|
||||
homeassistant/components/yalexs_ble/__init__.py
|
||||
|
@ -3,7 +3,7 @@ from __future__ import annotations
|
||||
|
||||
import json
|
||||
from typing import Any
|
||||
from unittest.mock import patch
|
||||
from unittest.mock import Mock, patch
|
||||
|
||||
import pytest
|
||||
from yalesmartalarmclient.const import YALE_STATE_ARM_FULL
|
||||
@ -26,7 +26,7 @@ OPTIONS_CONFIG = {"lock_code_digits": 6}
|
||||
@pytest.fixture
|
||||
async def load_config_entry(
|
||||
hass: HomeAssistant, load_json: dict[str, Any]
|
||||
) -> MockConfigEntry:
|
||||
) -> tuple[MockConfigEntry, Mock]:
|
||||
"""Set up the Yale Smart Living integration in Home Assistant."""
|
||||
config_entry = MockConfigEntry(
|
||||
domain=DOMAIN,
|
||||
@ -52,7 +52,7 @@ async def load_config_entry(
|
||||
await hass.config_entries.async_setup(config_entry.entry_id)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
return config_entry
|
||||
return (config_entry, client)
|
||||
|
||||
|
||||
@pytest.fixture(name="load_json", scope="session")
|
||||
|
@ -4,7 +4,7 @@
|
||||
"area": "1",
|
||||
"no": "1",
|
||||
"rf": null,
|
||||
"address": "123",
|
||||
"address": "1111",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device1",
|
||||
"status1": "device_status.lock",
|
||||
@ -48,13 +48,461 @@
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "123",
|
||||
"device_id": "1111",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.lock"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "2",
|
||||
"rf": null,
|
||||
"address": "2222",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device2",
|
||||
"status1": "device_status.unlock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:02",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": null,
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "2222",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": [],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "3",
|
||||
"rf": null,
|
||||
"address": "3333",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device3",
|
||||
"status1": "device_status.lock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:03",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": null,
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "3333",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.lock"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "4",
|
||||
"rf": null,
|
||||
"address": "RF4",
|
||||
"type": "device_type.door_contact",
|
||||
"name": "Device4",
|
||||
"status1": "device_status.dc_close",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "0",
|
||||
"mac": "00:00:00:00:04",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "",
|
||||
"minigw_syncing": "",
|
||||
"minigw_configuration_data": "",
|
||||
"minigw_product_data": "",
|
||||
"minigw_lock_status": "",
|
||||
"minigw_number_of_credentials_supported": "",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "4444",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "4",
|
||||
"device_group": "000",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.dc_close"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "5",
|
||||
"rf": null,
|
||||
"address": "RF5",
|
||||
"type": "device_type.door_contact",
|
||||
"name": "Device5",
|
||||
"status1": "device_status.dc_open",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "0",
|
||||
"mac": "00:00:00:00:05",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "",
|
||||
"minigw_syncing": "",
|
||||
"minigw_configuration_data": "",
|
||||
"minigw_product_data": "",
|
||||
"minigw_lock_status": "",
|
||||
"minigw_number_of_credentials_supported": "",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "5555",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "4",
|
||||
"device_group": "000",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.dc_open"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "6",
|
||||
"rf": null,
|
||||
"address": "RF6",
|
||||
"type": "device_type.door_contact",
|
||||
"name": "Device6",
|
||||
"status1": "unknwon",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "0",
|
||||
"mac": "REDACTED",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "",
|
||||
"minigw_syncing": "",
|
||||
"minigw_configuration_data": "",
|
||||
"minigw_product_data": "",
|
||||
"minigw_lock_status": "",
|
||||
"minigw_number_of_credentials_supported": "",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "6666",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "4",
|
||||
"device_group": "000",
|
||||
"status_fault": [],
|
||||
"status_open": [],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "7",
|
||||
"rf": null,
|
||||
"address": "7777",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device7",
|
||||
"status1": "device_status.lock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:07",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": "36",
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "7777",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.lock"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "8",
|
||||
"rf": null,
|
||||
"address": "8888",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device8",
|
||||
"status1": "device_status.unlock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:08",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": "4",
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "8888",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.unlock"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "9",
|
||||
"rf": null,
|
||||
"address": "9999",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device9",
|
||||
"status1": "device_status.error",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:09",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": "10",
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "9999",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.error"],
|
||||
"trigger_by_zone": []
|
||||
}
|
||||
],
|
||||
"MODE": [
|
||||
@ -88,9 +536,9 @@
|
||||
"area": "1",
|
||||
"no": "1",
|
||||
"rf": null,
|
||||
"address": "124",
|
||||
"address": "1111",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device2",
|
||||
"name": "Device1",
|
||||
"status1": "device_status.lock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
@ -102,7 +550,7 @@
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:02",
|
||||
"mac": "00:00:00:00:01",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
@ -132,13 +580,461 @@
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "124",
|
||||
"device_id": "1111",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.lock"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "2",
|
||||
"rf": null,
|
||||
"address": "2222",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device2",
|
||||
"status1": "device_status.unlock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:02",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": null,
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "2222",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": [],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "3",
|
||||
"rf": null,
|
||||
"address": "3333",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device3",
|
||||
"status1": "device_status.lock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:03",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": null,
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "3333",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.lock"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "4",
|
||||
"rf": null,
|
||||
"address": "RF4",
|
||||
"type": "device_type.door_contact",
|
||||
"name": "Device4",
|
||||
"status1": "device_status.dc_close",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "0",
|
||||
"mac": "00:00:00:00:04",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "",
|
||||
"minigw_syncing": "",
|
||||
"minigw_configuration_data": "",
|
||||
"minigw_product_data": "",
|
||||
"minigw_lock_status": "",
|
||||
"minigw_number_of_credentials_supported": "",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "4444",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "4",
|
||||
"device_group": "000",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.dc_close"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "5",
|
||||
"rf": null,
|
||||
"address": "RF5",
|
||||
"type": "device_type.door_contact",
|
||||
"name": "Device5",
|
||||
"status1": "device_status.dc_open",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "0",
|
||||
"mac": "00:00:00:00:05",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "",
|
||||
"minigw_syncing": "",
|
||||
"minigw_configuration_data": "",
|
||||
"minigw_product_data": "",
|
||||
"minigw_lock_status": "",
|
||||
"minigw_number_of_credentials_supported": "",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "5555",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "4",
|
||||
"device_group": "000",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.dc_open"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "6",
|
||||
"rf": null,
|
||||
"address": "RF6",
|
||||
"type": "device_type.door_contact",
|
||||
"name": "Device6",
|
||||
"status1": "unknwon",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "0",
|
||||
"mac": "REDACTED",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "",
|
||||
"minigw_syncing": "",
|
||||
"minigw_configuration_data": "",
|
||||
"minigw_product_data": "",
|
||||
"minigw_lock_status": "",
|
||||
"minigw_number_of_credentials_supported": "",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "6666",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "4",
|
||||
"device_group": "000",
|
||||
"status_fault": [],
|
||||
"status_open": [],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "7",
|
||||
"rf": null,
|
||||
"address": "7777",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device7",
|
||||
"status1": "device_status.lock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:07",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": "36",
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "7777",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.lock"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "8",
|
||||
"rf": null,
|
||||
"address": "8888",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device8",
|
||||
"status1": "device_status.unlock",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:08",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": "4",
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "8888",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.unlock"],
|
||||
"trigger_by_zone": []
|
||||
},
|
||||
{
|
||||
"area": "1",
|
||||
"no": "9",
|
||||
"rf": null,
|
||||
"address": "9999",
|
||||
"type": "device_type.door_lock",
|
||||
"name": "Device9",
|
||||
"status1": "device_status.error",
|
||||
"status2": null,
|
||||
"status_switch": null,
|
||||
"status_power": null,
|
||||
"status_temp": null,
|
||||
"status_humi": null,
|
||||
"status_dim_level": null,
|
||||
"status_lux": "",
|
||||
"status_hue": null,
|
||||
"status_saturation": null,
|
||||
"rssi": "9",
|
||||
"mac": "00:00:00:00:09",
|
||||
"scene_trigger": "0",
|
||||
"status_total_energy": null,
|
||||
"device_id2": "",
|
||||
"extension": null,
|
||||
"minigw_protocol": "DM",
|
||||
"minigw_syncing": "0",
|
||||
"minigw_configuration_data": "02FF000001000000000000000000001E000100",
|
||||
"minigw_product_data": "21020120",
|
||||
"minigw_lock_status": "10",
|
||||
"minigw_number_of_credentials_supported": "10",
|
||||
"sresp_button_3": null,
|
||||
"sresp_button_1": null,
|
||||
"sresp_button_2": null,
|
||||
"sresp_button_4": null,
|
||||
"ipcam_trigger_by_zone1": null,
|
||||
"ipcam_trigger_by_zone2": null,
|
||||
"ipcam_trigger_by_zone3": null,
|
||||
"ipcam_trigger_by_zone4": null,
|
||||
"scene_restore": null,
|
||||
"thermo_mode": null,
|
||||
"thermo_setpoint": null,
|
||||
"thermo_c_setpoint": null,
|
||||
"thermo_setpoint_away": null,
|
||||
"thermo_c_setpoint_away": null,
|
||||
"thermo_fan_mode": null,
|
||||
"thermo_schd_setting": null,
|
||||
"group_id": null,
|
||||
"group_name": null,
|
||||
"bypass": "0",
|
||||
"device_id": "9999",
|
||||
"status_temp_format": "C",
|
||||
"type_no": "72",
|
||||
"device_group": "002",
|
||||
"status_fault": [],
|
||||
"status_open": ["device_status.error"],
|
||||
"trigger_by_zone": []
|
||||
}
|
||||
],
|
||||
"capture_latest": null,
|
||||
|
@ -82,6 +82,496 @@
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'_state': 'unlocked',
|
||||
'_state2': 'unknown',
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': None,
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '2',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.unlock',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'_state': 'locked',
|
||||
'_state2': 'unknown',
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': None,
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '3',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.lock',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.lock',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'_state': 'closed',
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '000',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '',
|
||||
'minigw_lock_status': '',
|
||||
'minigw_number_of_credentials_supported': '',
|
||||
'minigw_product_data': '',
|
||||
'minigw_protocol': '',
|
||||
'minigw_syncing': '',
|
||||
'name': '**REDACTED**',
|
||||
'no': '4',
|
||||
'rf': None,
|
||||
'rssi': '0',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.dc_close',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.dc_close',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_contact',
|
||||
'type_no': '4',
|
||||
}),
|
||||
dict({
|
||||
'_state': 'open',
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '000',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '',
|
||||
'minigw_lock_status': '',
|
||||
'minigw_number_of_credentials_supported': '',
|
||||
'minigw_product_data': '',
|
||||
'minigw_protocol': '',
|
||||
'minigw_syncing': '',
|
||||
'name': '**REDACTED**',
|
||||
'no': '5',
|
||||
'rf': None,
|
||||
'rssi': '0',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.dc_open',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.dc_open',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_contact',
|
||||
'type_no': '4',
|
||||
}),
|
||||
dict({
|
||||
'_state': 'unavailable',
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '000',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '',
|
||||
'minigw_lock_status': '',
|
||||
'minigw_number_of_credentials_supported': '',
|
||||
'minigw_product_data': '',
|
||||
'minigw_protocol': '',
|
||||
'minigw_syncing': '',
|
||||
'name': '**REDACTED**',
|
||||
'no': '6',
|
||||
'rf': None,
|
||||
'rssi': '0',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'unknwon',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_contact',
|
||||
'type_no': '4',
|
||||
}),
|
||||
dict({
|
||||
'_state': 'unlocked',
|
||||
'_state2': 'closed',
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': '36',
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '7',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.lock',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.lock',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'_state': 'unlocked',
|
||||
'_state2': 'open',
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': '4',
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '8',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.unlock',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.unlock',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'_state': 'unavailable',
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': '10',
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '9',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.error',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.error',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
]),
|
||||
'model': list([
|
||||
dict({
|
||||
@ -162,6 +652,484 @@
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': None,
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '2',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.unlock',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': None,
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '3',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.lock',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.lock',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '000',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '',
|
||||
'minigw_lock_status': '',
|
||||
'minigw_number_of_credentials_supported': '',
|
||||
'minigw_product_data': '',
|
||||
'minigw_protocol': '',
|
||||
'minigw_syncing': '',
|
||||
'name': '**REDACTED**',
|
||||
'no': '4',
|
||||
'rf': None,
|
||||
'rssi': '0',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.dc_close',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.dc_close',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_contact',
|
||||
'type_no': '4',
|
||||
}),
|
||||
dict({
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '000',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '',
|
||||
'minigw_lock_status': '',
|
||||
'minigw_number_of_credentials_supported': '',
|
||||
'minigw_product_data': '',
|
||||
'minigw_protocol': '',
|
||||
'minigw_syncing': '',
|
||||
'name': '**REDACTED**',
|
||||
'no': '5',
|
||||
'rf': None,
|
||||
'rssi': '0',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.dc_open',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.dc_open',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_contact',
|
||||
'type_no': '4',
|
||||
}),
|
||||
dict({
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '000',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '',
|
||||
'minigw_lock_status': '',
|
||||
'minigw_number_of_credentials_supported': '',
|
||||
'minigw_product_data': '',
|
||||
'minigw_protocol': '',
|
||||
'minigw_syncing': '',
|
||||
'name': '**REDACTED**',
|
||||
'no': '6',
|
||||
'rf': None,
|
||||
'rssi': '0',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'unknwon',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_contact',
|
||||
'type_no': '4',
|
||||
}),
|
||||
dict({
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': '36',
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '7',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.lock',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.lock',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': '4',
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '8',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.unlock',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.unlock',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
dict({
|
||||
'address': '**REDACTED**',
|
||||
'area': '1',
|
||||
'bypass': '0',
|
||||
'device_group': '002',
|
||||
'device_id': '**REDACTED**',
|
||||
'device_id2': '',
|
||||
'extension': None,
|
||||
'group_id': None,
|
||||
'group_name': None,
|
||||
'ipcam_trigger_by_zone1': None,
|
||||
'ipcam_trigger_by_zone2': None,
|
||||
'ipcam_trigger_by_zone3': None,
|
||||
'ipcam_trigger_by_zone4': None,
|
||||
'mac': '**REDACTED**',
|
||||
'minigw_configuration_data': '02FF000001000000000000000000001E000100',
|
||||
'minigw_lock_status': '10',
|
||||
'minigw_number_of_credentials_supported': '10',
|
||||
'minigw_product_data': '21020120',
|
||||
'minigw_protocol': 'DM',
|
||||
'minigw_syncing': '0',
|
||||
'name': '**REDACTED**',
|
||||
'no': '9',
|
||||
'rf': None,
|
||||
'rssi': '9',
|
||||
'scene_restore': None,
|
||||
'scene_trigger': '0',
|
||||
'sresp_button_1': None,
|
||||
'sresp_button_2': None,
|
||||
'sresp_button_3': None,
|
||||
'sresp_button_4': None,
|
||||
'status1': 'device_status.error',
|
||||
'status2': None,
|
||||
'status_dim_level': None,
|
||||
'status_fault': list([
|
||||
]),
|
||||
'status_hue': None,
|
||||
'status_humi': None,
|
||||
'status_lux': '',
|
||||
'status_open': list([
|
||||
'device_status.error',
|
||||
]),
|
||||
'status_power': None,
|
||||
'status_saturation': None,
|
||||
'status_switch': None,
|
||||
'status_temp': None,
|
||||
'status_temp_format': 'C',
|
||||
'status_total_energy': None,
|
||||
'thermo_c_setpoint': None,
|
||||
'thermo_c_setpoint_away': None,
|
||||
'thermo_fan_mode': None,
|
||||
'thermo_mode': None,
|
||||
'thermo_schd_setting': None,
|
||||
'thermo_setpoint': None,
|
||||
'thermo_setpoint_away': None,
|
||||
'trigger_by_zone': list([
|
||||
]),
|
||||
'type': 'device_type.door_lock',
|
||||
'type_no': '72',
|
||||
}),
|
||||
]),
|
||||
'HISTORY': list([
|
||||
dict({
|
||||
|
123
tests/components/yale_smart_alarm/test_coordinator.py
Normal file
123
tests/components/yale_smart_alarm/test_coordinator.py
Normal file
@ -0,0 +1,123 @@
|
||||
"""The test for the sensibo coordinator."""
|
||||
from __future__ import annotations
|
||||
|
||||
from datetime import timedelta
|
||||
from typing import Any
|
||||
from unittest.mock import Mock, patch
|
||||
|
||||
import pytest
|
||||
from yalesmartalarmclient.const import YALE_STATE_ARM_FULL
|
||||
from yalesmartalarmclient.exceptions import AuthenticationError, UnknownError
|
||||
|
||||
from homeassistant.components.yale_smart_alarm.const import DOMAIN
|
||||
from homeassistant.config_entries import SOURCE_USER
|
||||
from homeassistant.const import STATE_ALARM_ARMED_AWAY, STATE_UNAVAILABLE
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.util import dt as dt_util
|
||||
|
||||
from .conftest import ENTRY_CONFIG, OPTIONS_CONFIG
|
||||
|
||||
from tests.common import MockConfigEntry, async_fire_time_changed
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"p_error",
|
||||
[
|
||||
AuthenticationError(),
|
||||
UnknownError(),
|
||||
ConnectionError("Could not connect"),
|
||||
TimeoutError(),
|
||||
],
|
||||
)
|
||||
async def test_coordinator_setup_errors(
|
||||
hass: HomeAssistant,
|
||||
load_json: dict[str, Any],
|
||||
p_error: Exception,
|
||||
) -> None:
|
||||
"""Test the Yale Smart Living coordinator with errors."""
|
||||
|
||||
config_entry = MockConfigEntry(
|
||||
domain=DOMAIN,
|
||||
source=SOURCE_USER,
|
||||
data=ENTRY_CONFIG,
|
||||
options=OPTIONS_CONFIG,
|
||||
entry_id="1",
|
||||
unique_id="username",
|
||||
version=1,
|
||||
)
|
||||
|
||||
config_entry.add_to_hass(hass)
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.yale_smart_alarm.coordinator.YaleSmartAlarmClient",
|
||||
autospec=True,
|
||||
) as mock_client_class:
|
||||
mock_client_class.side_effect = p_error
|
||||
await hass.config_entries.async_setup(config_entry.entry_id)
|
||||
await hass.async_block_till_done()
|
||||
|
||||
state = hass.states.get("alarm_control_panel.yale_smart_alarm")
|
||||
assert not state
|
||||
|
||||
|
||||
async def test_coordinator_setup_and_update_errors(
|
||||
hass: HomeAssistant,
|
||||
load_config_entry: tuple[MockConfigEntry, Mock],
|
||||
load_json: dict[str, Any],
|
||||
) -> None:
|
||||
"""Test the Yale Smart Living coordinator with errors."""
|
||||
|
||||
client = load_config_entry[1]
|
||||
|
||||
state = hass.states.get("alarm_control_panel.yale_smart_alarm")
|
||||
assert state.state == STATE_ALARM_ARMED_AWAY
|
||||
client.reset_mock()
|
||||
|
||||
client.get_all.side_effect = ConnectionError("Could not connect")
|
||||
async_fire_time_changed(hass, dt_util.utcnow() + timedelta(minutes=1))
|
||||
await hass.async_block_till_done()
|
||||
client.get_all.assert_called_once()
|
||||
state = hass.states.get("alarm_control_panel.yale_smart_alarm")
|
||||
assert state.state == STATE_UNAVAILABLE
|
||||
client.reset_mock()
|
||||
|
||||
client.get_all.side_effect = ConnectionError("Could not connect")
|
||||
async_fire_time_changed(hass, dt_util.utcnow() + timedelta(minutes=2))
|
||||
await hass.async_block_till_done()
|
||||
client.get_all.assert_called_once()
|
||||
state = hass.states.get("alarm_control_panel.yale_smart_alarm")
|
||||
assert state.state == STATE_UNAVAILABLE
|
||||
client.reset_mock()
|
||||
|
||||
client.get_all.side_effect = TimeoutError("Could not connect")
|
||||
async_fire_time_changed(hass, dt_util.utcnow() + timedelta(minutes=3))
|
||||
await hass.async_block_till_done()
|
||||
client.get_all.assert_called_once()
|
||||
state = hass.states.get("alarm_control_panel.yale_smart_alarm")
|
||||
assert state.state == STATE_UNAVAILABLE
|
||||
client.reset_mock()
|
||||
|
||||
client.get_all.side_effect = UnknownError("info")
|
||||
async_fire_time_changed(hass, dt_util.utcnow() + timedelta(minutes=4))
|
||||
await hass.async_block_till_done()
|
||||
client.get_all.assert_called_once()
|
||||
state = hass.states.get("alarm_control_panel.yale_smart_alarm")
|
||||
assert state.state == STATE_UNAVAILABLE
|
||||
client.reset_mock()
|
||||
|
||||
client.get_all.side_effect = None
|
||||
client.get_all.return_value = load_json
|
||||
client.get_armed_status.return_value = YALE_STATE_ARM_FULL
|
||||
async_fire_time_changed(hass, dt_util.utcnow() + timedelta(minutes=5))
|
||||
await hass.async_block_till_done()
|
||||
client.get_all.assert_called_once()
|
||||
state = hass.states.get("alarm_control_panel.yale_smart_alarm")
|
||||
assert state.state == STATE_ALARM_ARMED_AWAY
|
||||
client.reset_mock()
|
||||
|
||||
client.get_all.side_effect = AuthenticationError("Can not authenticate")
|
||||
async_fire_time_changed(hass, dt_util.utcnow() + timedelta(minutes=6))
|
||||
await hass.async_block_till_done()
|
||||
client.get_all.assert_called_once()
|
||||
state = hass.states.get("alarm_control_panel.yale_smart_alarm")
|
||||
assert state.state == STATE_UNAVAILABLE
|
@ -1,11 +1,13 @@
|
||||
"""Test Yale Smart Living diagnostics."""
|
||||
from __future__ import annotations
|
||||
|
||||
from unittest.mock import Mock
|
||||
|
||||
from syrupy.assertion import SnapshotAssertion
|
||||
|
||||
from homeassistant.config_entries import ConfigEntry
|
||||
from homeassistant.core import HomeAssistant
|
||||
|
||||
from tests.common import MockConfigEntry
|
||||
from tests.components.diagnostics import get_diagnostics_for_config_entry
|
||||
from tests.typing import ClientSessionGenerator
|
||||
|
||||
@ -13,11 +15,11 @@ from tests.typing import ClientSessionGenerator
|
||||
async def test_diagnostics(
|
||||
hass: HomeAssistant,
|
||||
hass_client: ClientSessionGenerator,
|
||||
load_config_entry: ConfigEntry,
|
||||
load_config_entry: tuple[MockConfigEntry, Mock],
|
||||
snapshot: SnapshotAssertion,
|
||||
) -> None:
|
||||
"""Test generating diagnostics for a config entry."""
|
||||
entry = load_config_entry
|
||||
entry = load_config_entry[0]
|
||||
|
||||
diag = await get_diagnostics_for_config_entry(hass, hass_client, entry)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user