a
This commit is contained in:
@@ -65,7 +65,7 @@ func (t *TcpClient) handleConn(c net.Conn) {
|
||||
}
|
||||
//看是心跳还是打印回调
|
||||
data := hex.EncodeToString(buffer[:n])
|
||||
globals.SugarLogger.Debugf("handleConn msg ....................: %v", data)
|
||||
//globals.SugarLogger.Debugf("handleConn msg ....................: %v", data)
|
||||
//证明是心跳
|
||||
if strings.Contains(data, heartText) {
|
||||
globals.SugarLogger.Debugf("handleConn heart: %v", data)
|
||||
@@ -80,7 +80,7 @@ func (t *TcpClient) handleConn(c net.Conn) {
|
||||
//4、读打印channel并打印,并切等待回调channel中的消息
|
||||
//5、修改数据库中打印机状态(没在连接池中说明是重新连接的)
|
||||
//6、监听心跳时间,超过1分多钟就clear掉
|
||||
globals.SugarLogger.Debugf("handleConn timeout channel...: %v", t.TimeoutMap[printNo])
|
||||
//globals.SugarLogger.Debugf("handleConn timeout channel...: %v", t.TimeoutMap[printNo])
|
||||
if t.Clients[printNo] == nil {
|
||||
t.addConn(c, printNo, status)
|
||||
t.buildAllMap(printNo)
|
||||
@@ -105,6 +105,7 @@ func (t *TcpClient) handleConn(c net.Conn) {
|
||||
globals.SugarLogger.Debugf("handleConn print callback: %v", data)
|
||||
//更新打印机心跳时间(打印机本身不会在打印的同时,或回调的同时发心跳消息,会导致心跳判断超时,这里更新一下)
|
||||
t.setPrintStatusTime(printNo)
|
||||
globals.SugarLogger.Debugf("handleConn print callback statusTime: %v", t.Clients[printNo].StatusTime)
|
||||
//打印消息发送后,打印机会回调该条打印消息的状态(打印成功or失败,失败原因..)
|
||||
//将回调的信息放到回调channel中,打印成功后再打印下一条消息
|
||||
_, printNo = getCallbackMsgInfo(data)
|
||||
@@ -284,9 +285,10 @@ func (t *TcpClient) HandleCheckTcpHeart(key string) {
|
||||
globals.SugarLogger.Debugf("HandleCheckTcpHeart timeout")
|
||||
return
|
||||
default:
|
||||
if !utils.IsTimeZero(t.getPrintStatusTime(key)) {
|
||||
statusTime := t.getPrintStatusTime(key)
|
||||
if !utils.IsTimeZero(statusTime) {
|
||||
//2分钟内没心跳判断打印机掉线了
|
||||
if time.Now().Sub(t.getPrintStatusTime(key)) > time.Minute+time.Second*3 {
|
||||
if time.Now().Sub(statusTime) > time.Minute+time.Second*3 {
|
||||
changePrinterStatus(key, printerStatusOffline)
|
||||
globals.SugarLogger.Debugf("HandleCheckTcpHeart clear...")
|
||||
//t.clear(key)
|
||||
|
||||
Reference in New Issue
Block a user