【发布时间】:2023-03-21 07:09:01
【问题描述】:
我是 MQTT 的新手:但我有一些基本的 Python 程序可以运行,其中传感器读数可以发布到特定主题:然后其他客户端可以订阅以在事件驱动的基础上获取温度。
但是在发送命令时;我有点坚持最好的做法。
例如:取一个连接到 mqtt 的“倒数计时器”。
这个计时器有两种状态:“停止”和“开始”。 它将自己初始化为“停止”状态并等待“启动”命令;然后会倒计时;将当前倒计时发布到某个主题。 当倒计时归零时;它将再次将其状态切换为“停止”,并等待另一个“开始”命令。
如果它收到“停止”命令(通过 mqtt);它也应该进入“停止”状态。
所以也许我可以创建类似的主题:
countdown_timer/command
countdown_timer/state
countdown_timer/value
倒计时设备可以订阅“命令”并通过发布到“状态”来做出反应。 (“停止”还是“开始”?)
但是一旦处理了“命令”主题值,客户端是否应该以某种方式“使用”它?
或者最好有类似的东西:
countdown_timer/send_command
countdown_timer/command_result
在控制器发送命令的地方,订阅设备将执行命令并将“ok”或“error”放在“command_result”主题上?
【问题讨论】:
标签: mqtt