diff --git a/homeassistant/components/octoprint/camera.py b/homeassistant/components/octoprint/camera.py index 99052993a61..a6955706508 100644 --- a/homeassistant/components/octoprint/camera.py +++ b/homeassistant/components/octoprint/camera.py @@ -7,8 +7,8 @@ from homeassistant.components.mjpeg.camera import MjpegCamera from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_VERIFY_SSL from homeassistant.core import HomeAssistant -from homeassistant.helpers.device_registry import DeviceInfo from homeassistant.helpers.entity_platform import AddEntitiesCallback +from homeassistant.helpers.update_coordinator import CoordinatorEntity from . import OctoprintDataUpdateCoordinator from .const import DOMAIN @@ -38,7 +38,7 @@ async def async_setup_entry( [ OctoprintCamera( camera_info, - coordinator.device_info, + coordinator, device_id, verify_ssl, ) @@ -46,19 +46,23 @@ async def async_setup_entry( ) -class OctoprintCamera(MjpegCamera): +class OctoprintCamera(CoordinatorEntity[OctoprintDataUpdateCoordinator], MjpegCamera): """Representation of an OctoPrint Camera Stream.""" def __init__( self, camera_settings: WebcamSettings, - device_info: DeviceInfo, + coordinator: OctoprintDataUpdateCoordinator, device_id: str, verify_ssl: bool, ) -> None: """Initialize as a subclass of MjpegCamera.""" super().__init__( - device_info=device_info, + coordinator=coordinator, + ) + MjpegCamera.__init__( + self, + device_info=coordinator.device_info, mjpeg_url=camera_settings.stream_url, name="OctoPrint Camera", still_image_url=camera_settings.external_snapshot_url,