我目前正在研究XMPP,我想知道是否有办法创建动态XMPP名册。我希望服务器/组件/插件自动生成任何用户的联系人列表。
组件可以访问和修改名单吗? 我知道有些服务器(比如OpenFire)使用外部数据库来存储这些信息但是如果我修改了数据库,我认为不会实时通知用户。
有些人已经这样做了,或者您是否知道如何创建它?
感谢您的时间。
答案 0 :(得分:3)
在大多数XMPP服务器中,这称为“共享名册组”。
我无法对Openfire发表评论,特别是因为我很长时间没有使用它,但我认为我不知道目前哪个外部名册更改会立即传送给客户的服务器。通常,客户端只需在下次登录时选择新的名单。
可以使用XMPP调用"roster pushes"将更新立即推送到客户端。这需要在服务器上进行相当多的工作,但要确定每个客户端知道名单之间的变化,以及新的名册是什么,然后只发送变化。
如果你真的需要这个,那么服务器插件可能就是这样,或者纠缠你的服务器开发人员获取该功能(我知道作为Prosody开发人员我已经被纠缠过了,这是我打算继续努力的事情。)
至于组件是否可以访问用户名单 - 这取决于服务器实现和配置。