diff --git a/main.py b/main.py index a8169f5..9c644e2 100644 --- a/main.py +++ b/main.py @@ -26,7 +26,7 @@ def main(): print("Event is None.") else: print("Processing event...") - messageManager.postMessage(alerts) + messageManager.postMessage(eventData) print("Event processed completed successfully.") except KeyboardInterrupt: diff --git a/message_builder.py b/message_builder.py index 85076d6..1867ed7 100644 --- a/message_builder.py +++ b/message_builder.py @@ -2,12 +2,22 @@ class AlertMessageBuilder: # Main entry point to build alert messages. # Returns a message string comprised of a rocket alert header # and alert location list - def buildAlerts(self, alerts): + def buildAlerts(self, eventData): + alerts = eventData["alerts"] + if not isinstance(alerts, (list)): alerts = [alerts] alertList = self.__buildAlertList(alerts) - header = f"Rocket alert {alerts[0]['timeStamp']}:" + + alertTypeId = eventData["alertTypeId"] + if (alertTypeId == 1): + header = "Rocket alert" + elif (alertTypeId == 2): + header = "Hostile UAV alert" + else: + header = "Red alert" + header += f" {alerts[0]['timeStamp']}:" return f"{header}\n\n" \ f"{alertList}\n\n" diff --git a/message_manager.py b/message_manager.py index 67a5200..3b56d1d 100644 --- a/message_manager.py +++ b/message_manager.py @@ -72,13 +72,13 @@ def buildMarker(self, alert): lon = str(alert["lon"]) return f"pin-s+{self.strokeColor}({lon},{lat})" - def postMessage(self, alerts): + def postMessage(self, eventData): print("Building alert message...") - content = AlertMessageBuilder().buildAlerts(alerts) + content = AlertMessageBuilder().buildAlerts(eventData) print(content) print("Generating static map...") - hasMap = self.buildStaticMap(alerts) + hasMap = self.buildStaticMap(eventData["alerts"]) file = self.mapFile if hasMap else None print("Sending message...") diff --git a/rocket_alert_api.py b/rocket_alert_api.py index d1e4c95..fd63707 100644 --- a/rocket_alert_api.py +++ b/rocket_alert_api.py @@ -27,4 +27,4 @@ def __init__(self): # print("Please note the function only takes dates in string format (YYYY-MM-DD).") def listenToServerEvents(self): - return requests.get(f"{self.baseURL}/real-time", headers=self.headers, stream=True) + return requests.get(f"{self.baseURL}/real-time?alertTypeId=-1", headers=self.headers, stream=True)