{"record":{"id":"8827a15f447c73f4","repo":"home-assistant/core","slug":"no-answer-from-satellite","errorCode":null,"errorMessage":"No answer from satellite","messagePattern":"No answer from satellite","errorType":"exception","errorClass":"HomeAssistantError","httpStatus":null,"severity":"error","filePath":"homeassistant/components/assist_satellite/__init__.py","lineNumber":147,"sourceCode":"        if satellite_entity is None:\n            raise HomeAssistantError(\n                f\"Invalid Assist satellite entity id: {satellite_entity_id}\"\n            )\n\n        ask_question_args = {\n            \"question\": call.data.get(\"question\"),\n            \"question_media_id\": call.data.get(\"question_media_id\"),\n            \"preannounce\": call.data.get(\"preannounce\", True),\n            \"answers\": call.data.get(\"answers\"),\n        }\n\n        if preannounce_media_id := call.data.get(\"preannounce_media_id\"):\n            ask_question_args[\"preannounce_media_id\"] = preannounce_media_id\n\n        answer = await satellite_entity.async_internal_ask_question(**ask_question_args)\n\n        if answer is None:\n            raise HomeAssistantError(\"No answer from satellite\")\n\n        return asdict(answer)\n\n    hass.services.async_register(\n        domain=DOMAIN,\n        service=\"ask_question\",\n        service_func=handle_ask_question,\n        schema=vol.All(\n            {\n                vol.Required(ATTR_ENTITY_ID): cv.entity_domain(DOMAIN),\n                vol.Optional(\"question\"): str,\n                vol.Optional(\"question_media_id\"): _media_id_validator,\n                vol.Optional(\"preannounce\", default=True): bool,\n                vol.Optional(\"preannounce_media_id\"): _media_id_validator,\n                vol.Optional(\"answers\"): [\n                    {\n                        vol.Required(\"id\"): str,\n                        vol.Required(\"sentences\"): vol.All(","sourceCodeStart":129,"sourceCodeEnd":165,"githubUrl":"https://github.com/home-assistant/core/blob/58a3fdb3ea0538617f0a07efcfba6294de64fd59/homeassistant/components/assist_satellite/__init__.py#L129-L165","documentation":"Raised when satellite_entity.async_internal_ask_question returns None, meaning the satellite never produced an AssistSatelliteAnswer. The internal wrapper returns None when the entity does not support the ANNOUNCE/ask feature or when the underlying device interaction yields no answer object.","triggerScenarios":"Calling ask_question on a satellite whose supported_features lack AssistSatelliteEntityFeature.ANNOUNCE (feature check inside async_internal_ask_question returns None); device firmware ignoring the question; media announcement failed silently so no answer path executed.","commonSituations":"Using ask_question with an integration that only implements basic wake-word satellites; version mismatch where the integration has not adopted the ask-question API yet; device offline mid-announcement.","solutions":["Confirm the satellite entity supports announcing: check supported_features for AssistSatelliteEntityFeature.ANNOUNCE","Update the satellite integration to a version implementing async_ask_question","Test the satellite with assist_satellite.announce first to verify the announcement path works","Check the device is online and its state is idle before asking"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":"features = hass.states.get(entity_id).attributes.get(\"supported_features\", 0)\nfrom homeassistant.components.assist_satellite import AssistSatelliteEntityFeature\nif not features & AssistSatelliteEntityFeature.ANNOUNCE:\n    raise UnsupportedFeature(f\"{entity_id} cannot announce/answer questions\")","typeGuard":null,"tryCatchPattern":"try:\n    answer = await satellite.async_internal_ask_question(**args)\nexcept HomeAssistantError as err:\n    if \"No answer from satellite\" in str(err):\n        # degrade gracefully: skip question, log device state\n        return None\n    raise","preventionTips":["Check supported_features for ANNOUNCE before using ask_question","Verify the satellite entity is in idle state before asking","Keep satellite integrations updated so ask-question support is present"],"tags":["assist-satellite","service-call","hardware","feature-check"],"backgroundTag":null,"analyzedSha":"58a3fdb3ea0538617f0a07efcfba6294de64fd59","analyzedAt":"2026-08-14T20:54:38.818Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}