首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ejabberd 16.09 Muc发现

Ejabberd 16.09 Muc发现
EN

Stack Overflow用户
提问于 2016-12-27 05:07:50
回答 1查看 102关注 0票数 0

我们使用IOS XMPP Framework和Android Smack Library来连接移动应用程序中的ejabberd服务器。他们都有类似的问题。

当我们以管理员身份创建聊天室时,我们通过发送ejabberd将用户添加到成员列表中

代码语言:javascript
复制
<item affiliation='member' jid='xxx@yyy.com'>

然后,用户可以毫无问题地向群发送和接收消息。如果用户从设备上删除应用程序并重新安装,我们将使用muc发现协议来发现他/她在卸载应用程序之前加入了哪些房间

然而,如果用户在组的所有参与者都离线时使用muc发现,则在这一点上存在问题。服务器不向用户返回关于该组的muc发现结果,因为他/她是该组的参与者。

当我检查管理控制台时,这些组似乎没有参与者(因为所有参与者都离线,但他们在成员列表中)。并且我认为muc发现只返回参与者超过0的组。

有人知道为什么会发生这种情况吗?我怎样才能找到解决方案?@badlop

我们使用的是ejabberd 16.09

EN

回答 1

Stack Overflow用户

发布于 2016-12-30 01:06:14

Muc说,如果用户离线,那么他应该离开他的所有群,这就是为什么当用户离线时,你得不到群参与者。查看此处http://xmpp.org/extensions/xep-0045.html

使用muc-light https://xmpp.org/extensions/inbox/muc-light.html代替muc

它将帮助您解决问题,并且非常容易实现。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41336289

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档