多厂商参数

多厂商参数

简述

由于第三方厂商和个推对特定推送参数支持不统一,个推为了给客户提供一致的推送服务,对推送参数做了特殊规定,解决接入第三方推送遇到的兼容问题,降低接入成本。

消息下发逻辑

目前第三方厂商的通知到达率显著高于第三方透传的到达率。所以厂商渠道建议使用通知。消息默认下发策略:SDK在线状态,走个推渠道下发消息,SDK离线状态,走厂商渠道下发消息。该文档不再介绍个推渠道的参数设置,着重介绍下第三方厂商渠道的通知消息功能使用。

以下是默认的第三方厂商渠道和个推渠道的下发策略,可以使用策略参数改变下发策略,使用说明详见(RestAPI V2):公共参数-strategy 厂商下发策略选择

使用方式

push_channel 厂商通道消息内容,设置push_channel/android/ups/notification对象的titlecontentintent等参数。其中可以通过options参数传入厂商通知扩展内容。

公共参数【必选】

参考RestV2 push_channel部分

更多options可填参数可以参考下文。

【华为】角标

角标设置需要Android客户端配合使用 接口类说明-16 设置华为角标

Options参数说明:

  • 参数示例
{
  "android": {
    "ups": {
      "notification": {
        // ...其他push_channel参数略
      },
      "options": {
        "ALL": {
          "key": "value"
        },
        "HW": {
          "/message/android/notification/badge/class": "应用入口Activity路径名称",
          "/message/android/notification/badge/add_num": 1,
          "/message/android/notification/badge/set_num": 2
        }
      }
    }
  }
}
  • key 说明
名称 类型 是否必须 默认值 描述
/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(及以上)支持。

【华为】富文本消息

Options参数说明:

  • 参数示例
{
  "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"
        }
      }
    }
  }
}
  • key 说明
名称 类型 是否必须 默认值 描述
/message/android/notification/image String 通知小图;
value:请写入对应图标https地址
URL使用的协议必须是HTTPS协议,取值样例:https://example.com/image.png。
/message/android/notification/style Integer 通知长文本;
value:1
通知栏样式1,为长文本。
/message/android/notification/big_title String 通知长文本;
value:通知title内容
设置big_title后通知栏展示时,使用 big_title而不用title。
/message/android/notification/big_body String 通知长文本;
value:通知title内容
通知body内容。设置big_body后通知栏展示时,使用big_body而不用body。

注意事项
1. 通知长文本:EMUI版本9.1.0(及以上),推送服务App版本9.1.1(及以上)支持。

【华为】消息分类

消息分类使用之前,需要先向华为侧发邮件申请权限参见华为消息分类申请

key 说明

名称 类型 是否必须 默认值 描述
/message/android/notification/importance String 取值为“LOW”时,表示消息为资讯营销;取值为“NORMAL”时,表示消息为服务与通讯

Options参数说明:

  • Options参数【ups 参数中】下进行设置示例:

    "HW": {
      "/message/android/notification/importance","LOW"
    }
    

【华为】离线自定义铃声

离线自定义铃声设置需要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"
}

【小米】消息分类

Options参数说明:

  • 参数示例
{
  "android": {
    "ups": {
      "notification": {
        // ...其他push_channel参数略
      },
      "options": {
        "XM": {
          "channel": "Default"
        }
      }
    }
  }
}
  • key 说明
名称 类型 是否必须 默认值 描述
channel String value:填写小米平台申请的渠道id

【小米】富文本消息

先调用小米接口,上传图片,获取图片url。

Java方式 参考(小米官方文档) 4.4.1 大图/大文本/Large icon,或者集成个推多厂商推送工具集

RestAPI 方式 参考(小米官方文档)11.1 大图、大文本/上传大图API

Options参数说明:

  • 参数示例
{
  "android": {
    "ups": {
      "notification": {
        // ...其他push_channel参数略
      },
      "options": {
        "XM": {
          "notification_large_icon_uri": "http://url.large.icon/xxx.png",
          "notification_style_type": 1,
          "notification_bigTxt": "text less than 128 characters",
          "notification_bigPic_uri": "http://url.big.pic/xxx.png"
        }
      }
    }
  }
}
  • key 说明
