问题描述:
有客户提工单反馈配置好离线推送后收不到推送消息
可能原因:
1.手机设置没有打开app通知
2.发送消息时MsgLifeTime设置的值是否为0,若设置该字段为0,则消息只发在线用户,不保存离线
3.用户状态是否变更到PushOnline
4.对于小米离线推送,需要在小米推送运营平台通知类别中添加ChannelID,且保持和控制台证书中ChannelID的一致
排查步骤:
1.控制台离线推送工具测试是否可以收到离线推送
腾讯云官网IM控制台 -> 辅助工具 -> 离线推送自查
如果不能成功推送,根据提示信息排查即可,多为状态不是pushonline或证书不正确
2.检查消息body中MsgLifeTime设置的值
若设置该字段为0,则消息只发在线用户,不保存离线,就无法实现离线推送。
3.查该条消息是否下发
调用Rest Api查询消息是否成功下发,以下以查询单聊消息为例,群聊可以查询对应的群聊消息
若消息成功下发:检查登录态是否为PushOnline,然后再继续发送消息,可以通过在线工具查询账号在线状态:点击使用调试工具
pushonlin状态:kill掉应用,并允许后台允许;断网400s
4.小米离线推送问题
控制台自查可以收到推送,消息也下发成功,但客户端未收到推送消息,经过查询后台记录后发现推送不成功
原因:未在小米开放平台添加ChannelID,并与IM控制台中添加的ChannelID保持一致
5.sdk中是否打开推送
之前有iPhone手机收不到推送问题,经排查是由于V1版本与V2版本混用导致收不到离线推送,需要setApns,具体配置:
建议:此类问题一般为配置错误导致,可以先自查下配置问题。