1
0
mirror of https://github.com/esphome/esphome.git synced 2025-03-15 15:18:16 +00:00

Fix MQTT availability option

This commit is contained in:
Otto Winter 2018-06-06 08:35:23 +02:00
parent a6d1ff0b06
commit 62e4df7e21
2 changed files with 6 additions and 3 deletions

View File

@ -547,7 +547,7 @@ MQTT_COMPONENT_SCHEMA = vol.Schema({
vol.Optional(CONF_RETAIN): boolean, vol.Optional(CONF_RETAIN): boolean,
vol.Optional(CONF_DISCOVERY): boolean, vol.Optional(CONF_DISCOVERY): boolean,
vol.Optional(CONF_STATE_TOPIC): publish_topic, vol.Optional(CONF_STATE_TOPIC): publish_topic,
vol.Optional(CONF_AVAILABILITY): MQTT_COMPONENT_AVAILABILITY_SCHEMA, vol.Optional(CONF_AVAILABILITY): vol.Any(None, MQTT_COMPONENT_AVAILABILITY_SCHEMA),
}) })
MQTT_COMMAND_COMPONENT_SCHEMA = MQTT_COMPONENT_SCHEMA.extend({ MQTT_COMMAND_COMPONENT_SCHEMA = MQTT_COMPONENT_SCHEMA.extend({

View File

@ -604,6 +604,9 @@ def setup_mqtt_component(obj, config):
add(obj.set_custom_command_topic(config[CONF_COMMAND_TOPIC])) add(obj.set_custom_command_topic(config[CONF_COMMAND_TOPIC]))
if CONF_AVAILABILITY in config: if CONF_AVAILABILITY in config:
availability = config[CONF_AVAILABILITY] availability = config[CONF_AVAILABILITY]
if not availability:
add(obj.disable_availability())
else:
add(obj.set_availability(availability[CONF_TOPIC], availability[CONF_PAYLOAD_AVAILABLE], add(obj.set_availability(availability[CONF_TOPIC], availability[CONF_PAYLOAD_AVAILABLE],
availability[CONF_PAYLOAD_NOT_AVAILABLE])) availability[CONF_PAYLOAD_NOT_AVAILABLE]))