阿里云首页 相关技术圈

推送高级接口

Push

描述

说明:OpenAPI 1.0 已经废弃,新接入移动推送的用户建议直接使用OpenAPI 2.0,提供更加丰富的功能,已经接入OpenAPI 1.0的用户也建议更换到新版OpenAPI。

推送高级接口。

请求参数

基础参数

名称 类型 是否必须 描述
Action String 操作接口名称,取值:Push
AppKey Long AppKey信息

推送目标(destination)

名称 类型 是否必须 描述
Target String 推送目标
  • device:推送给设备
  • account:推送给指定帐号
  • alias:推送给指定别名
  • tag:推送给指定Tag
  • all:推送给全部设备
TargetValue String 根据Target来设定,多个值使用逗号分隔,最多支持100个。
  • Target=device,值如deviceid111,deviceid1111
  • Target=account,值如account111,account222
  • Target=alias,值如alias111,alias222
  • Target=tag,支持单Tag和多Tag,格式请参考标签格式
  • Target=all,值为all
DeviceType Integer 设备类型,取值范围为:
  • 0:iOS设备
  • 1:Andriod设备
  • 3:全部类型设备

推送配置(config)

名称 类型 是否必须 描述
Type Integer
  • 0:表示消息,默认值
  • 1:表示通知
Title String Android消息标题,Android通知标题,iOS消息标题,最长20个字符(中文算1个字符)
Body String Android消息内容,Android通知内容,iOS消息内容
Summary String iOS通知内容

Title/Body/Summary 展开说明如下:

属性\推送类型 消息 - iOS 消息 - Android 通知 - iOS 通知 - Android
Title 消息标题,对应消息回调中CCPSysMessagetitle字段 消息标题,对应消息回调中CPushMessagetitle字段 N/A 通知标题,对应通知收到和打开回调的title字段
Body 消息内容,对应消息回调中CCPSysMessagebody字段 消息内容,对应消息回调中CPushMessagecontent字段 N/A 通知内容,对应通知收到和通知打开回调的summary字段
Summary N/A N/A 通知内容 N/A

下述配置仅作用于iOS通知任务

  • 【注意】若没有进行iOS 10通知相关配置(iOSTitle / iOSSubTitle / iOSMutableContent / iOSNotificationCategory),通知payload保持老版本不变,已经保证对老版本payload兼容性;若进行iOS 10通知相关配置,请确保客户端业务逻辑对payload相关字段处理的兼容性;iOS通知payload字段参考iOS 10通知适配-第3节。
名称 类型 是否必须 描述
iOSMusic String iOS通知声音,指定存放在app bundle或沙盒Library/Sounds目录下的音频文件名,参考:iOS推送如何设定通知声音,(若指定为空串(””),通知为静音;若不设置,默认填充default为系统提示音)
iOSBadge String iOS应用图标右上角角标
iOSTitle String iOS通知标题(iOS 10+通知显示标题,[ iOS 8.2 <= iOS系统 < iOS 10 ]替换通知应用名称)
iOSSubtitle String iOS通知副标题(iOS 10+)
iOSMutableContent Boolean 是否使能iOS通知扩展处理(iOS 10+)
iOSNotificationCategory String 设定iOS通知Category(iOS 10+)
iOSExtParameters String iOS通知的扩展属性,iOS 10+ 可以在此指定富媒体推送通知的资源Url: {“attachment”: “https://xxxx.xxx/notification_pic.png"} (注意 : 该参数要以json map的格式传入,否则会解析出错)
ApnsEnv String iOS的通知是通过APNs中心来发送的,需要填写对应的环境信息。
  • DEV:表示开发环境
  • PRODUCT:表示生产环境(默认值)

下述配置仅作用于iOS消息

名称 类型 是否必须 描述
Remind Boolean 推送时设备不在线(即与移动推送的服务端的长连接通道不通),则这条推送会做为通知,通过苹果的APNs通道送达一次(发送通知时,Summary为通知的内容,Message不起作用)。注意:离线消息转通知仅适用于生产环境

下述配置仅作用于Android通知任务

名称 类型 是否必须 描述
AndroidMusic String Android通知声音(保留参数,当前暂不起作用)
AndroidOpenType String 点击通知后动作
  • 1:打开应用
  • 2:打开应用Activity
  • 3:打开URL
  • 4:无跳转逻辑
AndroidActivity String 设定通知打开的activity,仅当AndroidOpenType=2有效,如:com.alibaba.cloudpushdemo.bizactivity
XiaomiActivity String 设置该参数后启动小米托管弹窗功能, 此处指定通知点击后跳转的Activity(托管弹窗的前提条件:1. 集成小米辅助通道;2. StoreOffline参数设为true)注意: 小米辅助通道对托管弹窗传输有长度限制,title < 16字符(中英文都以一个字符计算),Body < 128字符(中英文都以一个字符计算)。
AndroidOpenUrl String Android收到推送后打开对应的url,仅当AndroidOpenType=3有效
AndroidExtParameters String 设定通知的扩展属性。(目前android通知的提醒方式的设置在该参数里面:”_NOTIFY_TYPE_=0\1\2\3”,0:静音,1:振动,2:声音,3:声音和振动。android自定义通知样式的设置也在该参数里面:”_NOTIFICATION_BAR_STYLE_“=1\2\3..100)(注意 : 该参数要以json map的格式传入,否则会解析出错)

推送控制(push control)

名称 类型 是否必须 描述
PushTime String 用于定时发送。不设置缺省是立即发送。时间格式按照ISO8601标准表示,并需要使用UTC时间,格式为YYYY-MM-DDThh:mm:ssZ
StoreOffline Boolean 离线消息/通知是否保存。若保存,在推送时候用户不在线,在过期时间(ExpireTime)内用户上线时会被再次发送。StoreOffline默认设置为false,ExpireTime默认为72小时。(iOS通知走Apns链路,不受StoreOffline影响)
ExpireTime String 离线消息/通知的过期时间,和StoreOffline配合使用,过期则不会再被发送,最长保存72小时。默认为72小时。时间格式按照ISO8601标准表示,并需要使用UTC时间,格式为YYYY-MM-DDThh:mm:ssZ,过期时间不能小于当前时间或者定时发送时间加上3秒(ExpireTime > PushTime + 3秒),3秒是为了冗余网络和系统延迟造成的误差。

响应参数

名称 类型 描述
ResponseId String 请求返回ID(如需排查问题可告诉工作人员该ID)

错误码

对于所有接口的通用性错误,请参考错误代码表

示例

请求示例

  1. http://cloudpush.aliyuncs.com/?Action=Push
  2. &AppKey</