How can a custom card talk to a custom addon? (like in HTTP or something…)
I know I can expose the addon server to a different port but then it will be publicly accessible without auth, and I don’t wanna implement auth on my own… (I know I can use the auth API but prefer to avoid it)
There is no need to document that.
In the end it’s just a regular server.
But instead of putting in a public hostname or an IP to it, you use the hostname of the docker container.
Everything else is just as it would be any other service.
The adguard and zwave-js integrations both support talking to add-ons and other ways of running those services.
There is something I’m missing here, how can a front end call the hostname of the docker container? they are not in the same network (one is the network of the current device viewing the page while the other is the home assistant server and it’s internal docker network
(Note that I’m talking about frontend card communication with integration/addon)
frontend cards are usually communicating with other systems using home assistant to eliminate network issues. Custom add-on or integration can register a web socket inside home assistant and front end can call it.
Add-ons can not provide services to Home Assistant.
Only integrations can do that.
The services field of add-on configuration is to tell the supervisor what kind of service the add-on provides so it can be used by other add-ons like mqtt / mysql.