0

我想用 MQTT (3.1.1) 实现请求-响应。我猜它可以使用一些语言绑定来完成。但是如何使用 mosquitto_pub 和 mosquitto_sub 命令行实用程序来做到这一点?

主要问题是,我需要先订阅,然后发布,然后等待传入的数据包。我使用zsh(或bash)尝试了这个,没有运气,你可以看到有时消息到达,有时它没有。

$ mosquitto_sub -t topic -C 1 & mosquitto_pub -t topic -m message ; fg
[1] 20321
[1]  + running    mosquitto_sub -t topic -C 1
^C
$ mosquitto_sub -t topic -C 1 & mosquitto_pub -t topic -m message ; fg
[1] 20341
[1]  + running    mosquitto_sub -t topic -C 1
message

它也确实连接了两次,这并不理想。

4

2 回答 2

0

简短的回答是,你没有。

如果您想做这种事情,请使用带有 python 之类的适当客户端库。

于 2020-03-05T08:41:31.893 回答
0

mosquitto_rr

mosquitto_rr 是一个 MQTT 版本 5/3.1.1 的客户端,可用于发布请求消息并等待响应。当使用默认的 MQTT v5 时,mosquitto_rr 将使用请求响应特性。

(来自人 mosquitto_rr)

于 2020-03-27T16:29:30.343 回答