由于第三方厂商和个推对特定推送参数支持不统一,个推为了给客户提供一致的推送服务,对推送参数做了特殊规定,解决接入第三方推送遇到的兼容问题,降低接入成本。
目前第三方厂商的通知到达率显著高于第三方透传的到达率。所以厂商渠道建议使用通知。消息默认下发策略:SDK在线状态,走个推渠道下发消息,SDK离线状态,走厂商渠道下发消息。该文档不再介绍个推渠道的参数设置,着重介绍下第三方厂商渠道的通知消息功能使用。
以下是默认的第三方厂商渠道和个推渠道的下发策略,可以使用策略参数改变下发策略,使用说明详见(RestAPI V2):公共参数-strategy 厂商下发策略选择
push_channel
厂商通道消息内容,设置push_channel/android/ups/notification
对象的title
,content
,intent
等参数。其中可以通过options
参数传入厂商通知扩展内容。
更多options可填参数可以参考下文。
角标设置
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"HW": {
"/message/android/notification/badge/class": "应用入口Activity路径名称",
"/message/android/notification/badge/add_num": 1,
"/message/android/notification/badge/set_num": 2
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/message/android/notification/badge/class | String | 是 | 无 | value:应用入口Activity路径名称 |
/message/android/notification/badge/add_num | Integer | 是 | 无 | value:应用角标累加数字,并非应用角标实际显示数字 必须是大于0小于100的整数 |
/message/android/notification/badge/set_num | Integer | 是 | 无 | value:角标设置数字 必须是大于0小于100的整数,如果set_num和add_num同时存在,以set_num为准 |
注意事项
1. 点击启动图标或通知栏系统并不会清理角标数,需应用在端侧通过角标API去清理角标;
2. add_num:EMUI版本8.0.0(及以上),推送服务App版本8.0.0(及以上)支持;
3. set_num:EMUI版本10.0.0(及以上),推送服务App版本10.1.0(及以上)支持。
4.若需要使用角标功能,应用入口Activity路径名称参数字段必填,若“add_num”和“set_num”都设置为空,则应用角标数字默认加1。
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"HW": {
"/message/android/notification/image": "公网可以访问的https图标链接",
"/message/android/notification/style": 1,
"/message/android/notification/big_title": "big_title",
"/message/android/notification/big_body": "big_body"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/message/android/notification/image | String | 是 | 无 | 通知小图; value:请写入对应图标https地址 URL使用的协议必须是HTTPS协议,取值样例:https://example.com/image.png。 |
/message/android/notification/style | Integer | 是 | 无 | 通知栏样式; 0:默认样式 1,大文本样式。 |
/message/android/notification/big_title | String | 是 | 无 | 通知长文本; value:通知title内容 设置big_title后通知栏展示时,使用 big_title而不用title。 |
/message/android/notification/big_body | String | 是 | 无 | 通知长文本; value:通知body内容 通知body内容。设置big_body后通知栏展示时,使用big_body而不用body。 |
注意事项
1. 通知长文本:EMUI版本9.1.0(及以上),推送服务App版本9.1.1(及以上)支持。
消息分类使用之前,需要先向华为侧发邮件申请权限参见华为消息分类申请
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"HW": {
"/message/android/category": "填写华为侧的category取值"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/message/android/category | String | 否 | 无 | 结合应用的消息内容和消息发送场景,华为推送将消息分为22种消息类型。详情参考华为消息分类标准中的 category 取值 |
离线自定义铃声设置需要Android客户端配合使用
key 说明
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/message/android/notification/default_sound | Boolean | 是 | 无 | 设置为 false,使用sound自定义铃声 |
/message/android/notification/channel_id | String | 是 | 无 | 自Android O版本后可以支持通知栏自定义渠道,指定消息要展示在哪个通知渠道上,详情请参见自定义通知渠道。 自定义通知渠道仅对发送给用户设备的重要级别消息有效,一般级别消息仍然通过华为营销通知渠道展示。 |
/message/android/notification/sound | String | 是 | 无 | 自定义消息通知铃声,在新创建渠道时有效,此处设置的铃声文件必须存放在应用的/res/raw路径下,例如设置为“/raw/shake”,对应应用本地的“/res/raw/shake.xxx”文件,支持的文件格式包括MP3、WAV、MPEG等,如果不设置使用默认系统铃声。 |
/message/android/notification/importance | String | 否 | 无 | 取值为“LOW”时,表示消息为资讯营销;取值为“NORMAL”时,表示消息为服务与通讯 |
注意:自定义铃声受华为自己通知消息权重影响
自定义通知渠道仅对发送给用户设备的服务与通讯级别消息有效,一般级别消息仍然通过华为营销通知渠道展示(一般级别消息是不会播放自定义铃声)。这个时候就不会播放自定义铃声了。消息类别受华为侧AI智能判断控制,或开发者自己向华为侧申请自分类权益申请
Rest-v2 示例:
Options参数【ups 参数中】下进行设置示例:
"HW": {
"/message/android/notification/default_sound": false,
"/message/android/notification/channel_id": "RingRing4",
"/message/android/notification/sound": "/raw/ring001"
}
在用户设备没有网络时,消息在华为Push服务器进行缓存,在消息缓存时间内用户设备重新连接网络,消息会下发,超过缓存时间后消息会丢弃。
key 说明
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/message/android/ttl | String | 否 | 无 | 消息缓存时间,单位是秒。默认值为“86400s”(1天),最大值为“1296000s”(15天)。 |
Rest-v2 示例:
Options参数【ups 参数中】下进行设置示例:
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"HW":{
"/message/android/ttl":"86400s"
}
}
}
}
}
注意事项 荣耀版本要求 Magic UI 4.0及以上
角标设置
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"HO": {
"/android/notification/badge/addNum": 1,
"/android/notification/badge/setNum": 5,
"/android/notification/badge/badgeClass": "应用入口Activity类全路径名称"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/android/notification/badge/badgeClass | String | 是 | 无 | value:应用入口Activity路径名称。样例:com.getui.demo.GetuiSdkDemoActivity |
/android/notification/badge/addNum | Integer | 否 | 无 | value:应用角标累加数字,并非应用角标实际显示数字 必须是大于0小于100的整数 |
/android/notification/badge/setNum | Integer | 否 | 无 | value:角标设置数字 必须是大于0小于100的整数,如果setNum和addNum同时存在,以setNum为准 |
注意事项 发送消息同时设置应用角标数字,“class“必填,“addNum”和”setNum”参数选填。若“addNum”和“setNum”都设置为空,则应用角标数字默认加1
通知栏样式设置
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"HO": {
"/android/notification/icon":"左侧小图标",
"/android/notification/image": "公网可以访问的https图标链接",
"/android/notification/style": 1,
"/android/notification/bigTitle": "bigTitle",
"/android/notification/bigBody": "bigBody"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/android/notification/icon | String | 否 | 无 | 自定义通知栏左侧小图标,此处设置的图标文件必须存放在应用的/res/raw路径下,例如"/raw/ic_launcher",对应应用本地的"/res/raw/ic_launcher.xxx"文件,支持的文件格式目前包括PNG、JPG。 |
/android/notification/image | String | 否 | 无 | 通知右侧小图标; value:请写入对应图标https地址 URL使用的协议必须是HTTPS协议,取值样例:https://example.com/image.png。 图标文件须小于512KB,图标建议规格大小:40dp x 40dp,弧角大小为8dp,超出建议规格大小的图标会存在图片压缩或显示不全的情况。 资讯营销类消息不支持右侧小图即importance=LOW时不生效 |
/android/notification/style | Integer | 否 | 无 | 通知栏样式 0:默认样式 1:大文本样式。 |
/android/notification/bigTitle | String | 否 | 无 | 通知大文本标题,当style=1时必填 设置bigTitle后通知栏展示时,使用bigTitle而不用title。 |
/android/notification/bigBody | String | 否 | 无 | 通知大文本内容,当style=1时必填 通设置bigBody后通知栏展示时,使用bigBody而不用body。 |
/android/notification/notifySummary | String | 否 | 无 | Android通知栏消息简要描述。 |
Android通知消息分类,决定用户设备消息通知行为,详细分类标准见荣耀文档荣耀消息分类
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"HO":{
"/android/notification/importance":"LOW"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/android/notification/importance | String | 否 | 无 | LOW:资讯营销类消息 NORMAL:服务与通讯类消息 |
通知栏消息动作按钮,最多设置3个
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"HO":{
"/android/notification/buttons":[
{
"name":"点击透传",
"actionType":0,
"data":"{\"key1\":\"value1\",\"key2\":\"value2\"}"
},
{
"name":"打开网页",
"actionType":2,
"intent":"https://www.json.cn/"
}
]
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/android/notification/buttons | Object | 否 | 无 | 通知栏消息动作按钮,最多设置3个。具体字段请参见Button结构体的定义。 样例:"/android/notification/buttonsbuttons":[{"name":"打开应用","actionType":"1"}]。 |
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
name | String | 是 | 无 | 按钮名称,最大长度40字。 |
actionType | int | 是 | 无 | 按钮动作类型: 0:打开应用首页 1:打开应用自定义页面 2:打开指定的网页 |
intentType | int | 否 | 无 | 打开自定义页面的方式:当actionType为1时,该字段必填。 0:设置通过intent打开应用自定义页面 1:设置通过action打开应用自定义页面 |
intent | String | 否 | 无 | 当actionType为1,此字段按照intentType字段设置应用页面的uri或者action,具体设置方式参见打开应用自定义页面。 当actionType为2,此字段设置打开指定网页的URL,URL使用的协议必须是HTTPS协议,取值样例:https://example.com/image.png。 |
data | String | 否 | 无 | 最大长度1024字。 当字段actionType为0或1时,该字段用于在点击按钮后给应用透传数据,选填,格式必须为key-value形式:{"key1":"value1","key2":"value2"} |
设置通知栏消息的到达时间
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"HO":{
"/android/notification/when":"UTC时间戳"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/android/notification/when | string | 否 | 无 | 设置通知栏消息的到达时间,如果您同时发送多条消息, Android通知栏中的消息根据这个值进行排序,同时将排序后的消息在通知栏上显示。 该时间戳为UTC时间戳,样例:2014-10-02T15:01:23.045123456Z。 |
在用户设备离线时,消息在荣耀Push服务器进行缓存,在消息缓存时间内用户设备上线,消息会下发,超过缓存时间后消息会丢弃。
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"HO":{
"/android/ttl":"86400s"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/android/ttl | string | 否 | 无 | 消息缓存时间,单位是秒。默认值为“86400s”(1天),最大值为“1296000s”(15天)。 |
小米推送的消息通道分为“普通消息”(默认)和“重要消息”两类,默认下发普通消息。普通消息单日可推送数量有限制,重要消息不限。重要消息申请具体请参考: 小米推送消息分类新规
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"XM": {
"/extra.channel_id": "Default"
},
"XMG": {
"/extra.channel_id": "Default"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/extra.channel_id | String | 是 | 无 | value:填写小米平台申请的渠道id |
先调用小米接口,上传图片,获取图片url。
Java方式 参考(小米官方文档) 4.4.1 大图/大文本/Large icon,或者集成个推多厂商推送工具集。
RestAPI 方式 参考(小米官方文档)11.1 大图、大文本/上传大图API。
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"XM": {
"/extra.notification_style_type": 2,
"/extra.notification_bigPic_uri":"http://url.big.pic/xxx.png"
},
"XMG": {
"/extra.notification_style_type": 2,
"/extra.notification_bigPic_uri":"http://url.big.pic/xxx.png"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/extra.notification_style_type | String | 是 | 无 | 1表示多字版;2表示大图版 填1时,文本内容为body内的值 |
/extra.notification_bigPic_uri | String | 是 | 无 | /extra.notification_style_type填2时,填写,表示大图地址(上传到小米返回的url) 图片要求:固定876x324px,小于1M,PNG/JPG/JPEG格式。 |
/extra.notification_large_icon_uri | String | 是 | 无 | 通知小图; value:填写接口返回的图片链接。 Large icon可以出现在大图版和多字版消息中,显示在右边,通知小图。图片要求:尺寸必须为 120×120px,文件小于200KB,PNG/JPG/JPEG格式。 |
注意事项:
1. 富文本消息仅在MIUI10及以上版本支持,在低版本和非MIUI系统上,消息将按照普通消息的样式展示;
2. 国内版MIUI系统中,仅在MIUI12及以上版本支持large icon,MIUI12以下版本不会展示;
3. 发送大图消息时,如果因为网络原因图片下载失败后将不会展示图片, 而是按照普通消息样式 展示。
离线自定义铃声设置需要Android客户端配合使用
key 说明
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/extra.sound_uri | String | 是 | 无 | 小米后台申请的自定义 sound_url 地址,示例:android.resource://your packagename/raw/XXX |
/extra.channel_id | String | 是 | 无 | 小米后台申请的通知类别id |
注意:若服务端/extra.sound_uri和/extra.channel_id同时设置,Android 8.0及以上版本的通知效果以channel中的效果为准
1、客户端-小米厂商版本需要用com.getui:xmp:1.0.8版本或小米-3.0.1版本及以上
2、客户端铃声文件放在Android app的raw目录下;
3、针对android8以上的小米机型,离线自定义铃声只在channel通道中起作用,若需要多个不同铃声则需要多个不同channel通道
因此需要在小米平台上新建channel通道,设置自定义铃声前端路径如:android.resource://your packagename/raw/test(路径不需要带音频后缀名)如图
Rest-v2 示例:
Options参数【ups 参数中】下进行设置示例:
"XM": {
"/extra.sound_uri": "小米后台申请的自定义 sound_url 地址",
"/extra.channel_id": "小米后台申请的通知类别id"
}
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"XM": {
"/extra.locale": "zh_CN"
},
"XMG": {
"/extra.locale": "zh_CN"
}
}
}
}
}
key 说明
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/extra.locale | String | 否 | 无 | 可以接收消息的设备的语言范围,用逗号分隔。比如,中国大陆用zh_CN表示。这个区域是按照实际所在位置来判断的,而不是手机上设置的地区。 |
/extra.locale_not_in | String | 否 | 无 | 无法收到消息的设备的语言范围,逗号分隔。 |
xmg不支持,若使用手机无法收到消息
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"XM": {
"/extra.model": "MI 4LTE"
}
}
}
}
}
key 说明
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/extra.model | String | 否 | 无 | 可以收到消息的设备的机型范围,逗号分隔。当前设备的model的获取方法:Build.MODEL。 比如,小米手机4移动版用”MI 4LTE”表示。 |
/extra.model_not_in | String | 否 | 无 | 无法收到消息的设备的机型范围,逗号分隔。 |
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"XM": {
"/extra.app_version": "v3.3.0"
},
"XMG": {
"/extra.app_version": "v3.3.0"
}
}
}
}
}
key 说明
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/extra.app_version | String | 否 | 无 | 可以接收消息的app版本号,用逗号分割。安卓app版本号来源于manifest文件中的”android:versionName”的值。 |
/extra.app_version_not_in | String | 否 | 无 | 无法接收消息的app版本号,用逗号分割。 |
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"XM": {
"/extra.notification_style_button_left_name": "左侧按钮",
"/extra.notification_style_button_left_notify_effect": "3",
"/extra.notification_style_button_left_web_uri": "https://c.runoob.com/front-end/854/"
},
"XMG": {
"/extra.notification_style_button_left_name": "左侧按钮",
"/extra.notification_style_button_left_notify_effect": "3",
"/extra.notification_style_button_left_web_uri": "https://c.runoob.com/front-end/854/"
}
}
}
}
}
key 说明
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/extra.notification_style_button_left_notify_effect | String | 否 | 无 | 左侧按钮点击后的动作,支持以下取值: 1:打开应用 2:打开应用内指定页面 3:打开网页 如果不配置或者配置为其他值都将不显示按钮。 |
/extra.notification_style_button_left_name | String | 否 | 无 | 左侧按钮名称。 该参数必须配置,不配置将不展示按钮。 |
/extra.notification_style_button_left_intent_uri | String | 否 | 无 | 打开应用。 |
/extra.notification_style_button_left_web_uri | String | 否 | 无 | 点击左侧按钮,打开指定web页面。 |
/extra.notification_style_button_left_intent_class | String | 否 | 无 | 点击左侧按键,打开应用内指定页面。 |
/extra.notification_style_button_right_notify_effect | String | 否 | 无 | 右侧按钮点击后的动作,支持以下取值: 1:打开应用 2:打开应用内指定页面 3:打开网页 如果不配置或者配置为其他值都将不显示按钮。 |
/extra.notification_style_button_right_name | String | 否 | 无 | 右侧按钮名称。 该参数必须配置,不配置将不展示按钮。 |
/extra.notification_style_button_right_intent_uri | String | 否 | 无 | 打开应用。 |
/extra.notification_style_button_right_web_uri | String | 否 | 无 | 点击右侧按钮,打开指定web页面。 |
/extra.notification_style_button_right_intent_class | String | 否 | 无 | 点击右侧按键,打开应用内指定页面。 |
/extra.notification_style_button_mid_notify_effect | String | 否 | 无 | 中间按钮点击后的动作,支持以下取值: 1:打开应用 2:打开应用内指定页面 3:打开网页 如果不配置或者配置为其他值都将不显示按钮。 |
/extra.notification_style_button_mid_name | String | 否 | 无 | 中间按钮名称。 该参数必须配置,不配置将不展示按钮。 |
/extra.notification_style_button_mid_intent_uri | String | 否 | 无 | 打开应用。 |
/extra.notification_style_button_mid_web_uri | String | 否 | 无 | 点击中间按钮,打开指定web页面。 |
/extra.notification_style_button_mid_intent_class | String | 否 | 无 | 点击中间按键,打开应用内指定页面。 |
如果用户离线,设置消息在服务器保存的时间,单位:ms。服务器默认最长保留两周。
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"XM":{
"/time_to_live":86400000
},
"XMG":{
"/time_to_live":86400000
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 | 支持单推 |
---|---|---|---|---|---|
/time_to_live | long | 否 | TRUE | 可选项。如果用户离线,设置消息在服务器保存的时间,单位:ms。服务器默认最长保留两周。 | 是 |
/extra.only_send_once | String | 否 | 无 | 可选项,extra.only_send_once的值设置为1,表示该消息仅在设备在线时发送一次,不缓存离线消息进行多次下发。 | 是 |
注:仅支持七天内的定时消息。
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"XM":{
"/time_to_send":1669690975393
},
"XMG":{
"/time_to_send":1669690975393
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 | 支持单推 |
---|---|---|---|---|---|
/time_to_send | long | 否 | 否 | 定时发送消息。用自1970年1月1日以来00:00:00.0 UTC时间表示(以毫秒为单位的时间)。注:仅支持七天内的定时消息。 | 是 |
OPush平台上所有通道分为“公信”(默认)、“私信”两类,默认下发公信消息。公信消息单日可推送数量有限制,私信消息不限(仅限单个用户)。oppo 平台私信消息申请参考:推送私信通道申请。
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"OP": {
"/channel_id": "Default"
},
"OPG": {
"/channel_id": "Default"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/channel_id | String | 是 | 无 | value:填写OPPO/OPPO海外平台登记的渠道ID |
注意事项
1.OPPO私信消息仅支持单推。
2.如果使用私信,需要在客户端创建对应的私信渠道,具体请参考: 通知通道(Channel)适配
OPPO PUSH 新消息分类分为 内容与营销 和 通讯与服务 两类。
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"OP": {
"/category": "填写Opush消息类别category",
"/notify_level": 1 //通知栏消息提醒等级取值定义。1:通知栏,2:通知栏+锁屏,16:通知栏+锁屏+横幅+震动+铃声。使用notify_level参数时,category参数必传。
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/category | String | 否 | 无 | 通道类别名,详见《新消息分类场景说明》 |
/notify_level | Int | 否 | 2 | 通知栏消息提醒等级取值定义 1-通知栏 2-通知栏+锁屏 16-通知栏+锁屏+横幅+震动+铃声 使用notify_level参数时,category参数必传 notify_level:2、16 ,必须完成 4. 【通讯与服务】通道权限申请说明 后才能使用。 |
先调用OPPO接口,上传图片,获取图标url。
Java方式集成个推多厂商推送工具集。
RestAPI 参考 “图片上传” 。
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"OP": {
"/small_picture_id": "xxxxxxxxxxxxxxx",
// "style": 2,
"/style": 3,
"/big_picture_id": "big_body"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 支持单推 | 描述 |
---|---|---|---|---|---|
/style | Integer | 是 | 无 | 是 | 通知栏样式 1. 标准样式 2. 长文本样式(ColorOS版本>5.0可用,通知栏第一条消息可展示全部内容,非第一条消息只展示一行内容) 3. 大图样式(ColorOS版本>5.0可用,通知栏第一条消息展示大图,非第一条消息不显示大图,推送方式仅支持广播) |
/small_picture_id | String | 是 | 无 | 否 | 通知小图; value: 填写接口返回的图标ID 图片要求:尺寸144*144 px,文件大小为50k以内,格式为PNG/JPG/JPEG。 |
/big_picture_id | String | 是 | 无 | 否 | 通知大图 value:填写接口返回的图标id,style为3时必填 图片要求:尺寸876*324px,文件大小1M以内,格式为PNG/JPG/JPEG。 |
注意事项:
通知小图标、大图不支持单推,单推请求会返回无权限错误
App开发者自定义消息Id,OPPO推送平台根据此ID做去重处理
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"OP": {
"/app_message_id": "xxxx"
},
"OPG": {
"/app_message_id": "xxxx"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 支持单推 | 描述 |
---|---|---|---|---|---|
/app_message_id | String | 是 | 无 | 是 | App开发者自定义消息Id,OPPO推送平台根据此ID做去重处理,对于tolist推送和全部用户推送相同app_message_id只会保存一次,对于单推相同app_message_id只会推送一次 |
开发者可以根据自己的业务需求设置定时展示,定时展示功能设置成功后消息即时下发,到达用户手机后并不直接展示出来,消息在设置的定时展示时间内展示出来。
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"OP":{
"/show_time_type":1,
"/show_start_time":1640570400000,
"/show_end_time":1640571000000
},
"OPG":{
"/show_time_type":1,
"/show_start_time":1640570400000,
"/show_end_time":1640571000000
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 支持单推 | 描述 |
---|---|---|---|---|---|
/show_time_type | Int | 否 | 0 | 否 | 展示类型 (0, “即时”),(1, “定时”) |
/show_start_time | Long | 否 | 0 | 否 | 定时展示开始时间(根据time_zone转换成当地时间),时间的毫秒数 |
/show_end_time | Long | 否 | 0 | 否 | 定时展示结束时间(根据time_zone转换成当地时间),时间的毫秒数 |
注意事项:消息并不是到达开始时间就会展示,是在开始时间和结束之间之内进行展示
开发者可设置每条消息的有效期,在设置的有效期内,只要设备联网,便会收到消息。消息有效期最长10天,最短1小时。
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"OP":{
"/off_line":true,
"/off_line_ttl":86400
},
"OPG":{
"/off_line":true,
"/off_line_ttl":86400
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 | 支持单推 |
---|---|---|---|---|---|
/off_line | Boolean | 否 | TRUE | 是否进离线消息,【非必填,默认为True】 | 是 |
/off_line_ttl | Int | 否 | 3600 | 离线消息的存活时间(time_to_live) (单位:秒), 【最长10天】 | 是 |
消息在通知栏展示后开始计时,到达填写的相对应时间后自动从通知栏消失
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"OP":{
"/show_ttl":86400
},
"OPG":{
"/show_ttl":86400
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 支持单推 | 描述 |
---|---|---|---|---|---|
/show_ttl | int | 否 | 86400 | 是 | 限时展示(单位:秒),消息在通知栏展示后开始计时,到达填写的相对应时间后自动从通知栏消失,默认是1天。时间范围6 60 60 s -- 48 60 60 s |
打开应用内页或网页时传递给应用或网页
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"OP":{
"/action_parameters/key":"value",
"/action_parameters/key1":"value1"
},
"OPG":{
"/action_parameters/key":"value",
"/action_parameters/key1":"value1"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 支持单推 | 描述 |
---|---|---|---|---|---|
/action_parameters/XXX | String | 否 | null | 是 | XXX表示自定义参数,动作参数,打开应用内页或网页时传递给应用或网页 |
vivo消息分类功能将推送消息类型分为运营消息和系统消息,默认下发运营消息。运营消息单用户单应用单日接收条数上限为5条,系统消息不限。系统消息功能不用申请,可以直接使用,如特殊情况需额外提升系统消息量级,请参见[(vivo官方文档)推送消息分类功能说明]。
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"VV": {
"/category":"填写对应的ID" //二级分类。
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/category | string | 否 | 无 | 二级分类,传值参见:二级分类标准 中category说明 1、填写category后,可以不填写classification、messageSort,但若填写classification、messageSort,请保证category与messageSort或classification是正确对应关系,否则返回错误码10097; 2、赋值请按照消息分类规则填写,且必须大写;若传入错误无效的值,否则返回错误码10096; |
通知消息类型,响铃和振动设置,只对Android 8.0及以下系统有效
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"VV": {
"/notifyType": 0
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/notifyType | int | 是 | 无 | 通知类型 1:无,2:响铃,3:振动,4:响铃和振动 注意:只对Android 8.0及以下系统有效 |
开发者可设置手机接收消息的网络方式,若设置wifi下发送,只有手机联网方式为wifi才能收到消息;设置不限,手机只要联网即可收到消息
{
"android": {
"ups": {
"notification": {
// ...其他push_channel参数略
},
"options": {
"VV": {
"/networkType": -1
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/networkType | int | 否 | -1 | 网络方式 -1:不限,1:wifi下发送 |
开发者可设置每条消息的保留时长,在设置的保留时长内,只要设备联网,便会收到消息。
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"VV":{
"/timeToLive":86400
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/timeToLive | int | 否 | 86400 | 消息保留时长 单位:秒,单推取值至少60秒,群推至少900秒,最长7天。当值为空时,默认一天 |
客户端自定义键值对,app可以按照客户端SDK接入文档获取该键值对
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"VV":{
"/clientCustomMap/key":"value",
"/clientCustomMap/key1":"value1"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
/clientCustomMap/XXX | String | 否 | null | 客户端自定义键值对,app可以按照客户端SDK接入文档获取该键值对 |
通知展示样式,文本+长文本样式和文本+大图样式,二者选其一;该参数作用于UPS下面的所有机型,比如ST,SN等等。
{
"android":{
"ups":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"UPS":{
"bigText":"请填写长文本内容"
// "bigImageUrl":"请填写大图的url地址"
}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
bigText | String | 否 | 无 | 通知展示文本+长文本样式的长文本内容 |
bigImageUrl | String | 否 | 无 | 通知展示大图样式的大图内容,填写大图的URL地址 |
测试消息标识,每天限制1000条
{
"harmony":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"HW":{
"/pushOptions/testMessage": true
}
}
}
}
角标设置
{
"harmony":{
"notification":{
// ...其他push_channel参数略
},
"options":{
"HW":{
"/payload/notification/badge": {"addNum":1}
}
}
}
}
名称 | 类型 | 是否必须 | 默认值 | 描述 |
---|---|---|---|---|
badge | String | 否 | 无 | 通知消息角标控制参数,详情请参见Badge结构体,不设置时应用不显示角标数字,若当前已存在角标,则角标数字不变化。 样例:"badge": {"addNum": 1} |
以上文档对您是否有帮助?