问题标签 [mosca]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
803 浏览

ssl - 具有 TLS 和 JWT 的 MQTT 代理

我们目前正在开展一个数据备份项目。我们将自己的硬件运送给工业客户。然后,该硬件将读取客户想要备份的所有相关数据,并使用 MQTT(Node.js 客户端和 Mosca MQTT 代理)将它们发送到云服务器。

现在我的问题是:

  • 是否有可用于我的 MQTT 连接的免费 TLS 证书?我发现唯一需要域名的。
  • 为了提高安全性,我们使用 JWT。虽然我们没有任何数据库。令牌将作为 MQTT-Password 参数传递。有更好的选择吗?
0 投票
0 回答
952 浏览

python - mqtt 客户端在多线程上运行时经常断开连接

我有 mosca mqtt 经纪人正在运行。我使用来自 python 客户端的 paho-mqtt 连接到它。我有两个线程在我的代码中并行运行,一个用于接收消息,另一个用于发布。

每次发布发生时,客户端都会断开连接。

我试着评论这client.publish条线,但我仍然在断开连接。所以我怀疑这种断开与多线程或代理本身的一些问题有关。谁能帮我这个?

0 投票
0 回答
738 浏览

python - 从 python 客户端订阅 mqtt 代理时未收到所有数据

我有一个 mosca mqtt 代理启动并运行。我从 python 客户端连接到代理,订阅特定主题以接收数据。我在接收数据时面临数据丢失的问题。我的代码

和控制台输出

第一次断线后,一秒内立即重新连接并开始接收消息。但第二次断线时,最后一条消息与disconnect回调打印的时间有1分钟的时间差。这一分钟差异中的数据将丢失。但是,如果我使用 MQTT Lens 检查数据,我连接到代理地址并订阅相同的主题,我也可以看到那一分钟的数据。因此,代理正在发送数据,但 python 客户端无法接收它。如果它在一分钟后断开连接,为什么它在一分钟内无法接收该数据。有人可以帮我弄这个吗?

0 投票
2 回答
2610 浏览

node.js - 使用 mosca MQTT 的请求响应模式

有没有办法用 mosca MQTT 实现请求-响应模式来“检查来自客户端的回复,如果我在预期时间内没有收到预期的回复,则重新发布”。

我相信这在 Mqtt 5 中是可能的,但到目前为止,我必须使用具有 QoS 1 的 Mosca 代理(支持到 Mqtt 3.1.1)

我正在寻找一种 Node js 解决方法来实现这一点。

0 投票
1 回答
46 浏览

javascript - mqtt JS文件中的多个SUB

所以,我为一个主题制作了一个项目,我有一个文件(weather.js),它发布了两个变量,一个在本地/温度,另一个在本地/时间。我正在制作一个订阅它们并使用值(blinds.js)进行操作的文件,但它混合了它们。我同时发送温度和小时,并在订阅者中将第一个值提供给温度局部变量(在blinds.js 中),然后提供给时间局部变量。我能做些什么?

这是 weather.js 文件。

这是blinds.js 文件。

0 投票
1 回答
1149 浏览

node.js - 无法从 Broker 中的 MQTT 消息解析 JSON

我正在使用 Mosca 构建一个 MQTT 服务器,并尝试将 MQTT 消息解析为 JSON 以用于数据库存储。

下面的“已发布”回调中的代码

JSON字符串的示例是:

{"_id":"5e928105156c40000006f9e9","温度":33,"湿度":64.9}

但我收到一条错误消息JSON.parse

SyntaxError:位置 2 处 JSON 中的意外标记 c

我应该如何正确解析此消息?

0 投票
1 回答
236 浏览

node.js - 使用 nodejs mosca 进行身份验证和发布订阅

我正在节点 js 上使用 mosca 创建一个物联网服务。它不断崩溃到订阅区域,我无法显示传入的消息。

  1. 如何防止它崩溃。
  2. 如何查看传入的消息?

如何在 authorizeSubscribe 字段中查看传入消息?还授权订阅字段崩溃

0 投票
1 回答
72 浏览

arduino - 为什么我的 Arduino 无法连接到我的 Mosca Broker?

我正在学习 MQTT,并将开源 mosca 代理部署到一个 azure Web 应用程序。问题是代理在 2 台之间工作,但是当我尝试将我的 arduino nano 连接到代理时,它总是失败。这是我的服务器代码:

0 投票
1 回答
158 浏览

node.js - Node.js - Mosca 和 Heroku


我在 node.js 上构建了一个使用 Mosca 和 MQTT 的服务器。

在我的本地主机上,一切正常,包括通过 mosquitto (_sub/_pub) 获取/发送消息。

当我将代码上传到 Heroku 时,mqtt 请求在服务器内部工作,但我在 mosquitto 上什么也没看到。

那是我运行 MQTT 代理的代码。

为了通过 node.js 发布消息,我使用了这些代码行:

我使用了 heroku ( http://<app>.herokuapp.com) 的 http url。
我试图testMsg像这样获得 via mosquitto_sub :

而且没有运气。

如果我使用本地主机版本并输入mosquitto_sub -t testTopic它的工作。

为什么不在 Heroku 中?

(顺便提一下,我使用打字稿。)

0 投票
3 回答
6872 浏览

node.js - 节点 js mosca 代理错误:预期的“模式”是一个对象或布尔值

我创建了一个简单的经纪人:

运行文件时出现此错误:

我在跑步:

节点:v12.18.4

npm:6.14.6