Class: Aws::IoT::Types::TopicRulePayload
- Inherits:
-
Struct
- Object
- Struct
- Aws::IoT::Types::TopicRulePayload
- Defined in:
- gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb
Overview
Note:
When making an API call, you may pass TopicRulePayload data as a hash:
{
sql: "SQL", # required
description: "Description",
actions: [ # required
{
dynamo_db: {
table_name: "TableName", # required
role_arn: "AwsArn", # required
operation: "DynamoOperation",
hash_key_field: "HashKeyField", # required
hash_key_value: "HashKeyValue", # required
hash_key_type: "STRING", # accepts STRING, NUMBER
range_key_field: "RangeKeyField",
range_key_value: "RangeKeyValue",
range_key_type: "STRING", # accepts STRING, NUMBER
payload_field: "PayloadField",
},
dynamo_d_bv_2: {
role_arn: "AwsArn", # required
put_item: { # required
table_name: "TableName", # required
},
},
lambda: {
function_arn: "FunctionArn", # required
},
sns: {
target_arn: "AwsArn", # required
role_arn: "AwsArn", # required
message_format: "RAW", # accepts RAW, JSON
},
sqs: {
role_arn: "AwsArn", # required
queue_url: "QueueUrl", # required
use_base_64: false,
},
kinesis: {
role_arn: "AwsArn", # required
stream_name: "StreamName", # required
partition_key: "PartitionKey",
},
republish: {
role_arn: "AwsArn", # required
topic: "TopicPattern", # required
qos: 1,
},
s3: {
role_arn: "AwsArn", # required
bucket_name: "BucketName", # required
key: "Key", # required
canned_acl: "private", # accepts private, public-read, public-read-write, aws-exec-read, authenticated-read, bucket-owner-read, bucket-owner-full-control, log-delivery-write
},
firehose: {
role_arn: "AwsArn", # required
delivery_stream_name: "DeliveryStreamName", # required
separator: "FirehoseSeparator",
batch_mode: false,
},
cloudwatch_metric: {
role_arn: "AwsArn", # required
metric_namespace: "String", # required
metric_name: "String", # required
metric_value: "String", # required
metric_unit: "String", # required
metric_timestamp: "String",
},
cloudwatch_alarm: {
role_arn: "AwsArn", # required
alarm_name: "AlarmName", # required
state_reason: "StateReason", # required
state_value: "StateValue", # required
},
cloudwatch_logs: {
role_arn: "AwsArn", # required
log_group_name: "LogGroupName", # required
},
elasticsearch: {
role_arn: "AwsArn", # required
endpoint: "ElasticsearchEndpoint", # required
index: "ElasticsearchIndex", # required
type: "ElasticsearchType", # required
id: "ElasticsearchId", # required
},
salesforce: {
token: "SalesforceToken", # required
url: "SalesforceEndpoint", # required
},
iot_analytics: {
channel_arn: "AwsArn",
channel_name: "ChannelName",
batch_mode: false,
role_arn: "AwsArn",
},
iot_events: {
input_name: "InputName", # required
message_id: "MessageId",
batch_mode: false,
role_arn: "AwsArn", # required
},
iot_site_wise: {
put_asset_property_value_entries: [ # required
{
entry_id: "AssetPropertyEntryId",
asset_id: "AssetId",
property_id: "AssetPropertyId",
property_alias: "AssetPropertyAlias",
property_values: [ # required
{
value: { # required
string_value: "AssetPropertyStringValue",
integer_value: "AssetPropertyIntegerValue",
double_value: "AssetPropertyDoubleValue",
boolean_value: "AssetPropertyBooleanValue",
},
timestamp: { # required
time_in_seconds: "AssetPropertyTimeInSeconds", # required
offset_in_nanos: "AssetPropertyOffsetInNanos",
},
quality: "AssetPropertyQuality",
},
],
},
],
role_arn: "AwsArn", # required
},
step_functions: {
execution_name_prefix: "ExecutionNamePrefix",
state_machine_name: "StateMachineName", # required
role_arn: "AwsArn", # required
},
timestream: {
role_arn: "AwsArn", # required
database_name: "TimestreamDatabaseName", # required
table_name: "TimestreamTableName", # required
dimensions: [ # required
{
name: "TimestreamDimensionName", # required
value: "TimestreamDimensionValue", # required
},
],
timestamp: {
value: "TimestreamTimestampValue", # required
unit: "TimestreamTimestampUnit", # required
},
},
http: {
url: "Url", # required
confirmation_url: "Url",
headers: [
{
key: "HeaderKey", # required
value: "HeaderValue", # required
},
],
auth: {
sigv4: {
signing_region: "SigningRegion", # required
service_name: "ServiceName", # required
role_arn: "AwsArn", # required
},
},
},
kafka: {
destination_arn: "AwsArn", # required
topic: "String", # required
key: "String",
partition: "String",
client_properties: { # required
"String" => "String",
},
},
open_search: {
role_arn: "AwsArn", # required
endpoint: "ElasticsearchEndpoint", # required
index: "ElasticsearchIndex", # required
type: "ElasticsearchType", # required
id: "ElasticsearchId", # required
},
},
],
rule_disabled: false,
aws_iot_sql_version: "AwsIotSqlVersion",
error_action: {
dynamo_db: {
table_name: "TableName", # required
role_arn: "AwsArn", # required
operation: "DynamoOperation",
hash_key_field: "HashKeyField", # required
hash_key_value: "HashKeyValue", # required
hash_key_type: "STRING", # accepts STRING, NUMBER
range_key_field: "RangeKeyField",
range_key_value: "RangeKeyValue",
range_key_type: "STRING", # accepts STRING, NUMBER
payload_field: "PayloadField",
},
dynamo_d_bv_2: {
role_arn: "AwsArn", # required
put_item: { # required
table_name: "TableName", # required
},
},
lambda: {
function_arn: "FunctionArn", # required
},
sns: {
target_arn: "AwsArn", # required
role_arn: "AwsArn", # required
message_format: "RAW", # accepts RAW, JSON
},
sqs: {
role_arn: "AwsArn", # required
queue_url: "QueueUrl", # required
use_base_64: false,
},
kinesis: {
role_arn: "AwsArn", # required
stream_name: "StreamName", # required
partition_key: "PartitionKey",
},
republish: {
role_arn: "AwsArn", # required
topic: "TopicPattern", # required
qos: 1,
},
s3: {
role_arn: "AwsArn", # required
bucket_name: "BucketName", # required
key: "Key", # required
canned_acl: "private", # accepts private, public-read, public-read-write, aws-exec-read, authenticated-read, bucket-owner-read, bucket-owner-full-control, log-delivery-write
},
firehose: {
role_arn: "AwsArn", # required
delivery_stream_name: "DeliveryStreamName", # required
separator: "FirehoseSeparator",
batch_mode: false,
},
cloudwatch_metric: {
role_arn: "AwsArn", # required
metric_namespace: "String", # required
metric_name: "String", # required
metric_value: "String", # required
metric_unit: "String", # required
metric_timestamp: "String",
},
cloudwatch_alarm: {
role_arn: "AwsArn", # required
alarm_name: "AlarmName", # required
state_reason: "StateReason", # required
state_value: "StateValue", # required
},
cloudwatch_logs: {
role_arn: "AwsArn", # required
log_group_name: "LogGroupName", # required
},
elasticsearch: {
role_arn: "AwsArn", # required
endpoint: "ElasticsearchEndpoint", # required
index: "ElasticsearchIndex", # required
type: "ElasticsearchType", # required
id: "ElasticsearchId", # required
},
salesforce: {
token: "SalesforceToken", # required
url: "SalesforceEndpoint", # required
},
iot_analytics: {
channel_arn: "AwsArn",
channel_name: "ChannelName",
batch_mode: false,
role_arn: "AwsArn",
},
iot_events: {
input_name: "InputName", # required
message_id: "MessageId",
batch_mode: false,
role_arn: "AwsArn", # required
},
iot_site_wise: {
put_asset_property_value_entries: [ # required
{
entry_id: "AssetPropertyEntryId",
asset_id: "AssetId",
property_id: "AssetPropertyId",
property_alias: "AssetPropertyAlias",
property_values: [ # required
{
value: { # required
string_value: "AssetPropertyStringValue",
integer_value: "AssetPropertyIntegerValue",
double_value: "AssetPropertyDoubleValue",
boolean_value: "AssetPropertyBooleanValue",
},
timestamp: { # required
time_in_seconds: "AssetPropertyTimeInSeconds", # required
offset_in_nanos: "AssetPropertyOffsetInNanos",
},
quality: "AssetPropertyQuality",
},
],
},
],
role_arn: "AwsArn", # required
},
step_functions: {
execution_name_prefix: "ExecutionNamePrefix",
state_machine_name: "StateMachineName", # required
role_arn: "AwsArn", # required
},
timestream: {
role_arn: "AwsArn", # required
database_name: "TimestreamDatabaseName", # required
table_name: "TimestreamTableName", # required
dimensions: [ # required
{
name: "TimestreamDimensionName", # required
value: "TimestreamDimensionValue", # required
},
],
timestamp: {
value: "TimestreamTimestampValue", # required
unit: "TimestreamTimestampUnit", # required
},
},
http: {
url: "Url", # required
confirmation_url: "Url",
headers: [
{
key: "HeaderKey", # required
value: "HeaderValue", # required
},
],
auth: {
sigv4: {
signing_region: "SigningRegion", # required
service_name: "ServiceName", # required
role_arn: "AwsArn", # required
},
},
},
kafka: {
destination_arn: "AwsArn", # required
topic: "String", # required
key: "String",
partition: "String",
client_properties: { # required
"String" => "String",
},
},
open_search: {
role_arn: "AwsArn", # required
endpoint: "ElasticsearchEndpoint", # required
index: "ElasticsearchIndex", # required
type: "ElasticsearchType", # required
id: "ElasticsearchId", # required
},
},
}
Describes a rule.
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#actions ⇒ Array<Types::Action>
The actions associated with the rule.
-
#aws_iot_sql_version ⇒ String
The version of the SQL rules engine to use when evaluating the rule.
-
#description ⇒ String
The description of the rule.
-
#error_action ⇒ Types::Action
The action to take when an error occurs.
-
#rule_disabled ⇒ Boolean
Specifies whether the rule is disabled.
-
#sql ⇒ String
The SQL statement used to query the topic.
Instance Attribute Details
#actions ⇒ Array<Types::Action>
The actions associated with the rule.
18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 |
# File 'gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb', line 18651 class TopicRulePayload < Struct.new( :sql, :description, :actions, :rule_disabled, :aws_iot_sql_version, :error_action) SENSITIVE = [] include Aws::Structure end |
#aws_iot_sql_version ⇒ String
The version of the SQL rules engine to use when evaluating the rule.
18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 |
# File 'gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb', line 18651 class TopicRulePayload < Struct.new( :sql, :description, :actions, :rule_disabled, :aws_iot_sql_version, :error_action) SENSITIVE = [] include Aws::Structure end |
#description ⇒ String
The description of the rule.
18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 |
# File 'gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb', line 18651 class TopicRulePayload < Struct.new( :sql, :description, :actions, :rule_disabled, :aws_iot_sql_version, :error_action) SENSITIVE = [] include Aws::Structure end |
#error_action ⇒ Types::Action
The action to take when an error occurs.
18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 |
# File 'gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb', line 18651 class TopicRulePayload < Struct.new( :sql, :description, :actions, :rule_disabled, :aws_iot_sql_version, :error_action) SENSITIVE = [] include Aws::Structure end |
#rule_disabled ⇒ Boolean
Specifies whether the rule is disabled.
18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 |
# File 'gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb', line 18651 class TopicRulePayload < Struct.new( :sql, :description, :actions, :rule_disabled, :aws_iot_sql_version, :error_action) SENSITIVE = [] include Aws::Structure end |
#sql ⇒ String
The SQL statement used to query the topic. For more information, see IoT SQL Reference in the IoT Developer Guide.
18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 |
# File 'gems/aws-sdk-iot/lib/aws-sdk-iot/types.rb', line 18651 class TopicRulePayload < Struct.new( :sql, :description, :actions, :rule_disabled, :aws_iot_sql_version, :error_action) SENSITIVE = [] include Aws::Structure end |