接口类型定义

接口类型定义

本章介绍了node.js的公共接口类型定义。

1. 执行对个推的请求

代表在个推注册的一个app,调用该类实例的方法来执行对个推的请求, 构造函数有三个参数,均为必选。

参数名 类型 必需 默认值 参数描述
host string 推送os域名
appKey string 用于鉴定身份是否合法
masterSecret string 第三方客户端个推集成鉴权码,用于验证第三方合法性。在服务端推送鉴权时使用

该类包含的接口有:

函数 说明
推送任务接口
pushMessageToSingle 对单个用户推送消息
getContentId 获取taskid,和pushMessageToList配套使用
CancelContentId 取消taskid,和pushMessageToList配套使用
pushMessageToList 对指定用户列表推送消息
pushMessageToApp 对指定应用群推送消息
停止推送接口
stop 停止任务发送
标签设置接口
setClientTag 设置用户tag属性
getUserTags 获取用户tags
别名功能接口
bindAlias 单个cid绑定别名
bindAlias 多个cid绑定别名(和单个的传参不一样)
queryClientId 根据别名获取cid
queryAlias 根据cid获取别名
unBindAliasAll 所有cid和别名解绑
unBindAlias 单个cid和别名解绑
查询功能接口
queryAppUserDataByDate 通过日期,获取App维度的用户数据
queryAppPushDataByDate 通过日期,获取App维度的推送数据

2. 消息体

Message,定义消息推送方式

子类 说明
SingleMessage 单推消息的消息体
ListMessage 列表推送消息的消息体
AppMessage 指定应用群推送消息的消息体

2.1 SingleMessage

单推消息的消息体

成员和方法名 类型 长度 必填 默认值 说明
setData object - - 推送消息消息内容
setOffline boolean - True 消息离线是否存储
setOfflineExpireTime Number - 60*1000 消息离线存储多久,单位为毫秒,
setPushNetWorkType Number - 0 是否wifi推送,1:wifi推送;0:不限制推送方式

2.2 ListMessage

列表推送消息的消息体

成员和方法名 类型 长度 必填 默认值 说明
setData object - - 推送消息消息内容
setOffline boolean - True 消息离线是否存储
setOfflineExpireTime Number - 60*1000 消息离线存储多久,单位为毫秒,
setPushNetWorkType Number - 0 是否wifi推送,1:wifi推送;0:不限制推送方式

2.3 AppMessage

指定应用群推送消息的消息体

成员和方法名 类型 长度 必填 默认值 说明
setData object - - 推送消息消息内容
setOffline boolean - True 消息离线是否存储
setOfflineExpireTime number - 60*1000 消息离线存储多久,单位为毫秒,
setAppIdList array - - 指定推送的应用列表(现只能录入一个appId)
setPhoneTypeList array - - 设置机型
setProvinceList array - - 设置省份或城市。可以是省份名称,也可以是城市编号,详见按城市推送接口
setTagList array - - 设置标签内容
setPushNetWorkType Number - 0 是否wifi推送,1:wifi推送;0:不限制推送方式
setSpeed Number - 0 定速推送

3. 推送消息模板 

子类 说明
TransmissionTemplate 透传消息
NotificationTemplate 点击通知启动应用
LinkTemplate 点击通知打开网页
NotyPopLoadTemplate 通知栏弹框下载模版

3.1 TransimissionTemplate

数据经SDK传给您的客户端,由您写代码决定如何处理展现给用户

成员和方法名 类型 长度 必填 默认值 说明
setAppID String - - 设定接收的应用
setAppkey String - - 用于鉴定身份是否合法
setTransmissionContent String 2048中/英字符 - 透传内容,不支持转义字符
setTransmissionType String 4byte - 收到消息是否立即启动应用,1为立即启动,2则广播等待客户端自启动
setDuration String - - 消息展示时间(格式yyyy-MM-dd HH:mm:ss)
setAPNInfo - - - iOS推送使用该字段,详见iOS模板说明

3.2 NotificationTemplate

在通知栏显示一条含图标、标题等的通知,用户点击后激活您的应用(iOS不推荐使用该模板,详情请看iOS模板说明)

成员和方法名 类型 长度 必填 默认值 说明
setAppId String - 设定接收的应用
setAppkey String - 用于鉴定身份是否合法
setTitle String 40中/英字符 - 通知标题
setText String 600中/英字符 - 通知内容
setLogo String 40中/英字符 - 通知的图标名称,包含后缀名(需要在客户端开发时嵌入),如“push.png”
setLogoUrl String 100中/英字符 - 通知的图标url地址
setIsRing boolean True 收到通知是否响铃:true响铃,false不响铃。默认响铃。
setIsVibrate boolean True 收到通知是否振动:true振动,false不振动。默认振动。
setIsClearable boolean True 通知是否可清除:true可清除,false不可清除。默认可清除。
setTransmissionType number 4Byte - 收到消息是否立即启动应用:1为立即启动,2则广播等待客户端自启
setDuration String - - 消息展示时间(格式yyyy-MM-dd HH:mm:ss)
setAPNInfo - - - iOS推送使用该字段,详见iOS模板说明

3.3 LinkTemplate

在通知栏显示一条含图标、标题等的通知,用户点击可打开您指定的网页(iOS不推荐使用该模板,详情请看iOS模板说明)

