XMPP 上的群聊推送通知
GroupChat Push Notification on XMPP
我们正在 IOS 和 Android 上开发 xmpp 应用程序。我们使用 ejabberd 作为 xmpp 服务器,我们还使用 mod_interact (https://github.com/adamvduke/mod_interact) 来通知我们的网络服务器向客户端发送离线消息的推送通知:
流程是这样的:
- 发件人将消息发送到 ejabberd
- Ejabberd 收到消息并检查收件人是否在线
- 如果收件人离线 ejabberd 保存离线消息
- mod_interact 当 ejabberd 收到离线消息并将消息传送到我们的网络服务器时工作
- Web服务器找到客户端的推送通知信息并发送推送通知
它在一对一聊天时效果很好。但是在群聊(MUC)中 mod_interact 不起作用,我无法向群收件人发送推送通知。您知道解决 1 对 1 和群聊问题的任何其他解决方案吗?
谢谢
查看ejabberd_mod_offline_post,它同时支持one2one和MUC。
- 首先配置房间必须是Member-Only房间,创建后立即将所有用户添加为成员,这样才能得到总数。
- 将以上模型添加到ejabberd模型中。
- 实施回调服务来处理回调 post。
想法是当用户下线时:
- 在一对一的情况下,offline_message_hook会提高
- 在 MUC 情况下,muc_filter_message 将被引发,并且任何不存在的人都处于离线状态。
我们正在 IOS 和 Android 上开发 xmpp 应用程序。我们使用 ejabberd 作为 xmpp 服务器,我们还使用 mod_interact (https://github.com/adamvduke/mod_interact) 来通知我们的网络服务器向客户端发送离线消息的推送通知: 流程是这样的:
- 发件人将消息发送到 ejabberd
- Ejabberd 收到消息并检查收件人是否在线
- 如果收件人离线 ejabberd 保存离线消息
- mod_interact 当 ejabberd 收到离线消息并将消息传送到我们的网络服务器时工作
- Web服务器找到客户端的推送通知信息并发送推送通知
它在一对一聊天时效果很好。但是在群聊(MUC)中 mod_interact 不起作用,我无法向群收件人发送推送通知。您知道解决 1 对 1 和群聊问题的任何其他解决方案吗?
谢谢
查看ejabberd_mod_offline_post,它同时支持one2one和MUC。
- 首先配置房间必须是Member-Only房间,创建后立即将所有用户添加为成员,这样才能得到总数。
- 将以上模型添加到ejabberd模型中。
- 实施回调服务来处理回调 post。
想法是当用户下线时:
- 在一对一的情况下,offline_message_hook会提高
- 在 MUC 情况下,muc_filter_message 将被引发,并且任何不存在的人都处于离线状态。