我正在开发xmpp客户端,目前正在“ pubsub”上工作。 我在pubsub中创建了一个节点,并向其订阅了两个用户。 但是当订户登录(显示状态)时,我两次获得了最后发布的项目。 我正在使用ejabberd服务器。 谁能帮忙? 谢谢。

#1楼 票数:0

同样在这里,

似乎有两个不同的队列。 使用notification_type = normal ,消息将脱机存储。 当接收方联机时,它将收到两次消息:

  • 从离线后台处理,没有标题属性
  • 从pubsub发送循环(因为仍使用send_last_published_item = on_sub_and_presence配置节点)

如此处所述当使用notification_type = normal配置pubsub节点时,最好禁用send_last_published_item或仅将其设置为on_sub,以避免两次接收到该消息。

  ask by user1606591 translate from so

未解决问题?本站智能推荐:

1回复

ejabberd书签替换以前的书签

我使用 ejabberd 作为聊天服务器。 当我发送请求时 (示例来自http://xmpp.org/extensions/xep-0048.html#storage-pubsub-upload ) 发布订阅配置: 它工作正常。 但是如果我发送一个类似的请求来存储一个不同的聊天室,它会取代这个。 即
1回复

使用ejabberd向10万订户发送广播消息

我正在创建类似消息发布应用程序的PubSub,如果发布者发送到该频道,则特定频道的所有订阅者都将收到该消息,而且最大订阅者数为100k。 使用ejabberd,我是否知道性能的可能性,即ejabberd是否可以处理10万个订户,并且能够向所有人发送消息?
1回复

Conversejs群聊订阅(ejabberd)

我一直在努力使用 conversejs 和 ejabberd 配置群聊。 从我偶然发现的文档中,似乎可以有一个用户可以订阅的持久群聊,这将允许他们在群聊中不存在的情况下接收来自群聊的消息。 例如:我希望能够简单地关闭我的 conversejs 客户端上的群聊,但仍会收到来自该群聊的通知。 这是一个新
1回复

ejabberd:为什么Websocket连接没有打开

我正在尝试建立从 Strophe.js 到 Ejabberd 的 websocket 连接,但 ejabberd 无法建立 websocket 连接。 这是详细信息: ejabberd 版本:16.02 Web 套接字标头一般的 响应头 请求头 Ejabberd websocket 配置 e
1回复

ejabberd-MUC与PubSub的最大参与人数

我正在建立一个移动聊天平台,同时支持私人房间和公共房间。 对于私人房间,我已经使用服务器上的ejabberd和适用于我的iOS客户端的XMPPFramework成功实现了MUC功能。 但是,对于公共房间,我想评估PubSub是否更有意义? 为了详细定义用例,所有公共会议室成员都应该能够发
1回复

参加MUC会议室时收到的ejabberd先前消息

每次用户加入多用户聊天室时,该室都会向用户广播最近的20条消息。 有没有办法禁用此功能?
2回复

ejabberd-在pubsub项目中获取发布者JID

http://www.xmpp.org/extensions/xep-0060.html#impl-association定义了一个名为“ itemreply”的属性,该属性使您可以将发布者信息与正在发布的项目一起添加。 ejabberd似乎没有实现上述选项。 还有其他解决方法吗? 根据
1回复

如何使用XMPPFramework从ejabberd删除两个用户之间的特定消息?

我正在尝试从ejabberd删除消息,但从中获取错误。 <iq xmlns="jabber:client" to="my id" from="other user id" type="error" id="8A056958-DE72-4234-8440-928E8D650948">