Ejabberd:如何限制获取 jabber 用户目录(JUD)

Posted

技术标签:

【中文标题】Ejabberd:如何限制获取 jabber 用户目录(JUD)【英文标题】:Ejabberd: How to limit the fetching of jabber user directory (JUD) 【发布时间】:2014-12-25 10:18:27 【问题描述】:

我正在使用 (a)Smack 为移动 (android) 开发客户端 jabberd 应用程序。

由于在我的应用程序中,用户是通过他们的电话号码注册的,所以应用程序应该能够识别哪个联系人在服务器上拥有 jabber 帐户并建议他/她聊天。

在网上搜索后,我发现有一个 jabber 用户目录 (JUD),我可以使用它来检查是否有特定手机号码的帐户。 (我正在使用 UserSearchManager)。

我的问题:

1- JUD 中似乎没有关于尚未更新 vCard 的用户的记录,所以我找不到他。有没有办法检查这类用户的存在?

2- 似乎通过使用JUD,我的应用程序之外的每个人都可以获取用户的一些重要信息,例如手机号码、电子邮件等。有什么解决方案可以限制JUD 搜索引擎? (例如,仅获取“用户字段”作为输入,仅返回现有帐户的“全名字段”或其他有用的限制)。

因此通过这种方式,我可以识别联系人列表中的哪个人在服务器上拥有帐户,并且其他人无法获取现有用户的重要信息。

感谢任何命令或建议。谢谢。

【问题讨论】:

没人知道答案吗? 【参考方案1】:

如果不自定义 ejabberd 应用程序代码,我认为默认情况下是不可能的。

【讨论】:

以上是关于Ejabberd:如何限制获取 jabber 用户目录(JUD)的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ejabberd/XMPP 中获取所有在线用户的列表?

使用 ejabberd 实现群聊 [关闭]

Ejabberd 将在线用户数限制为 64,464。描述符已经增加

关于ejabberd限制单点登录

使用 ejabberd 进行限时聊天

使用 Javascript 使用 ejabberd 获取在线用户列表?