动态 XMPP 名册?

发布于 2024-09-07 03:25:26 字数 201 浏览 5 评论 0原文

我目前正在研究 XMPP,我想知道是否有办法创建动态 XMPP 名册。我希望服务器/组件/插件自动生成任何用户的联系人列表。

组件可以访问和修改名册吗? 我知道有些服务器(如 OpenFire)使用外部数据库来存储这些信息,但如果我修改数据库,我认为用户不会实时收到通知。

有些人已经这样做了,或者您知道如何创建它吗?

谢谢您的宝贵时间。

I'm currently looking into XMPP and I would like to know if there is a way to create dynamic XMPP rosters. I want the contact list of any user be automatically generated by the server / component / plugin.

Can components access and modify rosters?
I know that some servers (like OpenFire) use an external database to store these information but if I modify the database, I don't think the users will be notified in realtime.

Are some people already doing that or do you have an idea how to create it?

Thank you for your time.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

灰色世界里的红玫瑰 2024-09-14 03:25:27

在大多数 XMPP 服务器中,这称为“共享名册组”。

我无法对 Openfire 特别发表评论,因为我还没有使用过它很长一段时间了,但我认为我不知道目前有哪个服务器可以将外部名册更改立即传输到客户端。通常,客户端在下次登录时只会选择新名单。

可以使用 XMPP 调用的方法立即将更新推送给客户端 “名册推送”。这将需要在服务器上进行相当多的工作,以确定每个客户端所知道的名册与新名册之间的变化,然后仅传输更改。

如果你真的需要这个,那么服务器插件可能是一个不错的选择,或者纠缠你的服务器开发人员以获取该功能(我知道作为 Prosody 开发人员我已经被缠住了,这是我打算做的事情)。

至于组件是否可以访问用户的名册 - 这取决于服务器的实现和配置。

In most XMPP servers this is called "shared roster groups".

I can't comment on Openfire in particular because I haven't used it for a long time, but I don't think I know of a server currently in which external roster changes are instantly transmitted to clients. Usually the client will simply pick up the new roster when it next logs in.

It would be possible to push the updates instantly to clients using what XMPP calls "roster pushes". This would require quite some work on the server though to identify what the changes are between what each client knows the roster to be, and what the new roster is, and then transmit just the changes.

If you really need this then a server plugin would probably be the way to go, or pester your server developers for the feature (I know that as a Prosody developer I've already been pestered, and this is something I'm planning to work on).

As for whether components can access users' rosters - this is dependent upon the server implementation and configuration.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文