awsiotactions

package
v1.147.0-devpreview Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 1, 2022 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewCloudWatchLogsAction_Override

func NewCloudWatchLogsAction_Override(c CloudWatchLogsAction, logGroup awslogs.ILogGroup, props *CloudWatchLogsActionProps)

Experimental.

func NewCloudWatchPutMetricAction_Override

func NewCloudWatchPutMetricAction_Override(c CloudWatchPutMetricAction, props *CloudWatchPutMetricActionProps)

Experimental.

func NewCloudWatchSetAlarmStateAction_Override

func NewCloudWatchSetAlarmStateAction_Override(c CloudWatchSetAlarmStateAction, alarm awscloudwatch.IAlarm, props *CloudWatchSetAlarmStateActionProps)

Experimental.

func NewFirehosePutRecordAction_Override

func NewFirehosePutRecordAction_Override(f FirehosePutRecordAction, stream awskinesisfirehose.IDeliveryStream, props *FirehosePutRecordActionProps)

Experimental.

func NewIotRepublishMqttAction_Override

func NewIotRepublishMqttAction_Override(i IotRepublishMqttAction, topic *string, props *IotRepublishMqttActionProps)

Experimental.

func NewKinesisPutRecordAction_Override

func NewKinesisPutRecordAction_Override(k KinesisPutRecordAction, stream awskinesis.IStream, props *KinesisPutRecordActionProps)

Experimental.

func NewLambdaFunctionAction_Override

func NewLambdaFunctionAction_Override(l LambdaFunctionAction, func_ awslambda.IFunction)

Experimental.

func NewS3PutObjectAction_Override

func NewS3PutObjectAction_Override(s S3PutObjectAction, bucket awss3.IBucket, props *S3PutObjectActionProps)

Experimental.

func NewSnsTopicAction_Override

func NewSnsTopicAction_Override(s SnsTopicAction, topic awssns.ITopic, props *SnsTopicActionProps)

Experimental.

func NewSqsQueueAction_Override

func NewSqsQueueAction_Override(s SqsQueueAction, queue awssqs.IQueue, props *SqsQueueActionProps)

Experimental.

Types

type CloudWatchLogsAction

