It would be nice if from an Blueprint we could list services from a specific [ESPHome] device or integration.
Specifically with ESPHome, multiple devices running similar code will generate their own services, and being able to get the services from a device would make way easier to refer to those in a Blueprint.
I guess I don’t follow this request. Is this from a blueprint creator’s viewpoint or a users?
It’s definitely from a creators point of view. I wanna call ESPHome services from a Blueprint, but I wanna a way to easily find the services for a given device, so I’m sure I’m not sending the call to another device.
Then I don’t understand the request. There are selectors that properly filter options down to ensure you aren’t calling the wrong services on the wrong entities.
That’s true for typical services/actions, but not for ESPHome actions.
My use case is, I have a blueprint which send instructions to ESPHome devices using services. On the Blueprint, I have to know the name of the actions created by that specific ESPHome device, which is typically esphome.<<device_name>>_action_name
.
While the action name is known, the device name is not that easy to “calculate”. It’s based on the device’s friendly name, but replacing no -standard chars by _
, etc. And the friendly name is not clearly known by the Blueprint, as users can rename devices after integrating to HA (which didn’t change it’s actions names), etc.
So, I just wanna an easy way for the Blueprint to accurately know the right name of actions a given ESPHome is providing, when I know it’s unique device id.
FYI you can use the | slugify
in a template to do that.
Yes, I have this problem with other blueprints. Giving the user the ability to change the entity_id/name of things really throws a wrench into blueprints