The ‘register_service’ api in appdaemon is meant to create your own service.
When HA starts, if input_text is configed, the following service will be register: 1. set_value 2. reload.
You can see how are these services registered in ha log. It’s been a long time, so I can’t recall it totally.
But here’s what I found in my ad which is an app that create a input_select entity.
class HDMImatrix(hass.Hass):
def initialize(self):
self.climate = self.args['climate_id']
self.input_source = self.args['input_source']
self.entities = self.args['entities']
# self.listen_event(self.ha_restart, event='call_service', domain='homeassistant', service='restart')
self.fire_event('service_registered', domain="input_select", service="select_option")
self.fire_event('service_registered', domain="input_select", service="set_options")
self.fire_event('service_registered', domain="input_select", service="select_previous")
self.fire_event('service_registered', domain="input_select", service="select_next")
for entity in self.entities:
friendly_name = self.entities[entity]['friendly_name']
icon = self.entities[entity]['icon']
cmds = self.entities[entity]['cmds']
globals()['self.'+entity+'_list'] = dict(zip(self.input_source,cmds))
self.set_state(entity, state = '请选择信号源', attributes = {'options': self.input_source, 'friendly_name': friendly_name, 'icon': icon})
self.listen_select_handle = self.listen_event(self.select_input, event='call_service', domain="input_select", service='select_option', entity=entity)
There are 4 services that I registered mannully. You can try this.