饿了么开放平台自配送信息回传和设置送达时间场景方案自配送信息回传接入说明
调用逻辑
一、骑手取餐过程
在订单接单后即进入配送流程,通过eleme.order.selfDeliveryStateSync接口回传骑手接单状态(骑手电话必填,以保证用户能联系上骑手),此时C端展示骑手正在赶往商家
通过状态同步接口回传骑手接单状态后,可通过eleme.order.selfDeliveryLocationSync接口回传骑手经纬度,此后用户可在C端看到骑手到商家的距离(骑手位置回传要求至少每分钟同步1次)和电话骑士按钮,以便用户能够联系骑手
骑手到店后通过eleme.order.selfDeliveryStateSync接口回传状态
二、骑手送餐过程
骑手取餐后通过eleme.order.selfDeliveryStateSync接口回传已送出状态,此时C端展示骑手正在送货
通过eleme.order.selfDeliveryLocationSync接口回传骑手送货经纬度,用户可在C端看到骑手与自己的实时距离(骑手位置回传要求至少每分钟同步1次)
骑手送货完成后,通过eleme.order.selfDeliveryStateSync接口回传已送达,推进订单到完结状态
三、接口层面调用顺序
eleme.order.selfDeliveryStateSync(state=DELIVERY_KNIGHT_ACCEPT- 骑手接单)
eleme.order.selfDeliveryLocationSync 同步骑手轨迹(至少一分钟一次),altitude高度字段传0即可
.............
eleme.order.selfDeliveryStateSync(state=DELIVERY_KNIGHT_REACH_SHOP- 骑手到店)
eleme.order.selfDeliveryStateSync(state=DELIVERY_START- 商家已送出)
eleme.order.selfDeliveryLocationSync 同步骑手轨迹(至少一分钟一次),altitude高度字段传0即可
..............
eleme.order.selfDeliveryStateSync(state=DELIVERY_COMPLETE- 商家已送达)
C 端界面
待商家接单->商家已接单->骑手已接单->骑手赶往商家
骑手到店->商家已送出->骑手送货中->商家已送达
注意事项
在接口调用过程中,如果因网络、机器故障等原因导致调用失败,请开发者增加重试机制,保证状态和轨迹回传完整
骑手状态同步过程中,骑手电话必填且要求可接通,此时C端会透出联系骑手的入口,在配送过程中方便用户在必要情况下联系骑手
状态需要按照配送顺序全部回传:骑手接单、骑手到店、商家已送出、商家已送达,且已送达与已送出状态在调用过程中需要间隔5分钟以上(不包含5分钟)。
使用三方运力的自配送商家:骑手接单和骑手到店状态,如果配送方缺失两者的某一状态,建议开发者在回传时补齐上一状态,如果两者状态都缺失,需要推动三方配送公司细化状态
未使用三方运力的自配送商家:没有骑手接单、骑手到店这两个状态,建议开发者在回传商家已送出状态时,一并补齐这 2 个状态,也就是回传商家已送出状态的时候,接口层面依次调用回传:骑手接单、骑手到店、商家已送出
轨迹回传过程中,要求骑手经纬度至少每1分钟同步一次,建议开发者校验经纬度不能出现位置漂移
如果商家属于自行配送,没有配送端 APP 无法回传骑手轨迹,可以不需要回传