名称 类型 是否必须 默认值 描述
notification_large_icon_uri String 通知小图;
value:填写接口返回的图片链接。
Large icon可以出现在大图版和多字版消息中,显示在右边,通知小图。图片要求:尺寸必须为 120×120px,文件小于200KB,PNG/JPG/JPEG格式。
notification_style_type String 通知大文本;
value:1
大文本和大图二选一
notification_bigTxt String 通知大文本;
value:文本内容
支持展示多行文字;最多128字,可以通过\n换行。
notification_bigPic_uri String 通知大文本;
value:填写接口返回的图片链接
图片要求:固定876x324px,小于1M,PNG/JPG/JPEG格式。

注意事项:
1. 富文本消息仅在MIUI10及以上版本支持,在低版本和非MIUI系统上,消息将按照普通消息的样式展示;
2. 国内版MIUI系统中,仅在MIUI12及以上版本支持large icon,MIUI12以下版本不会展示;
3. 发送大图消息时,如果因为网络原因图片下载失败后将不会展示图片, 而是按照普通消息样式 展示。

【小米】离线自定义铃声

离线自定义铃声设置需要Android客户端配合使用

服务端:

key 说明

名称 类型 是否必须 默认值 描述
sound_uri String 小米后台申请的自定义 sound_url 地址,示例:android.resource://your packagename/raw/XXX
channel String 小米后台申请的通知类别id

注意:若服务端sound_uri和channel同时设置,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": {
"sound_uri": "小米后台申请的自定义 sound_url 地址",
"channel": "小米后台申请的通知类别id"
}

【OPPO】公、私信

OPush平台上所有通道分为“公信”(默认)、“私信”两类,默认下发公信消息。公信消息单日可推送数量有限制,私信消息不限(仅限单个用户)。私信消息申请请参见(OPPO官方文档)通道升级公测邀请

Options参数说明:

  • 参数示例
{
  "android": {
    "ups": {
      "notification": {
        // ...其他push_channel参数略
      },
      "options": {
        "OP": {
          "channel": "Default"
        }
      }
    }
  }
}
  • key 说明
名称 类型 是否必须 默认值 描述
channel String value:填写OPPO平台登记的渠道ID

注意事项
1.该接口需要联系个推技术人员申请开通才可以使用;
2.OPPO私信消息仅支持单推。

【OPPO】富文本消息

先调用OPPO接口,上传图片,获取图标url。

Java方式集成个推多厂商推送工具集

RestAPI 参考 “图片上传”

Options参数说明:

  • 参数示例
{
  "android": {
    "ups": {
      "notification": {
        // ...其他push_channel参数略
      },
      "options": {
        "OP": {
          "small_picture_id": "xxxxxxxxxxxxxxx",
          // "style": 2,
          "style": 3,
          "big_picture_id": "big_body"
        }
      }
    }
  }
}
  • key 说明
名称 类型 是否必须 默认值 描述
small_picture_id String 通知小图;
value: 填写接口返回的图标ID
图片要求:尺寸144*144 px,文件大小为50k以内,格式为PNG/JPG/JPEG。
style Integer 通知长文本
value: 2
长文本和大图二选一。
*或复用通知的content接口,长文本样式(style为2)限制字数128个以内。
style Integer 通知大图
value: 3
长文本和大图二选一。
big_picture_id String 通知大图
value:填写接口返回的图标id
大图样式(style 为 3)限制通知content字数50以内。图片要求:尺寸876*324px,文件大小1M以内,格式为PNG/JPG/JPEG。

注意事项:
1. 通知小图标、长文本、大图不支持单推,单推请求会返回无权限错误;
2. 长文本样式(ColorOS版本>5.0可用,通知栏第一条消息可展示全部内容,非第一条消息只展示一行内容);
3. 大图样式(ColorOS版本>5.0可用,通知栏第一条消息展示大图,非第一条消息不显示大图,推送方式仅支持广播,且不支持定速功能)。

【vivo】消息分类

vivo消息分类功能将推送消息类型分为运营消息和系统消息,默认下发运营消息。运营消息单用户单应用单日接收条数上限为5条,系统消息不限。系统消息功能不用申请,可以直接使用,如特殊情况需额外提升系统消息量级,请参见(vivo官方文档)推送消息分类功能说明

Options参数说明:

  • 参数示例
{
  "android": {
    "ups": {
      "notification": {
        // ...其他push_channel参数略
      },
      "options": {
        "VV": {
          "classification": 0
        }
      }
    }
  }
}
  • key 说明
名称 类型 是否必须 默认值 描述
classification Integer 0 value: 0代表运营消息,1代表系统消息
不填默认为0
开发者中心 SDK 下载

文档中心搜索

技术
咨询

微信扫一扫

随时联系技术支持