# 消息推送
消息推送是开放平台主动调用开发者服务的一个通道,用于向应用推送订单状态变更、打印机状态变更等消息。开发者需要在应用管理的后台,设置需要监听的消息类型的推送URL,当有该种类型的消息产生时,开发平台会向应用设置的URL发送HTTP POST数据,达到通知应用的目的。
### 推送协议
当有应用订阅的消息事件发生时,开放平台会通过请求应用设置的消息推送地址进行消息的投递。
1. 开放平台以HTTP POST 的方式进行消息推送请求。
2. 开放平台消息推送请求的HTTP Header中的contentType 为“application/x-www-form-urlencoded”
3. 为了防止推送消息被篡改,开放平台进行推送的时候会有简单签名,签名规则见【[签名规则](callback/signrule.md)】,应用需要自行校验消息数据。
4. 应用在消息处理完成后,需要回复HTTP Response的code 200 以及body为{"data":"OK"},表示此次推送消息接收成功。
5. 推送请求如果3s内没有收到响应头为200响应,平台认为此次推送不成功,不管因为什么原因,平台都会重新发起推送(总推送次数不超过3次(<=3))。
6. 应用收到推送HTTP请求后,必须在3s内完成响应,否则平台认为超时响应,会重复推送,造成双方资源浪费。
7. 应用需要自行处理重复推送造成的消息重复。
8. 为了方便未来的消息内容升级,应用需要兼容处理当前消息中不存在的字段。
9. 应用需要支持推送地址的GET访问,当GET请求访问时,请直接返回{"data":"OK"},用于推送地址的可用性测试。
### cmd
cmd的识别标示,用于业务判断
### 所需参数
|标 识|描 述|
|----|----|
|oauth_finish|打印完成状态推送|
|oauth_request| 按键请求推送 仅支持K2S、K3S|
|oauth_printStatus|打印机实时状态推送|
|oauth_getOrder|接单拒单状态推送|
|oauth_printMenu|应用菜单上报推送|
- 平台简介
- 概念和术语
- 新手指南
- 开发文档
- 接入API服务指南
- API调用协议说明
- 开放应用服务模式
- 自有应用服务模式
- 扫描二维码授权模式
- 消息推送协议说明
- API文档列表
- 文本打印接口
- 图形打印接口
- 面单打印接口
- 设置内置语音接口
- 删除内置语音接口
- 删除终端授权
- 添加应用菜单
- 关机重启接口
- 声音调节接口
- 获取机型打印宽度接口
- 获取机型软硬件版本接口
- 取消所有未打印订单接口
- 取消单条未打印订单接口
- 设置logo接口
- 取消logo接口
- 打印方式接口
- 接单拒单设置接口
- 设置推送url接口
- 获取订单状态接口
- 获取订单列表接口
- 获取终端状态接口
- 推送接口
- 签名规则
- 打印完成推送
- 接单拒单推送
- 按键请求推送
- 应用菜单推送
- 打印机实时状态推送
- 打印机指令
- K7-GHC/K7-WHC排版指令
- K4-GH(新固件)/K4-WH(新固件)排版指令
- K6-WH(新固件)排版指令
- M1-G(新固件)排版指令
- W1(新固件)排版指令
- K5(新固件)排版指令
- K2S、K3S、M1排版指令
- K7、K6、K5、K4排版指令
- X1排版指令
- W1排版指令
- Ai语音播报指令
- 指令详解
- 二维码打印
- 条码打印
- 打印多联
- 字体加大
- 字体加粗
- 字体加高
- 字体加宽
- 换行
- 居中对齐
- 左右对齐
- 右对齐
- 一行三格或四格对齐排版
- 制表符
- 自定义来单提醒
- 自定义来单声音控制
- 订单确认
- SDK使用说明
- 注意事项
- 全局返回码
- 获取终端号和特殊密钥