@wangwangheng
2015-08-29T09:36:15.000000Z
字数 1679
阅读 1776
未分类
目前我们使用的方案按照之前的约定,使用的推送平台是个推(http://www.getui.com)
新浪微博、汽车之家、去哪儿、招商银行、PPTV等比较大的公司都在用个推
因为推送的id由推送平台服务器生成,为了提高用户体验,并不会在拿到推送id之后再进行登录操作;所以在登录的时候不一定能拿到推送id,因此,会在所有接口的Header信息中添加一个字段:
key:x-customer-push-token
value:推送id
key:x-courier-push-token
value:推送Id
服务端可以加一个拦截器或者其他方案,当push_token不为空的时候更新相应用户的推送id
客户端负责展示通知,并处理点击事件
每一个推送都至少有以下三个字段:
messageType 表示推送的类型,客户端根据这个字段决定用户点击状态栏通知的行为
1 表示点击之后打开订单详情
messageTitle 表示通知的标题
这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据
{
"messageType":1,
"orderId":1234, // 订单号
"messageTitle":"您的订单被快递员[XXX]抢单",
"messageContent":"您发给[订单收件人+(手机号码)]的订单已经被快递员[XXX]抢单,预计[12:30]到达您所在的位置"
}
这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据
{
"messageType":1,
"messageId":1234, // 订单号
"messageTitle":"请支付",
"messageContent":"您发给[订单收件人+(手机号码)]的订单,应付金额[100.00元],请尽快完成支付"
}
这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据
{
"messageType":1,
"orderId":1234, // 订单号
"messageTitle":"订单配送中",
"messageContent":"您发给[订单收件人+(手机号码)]的订单,已经完成支付,正在配送中"
}
这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据
{
"messageType":1,
"orderId":1234, // 订单号
"messageTitle":"订单配送完成",
"messageContent":"您发给[订单收件人+(手机号码)]的订单,已经送达,感谢您使用一会儿到"
}
每一个推送都至少有以下三个字段:
messageType 表示推送的类型,客户端根据这个字段决定用户点击状态栏通知的行为
1 表示打开应用(刷新可抢订单列表)
2 表示打开订单详情
messageTitle 表示通知的标题
这条推送,如果用户没有打开应用,用户点击之后打开应用;
如果已经打开应用,则刷新可抢单列表
{
"messageType":1,
"messageTitle":"您附近有新的订单",
"messageContent":"您附近有新的订单,赶快抢单吧~"
}
这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据
{
"messageType":1,
"orderId":1234, // 订单号
"messageTitle":"用户已完成支付",
"messageContent":"用户已完成订单[订单收件人+(手机号码)]的支付(支付金额100元),请尽快确认接单并配送"
}