Class: Aws::IoTEvents::Types::State
- Inherits:
-
Struct
- Object
- Struct
- Aws::IoTEvents::Types::State
- Includes:
- Structure
- Defined in:
- lib/aws-sdk-iotevents/types.rb
Overview
Note:
When making an API call, you may pass State data as a hash:
{
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: { # required
value: { # required
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: { # required
value: { # required
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: { # required
value: { # required
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: { # required
value: { # required
string_value: "AssetPropertyStringValue",
integer_value: "AssetPropertyIntegerValue",
double_value: "AssetPropertyDoubleValue",
boolean_value: "AssetPropertyBooleanValue",
},
timestamp: {
time_in_seconds: "AssetPropertyTimeInSeconds", # required
offset_in_nanos: "AssetPropertyOffsetInNanos",
},
quality: "AssetPropertyQuality",
},
},
},
],
},
],
},
}
Information that defines a state of a detector.
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#on_enter ⇒ Types::OnEnterLifecycle
When entering this state, perform these ‘actions` if the `condition` is TRUE.
-
#on_exit ⇒ Types::OnExitLifecycle
When exiting this state, perform these ‘actions` if the specified `condition` is `TRUE`.
-
#on_input ⇒ Types::OnInputLifecycle
When an input is received and the ‘condition` is TRUE, perform the specified `actions`.
-
#state_name ⇒ String
The name of the state.
Instance Attribute Details
#on_enter ⇒ Types::OnEnterLifecycle
When entering this state, perform these ‘actions` if the `condition` is TRUE.
4714 4715 4716 4717 4718 4719 4720 4721 |
# File 'lib/aws-sdk-iotevents/types.rb', line 4714 class State < Struct.new( :state_name, :on_input, :on_enter, :on_exit) SENSITIVE = [] include Aws::Structure end |
#on_exit ⇒ Types::OnExitLifecycle
When exiting this state, perform these ‘actions` if the specified `condition` is `TRUE`.
4714 4715 4716 4717 4718 4719 4720 4721 |
# File 'lib/aws-sdk-iotevents/types.rb', line 4714 class State < Struct.new( :state_name, :on_input, :on_enter, :on_exit) SENSITIVE = [] include Aws::Structure end |
#on_input ⇒ Types::OnInputLifecycle
When an input is received and the ‘condition` is TRUE, perform the specified `actions`.
4714 4715 4716 4717 4718 4719 4720 4721 |
# File 'lib/aws-sdk-iotevents/types.rb', line 4714 class State < Struct.new( :state_name, :on_input, :on_enter, :on_exit) SENSITIVE = [] include Aws::Structure end |