From 24a46d91d30fbd6f24f42349e9adf5ba71d6f1b6 Mon Sep 17 00:00:00 2001 From: "Julien \"_FrnchFrgg_\" Rivaud" Date: Mon, 10 May 2021 19:49:08 +0200 Subject: [PATCH] Fix amcrest detection of sensor reset (#50249) Co-authored-by: Pascal Vizeli --- homeassistant/components/amcrest/__init__.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/homeassistant/components/amcrest/__init__.py b/homeassistant/components/amcrest/__init__.py index f6ddc210415..8d274f12044 100644 --- a/homeassistant/components/amcrest/__init__.py +++ b/homeassistant/components/amcrest/__init__.py @@ -201,11 +201,15 @@ def _monitor_events(hass, name, api, event_codes): while True: api.available_flag.wait() try: - for code, start in api.event_actions("All", retries=5): - event_data = {"camera": name, "event": code, "payload": start} + for code, payload in api.event_actions("All", retries=5): + event_data = {"camera": name, "event": code, "payload": payload} hass.bus.fire("amcrest", event_data) if code in event_codes: signal = service_signal(SERVICE_EVENT, name, code) + start = any( + str(key).lower() == "action" and str(val).lower() == "start" + for key, val in payload.items() + ) _LOGGER.debug("Sending signal: '%s': %s", signal, start) dispatcher_send(hass, signal, start) except AmcrestError as error: