UniPRT SDK  v1.0.0.0
Messenger类 参考

促进与印表机进行管理讯息通信的类。 更多...

类 Messenger 继承关系图:
IMgmtMessenger

Public 成员函数

 Messenger (IComm commToPtr, int maxInputMsgCapacity, MgmtChannelFilterType listenerType, boolean usingDataPort)
 创建一个通道来发送/接收管理讯息,并指定最大容量。 更多...
 
void close ()
 
String GetID ()
 区分同时与印表机通信的不同讯息发送者的 ID。此 ID 用于 MgmtMsg 中的“To”/“From”。
 
MgmtMsg ReadNextMsg ()
 读取可能已从印表机异步接收的下一条讯息。
 
String SendMsg (String command, String content)
 
String SendMsg (String command, String content, String trackNo)
 将管理命令和数据/内容发送到印表机。 更多...
 
MgmtMsg SendMsgAndWaitForResponse (String command, String content)
 
MgmtMsg SendMsgAndWaitForResponse (String command, String content, int maxWaitTimeSecs)
 发送管理命令和数据/内容到印表机,并等待maxWaitTimeSecs时间的响应。 更多...
 
void SendMsgRaw (String dataToSend)
 将内容直接发送至印表机,不进行任何讯息格式化。 更多...
 
int UnreadMsgCount ()
 获取接收到的未读讯息数量,这些讯息正在等待被读取。
 

详细描述

促进与印表机进行管理讯息通信的类。

构造及析构函数说明

◆ Messenger()

Messenger ( IComm  commToPtr,
int  maxInputMsgCapacity,
MgmtChannelFilterType  listenerType,
boolean  usingDataPort 
)

创建一个通道来发送/接收管理讯息,并指定最大容量。

如果在接收到更多讯息之前未读取讯息,则会丢弃最旧的讯息。

详情请参考 FullMode
如果与印表机的通信 commToPtr 是通过与发送打印数据相同的端口,则将 usingDataPort 设置为 true。这很重要,以正确格式化管理讯息,使印表机可以区分讯息与打印数据。

成员函数说明

◆ SendMsg()

String SendMsg ( String  command,
String  content,
String  TrackNo 
)

将管理命令和数据/内容发送到印表机。

可选的 TrackNo 是用于发送到印表机的 JSON 命令结构中的字段,可供调用者检查印表机的响应。如果未提供 TrackNo,则会自动生成一个。

返回的字符串是发送给印表机的 JSON 讯息中的 TrackNo 字段,允许调用者通过比较从印表机接收到的响应中的 TrackNo 字段来区分与已发送讯息相关的响应。

实现了 IMgmtMessenger.

◆ SendMsgAndWaitForResponse()

MgmtMsg SendMsgAndWaitForResponse ( String  command,
String  content,
int  maxWaitTimeSecs 
)

发送管理命令和数据/内容到印表机,并等待maxWaitTimeSecs时间的响应。

如果在超时前未收到响应,则返回空对象。
所有讯息在收到特定讯息的响应之前都会被丢弃。丢弃的讯息可能包括在调用此方法之前等待读取的未读或旧讯息。

实现了 IMgmtMessenger.

◆ SendMsgRaw()

void SendMsgRaw ( String  dataToSend)

将内容直接发送至印表机,不进行任何讯息格式化。

用于需要发送未经任何管理讯息格式化的数据情况。 如果有特殊管理讯息或需要发送的数据在数据和管理共享的端口中,则可使用此方法直接将数据发送到印表机。

实现了 IMgmtMessenger.