class Aws::IoTEvents::Types::DetectorModelDefinition
Information that defines how a detector operates.
@note When making an API call, you may pass DetectorModelDefinition
data as a hash: { states: [ # required { state_name: "StateName", # required on_input: { events: [ { event_name: "EventName", # required condition: "Condition", actions: [ { set_variable: { variable_name: "VariableName", # required value: "VariableValue", # required }, 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 }, }, set_timer: { timer_name: "TimerName", # required seconds: 1, duration_expression: "VariableValue", }, clear_timer: { timer_name: "TimerName", # required }, reset_timer: { timer_name: "TimerName", # required }, 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", }, }, }, ], }, ], transition_events: [ { event_name: "EventName", # required condition: "Condition", # required actions: [ { set_variable: { variable_name: "VariableName", # required value: "VariableValue", # required }, 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 }, }, set_timer: { timer_name: "TimerName", # required seconds: 1, duration_expression: "VariableValue", }, clear_timer: { timer_name: "TimerName", # required }, reset_timer: { timer_name: "TimerName", # required }, 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", }, }, }, ], next_state: "StateName", # required }, ], }, on_enter: { events: [ { event_name: "EventName", # required condition: "Condition", actions: [ { set_variable: { variable_name: "VariableName", # required value: "VariableValue", # required }, 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 }, }, set_timer: { timer_name: "TimerName", # required seconds: 1, duration_expression: "VariableValue", }, clear_timer: { timer_name: "TimerName", # required }, reset_timer: { timer_name: "TimerName", # required }, 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", }, }, }, ], }, ], }, on_exit: { events: [ { event_name: "EventName", # required condition: "Condition", actions: [ { set_variable: { variable_name: "VariableName", # required value: "VariableValue", # required }, 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 }, }, set_timer: { timer_name: "TimerName", # required seconds: 1, duration_expression: "VariableValue", }, clear_timer: { timer_name: "TimerName", # required }, reset_timer: { timer_name: "TimerName", # required }, 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", }, }, }, ], }, ], }, }, ], initial_state_name: "StateName", # required }
@!attribute [rw] states
Information about the states of the detector. @return [Array<Types::State>]
@!attribute [rw] initial_state_name
The state that is entered at the creation of each detector (instance). @return [String]
Constants
- SENSITIVE