Interface CfnTopicRule.ActionProperty
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
CfnTopicRule.ActionProperty.Jsii$Proxy
- Enclosing class:
CfnTopicRule
@Stability(Stable)
public static interface CfnTopicRule.ActionProperty
extends software.amazon.jsii.JsiiSerializable
Describes the actions associated with a rule.
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.iot.*;
ActionProperty actionProperty = ActionProperty.builder()
.cloudwatchAlarm(CloudwatchAlarmActionProperty.builder()
.alarmName("alarmName")
.roleArn("roleArn")
.stateReason("stateReason")
.stateValue("stateValue")
.build())
.cloudwatchLogs(CloudwatchLogsActionProperty.builder()
.logGroupName("logGroupName")
.roleArn("roleArn")
// the properties below are optional
.batchMode(false)
.build())
.cloudwatchMetric(CloudwatchMetricActionProperty.builder()
.metricName("metricName")
.metricNamespace("metricNamespace")
.metricUnit("metricUnit")
.metricValue("metricValue")
.roleArn("roleArn")
// the properties below are optional
.metricTimestamp("metricTimestamp")
.build())
.dynamoDb(DynamoDBActionProperty.builder()
.hashKeyField("hashKeyField")
.hashKeyValue("hashKeyValue")
.roleArn("roleArn")
.tableName("tableName")
// the properties below are optional
.hashKeyType("hashKeyType")
.payloadField("payloadField")
.rangeKeyField("rangeKeyField")
.rangeKeyType("rangeKeyType")
.rangeKeyValue("rangeKeyValue")
.build())
.dynamoDBv2(DynamoDBv2ActionProperty.builder()
.putItem(PutItemInputProperty.builder()
.tableName("tableName")
.build())
.roleArn("roleArn")
.build())
.elasticsearch(ElasticsearchActionProperty.builder()
.endpoint("endpoint")
.id("id")
.index("index")
.roleArn("roleArn")
.type("type")
.build())
.firehose(FirehoseActionProperty.builder()
.deliveryStreamName("deliveryStreamName")
.roleArn("roleArn")
// the properties below are optional
.batchMode(false)
.separator("separator")
.build())
.http(HttpActionProperty.builder()
.url("url")
// the properties below are optional
.auth(HttpAuthorizationProperty.builder()
.sigv4(SigV4AuthorizationProperty.builder()
.roleArn("roleArn")
.serviceName("serviceName")
.signingRegion("signingRegion")
.build())
.build())
.confirmationUrl("confirmationUrl")
.headers(List.of(HttpActionHeaderProperty.builder()
.key("key")
.value("value")
.build()))
.build())
.iotAnalytics(IotAnalyticsActionProperty.builder()
.channelName("channelName")
.roleArn("roleArn")
// the properties below are optional
.batchMode(false)
.build())
.iotEvents(IotEventsActionProperty.builder()
.inputName("inputName")
.roleArn("roleArn")
// the properties below are optional
.batchMode(false)
.messageId("messageId")
.build())
.iotSiteWise(IotSiteWiseActionProperty.builder()
.putAssetPropertyValueEntries(List.of(PutAssetPropertyValueEntryProperty.builder()
.propertyValues(List.of(AssetPropertyValueProperty.builder()
.timestamp(AssetPropertyTimestampProperty.builder()
.timeInSeconds("timeInSeconds")
// the properties below are optional
.offsetInNanos("offsetInNanos")
.build())
.value(AssetPropertyVariantProperty.builder()
.booleanValue("booleanValue")
.doubleValue("doubleValue")
.integerValue("integerValue")
.stringValue("stringValue")
.build())
// the properties below are optional
.quality("quality")
.build()))
// the properties below are optional
.assetId("assetId")
.entryId("entryId")
.propertyAlias("propertyAlias")
.propertyId("propertyId")
.build()))
.roleArn("roleArn")
.build())
.kafka(KafkaActionProperty.builder()
.clientProperties(Map.of(
"clientPropertiesKey", "clientProperties"))
.destinationArn("destinationArn")
.topic("topic")
// the properties below are optional
.headers(List.of(KafkaActionHeaderProperty.builder()
.key("key")
.value("value")
.build()))
.key("key")
.partition("partition")
.build())
.kinesis(KinesisActionProperty.builder()
.roleArn("roleArn")
.streamName("streamName")
// the properties below are optional
.partitionKey("partitionKey")
.build())
.lambda(LambdaActionProperty.builder()
.functionArn("functionArn")
.build())
.location(LocationActionProperty.builder()
.deviceId("deviceId")
.latitude("latitude")
.longitude("longitude")
.roleArn("roleArn")
.trackerName("trackerName")
// the properties below are optional
.timestamp(TimestampProperty.builder()
.value("value")
// the properties below are optional
.unit("unit")
.build())
.build())
.openSearch(OpenSearchActionProperty.builder()
.endpoint("endpoint")
.id("id")
.index("index")
.roleArn("roleArn")
.type("type")
.build())
.republish(RepublishActionProperty.builder()
.roleArn("roleArn")
.topic("topic")
// the properties below are optional
.headers(RepublishActionHeadersProperty.builder()
.contentType("contentType")
.correlationData("correlationData")
.messageExpiry("messageExpiry")
.payloadFormatIndicator("payloadFormatIndicator")
.responseTopic("responseTopic")
.userProperties(List.of(UserPropertyProperty.builder()
.key("key")
.value("value")
.build()))
.build())
.qos(123)
.build())
.s3(S3ActionProperty.builder()
.bucketName("bucketName")
.key("key")
.roleArn("roleArn")
// the properties below are optional
.cannedAcl("cannedAcl")
.build())
.sns(SnsActionProperty.builder()
.roleArn("roleArn")
.targetArn("targetArn")
// the properties below are optional
.messageFormat("messageFormat")
.build())
.sqs(SqsActionProperty.builder()
.queueUrl("queueUrl")
.roleArn("roleArn")
// the properties below are optional
.useBase64(false)
.build())
.stepFunctions(StepFunctionsActionProperty.builder()
.roleArn("roleArn")
.stateMachineName("stateMachineName")
// the properties below are optional
.executionNamePrefix("executionNamePrefix")
.build())
.timestream(TimestreamActionProperty.builder()
.databaseName("databaseName")
.dimensions(List.of(TimestreamDimensionProperty.builder()
.name("name")
.value("value")
.build()))
.roleArn("roleArn")
.tableName("tableName")
// the properties below are optional
.timestamp(TimestreamTimestampProperty.builder()
.unit("unit")
.value("value")
.build())
.build())
.build();
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classA builder forCfnTopicRule.ActionPropertystatic final classAn implementation forCfnTopicRule.ActionProperty -
Method Summary
Modifier and TypeMethodDescriptionbuilder()default ObjectChange the state of a CloudWatch alarm.default ObjectSends data to CloudWatch.default ObjectCapture a CloudWatch metric.default ObjectWrite to a DynamoDB table.default ObjectWrite to a DynamoDB table.default ObjectWrite data to an Amazon OpenSearch Service domain.default ObjectWrite to an Amazon Kinesis Firehose stream.default ObjectgetHttp()Send data to an HTTPS endpoint.default ObjectSends message data to an AWS IoT Analytics channel.default ObjectSends an input to an AWS IoT Events detector.default ObjectSends data from the MQTT message that triggered the rule to AWS IoT SiteWise asset properties.default ObjectgetKafka()Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.default ObjectWrite data to an Amazon Kinesis stream.default ObjectInvoke a Lambda function.default ObjectSends device location data to Amazon Location Service .default ObjectWrite data to an Amazon OpenSearch Service domain.default ObjectPublish to another MQTT topic.default ObjectgetS3()Write to an Amazon S3 bucket.default ObjectgetSns()Publish to an Amazon SNS topic.default ObjectgetSqs()Publish to an Amazon SQS queue.default ObjectStarts execution of a Step Functions state machine.default ObjectWrites attributes from an MQTT message.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getCloudwatchAlarm
Change the state of a CloudWatch alarm.- See Also:
-
getCloudwatchLogs
Sends data to CloudWatch.- See Also:
-
getCloudwatchMetric
Capture a CloudWatch metric.- See Also:
-
getDynamoDb
Write to a DynamoDB table.- See Also:
-
getDynamoDBv2
Write to a DynamoDB table.This is a new version of the DynamoDB action. It allows you to write each attribute in an MQTT message payload into a separate DynamoDB column.
- See Also:
-
getElasticsearch
Write data to an Amazon OpenSearch Service domain.The
Elasticsearchaction can only be used by existing rule actions. To create a new rule action or to update an existing rule action, use theOpenSearchrule action instead. For more information, see OpenSearchAction .- See Also:
-
getFirehose
Write to an Amazon Kinesis Firehose stream.- See Also:
-
getHttp
Send data to an HTTPS endpoint.- See Also:
-
getIotAnalytics
Sends message data to an AWS IoT Analytics channel.- See Also:
-
getIotEvents
Sends an input to an AWS IoT Events detector.- See Also:
-
getIotSiteWise
Sends data from the MQTT message that triggered the rule to AWS IoT SiteWise asset properties.- See Also:
-
getKafka
Send messages to an Amazon Managed Streaming for Apache Kafka (Amazon MSK) or self-managed Apache Kafka cluster.- See Also:
-
getKinesis
Write data to an Amazon Kinesis stream.- See Also:
-
getLambda
Invoke a Lambda function.- See Also:
-
getLocation
Sends device location data to Amazon Location Service .- See Also:
-
getOpenSearch
Write data to an Amazon OpenSearch Service domain.- See Also:
-
getRepublish
Publish to another MQTT topic.- See Also:
-
getS3
Write to an Amazon S3 bucket.- See Also:
-
getSns
Publish to an Amazon SNS topic.- See Also:
-
getSqs
Publish to an Amazon SQS queue.- See Also:
-
getStepFunctions
Starts execution of a Step Functions state machine.- See Also:
-
getTimestream
Writes attributes from an MQTT message.- See Also:
-
builder
-