core: EzViz Integration (Camera Idle) Won't Successfully Reload

The problem

The integration successfully finds my camera (C1C) and settings/properties including the correct local IP, but the device is listed as idle. The service for ezviz.wake_camera runs but the camera remains idle.

When reloading the integration, I see a warning in the logs now that I didn’t see before:

Logger: homeassistant.components.ezviz.camera
Source: components/ezviz/camera.py:162
Integration: Ezviz (documentation, issues)
First occurred: January 11, 2022, 10:13:12 PM (4 occurrences)
Last logged: 1:26:07 PM

Found camera with serial EXXXXX [redacted] without configuration. Please go to integration to complete setup

When I hit Configure on the integration, I only see the timeout seconds and optional extra args for passing to FFMPEG cameras. What am I missing?

What version of Home Assistant Core has the issue?

2021.12.9

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

ezviz

Link to integration documentation on our website

https://www.home-assistant.io/integrations/ezviz/

Example YAML snippet

I don't believe any yaml is required to configure this since the formal integration was released.

Anything in the logs that might be useful for us?

2022-01-15 14:06:48 WARNING (MainThread) [homeassistant.components.ezviz.camera] Found camera with serial E81680149 without configuration. Please go to integration to complete setup
2022-01-15 14:07:12 WARNING (MainThread) [homeassistant.components.ezviz.camera] Found camera with serial E81680149 without configuration. Please go to integration to complete setup
2022-01-15 14:07:20 WARNING (MainThread) [homeassistant.components.ezviz.camera] Found camera with serial E81680149 without configuration. Please go to integration to complete setup

Additional information

No response

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 22 (3 by maintainers)

Most upvoted comments

I face the same issue with 2 cameras, CP1 & CN6.

I was performing today a code review, and was about to propose the same update as georgo, with a small modification as 21 should be replace by DeviceSwitchType.SLEEP.value. The file concerened is camera.py, line 348.

I have no developement environement to check, and this is my first issue reported on git. Sorry for this.

@short4bmoney To test this, I modified that file (camera.py) directly and restarted homeassistant.

I faced the same issue: Calling service ezviz.wake_camera did nothing and my cameras (Ezviz Mini-O) remains in sleep mode.

So I looked up code and tried to find code responsible for wake up. (Note - When camera is in sleep, switch with “Sleep” is disabled). I found this:

    def perform_wake_device(self) -> None:
        """Basically wakes the camera by querying the device."""
        try:
            self.coordinator.ezviz_client.get_detection_sensibility(self._serial)
        except (HTTPError, PyEzvizError) as err:
            raise PyEzvizError("Cannot wake device") from err

Basically what it’s doing is nothing, that can wake camera.

So I added this:

            self.coordinator.ezviz_client.switch_status(
                self._serial, 21, 0
            )

and my cameras are now waking up.

This code is obviously hotfix I made for myself, 21 is constant from pyezviz.