Сервер мониторинга
Создаем сервер. Сам объект располагаем в общедоступном файле.
common.Processor = ProcessorDevice('Processor')
common.tcpServer = EthernetServerInterfaceEx(23023)
common.tcpServer.StartListen()Создаем функцию на передачу:
def tcpSendManual(*args):
sPlain = '{}\r\n'.format(', '.join([str(x) for x in args]))
for client in common.tcpServer.Clients:
client.Send(sPlain) Можно создать обертку над событием:
def tcpSend(devName):
def dec(func,*args):
def wrap(*args):
# sJson = json.dumps(dict(time=gmtime(), device=devName, cmd=args[0], val=args[1], qual=args[2]), sort_keys=True)
sPlain = '{:<5} {:<27} {:<4} {}\r\n'.format(devName, args[0], args[1], args[2])
for client in common.tcpServer.Clients:
client.Send(sPlain)
func(*args)
return wrap
return dec
@tcpSend('DMP')
def dmpSubscribe(cmd,val,qual):
passLast updated