When an instance is stopped, the Hyperion API no longer reports any state about it.
I don't think this is true
I'm not currently using the default integration (but would love to) and I'm using
curl -sS -X POST -H 'Content-Type:application/json' -H 'Accept:application/json' -d '{"command": "serverinfo"}' http://192.168.3.244:8090/json-rpc | jq '.info.components[] | select(.name == "ALL") | .enabled' | grep -q 'true'
To get the status of hyperion.
It works even if hyperion had "component: ALL" set to false, which shuts down the capture and is equivalent to "Disable instance" in UI, afaik
EDIT: The integration seems fine when manually changing the component: ALL, btw.
IMO, all it takes is
diff --git a/homeassistant/components/hyperion/light.py b/homeassistant/components/hyperion/light.py
index e2989cb973..3d42e6db4c 100644
--- a/homeassistant/components/hyperion/light.py
+++ b/homeassistant/components/hyperion/light.py
@@ -487,11 +487,11 @@ class HyperionLight(LightEntity):
async def async_turn_off(self, **kwargs: Any) -> None:
"""Disable the LED output component."""
if not await self._client.async_send_set_component(
**{
const.KEY_COMPONENTSTATE: {
- const.KEY_COMPONENT: const.KEY_COMPONENTID_LEDDEVICE,
+ const.KEY_COMPONENT: const.KEY_COMPONENTID_ALL,
const.KEY_STATE: False,
}
}
):
return
Alles anzeigen
EDIT2: Yep, works fine, afaict