I am wondering if it is possible to create a custom “configure” panel in a custom component, mimicking the functionality of the same thing in the Zigbee integration?
Clicking this button opens a new page with tabs and fancy UI things (manage groups, visualize the network, etc).
I’d like to implement something similar for an integration I’m working on - unfortunately the Options Flow does not have the flexibility/complexity that I’m looking for
I did have a rummage through that but this config_flow.py file is all about the initial configuration form, not the fancier “Configure” panel that is accessed after installation.
I’ve now expanded my search to the frontend repo, and can see references to what I’m after here:
So it’s looking unlikely that such a thing can be easily added to a custom component
Unfortunately this Options flow is different to what I’m referring to - they are somewhat limited to just a simple popup form, as per your screenshot. The “fancy config page” thing that the Zigbee component has is an entirely separate page/subsite/section with custom styling and logic.
I’m particularly interested in the “Create Group” page, where you can bundle Zigbee devices into logical groups. Here there is a list of all my devices with a handy Search box above them to easily filter and select.
I would like to replicate something like this for my integration, but the closest thing I can get via the Options flow is the multi-select, but it isn’t quite the same
Unfortunately not From what I could see, the extra functionality that can be found in the Zigbee component is only because it’s hard coded in the UI - there’s no way to do similar things in a 3rd-party custom component.
Hi !
If there is still interest in this, I’m currently working on such a custom configuration panel. Searching for infos or documentation unfortunately yields next to nothing.
The only example of config panels that are not part of HA frontend repo I could find was “Insteon”.
The idea is to load it from pypi as integration requirement, run it in an iFrame and communicate via websockets to your integration backend.
Unfortunately I’m totally new to frontend development, so any pointers to other examples, threads or documentation are appreciated.
I am the author of the Insteon custom panel. There are at least 2 other integrations that have a custom panel as well. We have also created a template project that can be used as a starting point: Have a look at these integrations: