Template Text Sensor ==================== .. seo:: :description: Instructions for setting up template text sensors in ESPHome :image: description.png The ``template`` text sensor platform allows you to create a text sensor with templated values using :ref:`lambdas `. .. code-block:: yaml # Example configuration entry text_sensor: - platform: template name: "Template Text Sensor" lambda: |- return {"Hello World"}; update_interval: 60s Possible return values for the lambda: - ``return {"STRING LITERAL"};`` the new value for the sensor of type ``std::string``. **Has to be** in brackets ``{}``! - ``return {};`` if you don't want to publish a new state (advanced). Configuration variables: ------------------------ - **name** (**Required**, string): The name of the text sensor. - **lambda** (*Optional*, :ref:`lambda `): Lambda to be evaluated every update interval to get the new value of the text sensor - **update_interval** (*Optional*, :ref:`config-time`): The interval to check the text sensor. Defaults to ``60s``. - **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. - All other options from :ref:`Text Sensor `. .. _text_sensor-template-publish_action: ``text_sensor.template.publish`` Action --------------------------------------- You can also publish a state to a template text sensor from elsewhere in your YAML file with the ``text_sensor.template.publish`` action. .. code-block:: yaml # Example configuration entry text_sensor: - platform: template name: "Template Text Sensor" id: template_text # in some trigger on_...: - text_sensor.template.publish: id: template_text state: "Hello World" # Templated - text_sensor.template.publish: id: template_text state: !lambda 'return "Hello World";' Configuration options: - **id** (**Required**, :ref:`config-id`): The ID of the template text sensor. - **state** (**Required**, string, :ref:`templatable `): The state to publish. .. note:: This action can also be written in lambdas: .. code-block:: cpp id(template_text).publish_state("Hello World"); See Also -------- - :ref:`automation` - :apiref:`template/text_sensor/template_text_sensor.h` - :ghedit:`Edit`