Hekr消息推送流程
v1.0.0 by kehua.shao@hekr.me
1. Hekr消息推送的实现
(1) Hekr云端使用了个推进行消息的推送。
(2)客户端需要向个推平台注册登记客户端应用。
(3) 客户端集成个推SDK以及接收推送消息的步骤:
- 在个推平台注册登记客户端应用
- 将注册后生成的AppID、AppKey、MasterSecret上报给Hekr公司对接人(目前通过邮件或者QQ消息的方式上报,后期会提供接口等方式)
- 下载并集成个推客户端的SDK,详情请查阅个推文档中心,或者咨询Hekr客户端的对接负责人
- 初始化个推客户端SDK,获取cid
- 注意:用户每次登录(即通过客户端登录时),客户端都要调用接口“C1-31 个推信道注册”,注意其中的参数gtcid:1、Android平台填写个推平台返回的cid;2、iOS平台填写苹果推送服务器返回的DeviceToken
- 接收并处理推送的消息,消息模板请参看本文档的第二章节和第三章节
- 用户每次登出(在客户端登出)或者删除客户端时,调用接口“C1-32 个推信道注销”
2. Android平台接收推送消息
2.1 Android平台接收到的消息模板
- Android平台的消息模板使用的是个推定义的透传消息模板。
- 通知的消息是透传消息,需要客户端自定义通知栏样式,用户点击通知后,根据透传的内容跳转到相应的界面(如果是告警内容,则跳转到相应的设备页面)。
2.2 Android平台透传消息样例及说明
Android平台透传消息样例--该样例是设备上报的告警信息
{
"invisible":
{
"mid": 123,
"msgId": "a352ae20-462f-4e73-b36e-3aca8e73a8b8",
"reportTime": 1441434784000,
"tid": "hekr-tid-001",
"uid": "hekr-uid-001",
"dataTag": "temp",
"dataTagIndex": 1
},
"visible": "你家着火了!!!"
}
Android平台透传消息说明 (1) Hekr云端在下发Android平台透传消息时,参数TransmissionType的值是2(透传消息设置,1为强制启动应用,客户端接收到消息后就会立即启动应用,但是在应用进程被杀之后,并不能强制启动应用;2为等待应用启动),具体含义参看个推文档中心。
(2) 推送的消息是一个JSON格式的字符串:
- invisible:一个JSON对象,透传的内容,该部分内容对用户不可见,客户端根据该部分内容确定用户点击通知后跳转的界面
-
- mid:产品型号,整数
-
- msgId:消息id,字符串
-
- reportTime:上报时间
-
- tid:设备id,字符串
-
- uid:用户id,字符串
-
- dataTag:消息类型,字符串格式,由厂家在波塞冬(SOC)平台定义
-
- dataTagIndex:消息类型索引,整型,由厂家在波塞冬(SOC)平台定义
-
visible:一个普通字符串,该内容对用户可见,即在自定义的通知栏中,显示该部分内容
3. iOS平台接收推送消息
3.1 iOS平台接收到的消息模板
- iOS平台的消息模板使用的是个推定义的单个iOS用户简化推送。
3.2 iOS平台消息样例及说明
iOS平台推送的消息包括两部分,一部分是通知内容,该内容在通知栏显示,对用户可见;第二部分是透传内容,根据该内容,确定用户点击通知后跳转的具体界面。
iOS平台消息透传内容样例--该样例是设备上报的告警信息
get notification :{
aps = {
alert = {
body = "\U4f60\U5bb6\U7740\U706b\U4e86!!!";
};
badge = 1;
"content-available" = 1;
sound = default;
};
userdata = {
dataTag = temp;
dataTagIndex = 1;
mid = 123;
msgId = "bf10c136-2b87-4c2f-af59-7bf56b9e94d8";
reportTime = 1441511552020;
tid = "hekr-tid-001";
uid = "hekr-uid-001";
};
}
iOS平台消息透传内容说明
透传内容即自定义的消息:
- userdata:是透传的内容,该部分内容对用户不可见,客户端根据该部分内容确定用户点击通知后跳转的页面
-
- mid:产品型号,整数
-
- msgId:消息id,字符串
-
- reportTime:上报时间
-
- tid:设备id,字符串
-
- uid:用户id,字符串
-
- dataTag:消息类型,字符串格式,由厂家在波塞冬(SOC)平台定义
-
- dataTagIndex:消息类型索引,整型,由厂家在波塞冬(SOC)平台定义