aggiunto invio evento
parent
63ff03d56f
commit
5ed63205ec
|
|
@ -6,7 +6,7 @@ Created on 19 mar 2020
|
|||
|
||||
import queue, time, socket, logging
|
||||
from driver.tsc_commands import TSC_COMMANDS, TSC_STATUS, LINE_SEP
|
||||
from driver.notifier import URL_ERR, URL_EVENT, URL_RESPONSE, send_response
|
||||
from driver.notifier import URL_ERR, URL_EVENT, URL_RESPONSE, send_response, send_event
|
||||
import traceback
|
||||
import struct
|
||||
|
||||
|
|
@ -95,14 +95,20 @@ def tsc_printer(q_in: queue.Queue, q_out: queue.Queue, q_cmd: queue.Queue, ip: s
|
|||
nonlocal prt
|
||||
prt.sendall(b'\x1B'+bytearray(TSC_COMMANDS['STATUS'], encoding=ENC))
|
||||
time.sleep(0.1)
|
||||
send_response(q_out, ip, "STATUS",{"stato": TSC_STATUS[struct.unpack('>b',prt.recv(1))[0]]})
|
||||
rsp=TSC_STATUS[struct.unpack('>b',prt.recv(1))[0]]
|
||||
send_response(q_out, ip, "STATUS",{"stato": rsp})
|
||||
return rsp
|
||||
|
||||
|
||||
while True: # connetti mantieni vivo il socket
|
||||
try:
|
||||
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as prt:
|
||||
prt.connect((ip, port))
|
||||
get_status()
|
||||
sts=get_status()
|
||||
if sts=="Normal":
|
||||
send_event(q_out, ip, True, None, None)
|
||||
else:
|
||||
send_event(q_out, ip, True, sts, None)
|
||||
while True:
|
||||
itm = q_in.get(block=True)
|
||||
cmd = itm['name']
|
||||
|
|
@ -144,14 +150,17 @@ def tsc_printer(q_in: queue.Queue, q_out: queue.Queue, q_cmd: queue.Queue, ip: s
|
|||
logger.error("Comando stampante non riconosciuto")
|
||||
except socket.timeout as st:
|
||||
logger.error(f"Stampante {__name__} irraggiungibile:{st}")
|
||||
send_event(q_out, ip, True, f"Stampante {__name__} irraggiungibile:{st}", None)
|
||||
prt.close()
|
||||
del prt
|
||||
except socket.error as se:
|
||||
logger.error(f"Errore generico stamoante {__name__}: {se}")
|
||||
logger.error(f"Errore generico stampante {__name__}: {se}")
|
||||
send_event(q_out, ip, True, f"Errore generico stampante {__name__}: {se}", None)
|
||||
prt.close()
|
||||
del prt
|
||||
except Exception as e:
|
||||
traceback.print_exc()
|
||||
send_event(q_out, ip, True, "Errore generale inizializzando la stampante: {}".format(e), None)
|
||||
logger.error("Errore generale inizializzando la stampante: {}".format(e))
|
||||
|
||||
pass
|
||||
Loading…
Reference in New Issue