interface StateProperty
| Language | Type name |
|---|---|
.NET | Amazon.CDK.CfnPropertyMixins.AWS.IoTEvents.CfnDetectorModelPropsMixin.StateProperty |
Go | github.com/aws/aws-cdk-go/awscdkcfnpropertymixins/v2/awsiotevents#CfnDetectorModelPropsMixin_StateProperty |
Java | software.amazon.awscdk.cfnpropertymixins.services.iotevents.CfnDetectorModelPropsMixin.StateProperty |
Python | aws_cdk.cfn_property_mixins.aws_iotevents.CfnDetectorModelPropsMixin.StateProperty |
TypeScript | @aws-cdk/cfn-property-mixins » aws_iotevents » CfnDetectorModelPropsMixin » StateProperty |
Information that defines a state of a detector.
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_iotevents as iotevents } from '@aws-cdk/cfn-property-mixins';
const stateProperty: iotevents.CfnDetectorModelPropsMixin.StateProperty = {
onEnter: {
events: [{
actions: [{
clearTimer: {
timerName: 'timerName',
},
dynamoDb: {
hashKeyField: 'hashKeyField',
hashKeyType: 'hashKeyType',
hashKeyValue: 'hashKeyValue',
operation: 'operation',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
payloadField: 'payloadField',
rangeKeyField: 'rangeKeyField',
rangeKeyType: 'rangeKeyType',
rangeKeyValue: 'rangeKeyValue',
tableName: 'tableName',
},
dynamoDBv2: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
tableName: 'tableName',
},
firehose: {
deliveryStreamName: 'deliveryStreamName',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
separator: 'separator',
},
iotEvents: {
inputName: 'inputName',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
iotSiteWise: {
assetId: 'assetId',
entryId: 'entryId',
propertyAlias: 'propertyAlias',
propertyId: 'propertyId',
propertyValue: {
quality: 'quality',
timestamp: {
offsetInNanos: 'offsetInNanos',
timeInSeconds: 'timeInSeconds',
},
value: {
booleanValue: 'booleanValue',
doubleValue: 'doubleValue',
integerValue: 'integerValue',
stringValue: 'stringValue',
},
},
},
iotTopicPublish: {
mqttTopic: 'mqttTopic',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
lambda: {
functionArn: 'functionArn',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
resetTimer: {
timerName: 'timerName',
},
setTimer: {
durationExpression: 'durationExpression',
seconds: 123,
timerName: 'timerName',
},
setVariable: {
value: 'value',
variableName: 'variableName',
},
sns: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
targetArn: 'targetArn',
},
sqs: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
queueUrl: 'queueUrl',
useBase64: false,
},
}],
condition: 'condition',
eventName: 'eventName',
}],
},
onExit: {
events: [{
actions: [{
clearTimer: {
timerName: 'timerName',
},
dynamoDb: {
hashKeyField: 'hashKeyField',
hashKeyType: 'hashKeyType',
hashKeyValue: 'hashKeyValue',
operation: 'operation',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
payloadField: 'payloadField',
rangeKeyField: 'rangeKeyField',
rangeKeyType: 'rangeKeyType',
rangeKeyValue: 'rangeKeyValue',
tableName: 'tableName',
},
dynamoDBv2: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
tableName: 'tableName',
},
firehose: {
deliveryStreamName: 'deliveryStreamName',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
separator: 'separator',
},
iotEvents: {
inputName: 'inputName',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
iotSiteWise: {
assetId: 'assetId',
entryId: 'entryId',
propertyAlias: 'propertyAlias',
propertyId: 'propertyId',
propertyValue: {
quality: 'quality',
timestamp: {
offsetInNanos: 'offsetInNanos',
timeInSeconds: 'timeInSeconds',
},
value: {
booleanValue: 'booleanValue',
doubleValue: 'doubleValue',
integerValue: 'integerValue',
stringValue: 'stringValue',
},
},
},
iotTopicPublish: {
mqttTopic: 'mqttTopic',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
lambda: {
functionArn: 'functionArn',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
resetTimer: {
timerName: 'timerName',
},
setTimer: {
durationExpression: 'durationExpression',
seconds: 123,
timerName: 'timerName',
},
setVariable: {
value: 'value',
variableName: 'variableName',
},
sns: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
targetArn: 'targetArn',
},
sqs: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
queueUrl: 'queueUrl',
useBase64: false,
},
}],
condition: 'condition',
eventName: 'eventName',
}],
},
onInput: {
events: [{
actions: [{
clearTimer: {
timerName: 'timerName',
},
dynamoDb: {
hashKeyField: 'hashKeyField',
hashKeyType: 'hashKeyType',
hashKeyValue: 'hashKeyValue',
operation: 'operation',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
payloadField: 'payloadField',
rangeKeyField: 'rangeKeyField',
rangeKeyType: 'rangeKeyType',
rangeKeyValue: 'rangeKeyValue',
tableName: 'tableName',
},
dynamoDBv2: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
tableName: 'tableName',
},
firehose: {
deliveryStreamName: 'deliveryStreamName',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
separator: 'separator',
},
iotEvents: {
inputName: 'inputName',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
iotSiteWise: {
assetId: 'assetId',
entryId: 'entryId',
propertyAlias: 'propertyAlias',
propertyId: 'propertyId',
propertyValue: {
quality: 'quality',
timestamp: {
offsetInNanos: 'offsetInNanos',
timeInSeconds: 'timeInSeconds',
},
value: {
booleanValue: 'booleanValue',
doubleValue: 'doubleValue',
integerValue: 'integerValue',
stringValue: 'stringValue',
},
},
},
iotTopicPublish: {
mqttTopic: 'mqttTopic',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
lambda: {
functionArn: 'functionArn',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
resetTimer: {
timerName: 'timerName',
},
setTimer: {
durationExpression: 'durationExpression',
seconds: 123,
timerName: 'timerName',
},
setVariable: {
value: 'value',
variableName: 'variableName',
},
sns: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
targetArn: 'targetArn',
},
sqs: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
queueUrl: 'queueUrl',
useBase64: false,
},
}],
condition: 'condition',
eventName: 'eventName',
}],
transitionEvents: [{
actions: [{
clearTimer: {
timerName: 'timerName',
},
dynamoDb: {
hashKeyField: 'hashKeyField',
hashKeyType: 'hashKeyType',
hashKeyValue: 'hashKeyValue',
operation: 'operation',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
payloadField: 'payloadField',
rangeKeyField: 'rangeKeyField',
rangeKeyType: 'rangeKeyType',
rangeKeyValue: 'rangeKeyValue',
tableName: 'tableName',
},
dynamoDBv2: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
tableName: 'tableName',
},
firehose: {
deliveryStreamName: 'deliveryStreamName',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
separator: 'separator',
},
iotEvents: {
inputName: 'inputName',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
iotSiteWise: {
assetId: 'assetId',
entryId: 'entryId',
propertyAlias: 'propertyAlias',
propertyId: 'propertyId',
propertyValue: {
quality: 'quality',
timestamp: {
offsetInNanos: 'offsetInNanos',
timeInSeconds: 'timeInSeconds',
},
value: {
booleanValue: 'booleanValue',
doubleValue: 'doubleValue',
integerValue: 'integerValue',
stringValue: 'stringValue',
},
},
},
iotTopicPublish: {
mqttTopic: 'mqttTopic',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
lambda: {
functionArn: 'functionArn',
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
},
resetTimer: {
timerName: 'timerName',
},
setTimer: {
durationExpression: 'durationExpression',
seconds: 123,
timerName: 'timerName',
},
setVariable: {
value: 'value',
variableName: 'variableName',
},
sns: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
targetArn: 'targetArn',
},
sqs: {
payload: {
contentExpression: 'contentExpression',
type: 'type',
},
queueUrl: 'queueUrl',
useBase64: false,
},
}],
condition: 'condition',
eventName: 'eventName',
nextState: 'nextState',
}],
},
stateName: 'stateName',
};
Properties
| Name | Type | Description |
|---|---|---|
| on | IResolvable | On | When entering this state, perform these actions if the condition is TRUE. |
| on | IResolvable | On | When exiting this state, perform these actions if the specified condition is TRUE . |
| on | IResolvable | On | When an input is received and the condition is TRUE, perform the specified actions . |
| state | string | The name of the state. |
onEnter?
Type:
IResolvable | On
(optional)
When entering this state, perform these actions if the condition is TRUE.
onExit?
Type:
IResolvable | On
(optional)
When exiting this state, perform these actions if the specified condition is TRUE .
onInput?
Type:
IResolvable | On
(optional)
When an input is received and the condition is TRUE, perform the specified actions .
stateName?
Type:
string
(optional)
The name of the state.

.NET
Go
Java
Python
TypeScript