wifi: ssid: MySSID password: password1 time: - platform: sntp mqtt: broker: "192.168.178.84" port: 1883 username: debug password: debug enable_on_boot: false clean_session: True client_id: someclient use_abbreviations: false discovery: true discovery_retain: false discovery_prefix: discovery discovery_unique_id_generator: legacy topic_prefix: helloworld log_topic: topic: helloworld/hi level: INFO birth_message: will_message: shutdown_message: topic: topic/to/send/to payload: hi qos: 2 retain: true keepalive: 60s reboot_timeout: 60s on_message: - topic: my/custom/topic qos: 0 then: - lambda: >- ESP_LOGD("main", "Got message %s", x.c_str()); - topic: bedroom/ota_mode then: - logger.log: Got bedroom/ota_mode - topic: livingroom/ota_mode then: - logger.log: Got livingroom/ota_mode on_json_message: topic: the/topic then: - if: condition: - wifi.connected: - mqtt.connected: then: - logger.log: on_json_message on_connect: - mqtt.publish: topic: some/topic payload: Hello on_disconnect: - mqtt.publish: topic: some/topic payload: Good-bye publish_nan_as_none: false binary_sensor: - platform: template id: some_binary_sensor name: Garage Door Open state_topic: some/topic/binary_sensor qos: 2 lambda: |- if (id(template_sens).state > 30) { // Garage Door is open. return true; } else { // Garage Door is closed. return false; } on_state: - mqtt.publish: topic: some/topic/binary_sensor payload: Hello qos: 2 retain: true button: - platform: template name: "Template Button" state_topic: some/topic/button qos: 2 on_press: - mqtt.disable - mqtt.enable - mqtt.publish: topic: some/topic/button payload: Hello qos: 2 retain: true climate: - platform: thermostat name: Test Thermostat sensor: template_sens humidity_sensor: template_sens action_state_topic: some/topicaction_state current_temperature_state_topic: some/topiccurrent_temperature_state current_humidity_state_topic: some/topiccurrent_humidity_state fan_mode_state_topic: some/topicfan_mode_state fan_mode_command_topic: some/topicfan_mode_command mode_state_topic: some/topicmode_state mode_command_topic: some/topicmode_command preset_state_topic: some/topicpreset_state preset_command_topic: some/topicpreset_command swing_mode_state_topic: some/topicswing_mode_state swing_mode_command_topic: some/topicswing_mode_command target_temperature_state_topic: some/topictarget_temperature_state target_temperature_command_topic: some/topictarget_temperature_command target_temperature_high_state_topic: some/topictarget_temperature_high_state target_temperature_high_command_topic: some/topictarget_temperature_high_command target_temperature_low_state_topic: some/topictarget_temperature_low_state target_temperature_low_command_topic: some/topictarget_temperature_low_command target_humidity_state_topic: some/topictarget_humidity_state target_humidity_command_topic: some/topictarget_humidity_command preset: - name: Default Preset default_target_temperature_low: 18°C default_target_temperature_high: 24°C - name: Away default_target_temperature_low: 16°C default_target_temperature_high: 20°C idle_action: - logger.log: idle_action cool_action: - logger.log: cool_action supplemental_cooling_action: - logger.log: supplemental_cooling_action heat_action: - logger.log: heat_action supplemental_heating_action: - logger.log: supplemental_heating_action dry_action: - logger.log: dry_action fan_only_action: - logger.log: fan_only_action auto_mode: - logger.log: auto_mode off_mode: - logger.log: off_mode heat_mode: - logger.log: heat_mode cool_mode: - logger.log: cool_mode dry_mode: - logger.log: dry_mode fan_only_mode: - logger.log: fan_only_mode fan_mode_auto_action: - logger.log: fan_mode_auto_action fan_mode_on_action: - logger.log: fan_mode_on_action fan_mode_off_action: - logger.log: fan_mode_off_action fan_mode_low_action: - logger.log: fan_mode_low_action fan_mode_medium_action: - logger.log: fan_mode_medium_action fan_mode_high_action: - logger.log: fan_mode_high_action fan_mode_middle_action: - logger.log: fan_mode_middle_action fan_mode_focus_action: - logger.log: fan_mode_focus_action fan_mode_diffuse_action: - logger.log: fan_mode_diffuse_action fan_mode_quiet_action: - logger.log: fan_mode_quiet_action swing_off_action: - logger.log: swing_off_action swing_horizontal_action: - logger.log: swing_horizontal_action swing_vertical_action: - logger.log: swing_vertical_action swing_both_action: - logger.log: swing_both_action startup_delay: true supplemental_cooling_delta: 2.0 cool_deadband: 0.5 cool_overrun: 0.5 min_cooling_off_time: 300s min_cooling_run_time: 300s max_cooling_run_time: 600s supplemental_heating_delta: 2.0 heat_deadband: 0.5 heat_overrun: 0.5 min_heating_off_time: 300s min_heating_run_time: 300s max_heating_run_time: 600s min_fanning_off_time: 30s min_fanning_run_time: 30s min_fan_mode_switching_time: 15s min_idle_time: 30s set_point_minimum_differential: 0.5 fan_only_action_uses_fan_mode_timer: true fan_only_cooling: true fan_with_cooling: true fan_with_heating: true visual: temperature_step: target_temperature: 0.1 current_temperature: 0.1 cover: - platform: template name: Template Cover state_topic: some/topic/cover qos: 2 lambda: |- if (id(some_binary_sensor).state) { return COVER_OPEN; } else { return COVER_CLOSED; } open_action: - logger.log: open_action close_action: - logger.log: close_action stop_action: - logger.log: stop_action optimistic: true datetime: - platform: template name: Date id: test_date type: date state_topic: some/topic/date command_topic: test_date/custom_command_topic qos: 2 subscribe_qos: 2 set_action: - logger.log: "set_value" on_value: - logger.log: format: "Date: %04d-%02d-%02d" args: - x.year - x.month - x.day_of_month - platform: template name: Time id: test_time type: time state_topic: some/topic/time qos: 2 set_action: - logger.log: "set_value" on_value: - logger.log: format: "Time: %02d:%02d:%02d" args: - x.hour - x.minute - x.second - platform: template name: DateTime id: test_datetime type: datetime state_topic: some/topic/datetime qos: 2 set_action: - logger.log: set_value on_value: - logger.log: format: "DateTime: %04d-%02d-%02d %02d:%02d:%02d" args: - x.year - x.month - x.day_of_month - x.hour - x.minute - x.second event: - platform: template name: Template Event state_topic: some/topic/event qos: 2 event_types: - "custom_event_1" - "custom_event_2" fan: - platform: template name: Template Fan state_topic: some/topic/fan qos: 2 on_state: - logger.log: on_state on_speed_set: - logger.log: on_speed_set light: - platform: binary name: Desk Lamp output: light_output state_topic: some/topic/light qos: 2 output: - id: light_output platform: gpio pin: 0 lock: - platform: template name: "Template Lock" state_topic: some/topic/lock qos: 2 lambda: |- if (id(some_binary_sensor).state) { return LOCK_STATE_LOCKED; } else { return LOCK_STATE_UNLOCKED; } lock_action: - logger.log: lock_action unlock_action: - logger.log: unlock_action open_action: - logger.log: open_action number: - platform: template name: "Template number" state_topic: some/topic/number qos: 2 optimistic: true min_value: 0 max_value: 100 step: 1 select: - platform: template name: "Template select" state_topic: some/topic/select qos: 2 optimistic: true options: - one - two - three initial_option: two sensor: - platform: template name: Template Sensor id: template_sens lambda: |- if (id(some_binary_sensor).state) { return 42.0; } else { return 0.0; } update_interval: 60s on_value: - mqtt.publish: topic: some/topic/sensor payload: Hello qos: 2 retain: true - platform: mqtt_subscribe name: MQTT Subscribe Sensor topic: mqtt/topic id: the_sensor qos: 2 on_value: - mqtt.publish_json: topic: the/topic payload: |- root["key"] = id(template_sens).state; root["greeting"] = "Hello World"; switch: - platform: template name: Template Switch state_topic: some/topic/switch qos: 2 lambda: |- if (id(some_binary_sensor).state) { return true; } else { return false; } turn_on_action: - logger.log: turn_on_action turn_off_action: - logger.log: turn_off_action text_sensor: - platform: template name: Template Text Sensor id: tts_text state_topic: some/topic/text_sensor qos: 2 - platform: mqtt_subscribe name: MQTT Subscribe Text topic: some/topic/text_sensor qos: 2 on_value: - text_sensor.template.publish: id: tts_text state: Hello World - text_sensor.template.publish: id: tts_text state: |- return "Hello World2"; text: - platform: template name: Template Text optimistic: true min_length: 0 max_length: 100 mode: text state_topic: some/topic/text qos: 2 valve: - platform: template name: Template Valve state_topic: some/topic/valve qos: 2 optimistic: true lambda: |- if (id(some_binary_sensor).state) { return VALVE_OPEN; } else { return VALVE_CLOSED; } alarm_control_panel: - platform: template name: Alarm Control Panel binary_sensors: - input: some_binary_sensor