你好,

我有一个关于MQTT自动化的问题。

当我在自动装置中忽略有效载荷时自动装置就会工作
但如果我放入有效载荷(我真的需要这样做,因为我的工作与sonoff/tasmoto wifi枢纽),然后行动不工作

就像你可以看到下面的hassio是接收消息时,我去开发工具- mqtt-听一个主题

电话/hub/RESULT在下午2:14收到消息0:

“时间”:“2020 - 03 - 06 t14:14:05”,
" RfReceived ": {
“同步”:7560年,
“低”:270年,
“高”:730年,
“数据”:“92 d3b8”,
“RfKey”:“没有”

下面是我的自动化。yaml:

id:“1583497473605”
别名:motion gang voor
描述:“
触发:

  • 有效载荷:“92 d3b8”
    平台:mqtt
    主题:电视/中心/结果
    条件:[]
    行动:
  • device_id: 929 eecf9a0df45f991bb3bd57bda9362
    域:光
    entity_id: light.gang_voor
    类型:turn_on

所以没有有效载荷就可以工作,但那是没有选择的。
如果我在有效载荷上加上或不加上" "它就不起作用了。

有人知道一个简单的方法来解决这个问题吗?

请阅读这主题并正确格式化您的代码,否则我们无法帮助您。

你的触发器也不能工作,因为有效载荷是整个消息但在你的触发器中你只要求部分有效载荷。最好创建一个mqtt传感器,它从mqtt有效负载中提取“数据”,然后使用该传感器作为触发器。

海Burningstone,

谢谢你的快速反应。

在每个论坛上我读到的有效载荷只是很小的一部分,那么它应该是什么呢?

和你的选择: slight_smile:

创建一个mqtt传感器,它从mqtt有效负载中提取“数据”,然后使用该传感器作为触发器

肯定是最好的,但如果是hassio和yaml etcc,我还是个新手,所以我真的不知道该怎么做。

有效负载就是整个消息。只是您读到的示例可能有一个MQTT主题伟德国际官方app下载苹果版,其中只发布了一个值,而不是您的示例中的JSON消息。

检查文档中的MQTT传感器在这里

在你的例子中,它应该看起来像这样:

sensor:—platform: mqtt name: " mqtt RF sensor" state_topic: "tele/hub/RESULT" value_template: "{{value_json. txt "数据}}”

这将创建一个以MQTT有效负载中的“Data”值作为状态的传感器。

然后你可以改变你的自动化触发如下:

触发器:平台:状态entity_id:传感器。mqtt_rf_sensor:“92 d3b8”

作为替代,阅读这个话题。非常好的解释了如何工作与Sonoff RF桥。

谢谢你的回复,

所以我在配置中创建了传感器。yaml像下面

传感器:

  • 平台:mqtt
    名称:“MQTT射频传感器”
    state_topic:“tele /中心/结果”
    {{value_json value_template:”。数据}}”

然后在自动化编辑器中我创建了一个新的自动化

我选择的触发类型为:状态
然后在实体上选择新创建的sensor.mqtt_rf_sensor
我离开“From”和“For”空,“To”是我放入92D3B8

当我按下按钮时什么也没有发生,然后我把它改成“92D3B8”,还是什么都没有

我在行动中选择了我的灯并把它打开。

什么好主意吗?

请格式化您发布的代码,以便其他人能够轻松阅读,并确保它不包含语法错误。您可能已经注意到,每个人都使用格式化代码来响应您。

有两种简单的方法来格式化代码:

选择代码并单击论坛编辑器的图标。

  • 在单独的一行中输入三个连续的反引号' ' '之前代码。
  • 在另一行中输入三个连续的反引号代码。
1像

日志里有错误吗?传感器传感器什么。Mqtt_rf_sensor按下按钮时显示?

海,

当我在开发人员工具中查看状态时,它保持为空

只填写实体和属性。

这是行不通的

sensor:—platform: mqtt name: " mqtt RF sensor" state_topic: "tele/hub/RESULT" value_template: "{{value_json. txt "数据}}”

至少应该是这样

sensor: - platform: mqtt name: " mqtt RF sensor" state_topic: "tele/hub/RESULT" value_template: "{{value_json.RfReceived. "数据}}”

请阅读我上面提到的题目。

1像

你完全正确!

我试着读它,但因为我是一个真正的新手,我真的不能理解它说了什么。

但我一直试着把你们所有人的建议和我读过的一些东西放在一起(试错)

现在部分工作了。

看起来hassio并不是一直从我的中心接收数据,如果我幸运地按下按钮10次或更多,那么灯可能会灭或不灭。

看起来有严重的延迟

我在一个树莓PI上运行hassio,这可能是问题所在吗?慢吗?

完全没有注意到json消息中有一个字典。我只能怪格式: stuck_out_tongue:: rofl: