调用该接口根据寄雁传书服务控制台创建的小票打印模板完成小票打印。

限制说明

调用该接口打印小票时,必须已经在寄雁传书控制台创建小票打印模板,否则将调用失败。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String PrintByTemplate

系统规定参数。取值:PrintByTemplate。

ProjectCode String 4de2c367****8c585e5992**

项目ID,是项目的唯一标识,您可以在IoT 云端一体服务控制台获取项目ID。

TemplateBizCode String test

模板标识,您可以在寄雁传书服务的控制台获取模板标识。

ParamsJsonString String { "orderTable": [ { "number": "1", "price": "33.00", "name": "糖醋排骨" } ], "orderTime": "2021-01-25 10:20:00", "address": "地址:浙江省杭州市西湖区阿里云飞天园区", "phone": "13********", "price": "? 74.00", "distributionFee": "5.00", "shopName": "XX食品商店", "title": "XX外卖单", "status": "--已在线支付--" }

打印参数,您可以在寄雁传书服务控制台获取打印参数的模板,然后在模板中填入本次需要动态打印的内容。

IotId String 4de2c367****8c585e5992**

设备ID。

说明 如果传入该参数,则无需传入ProductKeyDeviceNameIotId作为设备唯一标识符,和ProductKeyDeviceName组合是一一对应的关系。如果您同时传入IotIdProductKeyDeviceName组合,则以IotId为准。
IotInstanceId String iot_instc_pu****_c*-v64********

实例ID。

您可在物联网平台控制台的实例概览页面,查看当前实例的ID。若有ID值,必须传入该ID值,否则调用会失败。

说明 如果公共实例没有ID值,请参见如何获取实例ID
ProductKey String a1BwAGV****

产品的唯一标识。

说明 如果传入ProductKey,则必须同时传入DeviceName
DeviceName String light

设备名称。

调用API时,除了本文介绍的该API的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数文档

返回数据

名称 类型 示例值 描述
Code String iot.printservice.NotSigned

调用失败时,返回的错误码。更多信息,请参见错误码

Data Struct

打印结果。

DeviceErrorCode String 2

打印设备返回的错误码。

  • 2:缺纸
  • 3:卡纸
DeviceErrorMessage String no paper

打印设备返回的错误详情。

Id String NyWh5lw3*****RfL9LJUivhOhQV*****

打印的ID。

MaxRetryCount Integer 2

最多重试次数,固定取值为2,最多重试2次。

打印指令下发到设备后,如果设备回复失败或者超时,服务器将重新下发打印指令。

RetryCount Integer 0

实际重试次数。

Success Boolean true

是否打印成功。

  • true:打印成功。
  • false:打印失败。
ErrorMessage String print service not open

调用失败时,返回的错误信息。

RequestId String 66FF51D3-***-49F1-B1A2-***

阿里云为该请求生成的唯一标识符。

Success Boolean true

是否调用成功。

  • true:调用成功。
  • false:调用失败。

示例

请求示例

http(s)://iot.cn-shanghai.aliyuncs.com/?Action=PrintByTemplate
&ProjectCode=4de2c367****8c585e5992**	
&TemplateBizCode=test
&<公共请求参数>

正常返回示例

XML格式

<PrintByTemplateResponse>
  <RequestId>66FF51D3-***-49F1-B1A2-***	</RequestId>
  <Data>
        <MaxRetryCount>2</MaxRetryCount>
        <RetryCount>0</RetryCount>
        <Id>NyWh5lw3*****RfL9LJUivhOhQV*****</Id>
        <DeviceErrorCode>2</DeviceErrorCode>
        <DeviceErrorMessage>no paper</DeviceErrorMessage>
        <Success>true</Success>
  </Data>
  <Success>true</Success>
</PrintByTemplateResponse>

JSON格式

{
    "RequestId": "66FF51D3-***-49F1-B1A2-***",
    "Data": {
        "MaxRetryCount": 2,
        "RetryCount": 0,
        "Id": "NyWh5lw3*****RfL9LJUivhOhQV*****",
        "DeviceErrorCode": 2,
        "DeviceErrorMessage": "no paper",
        "Success": true
    },
    "Success": true
}