Configuration of a complex integration from the UI

Hello,

I have an integration that is only configurable via configuration.yaml (Dynalite). The problem is that when setting up an integration via a config flow (other than import), it only allows me to add basic types.

The configuration has a few basic types that I can easily get when adding from the UI. However, it also has a few maps. It is possible to connect with the basic info as it is needed to start working, and configure the maps later via windows that can be opened from the UI. What is the best way to have the component open a window in the UI? Is there any example component that does it?

Best,
Ziv

2 Likes

:+1: I’m also looking for examples of more advanced UI configuration, haven’t found any.

I actually found a solution and in the process of implementing. You need to create it via the frontend and create a panel for it. You can look at the MQTT frontend. It can be a bit confusing as MQTT is touching many places.
Alternatively, you can look at my implementation, but it is still in the PR process (waiting now on a PR with the websockets to be merged). However, the good thing about it is that it only touches the config panel so if you clone the frontend and run “grep -r dynalite src/”, you will find all the places to change… It is located in https://github.com/ziv1234/frontend/tree/global_tables, so you can see the concepts there. Alternatively, you can look at a smaller version that has the concepts in the first PR: https://github.com/home-assistant/frontend/pull/6635.
Let me know if this helps. Hopefully it will be pushed into HA soon. It is not too complex, but very poorly documented so had to work it out from the MQTT integration