成员和方法名 类型 长度 必填 默认值 说明
setAppID 设定接收的应用
setAppkey String 用于鉴定身份是否合法
setTitle String 40中/英字符 通知标题
setText String 600中/英字符 通知内容
setLogo String 40中/英字符 通知的图标名称,包含后缀名(需要在客户端开发时嵌入),如“push.png”
setLogoUrl String 100中/英字符 通知的图标url地址
setIsRing boolean TRUE 收到通知是否响铃:true响铃,false不响铃。默认响铃。
setIsVibrate boolean TRUE 收到通知是否振动:true振动,false不振动。默认振动。
setIsClearable boolean TRUE 通知是否可清除:true可清除,false不可清除。默认可清除。
setUrl String 200中/英字符 点击通知后打开的网页地址
setLogoUrl String 通知的网络图标地址
setDuration String 收到消息的展示时间(格式yyyy-MM-dd HH:mm:ss)
setAPNInfo iOS推送使用该字段,详见iOS模板说明

3.4 NotyPopLoadTemplate

在通知栏显示一条含图标、标题等的通知,用户点击后展示一个弹框提示。(iOS不支持该模板,详情请看iOS模板说明)

成员和方法名 类型 长度 必填 默认值 说明
setAppId String 设定接收的应用
setAppkey String 用于鉴定身份是否合法
setNotyIcon String 40中/英字符 通知栏图标
setNotyContent String 600中/英字符 通知栏内容
setCleared boolean TRUE 通知栏是否可以清除(默认是)
setBelled boolean TRUE 是否响铃(默认是)
setVibrationed boolean TRUE 是否震动(默认是)
setPopTitle String 40中/英字符 弹出框标题
setPopContent String 600中/英字符 弹出框内容
setPopImage String 200中/英字符 弹出框图标
setPopButton1 String 4中/英字符 弹出框确定按钮名称
setPopButton2 String 4中/英字符 弹出框取消按钮名称
setLoadIcon String 40中/英字符 下载图标(本地图标需要加入file://前缀 网络图标则直接填写网络图标地址)
setLoadTitle String 40中/英字符 下载标题
setLoadUrl String 200中/英字符 下载地址
setAutoInstall boolean false 是否自动安装
setActived boolean false 安装完成后是否自动启动应用程序
setAndroidMark String 40中/英字符 设置安卓标识
setSymbianMark String 40中/英字符 设置塞班标识
setIphoneMark String 40中/英字符 设置苹果标识
setDuration String 收到消息的展示时间(格式yyyy-MM-dd HH:mm:ss)

3.5 APNTemplate

成员和方法名 类型 长度 必填 默认值 说明
setAppID String 设定接收的应用
setAppkey String 用于鉴定身份是否合法
setDuration String 收到消息的展示时间 (格式yyyy-MM-dd HH:mm:ss)
setAPNInfo iOS推送使用该字段,详见iOS模板说明

 

4. iOS推送消息体

APNPayload定义iOS平台推送消息

内部接口 说明
AlertMsg 推送的消息体

4.1 APNPayload

参数 类型 长度 必填 默认值 说明
badge number 如果ContentAvailable不设置或设置不为1,message、locKey和badge其中一项必填;否则其他可不填 -1 应用icon上显示的数字,即角标
alertMsg AlertMsg null 通知消息体
sound String default 通知铃声文件名,无声设置(com.gexin.ios.silence)
contentAvailable number 0 推送直接带有透传数据
category String action定义以后,对action进行分类
customMsg Array null 用户的消息

4.2 AlertMsg

子类 说明
SimpleAlertMsg 简单消息体(字符串形式)
DictionaryAlertMsg 复杂消息体(字典形式)
1) SimpleAlertMsg
参数 类型 长度 必填 默认值 说明
alertMsg String 通知文本消息字符串
2) DictionaryAlertMsg
参数 类型 长度 必填 默认值 说明
tile String 消息体的标题
body String 消息体的主体
titleLocKey String 当前Localizable.strings文件的标题
titlelocArgs Array 如果title-loc-key中使用占位符,则在title-loc-args中指定各参数
actionLocKey String 指定执行按钮所使用的Localizable.strings
locKey String 指定Localizable.strings文件中相应的key
locArgs Array 如果loc-key中使用占位符,则在loc-args中指定各参数
launchImage String 指定启动界面图片名

5. 推送目标  

定义一个推送目标

成员和方法名 类型 长度 必填 默认值 说明
setAppId String - 设置客户端所属应用唯一ID
setClientId String setClientId和setAlias其中一项必填 - 设置客户端身份ID
setAlias String - setClientId和setAlias其中一项必填 - 设置客户端所属用户别名
通知
2018.10.09 Android SDK 4.3.2.0

新增通知覆盖、撤回 适配Android 9.0

......
2018.09.27 PYTHON SDK 4.1.0.0

添加python新加接口功能文档说明

......
2018.09.27 PHP SDK 4.1.0.0

修改新鉴权方式 支持iOS语音播报 iOS透传消息模版支持副标题

......
2018.09.06 JAVA SDK 4.1.0.0

修改新鉴权方式 支持iOS语音播报 支持消息撤回和覆盖

......
2018.08.30 Android SDK 2.12.5.0

新增通知覆盖、撤回功能 兼容Android9.0

......

文档中心搜索