Class: Aws::IoTEvents::Types::State
- Inherits:
-
Struct
- Object
- Struct
- Aws::IoTEvents::Types::State
- Defined in:
- gems/aws-sdk-iotevents/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: {
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",
},
},
},
],
},
],
},
}
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 thecondition
is TRUE. -
#on_exit ⇒ Types::OnExitLifecycle
When exiting this state, perform these
actions
if the specifiedcondition
isTRUE
. -
#on_input ⇒ Types::OnInputLifecycle
When an input is received and the
condition
is TRUE, perform the specifiedactions
. -
#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.
6441 6442 6443 6444 6445 6446 6447 6448 |
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 6441 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
.
6441 6442 6443 6444 6445 6446 6447 6448 |
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 6441 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
.
6441 6442 6443 6444 6445 6446 6447 6448 |
# File 'gems/aws-sdk-iotevents/lib/aws-sdk-iotevents/types.rb', line 6441 class State < Struct.new( :state_name, :on_input, :on_enter, :on_exit) SENSITIVE = [] include Aws::Structure end |