type CloudWatchLogsAction interface {
	awsiot.IAction
	Bind(rule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to send data to Amazon CloudWatch Logs.

TODO: EXAMPLE

Experimental.

func NewCloudWatchLogsAction

func NewCloudWatchLogsAction(logGroup awslogs.ILogGroup, props *CloudWatchLogsActionProps) CloudWatchLogsAction

Experimental.

type CloudWatchLogsActionProps

type CloudWatchLogsActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
}

Configuration properties of an action for CloudWatch Logs.

TODO: EXAMPLE

Experimental.

type CloudWatchPutMetricAction

type CloudWatchPutMetricAction interface {
	awsiot.IAction
	Bind(rule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to capture an Amazon CloudWatch metric.

TODO: EXAMPLE

Experimental.

func NewCloudWatchPutMetricAction

func NewCloudWatchPutMetricAction(props *CloudWatchPutMetricActionProps) CloudWatchPutMetricAction

Experimental.

type CloudWatchPutMetricActionProps

type CloudWatchPutMetricActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// The CloudWatch metric name.
	//
	// Supports substitution templates.
	// See: https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html
	//
	// Experimental.
	MetricName *string `json:"metricName" yaml:"metricName"`
	// The CloudWatch metric namespace name.
	//
	// Supports substitution templates.
	// See: https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html
	//
	// Experimental.
	MetricNamespace *string `json:"metricNamespace" yaml:"metricNamespace"`
	// The metric unit supported by CloudWatch.
	//
	// Supports substitution templates.
	// See: https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html
	//
	// Experimental.
	MetricUnit *string `json:"metricUnit" yaml:"metricUnit"`
	// A string that contains the CloudWatch metric value.
	//
	// Supports substitution templates.
	// See: https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html
	//
	// Experimental.
	MetricValue *string `json:"metricValue" yaml:"metricValue"`
	// A string that contains the timestamp, expressed in seconds in Unix epoch time.
	//
	// Supports substitution templates.
	// See: https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html
	//
	// Experimental.
	MetricTimestamp *string `json:"metricTimestamp" yaml:"metricTimestamp"`
}

Configuration properties of an action for CloudWatch metric.

TODO: EXAMPLE

Experimental.

type CloudWatchSetAlarmStateAction

type CloudWatchSetAlarmStateAction interface {
	awsiot.IAction
	Bind(topicRule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to change the state of an Amazon CloudWatch alarm.

TODO: EXAMPLE

Experimental.

func NewCloudWatchSetAlarmStateAction

func NewCloudWatchSetAlarmStateAction(alarm awscloudwatch.IAlarm, props *CloudWatchSetAlarmStateActionProps) CloudWatchSetAlarmStateAction

Experimental.

type CloudWatchSetAlarmStateActionProps

type CloudWatchSetAlarmStateActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// The value of the alarm state to set.
	// Experimental.
	AlarmStateToSet awscloudwatch.AlarmState `json:"alarmStateToSet" yaml:"alarmStateToSet"`
	// The reason for the alarm change.
	// Experimental.
	Reason *string `json:"reason" yaml:"reason"`
}

Configuration properties of an action for CloudWatch alarm.

TODO: EXAMPLE

Experimental.

type CommonActionProps

type CommonActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
}

Common properties shared by Actions it access to AWS service.

TODO: EXAMPLE

Experimental.

type FirehosePutRecordAction

type FirehosePutRecordAction interface {
	awsiot.IAction
	Bind(rule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to put the record from an MQTT message to the Kinesis Data Firehose stream.

TODO: EXAMPLE

Experimental.

type FirehosePutRecordActionProps

type FirehosePutRecordActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// Whether to deliver the Kinesis Data Firehose stream as a batch by using `PutRecordBatch`.
	//
	// When batchMode is true and the rule's SQL statement evaluates to an Array, each Array
	// element forms one record in the PutRecordBatch request. The resulting array can't have
	// more than 500 records.
	// Experimental.
	BatchMode *bool `json:"batchMode" yaml:"batchMode"`
	// A character separator that will be used to separate records written to the Kinesis Data Firehose stream.
	// Experimental.
	RecordSeparator FirehoseRecordSeparator `json:"recordSeparator" yaml:"recordSeparator"`
}

Configuration properties of an action for the Kinesis Data Firehose stream.

TODO: EXAMPLE

Experimental.

type FirehoseRecordSeparator

type FirehoseRecordSeparator string

Record Separator to be used to separate records.

TODO: EXAMPLE

Experimental.

const (
	FirehoseRecordSeparator_NEWLINE         FirehoseRecordSeparator = "NEWLINE"
	FirehoseRecordSeparator_TAB             FirehoseRecordSeparator = "TAB"
	FirehoseRecordSeparator_WINDOWS_NEWLINE FirehoseRecordSeparator = "WINDOWS_NEWLINE"
	FirehoseRecordSeparator_COMMA           FirehoseRecordSeparator = "COMMA"
)

type IotRepublishMqttAction

type IotRepublishMqttAction interface {
	awsiot.IAction
	Bind(rule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to put the record from an MQTT message to republish another MQTT topic.

TODO: EXAMPLE

Experimental.

func NewIotRepublishMqttAction

func NewIotRepublishMqttAction(topic *string, props *IotRepublishMqttActionProps) IotRepublishMqttAction

Experimental.

type IotRepublishMqttActionProps

type IotRepublishMqttActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// The Quality of Service (QoS) level to use when republishing messages.
	// See: https://docs.aws.amazon.com/iot/latest/developerguide/mqtt.html#mqtt-qos
	//
	// Experimental.
	QualityOfService MqttQualityOfService `json:"qualityOfService" yaml:"qualityOfService"`
}

Configuration properties of an action to republish MQTT messages.

TODO: EXAMPLE

Experimental.

type KinesisPutRecordAction

type KinesisPutRecordAction interface {
	awsiot.IAction
	Bind(rule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to put the record from an MQTT message to the Kinesis Data stream.

TODO: EXAMPLE

Experimental.

func NewKinesisPutRecordAction

func NewKinesisPutRecordAction(stream awskinesis.IStream, props *KinesisPutRecordActionProps) KinesisPutRecordAction

Experimental.

type KinesisPutRecordActionProps

type KinesisPutRecordActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// The partition key used to determine to which shard the data is written.
	//
	// The partition key is usually composed of an expression (for example, ${topic()} or ${timestamp()}).
	// See: https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecord.html#API_PutRecord_RequestParameters
	//
	// Experimental.
	PartitionKey *string `json:"partitionKey" yaml:"partitionKey"`
}

Configuration properties of an action for the Kinesis Data stream.

TODO: EXAMPLE

Experimental.

type LambdaFunctionAction

type LambdaFunctionAction interface {
	awsiot.IAction
	Bind(topicRule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to invoke an AWS Lambda function, passing in an MQTT message.

TODO: EXAMPLE

Experimental.

func NewLambdaFunctionAction

func NewLambdaFunctionAction(func_ awslambda.IFunction) LambdaFunctionAction

Experimental.

type MqttQualityOfService

type MqttQualityOfService string

MQTT Quality of Service (QoS) indicates the level of assurance for delivery of an MQTT Message.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/iot/latest/developerguide/mqtt.html#mqtt-qos

Experimental.

const (
	MqttQualityOfService_ZERO_OR_MORE_TIMES MqttQualityOfService = "ZERO_OR_MORE_TIMES"
	MqttQualityOfService_AT_LEAST_ONCE      MqttQualityOfService = "AT_LEAST_ONCE"
)

type S3PutObjectAction

type S3PutObjectAction interface {
	awsiot.IAction
	Bind(rule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to write the data from an MQTT message to an Amazon S3 bucket.

TODO: EXAMPLE

Experimental.

func NewS3PutObjectAction

func NewS3PutObjectAction(bucket awss3.IBucket, props *S3PutObjectActionProps) S3PutObjectAction

Experimental.

type S3PutObjectActionProps

type S3PutObjectActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// The Amazon S3 canned ACL that controls access to the object identified by the object key.
	// See: https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl
	//
	// Experimental.
	AccessControl awss3.BucketAccessControl `json:"accessControl" yaml:"accessControl"`
	// The path to the file where the data is written.
	//
	// Supports substitution templates.
	// See: https://docs.aws.amazon.com/iot/latest/developerguide/iot-substitution-templates.html
	//
	// Experimental.
	Key *string `json:"key" yaml:"key"`
}

Configuration properties of an action for s3.

TODO: EXAMPLE

Experimental.

type SnsActionMessageFormat

type SnsActionMessageFormat string

SNS topic action message format options.

TODO: EXAMPLE

Experimental.

const (
	SnsActionMessageFormat_RAW  SnsActionMessageFormat = "RAW"
	SnsActionMessageFormat_JSON SnsActionMessageFormat = "JSON"
)

type SnsTopicAction

type SnsTopicAction interface {
	awsiot.IAction
	Bind(rule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to write the data from an MQTT message to an Amazon SNS topic.

TODO: EXAMPLE

See: https://docs.aws.amazon.com/iot/latest/developerguide/sns-rule-action.html

Experimental.

func NewSnsTopicAction

func NewSnsTopicAction(topic awssns.ITopic, props *SnsTopicActionProps) SnsTopicAction

Experimental.

type SnsTopicActionProps

type SnsTopicActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// The message format of the message to publish.
	//
	// SNS uses this setting to determine if the payload should be parsed and relevant platform-specific bits of the payload should be extracted.
	// See: https://docs.aws.amazon.com/sns/latest/dg/sns-message-and-json-formats.html
	//
	// Experimental.
	MessageFormat SnsActionMessageFormat `json:"messageFormat" yaml:"messageFormat"`
}

Configuration options for the SNS topic action.

TODO: EXAMPLE

Experimental.

type SqsQueueAction

type SqsQueueAction interface {
	awsiot.IAction
	Bind(rule awsiot.ITopicRule) *awsiot.ActionConfig
}

The action to write the data from an MQTT message to an Amazon SQS queue.

TODO: EXAMPLE

Experimental.

func NewSqsQueueAction

func NewSqsQueueAction(queue awssqs.IQueue, props *SqsQueueActionProps) SqsQueueAction

Experimental.

type SqsQueueActionProps

type SqsQueueActionProps struct {
	// The IAM role that allows access to AWS service.
	// Experimental.
	Role awsiam.IRole `json:"role" yaml:"role"`
	// Specifies whether to use Base64 encoding.
	// Experimental.
	UseBase64 *bool `json:"useBase64" yaml:"useBase64"`
}

Configuration properties of an action for SQS.

TODO: EXAMPLE

Experimental.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL