促进与印表机进行管理讯息通信的类。 更多...
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 | ( | IComm | commToPtr, |
| int | maxInputMsgCapacity, | ||
| MgmtChannelFilterType | listenerType, | ||
| boolean | usingDataPort | ||
| ) |
创建一个通道来发送/接收管理讯息,并指定最大容量。
如果在接收到更多讯息之前未读取讯息,则会丢弃最旧的讯息。
详情请参考 FullMode
如果与印表机的通信 commToPtr 是通过与发送打印数据相同的端口,则将 usingDataPort 设置为 true。这很重要,以正确格式化管理讯息,使印表机可以区分讯息与打印数据。
| String SendMsg | ( | String | command, |
| String | content, | ||
| String | TrackNo | ||
| ) |
将管理命令和数据/内容发送到印表机。
可选的 TrackNo 是用于发送到印表机的 JSON 命令结构中的字段,可供调用者检查印表机的响应。如果未提供 TrackNo,则会自动生成一个。
返回的字符串是发送给印表机的 JSON 讯息中的 TrackNo 字段,允许调用者通过比较从印表机接收到的响应中的 TrackNo 字段来区分与已发送讯息相关的响应。
实现了 IMgmtMessenger.
| MgmtMsg SendMsgAndWaitForResponse | ( | String | command, |
| String | content, | ||
| int | maxWaitTimeSecs | ||
| ) |
发送管理命令和数据/内容到印表机,并等待maxWaitTimeSecs时间的响应。
如果在超时前未收到响应,则返回空对象。
所有讯息在收到特定讯息的响应之前都会被丢弃。丢弃的讯息可能包括在调用此方法之前等待读取的未读或旧讯息。
实现了 IMgmtMessenger.
| void SendMsgRaw | ( | String | dataToSend | ) |
将内容直接发送至印表机,不进行任何讯息格式化。
用于需要发送未经任何管理讯息格式化的数据情况。 如果有特殊管理讯息或需要发送的数据在数据和管理共享的端口中,则可使用此方法直接将数据发送到印表机。
实现了 IMgmtMessenger.