sendSchedule: Add clearing people DB
allows updating doors fully automatically
This commit is contained in:
parent
33c0857e1b
commit
0d95865c8b
@ -1,20 +1,30 @@
|
||||
#!/usr/bin/env python3
|
||||
import requests
|
||||
from xml.etree import ElementTree as ET
|
||||
import urllib3
|
||||
import csv
|
||||
from io import StringIO
|
||||
|
||||
from passwords import *
|
||||
from common import *
|
||||
|
||||
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
|
||||
TARGET_IP = '172.18.51.15'
|
||||
|
||||
def doRequest(xml):
|
||||
r = requests.get(
|
||||
'https://172.18.51.15/cgi-bin/vertx_xml.cgi',
|
||||
'https://' + TARGET_IP + '/cgi-bin/vertx_xml.cgi',
|
||||
params={'XML': xml},
|
||||
auth=requests.auth.HTTPDigestAuth(DOOR_USERNAME, DOOR_PASSWORD),
|
||||
verify=False)
|
||||
print(r.text)
|
||||
|
||||
# clear all people
|
||||
outString = StringIO()
|
||||
writer = csv.DictWriter(outString, fieldnames)
|
||||
writer.writeheader()
|
||||
writer.writerow({})
|
||||
outString.seek(0)
|
||||
doCSVImport(TARGET_IP, outString)
|
||||
|
||||
# clear all schedules
|
||||
delXML = ET.Element("VertXMessage")
|
||||
for ii in range(1, 8):
|
||||
ET.SubElement(delXML, "hid:Schedules",
|
||||
@ -22,5 +32,6 @@ for ii in range(1, 8):
|
||||
print(b'<?xml version="1.0" encoding="UTF-8"?>' + ET.tostring(delXML))
|
||||
doRequest(b'<?xml version="1.0" encoding="UTF-8"?>' + ET.tostring(delXML))
|
||||
|
||||
# load new schedules
|
||||
with open("schedules.xml", "rb") as f:
|
||||
doRequest(f.read())
|
||||
|
Reference in New Issue
Block a user