mirror of
https://github.com/home-assistant/core.git
synced 2026-08-24 10:13:52 -05:00
Reolink tamper entities (#179750)
Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
co-authored by
dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
parent
6927877d1b
commit
02a4014a68
@@ -156,6 +156,14 @@ BINARY_PUSH_SENSORS = (
|
||||
value=lambda api, ch: api.ai_detected(ch, "cry"),
|
||||
supported=lambda api, ch: api.ai_supported(ch, "cry"),
|
||||
),
|
||||
ReolinkBinarySensorEntityDescription(
|
||||
key="tamper",
|
||||
translation_key="tamper",
|
||||
cmd_id=[33],
|
||||
device_class=BinarySensorDeviceClass.TAMPER,
|
||||
value=lambda api, ch: api.baichuan.tamper_state(ch),
|
||||
supported=lambda api, ch: api.supported(ch, "tamper"),
|
||||
),
|
||||
)
|
||||
|
||||
BINARY_SENSORS = (
|
||||
|
||||
@@ -121,6 +121,12 @@
|
||||
"on": "mdi:package-variant-closed-check"
|
||||
}
|
||||
},
|
||||
"tamper": {
|
||||
"default": "mdi:shield-check",
|
||||
"state": {
|
||||
"on": "mdi:shield-alert"
|
||||
}
|
||||
},
|
||||
"vehicle": {
|
||||
"default": "mdi:car-off",
|
||||
"state": {
|
||||
@@ -634,6 +640,12 @@
|
||||
},
|
||||
"siren_on_event": {
|
||||
"default": "mdi:alarm-light"
|
||||
},
|
||||
"tamper_enabled": {
|
||||
"default": "mdi:shield-check",
|
||||
"state": {
|
||||
"off": "mdi:shield"
|
||||
}
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
|
||||
@@ -891,6 +891,9 @@
|
||||
},
|
||||
"siren_on_event": {
|
||||
"name": "Siren on event"
|
||||
},
|
||||
"tamper_enabled": {
|
||||
"name": "Tamper alarm"
|
||||
}
|
||||
},
|
||||
"time": {
|
||||
|
||||
@@ -245,6 +245,17 @@ SWITCH_ENTITIES = (
|
||||
value=lambda api, ch: api.pir_reduce_alarm(ch) is True,
|
||||
method=lambda api, ch, value: api.set_pir(ch, reduce_alarm=value),
|
||||
),
|
||||
ReolinkSwitchEntityDescription(
|
||||
key="tamper_enabled",
|
||||
cmd_key="763",
|
||||
cmd_id=763,
|
||||
translation_key="tamper_enabled",
|
||||
entity_category=EntityCategory.CONFIG,
|
||||
entity_registry_enabled_default=False,
|
||||
supported=lambda api, ch: api.supported(ch, "tamper"),
|
||||
value=lambda api, ch: api.baichuan.tamper_enabled(ch) is True,
|
||||
method=lambda api, ch, value: api.baichuan.set_tamper(ch, enable=value),
|
||||
),
|
||||
ReolinkSwitchEntityDescription(
|
||||
key="privacy_mode",
|
||||
always_available=True,
|
||||
|
||||
@@ -655,6 +655,57 @@
|
||||
'state': 'on',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[binary_sensor.test_reolink_cam_tamper-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': list([
|
||||
None,
|
||||
]),
|
||||
'area_id': None,
|
||||
'capabilities': None,
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'binary_sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'binary_sensor.test_reolink_cam_tamper',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'object_id_base': 'Tamper',
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <BinarySensorDeviceClass.TAMPER: 'tamper'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Tamper',
|
||||
'platform': 'reolink',
|
||||
'previous_unique_id': None,
|
||||
'suggested_object_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'tamper',
|
||||
'unique_id': 'ABC1234567D89EFG_DEF7654321D89GHT_tamper',
|
||||
'unit_of_measurement': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[binary_sensor.test_reolink_cam_tamper-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
<EntityStateAttribute.DEVICE_CLASS: 'device_class'>: 'tamper',
|
||||
<EntityStateAttribute.FRIENDLY_NAME: 'friendly_name'>: 'test_reolink_cam Tamper',
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'binary_sensor.test_reolink_cam_tamper',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': 'on',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[binary_sensor.test_reolink_cam_vehicle-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': list([
|
||||
|
||||
@@ -128,6 +128,10 @@
|
||||
'0': 1,
|
||||
'null': 1,
|
||||
}),
|
||||
'763': dict({
|
||||
'0': 1,
|
||||
'null': 1,
|
||||
}),
|
||||
'DingDongOpt': dict({
|
||||
'0': 2,
|
||||
'null': 2,
|
||||
|
||||
@@ -1049,6 +1049,56 @@
|
||||
'state': 'on',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[switch.test_reolink_cam_tamper_alarm-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': list([
|
||||
None,
|
||||
]),
|
||||
'area_id': None,
|
||||
'capabilities': None,
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'switch',
|
||||
'entity_category': <EntityCategory.CONFIG: 'config'>,
|
||||
'entity_id': 'switch.test_reolink_cam_tamper_alarm',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'object_id_base': 'Tamper alarm',
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': None,
|
||||
'original_icon': None,
|
||||
'original_name': 'Tamper alarm',
|
||||
'platform': 'reolink',
|
||||
'previous_unique_id': None,
|
||||
'suggested_object_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'tamper_enabled',
|
||||
'unique_id': 'ABC1234567D89EFG_DEF7654321D89GHT_tamper_enabled',
|
||||
'unit_of_measurement': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[switch.test_reolink_cam_tamper_alarm-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
<EntityStateAttribute.FRIENDLY_NAME: 'friendly_name'>: 'test_reolink_cam Tamper alarm',
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'switch.test_reolink_cam_tamper_alarm',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': 'off',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[switch.test_reolink_name_email_on_event-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': list([
|
||||
@@ -2399,3 +2449,53 @@
|
||||
'state': 'on',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities_dual_lens[switch.test_reolink_name_tamper_alarm-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': list([
|
||||
None,
|
||||
]),
|
||||
'area_id': None,
|
||||
'capabilities': None,
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'switch',
|
||||
'entity_category': <EntityCategory.CONFIG: 'config'>,
|
||||
'entity_id': 'switch.test_reolink_name_tamper_alarm',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'object_id_base': 'Tamper alarm',
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': None,
|
||||
'original_icon': None,
|
||||
'original_name': 'Tamper alarm',
|
||||
'platform': 'reolink',
|
||||
'previous_unique_id': None,
|
||||
'suggested_object_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'tamper_enabled',
|
||||
'unique_id': 'ABC1234567D89EFG_0_tamper_enabled',
|
||||
'unit_of_measurement': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities_dual_lens[switch.test_reolink_name_tamper_alarm-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
<EntityStateAttribute.FRIENDLY_NAME: 'friendly_name'>: 'test_reolink_name Tamper alarm',
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'switch.test_reolink_name_tamper_alarm',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': 'off',
|
||||
})
|
||||
# ---
|
||||
|
||||
Reference in New Issue
Block a user