XMPP上的GroupChat推送通知 [英] GroupChat Push Notification on XMPP

查看:102
本文介绍了XMPP上的GroupChat推送通知的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正在IOS和Android上开发xmpp应用程序.我们正在使用ejabberd作为xmpp服务器,还使用了mod_interact( https://github.com/adamvduke/mod_interact )来通知我们的网络服务器向客户端发送有关其离线消息的推送通知: 流程是这样的:

We are developing an xmpp application on IOS and Android. We are using ejabberd as the xmpp server and we are also using mod_interact (https://github.com/adamvduke/mod_interact) to inform our webservers to send push notifications to clients for their offline messages: Flow is like this:

  1. 发件人将邮件发送给ejabberd
  2. Ejabberd收到消息并检查收款人是否在线
  3. 如果接收方处于脱机状态,ejabberd将保存脱机消息
  4. mod_interact在ejabberd收到脱机消息并将其传递到我们的网络服务器时起作用
  5. Web服务器找到有关客户端的推送通知信息并发送该推送通知

在1对1聊天中效果很好.但是在群组聊天(MUC)中,mod_interact无法正常工作,我无法向群组接收者发送推送通知.您是否知道其他解决方案,可以在一对一和群聊中解决此问题.

Its working very well on 1 to 1 chat. But in group chat(MUC) mod_interact doesnt work and I cannot send push notification to group receipants. Do you know any other solutions to fix that problem on both 1 to 1 and group chat.

谢谢

推荐答案

查看 ejabberd_mod_offline_post ,同时支持one2one和MUC.

Look into ejabberd_mod_offline_post, it supports both one2one and MUC.

  1. 首先配置会议室"必须是仅限会员"会议室,并在创建会议室后立即将所有用户添加为成员,以便能够获得总数.
  2. 将上述模型添加到ejabberd模型中.
  3. 实施回调服务以处理回调帖子.

这个想法是当用户下线时:

The idea is when User go offline:

  • 在一对一的情况下,将引发offline_message_hook
  • 在MUC情况下,将引发muc_filter_message,并且任何不在状态下的人都处于脱机状态.

这篇关于XMPP上的GroupChat推送通知的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