events: Move into main() method

This commit is contained in:
Adam Goldsmith 2018-06-01 13:51:50 -04:00
parent 07a7de5227
commit d62f0c16ab

View File

@ -59,41 +59,45 @@ def formatMessage(event):
att['newTime'],
" IN" if att['readerAddress'] == '0' else " OUT")
# get parameters for messages to get?
# honestly not really sure why this is required, their API is confusing
parXMLIn = ET.Element("VertXMessage")
ET.SubElement(parXMLIn, "hid:EventMessages", attrib={"action": "LR"})
parXMLOut = doXMLRequest(TARGET_IP, ET.tostring(parXMLIn))
def main():
# get parameters for messages to get?
# honestly not really sure why this is required, their API is confusing
parXMLIn = ET.Element("VertXMessage")
ET.SubElement(parXMLIn, "hid:EventMessages", attrib={"action": "LR"})
parXMLOut = doXMLRequest(TARGET_IP, ET.tostring(parXMLIn))
root = None
if os.path.exists("log.xml"):
# read last log
tree = ET.ElementTree(None, "log.xml")
root = tree.getroot()
recordCount = int(parXMLOut[0].attrib["historyRecordMarker"]) - \
int(root[0][0].attrib["recordMarker"])
else:
# first run for this door
recordCount = 1000
root = None
if os.path.exists("log.xml"):
# read last log
tree = ET.ElementTree(None, "log.xml")
root = tree.getroot()
recordCount = int(parXMLOut[0].attrib["historyRecordMarker"]) - \
int(root[0][0].attrib["recordMarker"])
else:
# first run for this door
recordCount = 1000
print("Getting", recordCount, "records")
# get the actual messages
eventsXMLIn = ET.Element("VertXMessage")
ET.SubElement(eventsXMLIn, "hid:EventMessages",
attrib={"action": "LR",
"recordCount": str(recordCount),
"historyRecordMarker": parXMLOut[0].attrib["historyRecordMarker"],
"historyTimestamp": parXMLOut[0].attrib["historyTimestamp"]})
eventsXMLOut = doXMLRequest(TARGET_IP, ET.tostring(eventsXMLIn))
#TODO: handle modeRecords=true
print("Getting", recordCount, "records")
# get the actual messages
eventsXMLIn = ET.Element("VertXMessage")
ET.SubElement(eventsXMLIn, "hid:EventMessages",
attrib={"action": "LR",
"recordCount": str(recordCount),
"historyRecordMarker": parXMLOut[0].attrib["historyRecordMarker"],
"historyTimestamp": parXMLOut[0].attrib["historyTimestamp"]})
eventsXMLOut = doXMLRequest(TARGET_IP, ET.tostring(eventsXMLIn))
#TODO: handle modeRecords=true
for index, event in enumerate(eventsXMLOut[0]):
event.attrib["recordMarker"] = str(int(parXMLOut[0].attrib["historyRecordMarker"]) - index)
# print(formatMessage(event))
for index, event in enumerate(eventsXMLOut[0]):
event.attrib["recordMarker"] = str(int(parXMLOut[0].attrib["historyRecordMarker"]) - index)
# print(formatMessage(event))
if root is None:
tree = ET.ElementTree(eventsXMLOut)
else:
for event in reversed(eventsXMLOut[0]):
root[0].insert(0, event)
tree.write("log.xml")
if root is None:
tree = ET.ElementTree(eventsXMLOut)
else:
for event in reversed(eventsXMLOut[0]):
root[0].insert(0, event)
tree.write("log.xml")
if __name__ == '__main__':
main()