[关闭]
@wangwangheng 2015-08-29T09:36:15.000000Z 字数 1679 阅读 1602

一会儿到 - 推送

未分类


0. 推送准备工作

0.1. 申请个推账号

目前我们使用的方案按照之前的约定,使用的推送平台是个推(http://www.getui.com)

新浪微博、汽车之家、去哪儿、招商银行、PPTV等比较大的公司都在用个推

0.1.1. 服务端完成推送id和用户id的关联

因为推送的id由推送平台服务器生成,为了提高用户体验,并不会在拿到推送id之后再进行登录操作;所以在登录的时候不一定能拿到推送id,因此,会在所有接口的Header信息中添加一个字段:

  1. key:x-customer-push-token
  2. value:推送id
  1. key:x-courier-push-token
  2. value:推送Id

服务端可以加一个拦截器或者其他方案,当push_token不为空的时候更新相应用户的推送id

1.针对用户端:

客户端负责展示通知,并处理点击事件

每一个推送都至少有以下三个字段:

1.1.已经有快递员接单

这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据

  1. {
  2. "messageType":1,
  3. "orderId":1234, // 订单号
  4. "messageTitle":"您的订单被快递员[XXX]抢单",
  5. "messageContent":"您发给[订单收件人+(手机号码)]的订单已经被快递员[XXX]抢单,预计[12:30]到达您所在的位置"
  6. }

1.2.通知支付

这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据

  1. {
  2. "messageType":1,
  3. "messageId":1234, // 订单号
  4. "messageTitle":"请支付",
  5. "messageContent":"您发给[订单收件人+(手机号码)]的订单,应付金额[100.00元],请尽快完成支付"
  6. }

1.3.订单正在配送中(支付完成)

这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据

  1. {
  2. "messageType":1,
  3. "orderId":1234, // 订单号
  4. "messageTitle":"订单配送中",
  5. "messageContent":"您发给[订单收件人+(手机号码)]的订单,已经完成支付,正在配送中"
  6. }

1.4.订单送达

这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据

  1. {
  2. "messageType":1,
  3. "orderId":1234, // 订单号
  4. "messageTitle":"订单配送完成",
  5. "messageContent":"您发给[订单收件人+(手机号码)]的订单,已经送达,感谢您使用一会儿到"
  6. }

2、针对快递员端

每一个推送都至少有以下三个字段:

2.1 有新订单

这条推送,如果用户没有打开应用,用户点击之后打开应用;
如果已经打开应用,则刷新可抢单列表

  1. {
  2. "messageType":1,
  3. "messageTitle":"您附近有新的订单",
  4. "messageContent":"您附近有新的订单,赶快抢单吧~"
  5. }

2.1 用户完成支付

这条推送,如果用户没有打开订单详情,用户点击之后进入到订单详情;
如果已经打开订单详情,则直接刷新数据

  1. {
  2. "messageType":1,
  3. "orderId":1234, // 订单号
  4. "messageTitle":"用户已完成支付",
  5. "messageContent":"用户已完成订单[订单收件人+(手机号码)]的支付(支付金额100元),请尽快确认接单并配送"
  6. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注