订阅消息

业务场景

开发者在游戏内,可向用户发起消息订阅。 用户订阅后,开发者可以在后台通过下发消息,发送给用户,用户最终在“服务通知”中收到

流程图

接口介绍

SDKManager.requestSubscribeMessage(Object params)

调用示例

var params = {
  locationMarker: ['xxx'],
  type: '',
  onSuccess: (info) => {
    // 成功,这里是调用抖音订阅成功,不是当前消息是否订阅
  },
  onFailed: (errorInfo) => {
    // 失败
  },
};
SDKManager.requestSubscribeMessage(params);

参数说明

入参: params

参数名称类型说明必传/可选最低版本
locationMarkerstring[]订阅事件标识,请根据天眼后台配置的传入,type="system" 会被忽略必传
typestring订阅类型,请看下表可选

String type

取值说明
system系统订阅【渠道内测中,暂未对外开放】
normal一次性订阅

出参 onSuccess.info

参数名称类型说明
extraobject渠道订阅回调原文
dataRecord<string, boolean>键值是 locationMarker 的值,例如:login->isLogin**,如果里面有多个模版,则全部都订阅了才是 true**

错误码

FAQ

Q: 服务端发送消息后,提示用户没有订阅该模版

A: 检查发送的用户 openid 是否真的订阅了该消息,如果一开始成功发送,后面失败了,则让用户多订阅几次,累加次数

Q: 服务端发送消息后,提示异常,或者用户没收到消息

A: 排查方向:(以下检查无误后还是异常,可提供请求的入参和返回结果给到我方接入组排查)

  1. 用户 openid 出错了
  2. 动态参数 templateParam 格式有问题
  3. 运营在后台忘了配置动态参数

Q: 订阅的时候提示找不到该模版

A: 排查方向:

  1. 运营检查渠道侧是否正确,该模版是否存在审核中,已过期等异常情况;
  2. 运营检查后台配置是否正确:模版和位置参数(locationMarker)都配齐

Q: 订阅的时候没有弹窗

A: 如果用户勾选了“记住我的选择”,渠道会记住用户的选择,下次不再弹窗提醒,返回默认的结果