+ if alarm_id is not None:
+ self.resp_status = True
+ log.debug("A valid alarm was found/created: %s",
+ self.resp_status)
+ else:
+ self.resp_status = False
+ log.debug("Failed to create desired alarm: %s",
+ self.resp_status)
+
+ elif message.key == "list_alarm_request":
+ auth_token = self._common._authenticate()
+ endpoint = self._common.get_endpoint("alarming")
+
+ # List all of the alarms
+ alarm_list = self.list_alarms(endpoint, auth_token)
+
+ # TODO(mcgoughh): send a repsonse back to SO
+ if alarm_list is not None:
+ self.resp_status = True
+ log.info("A list of alarms was generated: %s",
+ alarm_list)
+ else:
+ self.resp_status = False
+ log.warn("Failed to generae an alarm list")
+
+ elif message.key == "delete_alarm_request":
+ # Delete the specified alarm
+ auth_token = self._common._authenticate()
+ endpoint = self._common.get_endpoint("alarming")
+
+ alarm_id = values['alarm_delete_request']['alarm_uuid']
+
+ response = self.delete_alarm(
+ endpoint, auth_token, alarm_id)
+
+ # TODO(mcgoughh): send a response back on the bus
+ if response is True:
+ log.info("Requested alarm has been deleted: %s",
+ alarm_id)
+ else:
+ log.warn("Failed to delete requested alarm.")
+
+ elif message.key == "acknowledge_alarm":
+ # Acknowledge that an alarm has been dealt with by the SO
+ # Set its state to ok
+ auth_token = self._common._authenticate()
+ endpoint = self._common.get_endpoint("alarming")
+
+ alarm_id = values['ack_details']['alarm_uuid']
+
+ response = self.update_alarm_state(
+ endpoint, auth_token, alarm_id)
+
+ if response is True:
+ log.info("Status has been updated for alarm, %s.",
+ alarm_id)
+ else:
+ log.warn("Failed update the state of requested alarm.")
+
+ elif message.key == "update_alarm_request":
+ # Update alarm configurations
+ auth_token = self._common._authenticate()
+ endpoint = self._common.get_endpoint("alarming")
+
+ alarm_details = values['alarm_update_request']
+
+ alarm_id = self.update_alarm(
+ endpoint, auth_token, alarm_details)
+
+ # TODO(mcgoughh): send a response message to the SO
+ if alarm_id is not None:
+ log.info("Alarm configuration was update correctly.")
+ else:
+ log.warn("Unable to update the specified alarm")