问题标签 [moquette]

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 回答
1761 浏览

java - GAE:MQTT 代理

所以我想知道是否可以在 Google App Engine 平台上运行 MQTT 代理?找不到任何有关它的信息(或者我可能使用了错误的关键字)。

我已经让我的 GAE 在 Java 上运行,所以我想进入使用后端在 GAE 上运行 MQTT 代理的方向。

编辑: 做了一些进一步的研究,似乎 Moquette 正在 Java 上运行。有人有在 GAE 上运行 Moquette 的经验吗?

EDIT2: 好的,似乎 Moquette 的示例正在使用 OSGi 容器运行,这在 GAE 中不可用。正在寻找在 GAE 上启动此服务器的脚本。

0 投票
1 回答
40012 浏览

java - Maven:无法解析依赖项(找不到工件)

我正在尝试使用 maven构建moquette ,对于 Maven 来说是一个完整的新手。

我正在使用以下命令进行构建。

mvn 干净安装 -U

mvn 清洁安装 -U | grep 错误

结果如下:

完整输出:

mvn clean install -e -X -U

可以在这里找到。

我的pom.xml看起来像:

是什么导致了这个问题,我该如何解决这个问题?

0 投票
2 回答
2042 浏览

java - 如何在 Android 中部署 Moquette 代理?

我们可以在 Android 中部署 Moquette/Mosquitto 代理来进行 MQTT 客户端通信吗?

我想在 Android 中部署一个 Moquette/Mosquitto 代理,一个 MQTT 客户端将使用该代理与另一个客户端通信。

0 投票
1 回答
2328 浏览

mqtt - 未从 Paho 客户端中的 MQTT 代理获取已发布消息

我已经设置了一个 Moquette MQTT 代理并将其与 eclipse Paho 客户端连接(我将调用它paho1)。订阅in/#主题。

我创建了另一个 Paho 客户端(我将调用它paho2),当然具有不同的客户端 ID,并将其发布到带有in/device主题的代理。

起初,数据包已成功交付。但是,当我断开连接paho2并重新连接到代理并发送相同的数据包时,它不会传递到paho1.

我想知道为什么会这样。我对 Paho 客户端的设置是qos = 0(我也尝试了 1 和 2)。

我正在查看经纪人的日志,它如下所示。成功后,我的协议版本将打印到日志中。

成功时

失败的

0 投票
1 回答
783 浏览

mqtt - QoS1 MQTT 中的 PUBLISH 交付失败

我正在使用 moquette mqtt 代理,我正在尝试了解实现以及 MQTT 代理。我希望为个人项目对经纪人进行一些修改。

我很好奇当设备向代理发送 PUBLISH 消息时会发生什么,并且代理无法将消息传递给订阅者。该协议规定将 PUBACK 发送回发布者。在 moquette 源代码中,这个 PUBACK 似乎是在将消息转发给任何订阅者之后发送的。

我注释掉了 sendPubAck() 函数来模拟消息没有成功发布,所以我假设发布者会再次发布消息。但是,当我在传入消息处理函数旁边添加一个打印语句时,我只能看到从发布者定期发送到代理的 PINGREQ 消息。我没有看到任何发布消息。

我的问题如下:客户端设备究竟如何决定何时重新发布消息?因为注释掉 sendPubAck() 函数似乎不会让发布者重新发送消息。

0 投票
1 回答
461 浏览

java - moquette 用户的权限不同于访问控制列表中写入的权限

我使用 moquette 作为我的 MQTT 代理。

我在我的配置中指定了一个访问控制文件,如下所示:

然后在 acl.conf 文件中,我只添加了一个用户,如下所示:

我的问题

用户重力无法写入输出主题,我收到错误消息:topic {out} doesn't have write credentials

此外,用户重力可以订阅所有主题,而不仅仅是

另外,我还有另一个用户,即william,并且william可以订阅任何主题,但不能发布任何主题。我不知道威廉怎么可能订阅任何主题,尽管acl文件指出我只有一个具有列出权限的用户

笔记

尽管我正在研究 moquette,但我正在为 mosquitto 添加一个标签,那是因为它们共享相同的 acl 格式

更新

准备好broker的代码后,

我发现这是新订阅请求到来时调用的函数:

我认为这是有错误的函数,因为我看不到任何对 IAuthorizator canRead 函数的调用

我什至尝试构建自己的身份验证插件,并且我遇到了同样的问题,即发布授权有效,但订阅授权无效

0 投票
1 回答
656 浏览

amazon-ec2 - 无法连接到 aws ec2 实例中的 moquette

我是 MQTT 新手,一直在尝试在 AWS EC2 上实现 MQTT MOquette,我尝试在我的机器上配置和安装代理,并且能够从客户端连接和测试它,但是当我从 Aws EC2 实例执行相同操作时我可以看到端口 1883、8080 正在监听 0.0.0.0 ip 地址,但是当我从客户端连接时,我无法连接。

在本地机器上配置主机时,我为主机和端口 1883、8080 提供了 0.0.0.0,在 AWS 服务器上,我为主机和端口提供了私有 IP,端口为 1883、8080。我在安全组中添加了规则以允许 1883 和 8080 上的 tcp .

我的问题是我应该在 AWS 上使用的主机值,例如私有 ip 或 aws url,例如“ec2-XX-XX-XXX-XX.us-west-2.compute.amazonaws.com”,以及 url从中我可以从客户端访问代理,例如“tcp://ec2-XX-XX-XXX-XX.us-west-2.compute.amazonaws.com”或 IP

我会在这里做错什么?卡在这个问题上

谢谢大家

0 投票
0 回答
190 浏览

java - 如何使用相同的 BlockingConnection 对象发布和订阅

我正在尝试使用下面的代码向 MQTT 发布和订阅数据,

但我可以将数据很好地发布到 MQTT。当他们发布主题名称为 /call/subscribecall 的数据时,我得到空指针异常,message.getPayload();但订阅者正确发送数据。

为什么我得到 null 而不是订阅者发送数据?订阅代码似乎没有获取数据。

我在哪里做错了?

0 投票
2 回答
1403 浏览

java - 使用 mqtt 和 tomcat

我想同时使用 http 和 mqtt 功能,所以我尝试使用 tomcat 和 moquette,如下所示,但最终得到 "java.net.BindException: Address already in use" 。如果有更好的方法,请告诉我。

配置文件看起来像这样

服务器.xml

0 投票
0 回答
988 浏览

android - 如何在 android 中实现“moquette”代理(MQTT 代理)

我找到了一个适用于 Android 的moquette代理(服务器),但无法使其在 Android 应用程序中运行。任何人都可以帮助我在 Android Studio 中使用此代理与客户端制作示例应用程序吗?

我已经从 git 下载了源代码,并将 dir 'broker' 'netty_parser' 和 'parser_commons' 作为模块添加到我的 Android 项目中。

“moquette”文件说要添加以下内容

进入 settings.gradle 然后启动服务器

它给

这样做的正确方法是什么?

是否有任何其他适用于 Android 的 MQTT 代理(服务器)?