api/alfred: Keep old hood if empty field is sent
This suppresses hood change events if hood is lost due to disconnection. Normally, disconnects should be indicated by other events like online/offline. Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
parent
fae6e858b7
commit
49cefe2767
|
@ -87,17 +87,21 @@ def import_nodewatcher_xml(mysql, mac, xml, banned, hoodsv2, netifdict, hoodsdic
|
||||||
""",(router_id,))
|
""",(router_id,))
|
||||||
if olddata:
|
if olddata:
|
||||||
uptime = olddata["sys_uptime"]
|
uptime = olddata["sys_uptime"]
|
||||||
|
|
||||||
# Filter old data (Alfred keeps data for 10 min.; old and new can mix if gateways do not sync)
|
# Filter old data (Alfred keeps data for 10 min.; old and new can mix if gateways do not sync)
|
||||||
# We only use data where system time is bigger than before (last entry) or more than 1 hour smaller (to catch cases without timeserver)
|
# We only use data where system time is bigger than before (last entry) or more than 1 hour smaller (to catch cases without timeserver)
|
||||||
newtime = router_update["sys_time"].timestamp()
|
newtime = router_update["sys_time"].timestamp()
|
||||||
oldtime = olddata["sys_time"].timestamp()
|
oldtime = olddata["sys_time"].timestamp()
|
||||||
if not (newtime > oldtime or newtime < (oldtime - 3600)):
|
if not (newtime > oldtime or newtime < (oldtime - 3600)):
|
||||||
return
|
return
|
||||||
|
|
||||||
|
# Keep hood if not set (V2 only, "" != None)
|
||||||
|
if router_update["hood"] == "":
|
||||||
|
router_update["hood"] = olddata["hood"]
|
||||||
else:
|
else:
|
||||||
delete_router(mysql,router_id)
|
delete_router(mysql,router_id)
|
||||||
|
|
||||||
# keep hood up to date
|
# keep hood up to date (extremely rare case where no olddata but no hood)
|
||||||
if router_update["hood"] == "":
|
if router_update["hood"] == "":
|
||||||
router_update["hood"] = "NoHood"
|
router_update["hood"] = "NoHood"
|
||||||
if not router_update["hood"]:
|
if not router_update["hood"]:
|
||||||
|
|
Loading…
Reference in New Issue