feat(itho-wpu): implement getserial action

This commit is contained in:
Pim van den Berg 2020-11-15 14:59:57 +01:00
parent b0ea3a9473
commit 1a57a8bd9b
1 changed files with 10 additions and 0 deletions

View File

@ -177,6 +177,8 @@ def process_response(action, response, args):
export_to_influxdb(action, measurements)
elif action == "getnodeid":
process_nodeid(response)
elif action == "getserial":
process_serial(response)
def process_nodeid(response):
@ -199,6 +201,14 @@ def process_nodeid(response):
f"ListVersion: {listversion}")
def process_serial(response):
if int(response[1], 0) != 0x90 and int(response[2], 0) != 0xE1:
logger.error(f"Response MessageClass != 0x90 0xE1 (getserial), but {response[1]} {response[2]}")
return
serial = (int(response[5], 0) << 16) + (int(response[6], 0) << 8) + int(response[7], 0)
logger.info(f"Serial: {serial}")
def process_datalog(response):
if int(response[1], 0) != 0xA4 and int(response[2], 0) != 0x01:
logger.error(f"Response MessageClass != 0xA4 0x01 (getdatalog), but {response[1]} {response[2]}")