mirror of
https://github.com/SpudGunMan/meshing-around.git
synced 2026-08-07 01:13:14 +02:00
Update system.py
This commit is contained in:
+7
-4
@@ -1120,7 +1120,7 @@ last_alerts = {
|
||||
"wx": {"time": 0, "message": ""},
|
||||
"volcano": {"time": 0, "message": ""},
|
||||
}
|
||||
def should_send_alert(alert_type, new_message, min_interval=60):
|
||||
def should_send_alert(alert_type, new_message, min_interval=1):
|
||||
now = time.time()
|
||||
last = last_alerts[alert_type]
|
||||
# Only send if message is new or enough time has passed
|
||||
@@ -1141,7 +1141,9 @@ def handleAlertBroadcast(deviceID=1):
|
||||
overdueAlerts = format_overdue_alert()
|
||||
if overdueAlerts:
|
||||
logger.debug("System: Adding overdue checkin to emergency alerts")
|
||||
if should_send_alert("overdue", overdueAlerts, min_interval=3600):
|
||||
if should_send_alert("overdue", overdueAlerts):
|
||||
last_alerts["overdue"]["time"] = time.time()
|
||||
last_alerts["overdue"]["message"] = overdueAlerts
|
||||
send_message(overdueAlerts, emergency_responder_alert_channel, 0, emergency_responder_alert_interface)
|
||||
|
||||
# Only allow API call every 20 minutes
|
||||
@@ -1162,7 +1164,6 @@ def handleAlertBroadcast(deviceID=1):
|
||||
if volcanoAlertBroadcastEnabled:
|
||||
volcanoAlert = get_volcano_usgs(latitudeValue, longitudeValue)
|
||||
|
||||
# Send alerts using should_send_alert
|
||||
alert_types = [
|
||||
("fema", alertFema, ipawsAlertEnabled),
|
||||
("uk", alertUk, ipawsAlertEnabled),
|
||||
@@ -1172,7 +1173,9 @@ def handleAlertBroadcast(deviceID=1):
|
||||
]
|
||||
for alert_type, alert_msg, enabled in alert_types:
|
||||
if enabled and alert_msg and NO_ALERTS not in alert_msg and ERROR_FETCHING_DATA not in alert_msg:
|
||||
if should_send_alert(alert_type, alert_msg, min_interval=1200):
|
||||
if should_send_alert(alert_type, alert_msg):
|
||||
last_alerts[alert_type]["time"] = time.time()
|
||||
last_alerts[alert_type]["message"] = alert_msg
|
||||
send_message(alert_msg, emergency_responder_alert_channel, 0, deviceID)
|
||||
except Exception as e:
|
||||
logger.error(f"System: Error in handleAlertBroadcast: {e}")
|
||||
|
||||
Reference in New Issue
Block a user