繁体   English   中英

使用 REST API 获取最后一次注销详情 openfire

[英]Get last Last Logout details openfire using REST API

我们确实具有从服务器端发送离线群组推送通知的功能。

场景如下:-

应用程序已打开并转到群组消息选项卡。 现在向组发送消息,组的其他用户将收到我发送的消息。

通过从 ios 端关闭(终止或在后台)应用程序,他们将用户在线状态设置为离线。 因此,一旦应用程序关闭,他们将在移动设备上收到推送通知。

问题是关闭应用程序后,即使我阅读了相同的消息,我仍然在移动设备中收到推送通知。

从后端,我设置了一个 cron 作业,它每 30 秒在服务器上运行一次,并检查组中的用户是否存在,并向那些在手机上离线的用户发送推送通知。

那么有什么方法可以使用 REST API 获取上次注销时间戳,以便我可以设置条件并检查上次用户登录时间是否小于当前时间 accrodingly 推送通知将发送。

无法使用 REST API http://example.com:9090/plugins/restapi/v1/sessions/yourUserName获取上次注销时间

输出:-

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <sessions>
    <session>
        <sessionId>yourUserName@example.com/1ae2xq14da</sessionId>
        <username>yourUserName</username>
        <ressource>1ae2xq14da</ressource>
        <node>Local</node>
        <sessionStatus>Closed</sessionStatus>
        <presenceStatus>Online</presenceStatus>
        <priority>0</priority>
        <creationDate>2017-01-18T08:58:01.611Z</creationDate>
        <lastActionDate>2017-01-18T08:58:05.121Z</lastActionDate>
        <secure>false</secure>
    </session>
  </sessions>

通过执行上述方法获取创建日期和上次操作日期不正确。

1) 创建日期 :- 2017-01-18T08:58:01.611Z
2) lastActionDate :- 2017-01-18T08:58:05.121Z

http://example.com:9090/plugins/restapi/v1/users/yourUserName

哪个不输出上次登录时间戳

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user>
    <username>yourUserName</username>
    <name>yourUserName</name>
    <email>yourUserName@example.com</email>
    <properties/>
</user>

我们使用了REST API 插件

任何帮助将是appriciate。

用户状态插件完成了这项工作!

User Status Plugin 是 Openfire XMPP 服务器的插件,用于将用户状态保存到数据库。

这个插件会自动将每个用户和资源的最后状态(存在、IP 地址、登录和注销时间)保存到 Openfire 数据库中的 userStatus 表中。

您可以选择在指定时间内存档用户状态条目(IP 地址、登录和注销时间)。 历史条目存储在 userStatusHistory 表中。 历史存档的设置可以在 Openfire 管理控制台的“服务器”选项卡上的“用户状态设置”页面上进行配置。

该插件可在http://maven.reucon.com/projects/public/user-status 获得

根据该项目的网站,目前该插件仅适用于 MySQL。

因此,通过放置基于注销时间和消息时间推送通知发送的条件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM