繁体   English   中英

ePOS2 SDK:如何保持与打印机的连接处于活动状态?

[英]ePOS2 SDK: How to keep connection to printer alive?

我正在使用Epson的ePOS2 SDK与收据打印机TM-M30通信。
我能够成功连接到打印机并打印一些数据。
完成打印后,我将保持与打印机的连接,因此下一次我需要打印某些内容时,不再连接它。

但是,连接仅存活90秒。 闲置90秒后,打印机断开连接, Epos2Printer通知代表电源已关闭:

func onPtrStatusChange(_ printerObj: Epos2Printer, eventType: Int32) {
    let eventStatus = Epos2StatusEvent(rawValue: eventType)
    // Event status is EPOS2_EVENT_POWER_OFF here
}

我看不到Epos2Printer任何参数来保持连接有效。

有人知道如何迫使打印机保持连接90秒以上吗?

Epos2Printer证明, Epos2Printer使用TCP连接与打印机进行通信,TCP本身在90秒内断开了连接。
为避免这种情况,我在闲置85秒后将信号发送到用于钱箱的空打印机端口:

printer.addPulse(EPOS2_DRAWER_5PIN.rawValue, time: EPOS2_PULSE_100.rawValue)
printer.beginTransaction()
printer.sendData(Int(EPOS2_PARAM_DEFAULT))
printer.endTransaction()
printer.clearCommandBuffer()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM