code: def set_alarm_state(self, alarm_name, state_reason, state_value,
                          state_reason_data=None):
          
          params = {'AlarmName' : alarm_name,
                    'StateReason' : state_reason,
                    'StateValue' : state_value}
          if state_reason_data:
              params['StateReasonData'] = json.dumps(state_reason_data)
  
          return self.get_status('SetAlarmState', params)
docs: Temporarily sets the state of an alarm. When the updated StateValue
          differs from the previous value, the action configured for the
          appropriate state is invoked. This is not a permanent change. The next
          periodic alarm check (in about a minute) will set the alarm to its
          actual state.
  
          :type alarm_name: string
          :param alarm_name: Descriptive name for alarm.
  
          :type state_reason: string
          :param state_reason: Human readable reason.
  
          :type state_value: string
          :param state_value: OK | ALARM | INSUFFICIENT_DATA
  
          :type state_reason_data: string
          :param state_reason_data: Reason string (will be jsonified).