human
I wrote the below code

    host = config.get(CONF_HOST)
    name = config.get(CONF_NAME)
    configurator = get_component('configurator')
    if (host in _CONFIGURING):
        configurator.notify_errors(_CONFIGURING[host], 'Failed    to    register,    please    try    again.')
        return
    def bravia_configuration_callback(data):
        'Handle    the    entry    of    user    PIN.'
        from braviarc import braviarc
        pin = data.get('pin')
        braviarc = braviarc.BraviaRC(host)
        braviarc.connect(pin, CLIENTID_PREFIX, NICKNAME)
        if braviarc.is_connected():
            setup_bravia(config, pin, hass, add_devices)
        else:
            request_configuration(config, hass, add_devices)
    _CONFIGURING[host] = configurator.request_config(hass, name, bravia_configuration_callback, description=('Enter    the    Pin    shown    on    your    Sony    Bravia    TV.' + 'If    no    Pin    is    shown,    enter    0000    to    let    TV    show    you    a    Pin.'), description_image='/static/images/smart-tv.png', submit_caption='Confirm', fields=[{'id': 'pin', 'name': 'Enter    the    pin', 'type': ''}])

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

def request_configuration(config, hass, add_devices):