human
I wrote the below code

    configurator = get_component('configurator')
    if (host in _CONFIGURING):
        configurator.notify_errors(_CONFIGURING[host], 'Failed    to    register,    please    try    again.')
        return
    def plex_configuration_callback(data):
        'Handle    configuration    changes.'
        setup_plexserver(host, data.get('token'), cv.boolean(data.get('has_ssl')), cv.boolean(data.get('do_not_verify')), hass, config, add_devices_callback)
    _CONFIGURING[host] = configurator.request_config(hass, 'Plex    Media    Server', plex_configuration_callback, description='Enter    the    X-Plex-Token', entity_picture='/static/images/logo_plex_mediaserver.png', submit_caption='Confirm', fields=[{'id': 'token', 'name': 'X-Plex-Token', 'type': ''}, {'id': 'has_ssl', 'name': 'Use    SSL', 'type': ''}, {'id': 'do_not_verify_ssl', 'name': 'Do    not    verify    SSL', 'type': ''}])

What's a good function header?
assistant
#Here's a good function header.

def request_configuration(host, hass, config, add_devices_callback):