Class: Aws::IoTEvents::Types::CreateAlarmModelRequest

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb

Overview

Note:

When making an API call, you may pass CreateAlarmModelRequest data as a hash:

{
  alarm_model_name: "AlarmModelName", # required
  alarm_model_description: "AlarmModelDescription",
  role_arn: "AmazonResourceName", # required
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
  key: "AttributeJsonPath",
  severity: 1,
  alarm_rule: { # required
    simple_rule: {
      input_property: "InputProperty", # required
      comparison_operator: "GREATER", # required, accepts GREATER, GREATER_OR_EQUAL, LESS, LESS_OR_EQUAL, EQUAL, NOT_EQUAL
      threshold: "Threshold", # required
    },
  },
  alarm_notification: {
    notification_actions: [
      {
        action: { # required
          lambda_action: {
            function_arn: "AmazonResourceName", # required
            payload: {
              content_expression: "ContentExpression", # required
              type: "STRING", # required, accepts STRING, JSON
            },
          },
        },
        sms_configurations: [
          {
            sender_id: "SMSSenderId",
            additional_message: "NotificationAdditionalMessage",
            recipients: [ # required
              {
                sso_identity: {
                  identity_store_id: "IdentityStoreId", # required
                  user_id: "SSOReferenceId",
                },
              },
            ],
          },
        ],
        email_configurations: [
          {
            from: "FromEmail", # required
            content: {
              subject: "EmailSubject",
              additional_message: "NotificationAdditionalMessage",
            },
            recipients: { # required
              to: [
                {
                  sso_identity: {
                    identity_store_id: "IdentityStoreId", # required
                    user_id: "SSOReferenceId",
                  },
                },
              ],
            },
          },
        ],
      },
    ],
  },
  alarm_event_actions: {
    alarm_actions: [
      {
        sns: {
          target_arn: "AmazonResourceName", # required
          payload: {
            content_expression: "ContentExpression", # required
            type: "STRING", # required, accepts STRING, JSON
          },
        },
        iot_topic_publish: {
          mqtt_topic: "MQTTTopic", # required
          payload: {
            content_expression: "ContentExpression", # required
            type: "STRING", # required, accepts STRING, JSON
          },
        },
        lambda: {
          function_arn: "AmazonResourceName", # required
          payload: {
            content_expression: "ContentExpression", # required
            type: "STRING", # required, accepts STRING, JSON
          },
        },
        iot_events: {
          input_name: "InputName", # required
          payload: {
            content_expression: "ContentExpression", # required
            type: "STRING", # required, accepts STRING, JSON
          },
        },
        sqs: {
          queue_url: "QueueUrl", # required
          use_base_64: false,
          payload: {
            content_expression: "ContentExpression", # required
            type: "STRING", # required, accepts STRING, JSON
          },
        },
        firehose: {
          delivery_stream_name: "DeliveryStreamName", # required
          separator: "FirehoseSeparator",
          payload: {
            content_expression: "ContentExpression", # required
            type: "STRING", # required, accepts STRING, JSON
          },
        },
        dynamo_db: {
          hash_key_type: "DynamoKeyType",
          hash_key_field: "DynamoKeyField", # required
          hash_key_value: "DynamoKeyValue", # required
          range_key_type: "DynamoKeyType",
          range_key_field: "DynamoKeyField",
          range_key_value: "DynamoKeyValue",
          operation: "DynamoOperation",
          payload_field: "DynamoKeyField",
          table_name: "DynamoTableName", # required
          payload: {
            content_expression: "ContentExpression", # required
            type: "STRING", # required, accepts STRING, JSON
          },
        },
        dynamo_d_bv_2: {
          table_name: "DynamoTableName", # required
          payload: {
            content_expression: "ContentExpression", # required
            type: "STRING", # required, accepts STRING, JSON
          },
        },
        iot_site_wise: {
          entry_id: "AssetPropertyEntryId",
          asset_id: "AssetId",
          property_id: "AssetPropertyId",
          property_alias: "AssetPropertyAlias",
          property_value: {
            value: {
              string_value: "AssetPropertyStringValue",
              integer_value: "AssetPropertyIntegerValue",
              double_value: "AssetPropertyDoubleValue",
              boolean_value: "AssetPropertyBooleanValue",
            },
            timestamp: {
              time_in_seconds: "AssetPropertyTimeInSeconds", # required
              offset_in_nanos: "AssetPropertyOffsetInNanos",
            },
            quality: "AssetPropertyQuality",
          },
        },
      },
    ],
  },
  alarm_capabilities: {
    initialization_configuration: {
      disabled_on_initialization: false, # required
    },
    acknowledge_flow: {
      enabled: false, # required
    },
  },
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#alarm_capabilitiesTypes::AlarmCapabilities

Contains the configuration information of alarm state changes.



1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#alarm_event_actionsTypes::AlarmEventActions

Contains information about one or more alarm actions.



1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#alarm_model_descriptionString

A description that tells you what the alarm model detects.

Returns:

  • (String)


1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#alarm_model_nameString

A unique name that helps you identify the alarm model. You can't change this name after you create the alarm model.

Returns:

  • (String)


1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#alarm_notificationTypes::AlarmNotification

Contains information about one or more notification actions.



1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#alarm_ruleTypes::AlarmRule

Defines when your alarm is invoked.

Returns:



1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#keyString

An input attribute used as a key to create an alarm. AWS IoT Events routes inputs associated with this key to the alarm.

Returns:

  • (String)


1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#role_arnString

The ARN of the IAM role that allows the alarm to perform actions and access AWS resources. For more information, see Amazon Resource Names (ARNs) in the AWS General Reference.

Returns:

  • (String)


1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#severityInteger

A non-negative integer that reflects the severity level of the alarm.

Returns:

  • (Integer)


1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end

#tagsArray<Types::Tag>

A list of key-value pairs that contain metadata for the alarm model. The tags help you manage the alarm model. For more information, see Tagging your AWS IoT Events resources in the AWS IoT Events Developer Guide.

You can create up to 50 tags for one alarm model.

Returns:



1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 1432

class CreateAlarmModelRequest < Struct.new(
  :alarm_model_name,
  :alarm_model_description,
  :role_arn,
  :tags,
  :key,
  :severity,
  :alarm_rule,
  :alarm_notification,
  :alarm_event_actions,
  :alarm_capabilities)
  SENSITIVE = []
  include Aws::Structure
end