BarTender标签打印软件 Web服务集成响应中有什么?
对于每个响应,结构将根据所选的“内容类型”设置而有所不同。
内容类型格式:
- application / json:具有嵌套在{方括号}中的信息的json样式字符串
- text / xml:标准的XML样式格式。发送此响应时,像Insomnia这样的可视客户端将对其格式化并使其易于阅读。
- application / soap-xml:如上所述的标准XML样式格式,但以SOAP消息而不是纯文本形式发送
- text:XML响应,格式为无格式。
%响应%变量
样本响应格式为XML:
<Response Version="2.0" AppName="BarTender" AppVersion="2016 R8" AppVersionId="1100" AppVersionMajor="11" AppVersionMinor="0" AppVersionBuild="3146" AppInstancePid="29400" AppInstanceGuid="{303F1806-45E6-451E-9EA6-4C13CA93B299}"> <User>XXXXXXUser> <Server>XXXXXServer> <Command Name="Print Document"> <Print ID="25" GUID="{59C2B1CF-B7E9-4572-B97B-66E4955993D7}" JobLastStatus="Queued" JobCompleted="true" JobName="resttest2.btw"> <JobStatus Completed="true"> <TimeJobStart>2018-07-05T10:38:38.183TimeJobStart> <TimeJobQueued>2018-07-05T10:38:38.261TimeJobQueued> <TimeJobSent>2018-07-05T10:38:38.261TimeJobSent> <LastStatus>QueuedLastStatus> <Description>Print job now waiting to be sent to printer.Description> JobStatus> <Message Id="1750" Guid="{889B2413-F92A-4774-A0E8-E931F25F12EC}" Severity="Information" Category="Printing" Response="OK"> <Text>BarTender successfully sent the print job to the spooler.Job Name: resttest2.btwDocument: resttest2.btwPrinter: Zebra 140XiIII PlusText> Message> Print> Command>Response>
对于那些希望检查打印状态的人,print标签中的此参数可能是最佳选择:
JobCompleted="true"
或以下内容:
JobStatus Completed="true"
这些标签确认打印作业已成功发送到打印后台处理程序。此时,它已经离开了集成控制的领域。消息标签中位于最下方的消息以更易理解的格式报告了相同的信息。如果存在阻止后台处理打印作业的错误,则响应为:
%Response%
如果Printer Maestro服务未运行,您可能会得到误报(或在这种情况下为误报):
<Print ID="29988" GUID="{22999A4F-40C7-4F30-BB44-BED5F93691C8}" JobLastStatus="Unknown" JobCompleted="false" JobName="Label_v1.btw"><JobStatus Completed="false">.....<LastStatus>UnknownLastStatus><Description>Print job status is unknown because the Printer Maestro Service that is running on the computer that the printer is attached to is not responding.Description>JobStatus>
作业成功完成后,响应表明它不仅仅是因为它无法与Printer Maestro服务进行通信。
响应变量的值
- JobLastStatus:几乎总是“排队”以指示作业已被后台处理。如果显示未知,则说明集成无法与Maestro服务通信。
- JobCompleted:如果已后台处理作业,则为“ True”。如果Maestro服务未正确通信,则可能显示为false。
- 作业状态已完成:确认作业已完成
- 命令名称:Integration上的打印操作的名称
行动摘要
样本成功响应,格式为JSON:
{ "Version": "1.0", "Status": "RanToCompletion", "WaitStatus": "Completed", "Validated": true, "Messages": [ { "ActionName": "Print Document", "Level": 2, "Text": "BarTender successfully sent the print job to the spooler.\r\n\r\nJob Name: resttest.btw\r\nDocument: resttest.btw\r\nPrinter: Datamax I-4208" } ]}
样本错误响应:
{ "Version": "1.0", "Status": "Faulted", "WaitStatus": "Faulted", "Validated": true, "Messages": [ { "ActionName": "Print Document", "Level": 4, "Text": "BarTender cannot use printer 'fakeprinter' to design, print, or export a template due to a printer setup problem." } ]}
此示例响应很短,因为此集成仅列出了一个操作。此处响应的操作是集成本身中列出的操作:
动作响应的值
- 状态:值为“ RanToCompletion”和“故障”
- WaitStatus:值是“已完成”和“已故障”
- ActionName:正在打印的动作的名称。操作响应仅报告有关打印操作的信息,即使存在其他操作也是如此。
- 文字:您还可以在管理控制台或Integration Builder中的集成消息中看到的消息。