用於管理基於 JSON 的消息傳遞的類。 更多...
#include <JsonMessenger.h>
實體方法 | |
(instancetype) | - initWithCommToPtr:iCommTyp:maxInputMsgCapacity:usingDataPort: |
使用給定的通信指針、通信類型、最大輸入消息容量和數據端口使用標誌初始化一個新實例。 | |
(NSString *) | - sendMsgWithCommand:content:trackNo: |
發送管理命令和數據/內容到打印機。 | |
(JsonMng *) | - sendMsgAndWaitForResponseWithCommand:content:maxWaitTimeSecs: |
發送管理命令和數據/內容到打印機並等待最大等待時間秒數的響應。 | |
(JsonMng *) | - readNextMsg |
讀取可能從打印機異步接收到的下一條消息。 | |
(void) | - sendMsgRawWithDataToSend: |
將內容直接發送到打印機,不進行任何消息格式化。 | |
(void) | - dispose |
釋放對象,釋放所有資源。 | |
用於管理基於 JSON 的消息傳遞的類。
- (void) dispose |
釋放對象,釋放所有資源。
- (instancetype) initWithCommToPtr: | (AComm *) | commToPtr | |
iCommTyp: | (CommType) | iCommTyp | |
maxInputMsgCapacity: | (int) | maxInputMsgCapacity | |
usingDataPort: | (BOOL) | usingDataPort |
使用給定的通信指針、通信類型、最大輸入消息容量和數據端口使用標誌初始化一個新實例。
如果在從打印機收到更多消息之前沒有讀取消息,則最早的消息將被丟棄。
如果與打印機的通信通過發送打印數據的相同端口進行,請將 usingDataPort 設置為 true。
這對於正確格式化管理消息非常重要,以便打印機區分來自打印數據的消息。
commToPtr | 通信實例的指針。 |
iCommTyp | 通信類型。 |
maxInputMsgCapacity | 最大輸入消息容量。 |
usingDataPort | 指示是否使用數據端口的標誌。 |
- (JsonMng *) sendMsgAndWaitForResponseWithCommand: | (NSString *) | command | |
content: | (NSString *) | content | |
maxWaitTimeSecs: | (int) | maxWaitTimeSecs |
發送管理命令和數據/內容到打印機並等待最大等待時間秒數的響應。
如果在超時之前未收到響應,則返回空對象。
在接收到發送的特定消息的響應之前,所有消息都會被丟棄。被丟棄的消息可能包括在調用此方法之前等待讀取的任何未讀/舊消息。
command | 消息的命令。 |
content | 消息的內容。 |
maxWaitTimeSecs | 最大等待時間(秒)。 |
- (void) sendMsgRawWithDataToSend: | (NSString *) | dataToSend |
將內容直接發送到打印機,不進行任何消息格式化。
適用於需要在沒有任何附加管理消息格式的情況下發送數據的情況。
如果有特殊的管理消息或需要在同時用於數據和管理的端口發送的數據,這將用於直接將數據發送到打印機。
dataToSend | 要發送的數據。 |
- (NSString *) sendMsgWithCommand: | (NSString *) | command | |
content: | (NSString *) | content | |
trackNo: | (NSString *) | trackNo |
發送管理命令和數據/內容到打印機。
可選的 TrackNo 是發送到打印機的 JSON 命令結構中使用的字段,調用者可以使用它來檢查打印機的響應。如果未提供 TrackNo,則會生成一個。
返回的字符串是發送到打印機的 JSON 消息中使用的 TrackNo 字段,以允許調用者通過比較從打印機接收到的任何響應的 TrackNo 字段來區分與發送的消息相關的任何響應。
command | 消息的命令。 |
content | 消息的內容。 |
trackNo | 消息的跟踪號。 |