Esempio n. 1
0
            return

        hass.async_run_job(callback, event.data[ATTR_TOPIC],
                           event.data[ATTR_PAYLOAD], event.data[ATTR_QOS])

    async_remove = hass.bus.async_listen(EVENT_MQTT_MESSAGE_RECEIVED,
                                         mqtt_topic_subscriber)

    # Future: track subscriber count and unsubscribe in remove
    MQTT_CLIENT.subscribe(topic, qos)

    return async_remove


# pylint: disable=invalid-name
subscribe = threaded_listener_factory(async_subscribe)


def _setup_server(hass, config):
    """Try to start embedded MQTT broker."""
    conf = config.get(DOMAIN, {})

    # Only setup if embedded config passed in or no broker specified
    if CONF_EMBEDDED not in conf and CONF_BROKER in conf:
        return None

    server = prepare_setup_platform(hass, config, DOMAIN, 'server')

    if server is None:
        _LOGGER.error("Unable to load embedded server")
        return None
Esempio n. 2
0
            return

        hass.async_run_job(callback, event.data[ATTR_TOPIC],
                           event.data[ATTR_PAYLOAD], event.data[ATTR_QOS])

    async_remove = hass.bus.async_listen(EVENT_MQTT_MESSAGE_RECEIVED,
                                         mqtt_topic_subscriber)

    # Future: track subscriber count and unsubscribe in remove
    MQTT_CLIENT.subscribe(topic, qos)

    return async_remove


# pylint: disable=invalid-name
subscribe = threaded_listener_factory(async_subscribe)


def _setup_server(hass, config):
    """Try to start embedded MQTT broker."""
    conf = config.get(DOMAIN, {})

    # Only setup if embedded config passed in or no broker specified
    if CONF_EMBEDDED not in conf and CONF_BROKER in conf:
        return None

    server = prepare_setup_platform(hass, config, DOMAIN, 'server')

    if server is None:
        _LOGGER.error('Unable to load embedded server.')
        return None