模板文本传感器
template 文本传感器平台允许您使用 lambda 创建具有模板值的文本传感器。
# 示例配置条目text_sensor: - platform: template name: "Template Text Sensor" lambda: |- return {"Hello World"}; update_interval: 60slambda 的可能返回值:
-
return {"STRING LITERAL"};类型为std::string的传感器新值。必须在 大括号{}中! -
return {};如果您不想发布新状态(高级用法)。
-
lambda (可选, lambda): 每个更新间隔评估一次的 lambda,用于获取文本传感器的新值
-
update_interval (可选, 时间): 检查文本传感器的间隔。 设置为
never可禁用更新。默认为60s。 -
所有其他选项来自文本传感器。
text_sensor.template.publish 动作
Section titled “text_sensor.template.publish 动作”您还可以从 YAML 文件的其他位置向模板文本传感器发布状态,
使用 text_sensor.template.publish 动作。
# 示例配置条目text_sensor: - platform: template name: "Template Text Sensor" id: template_text
# 在某个触发器中on_...: - text_sensor.template.publish: id: template_text state: "Hello World"
# 使用模板 - text_sensor.template.publish: id: template_text state: !lambda 'return "Hello World";'配置选项:
NOTE
此动作也可以用 lambda 编写:
id(template_text).publish_state("Hello World");实用的模板传感器
Section titled “实用的模板传感器”以下是一些用于调试和跟踪项目信息的实用文本传感器。
# 示例配置条目text_sensor: - platform: template name: "ESPHome Project Version" id: esphome_project_version_text_short icon: "mdi:information-box" entity_category: "diagnostic" update_interval: 600s lambda: |- return { ESPHOME_PROJECT_VERSION };
- platform: template name: "ESPHome Project Version Detailed" id: esphome_project_version_text_detailed icon: "mdi:information-box" entity_category: "diagnostic" update_interval: 600s lambda: |- return { ESPHOME_PROJECT_VERSION " " + App.get_compilation_time() };
- platform: template name: "ESPHome Project Name" id: esphome_project_name icon: "mdi:information-box" entity_category: "diagnostic" update_interval: 600s lambda: |- return { ESPHOME_PROJECT_NAME };