mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-04-19 18:57:16 +00:00
Expose all services/discovery with possible add-ons (#1772)
This commit is contained in:
parent
af412c3105
commit
9c902c5c69
5
API.md
5
API.md
@ -672,7 +672,10 @@ Need ingress session as cookie.
|
||||
"uuid": "uuid",
|
||||
"config": {}
|
||||
}
|
||||
]
|
||||
],
|
||||
"services": {
|
||||
"ozw": ["core_zwave"]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -5,6 +5,7 @@ from ..const import (
|
||||
ATTR_ADDON,
|
||||
ATTR_CONFIG,
|
||||
ATTR_DISCOVERY,
|
||||
ATTR_SERVICES,
|
||||
ATTR_SERVICE,
|
||||
ATTR_UUID,
|
||||
REQUEST_FROM,
|
||||
@ -42,6 +43,7 @@ class APIDiscovery(CoreSysAttributes):
|
||||
"""Show register services."""
|
||||
self._check_permission_ha(request)
|
||||
|
||||
# Get available discovery
|
||||
discovery = []
|
||||
for message in self.sys_discovery.list_messages:
|
||||
discovery.append(
|
||||
@ -53,7 +55,13 @@ class APIDiscovery(CoreSysAttributes):
|
||||
}
|
||||
)
|
||||
|
||||
return {ATTR_DISCOVERY: discovery}
|
||||
# Get available services/add-ons
|
||||
services = {}
|
||||
for addon in self.sys_addons.all:
|
||||
for name in addon.discovery:
|
||||
services.setdefault(name, []).append(addon.slug)
|
||||
|
||||
return {ATTR_DISCOVERY: discovery, ATTR_SERVICES: services}
|
||||
|
||||
@api_process
|
||||
async def set_discovery(self, request):
|
||||
|
Loading…
x
Reference in New Issue
Block a user