home-assistant/core · error · HomeAssistantError

open_door_failed

open_door_failed

Error message

open_door_failed

What it means

HomeAssistantError with translation_key 'open_door_failed' raised by AladdinConnectCover.async_open_cover when client.open_door() fails with any aiohttp.ClientError. The user-visible message comes from the integration's strings.json for that key (device/door placeholders), not from the raw exception; the original error is kept as __cause__ for the log.

Source

Thrown at homeassistant/components/aladdin_connect/cover.py:61

class AladdinCoverEntity(AladdinConnectEntity, CoverEntity):
    """Representation of Aladdin Connect cover."""

    _attr_device_class = CoverDeviceClass.GARAGE
    _attr_supported_features = SUPPORTED_FEATURES
    _attr_name = None

    def __init__(self, coordinator: AladdinConnectCoordinator, door_id: str) -> None:
        """Initialize the Aladdin Connect cover."""
        super().__init__(coordinator, door_id)
        self._attr_unique_id = door_id

    @override
    async def async_open_cover(self, **kwargs: Any) -> None:
        """Issue open command to cover."""
        try:
            await self.client.open_door(self._device_id, self._number)
        except aiohttp.ClientError as err:
            raise HomeAssistantError(
                translation_domain=DOMAIN,
                translation_key="open_door_failed",
            ) from err

    @override
    async def async_close_cover(self, **kwargs: Any) -> None:
        """Issue close command to cover."""
        try:
            await self.client.close_door(self._device_id, self._number)
        except aiohttp.ClientError as err:
            raise HomeAssistantError(
                translation_domain=DOMAIN,
                translation_key="close_door_failed",
            ) from err

    @property
    @override
    def is_closed(self) -> bool | None:

View on GitHub (pinned to 58a3fdb3ea)

Solutions

  1. Retry the open command; transient cloud errors are the most common cause.
  2. Check HA logs for the chained ClientError to see if it is auth (then re-authenticate) or connectivity.
  3. Verify the door responds in the Aladdin Connect app to isolate HA vs. service issues.
  4. In automations, catch HomeAssistantError and notify instead of failing silently.
Defensive patterns

Strategy: try-catch

Try / catch

from homeassistant.exceptions import HomeAssistantError

try:
    await cover.async_open_cover()
except HomeAssistantError as err:
    _LOGGER.error("Open failed: %s (cause: %r)", err, err.__cause__)

Prevention

When it happens

Trigger: Calling cover.open_cover on an Aladdin Connect garage door while the cloud request fails: network error, 5xx, or timeout. Note 4xx auth failures from get_doors would normally surface earlier, but an open-door 4xx still arrives here as ClientResponseError (a ClientError subclass).

Common situations: Cloud outage at the moment of pressing the button; flaky internet; token invalidated between the last poll and the command.

Related errors


AI-assisted analysis of home-assistant/core@58a3fdb3ea (2026-08-14). Data as JSON: /api/errors/34c0f3347b0ccfd0. Report an issue: GitHub.