云打印之拼多多打印组件交互协议

拼多多打印组件交互协议相关介绍如下:

1、打印组件下载地址

http://meta.pinduoduo.com/api/one/app/v1/lateststable?appId=com.xunmeng.pddprint&platform=windows&subType=main

2、socket连接端口

如果是http的话,端口是5000

socket = new WebSocket('ws://127.0.0.1:5000');

如果是https的话,端口是18653

socket = new WebSocket('wss://127.0.0.1:18653');

 3、组件使用说明

  • 拼多多打印组件通过windows系统打印驱动与打印机进行交互;
  • 多多打印组件客户端通过Websocket协议进行外部通信;
  • 拼多多打印组件Websocket地址:ws://127.0.0.1:5000;wss://127.0.0.1:18653。

4、请求协议头格式说明

请求协议头:

{
"cmd": "command", 
"requestID": "unique requestID", 
"version": "1.0"
}

字段说明:

 响应协议头:

{
 "cmd": "command",
 "requestID": "unique requestID"
}

字段说明:

5、getPrinters = 获取打印机列表 

请求协议格式如下:

{
    "cmd": "getPrinters",
    "requestID": "123458976",
    "version": "1.0"
}

响应协议格式如下:

{
    "cmd": "getPrinters",
    "requestID": "123458976",
    "defaultPrinter": "XX 快递打印机",
    "printers":
    [{
        "name": "XX 快递打印机"
        },
        {
        "name": "YY 物流打印机"
    }]
}

字段说明:

6、getPrinterConfig = 获取打印机配置 

请求协议格式如下: 

{
    "cmd":"getPrinterConfig",
    "printer":"PDD 打印机",
    "version":"1.0",
    "requestID":"123456789"
}

响应协议格式如下:

{
    "cmd": "getPrinterConfig",
    "requestID": "123456789",
    "status": "success/failed",
    "msg": "如果出错,错误原因",
    "printer": {
    "name": "打印机名称",
    "PrintTopLogo": true,
    "PrintBottomLogo": true,
    "horizontalOffset": 1,
    "verticalOffset": 2
    }
}

字段说明:

7、setPrinterConfig = 设置打印机配置 

请求协议格式如下:

{
 "cmd": "setPrinterConfig",
 "requestID": "123458976",
 "version": "1.0",
 "printer": {
 
 "name": "PDD打印机",
 "PrintTopLogo": true,
 "PrintBottomLogo": false,
 "horizontalOffset": 2,
 "verticalOffset": 2
 }
}

注:参数说明参考获取打印机配置(getPrinterConfig)

响应协议格式如下:

{
 "cmd": "setPrinterConfig",
 "requestID": "123458976",
 "status": "success",
 "msg": "err msg"
}

字段说明

注:如果要保持某个配置不变,应省略对应的配置字段。

8、print = 发送打印数据协议 

请求协议格式(加密)如下

{
    "ERPId":"isv id",
 "ISVName":"isv name",
    "cmd":"print",
    "requestID":"90E06437",
    "task":{
        "documents":[
            {
                "contents":[
                    {
                        "addData":{
                            "sender":{
                                "address":{
                                    "city":"上海市",
                                    "detail":"陕西面馆",
                                    "district":"长宁区",
                                    "province":"上海市"
                                },
                                "mobile":"333333333333",
                                "name":"ceshi"
                            }
                        },
                        "encryptedData":"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?v=10&pv=1",
                        "signature":"PAPe5OYetWzKlZD3Wnvi4BPKI6CeCybLmYgzZioIw0XAs7dOdosozY9XXoYDf4cnByiza/JuDvoYQvgh+HYqaCNnJ0G1WnScQ7MSoWGkIcE6FBOxFhsbokLNX2ixiOQ4ERCuozajDsSYpDyOpqvDB4vT5AALyQjXAfnR8GyR/B4=",
                        "templateUrl":"https://file-link.pinduoduo.com/zto_one",
                        "userid":"480261061",
                        "ver":"10"
                    },
                    {
                        "data":{
                            "height":240,
                            "list":[
                                {
                                    "fontSize":31.2,
                                    "height":45.68,
                                    "left":2.08,
                                    "text":"[备注: 没有什么备注]",
                                    "top":2.08,
                                    "width":413.52
                                }
                            ],
                            "waterdata":{
                                "text":""
                            },
                            "width":560
                        },
                        "templateURL":"http://pinduoduoimg.yangkeduo.com/logistics/2019-07-14/5d7e8b5969d954539fcfba3268bbeb3a.xml"
                    }
                ],
                "documentID":"5520010649869215"
            }
        ],
        "notifyType":[
            "print"
        ],
        "preview":false,
        "previewType":"image",
        "printer":"",
        "taskID":"03281843"
    },
    "version":"1.0"
}

针对部分商家在打单后需要变更收发件人信息,方案提供内容变更的支持:改发件人信息、发件地址:云打印提供addData字段可修改发货信息

字段说明

9、PrintResultNotify = 打印结果通知 

通知协议格式如下:

{
 "cmd": "PrintResultNotify",
 "printer": "PDD打印机",
 "taskID": "1",
 "taskStatus": "printed",
 "printStatus": [{
 "documentID”:”9890000112011”,
 "status": "success",
 "msg": "if failed,some tips, if success ,nothing”,
 "detail": "错误信息的补充描述"
 }]
}

字段说明 

10、 getTaskStatus = 获取任务打印任务状态

请求协议格式如下:

{
 "cmd": "getTaskStatus",
 "requestID": "123458976",
 "version": "1.0",
 "taskID": [
 "12311",
 "12312"
 ]
}

字段说明 

响应协议格式如下:

{
 "cmd": "getTaskStatus",
 "requestID": "123458976",
 "printStatus": [{
 "taskID": "12312",
 "detailStatus": [{
 "documentID": "9890000112011",
 "status": "success",
 "msg": "错误信息",
 "printer": "PDD打印机"
 }]
 }]
}

字段说明

 11、getGlobalConfig = 获取全局配置

请求协议格式如下:

{
 "cmd": "getGlobalConfig",
 "requestID": "12345678901",
 "version": "1.0"
}

响应协议格式如下:

{
 "cmd": "getGlobalConfig",
 "requestID": "12345678901",
 "status": "success",
 "msg": "return nothing when success, return some tips when failed",
 "TaskFailedNotify": true
}

字段解释:

12、setGlobalConfig = 设置全局配置 

请求协议格式如下:

{
 "cmd": "setGlobalConfig",
 "requestID": "12345678901",
 "version": "1.0",
 "TaskFailedNotify": true
}

响应协议格式如下:

{
 "cmd": "setGlobalConfig",
 "requestID": "12345678901",
 "status": "success",
 "msg": "return nothing when success, return some tips when failed"
}

字段解释:

 13、getAppInfo = 获取客户端版本信息

请求协议格式如下:

{
 "cmd": "getAppInfo",
 "requestID": "12345678901",
 "version": "1.0"
}

响应协议格式如下:

{
 "cmd": "getAppInfo ",
 "requestID": "12345678901",
 "status": "success",
 "msg": "错误信息",
 "AppVersion": "1.0.1"
}

字段解释:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

行思理

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值