【问题标题】:OpenFire Online/Offline Users in PHPPHP 中的 OpenFire 在线/离线用户
【发布时间】:2012-06-09 10:24:36
【问题描述】:

我有一个 OpenFire 服务器正在运行(它使用 MySQL 作为它的数据库),我正在尝试使 PHP http 预绑定系统(使用 SASL)与我的 Web 应用程序一起工作。

我必须在我的应用程序的一部分中选择一个尚未在线的随机用户名(对于来宾用户)。我正在考虑选择一些随机用户(在我创建的来宾组中)并使用 Presence Service 插件检查他们的在线状态,直到找到可用的用户(离线用户)。

有没有更好的方法来获取离线/在线用户列表?

服务器是否将用户的在线状态存储在数据库中? 我一直在寻找 OpenFire 数据库,但我无法弄清楚。

谢谢。

【问题讨论】:

    标签: php mysql xmpp openfire


    【解决方案1】:

    我为 Openfire 编写了一个小插件(借助其他一些非常简单的插件,我可以插入而无需深入研究 Openfire API 文档),它基本上会吐出一个 JSON 编码的在线用户列表。然后我可以抓住它并运行 json_decode 并循环遍历数组。我暂时找不到来源,但似乎其他人也这样做了:

    http://community.igniterealtime.org/thread/45107

    编辑:

    我注意到上面帖子中链接的 Github 项目现在已经消失了,但我会尝试联系他们,看看他们是否还有。

    另一个编辑:

    Github 仓库链接:https://github.com/candy-chat/onlineUsersPlugin

    【讨论】:

    • 感谢 cvaldemar。现在调查一下。
    • 正是我想要的。谢谢。
    【解决方案2】:

    在用户名册中,您可以获取在线和离线用户。您还可以从名册中获取在线用户的状态消息。

    但为此,您必须订阅该用户的存在。仅在名册中添加该用户是不够的,您必须订阅该用户的存在,然后您才能获得其他用户的存在。

    【讨论】:

    • @srbhbarot.. 你能告诉我如何订阅用户吗??
    猜你喜欢
    • 2015-12-25
    • 2017-03-16
    • 2017-07-05
    • 2011-10-15
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 2015-02-20
    • 2017-03-16
    相关资源
    最近更新 更多