欢迎!这里是飞印API文档

飞印API文档描述、示例


打印接口回调

<p><strong>简要描述:</strong></p> <ul> <li>如果商户在飞印公众号中设置了其回调地址,那么飞印平台在有特定事件发生时,会主动通过这个回调地址往第三方系统push事件通知。</li> <li>譬如:当商户名下所有的机器的消息打印完毕后,飞印平台会立即通过回调向商户的系统通知该打印完成事件。</li> <li>当商户名下的设备离线/上线/缺纸等情况发生时也会通知到第三方系统。</li> </ul> <p><strong>请求方式:</strong></p> <ul> <li>POST,JSON提交</li> </ul> <p><strong>异常重试策略:</strong></p> <ul> <li>如果商户的系统没有响应(譬如在维护或网络异常),飞印平台会依次按照如下时间间隔(秒)共重试7次:1, 3, 6, 9, 12, 15, 18秒(一共64秒)</li> </ul> <p><strong>参数:</strong> </p> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">msg_type</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>回调的消息类型,主要有<br><strong>msg_printed</strong> 消息打印回调<br> <strong>device_status</strong> 打印机状态变更回调</td> </tr> <tr> <td style="text-align: left;">payload</td> <td style="text-align: left;">否</td> <td style="text-align: left;">object</td> <td>回调消息体,object格式视msg_type的值而定,详见下面说明</td> </tr> </tbody> </table> <ul> <li>当msg_type=<strong>msg_printed</strong>时,payload为下列对象</li> </ul> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">device_no</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>机器编号</td> </tr> <tr> <td style="text-align: left;">msg_no</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>商户在 <a href="https://www.showdoc.cc/home/page/index/page_id/82826059039914" title="发送消息">发送消息</a>时指定的关联id: <strong>msg_no</strong> 如果没有关联,飞印平台会自动生成一个uuid代替</td> </tr> <tr> <td style="text-align: left;">print_time</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>打印完成的时间,yyyy-MM-dd HH:mm:ss</td> </tr> <tr> <td style="text-align: left;">secret</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>签名,把device_no,msg_no, print_time和API_KEY 的值按顺序直接拼接起来,做MD5加密: md5(把device_no + msg_no + print_time + API_KEY)</td> </tr> </tbody> </table> <p><strong>请求示例</strong></p> <pre><code>{ "msg_type":"msg_printed", "payload": { "device_no": "4600408123456789", "print_time": "2017-08-01 10:03:04", "msg_no":"some-thirdparty-id", "secret": "005eabe86be0b7de3cee8cfbffeff96a" } }</code></pre> <ul> <li>当msg_type=<strong>device_status</strong>时,payload为下列对象</li> </ul> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">device_no</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>机器编号</td> </tr> <tr> <td style="text-align: left;">online_status</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>打印机在线运行状态,包括:<br> <strong>online</strong> 在线 <br> <strong>offline</strong> 离线 <br> <strong>overheat</strong> 打印头过热 <br> <strong>error</strong> 打印机系统故障</td> </tr> <tr> <td style="text-align: left;">paper_status</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>打印机纸张状态,包括:<br> <strong>normal</strong> 正常 <br> <strong>lack</strong> 缺纸</td> </tr> <tr> <td style="text-align: left;">secret</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>签名,把device_no,online_status, paper_status和API_KEY 的值按顺序直接拼接起来,做MD5加密: md5(把device_no + online_status + paper_status + API_KEY)</td> </tr> </tbody> </table> <p><strong>请求示例</strong></p> <pre><code>{ "msg_type":"device_status", "payload": { "device_no": "4600408123456789", "online_status": "online", "paper_status":"normal", "secret": "1122abe86be0b7de3cee8cfbffef3344" } }</code></pre> <p>对于所有飞印平台发出的回调请求,飞印平台会预期得到第三方系统返回如下response,</p> <pre><code>{ "errcode": 0, "errmsg" : "ok" }</code></pre> <p><strong>返回参数说明</strong></p> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">errcode</td> <td style="text-align: left;">number</td> <td>返回状态,0为成功,非0表示第三方系统未能正确处理飞印发送过来的回调请求</td> </tr> <tr> <td style="text-align: left;">errmsg</td> <td style="text-align: left;">string</td> <td>错误说明,当errcode为0时为&quot;ok&quot;,否则需要填写出错说明</td> </tr> </tbody> </table>

页面列表

ITEM_HTML