Describes a detector model. If the version
parameter is not specified, information about the latest version is returned.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
describe-detector-model
--detector-model-name <value>
[--detector-model-version <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--detector-model-name
(string)
The name of the detector model.
--detector-model-version
(string)
The version of the detector model.
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command.
See ‘aws help’ for descriptions of global parameters.
To get information about a detector model
The following describe-detector-model
example displays details for the specified detector model. Because the version
parameter is not specified, information about the latest version is returned.
aws iotevents describe-detector-model \
--detector-model-name motorDetectorModel
Output:
{
"detectorModel": {
"detectorModelConfiguration": {
"status": "ACTIVE",
"lastUpdateTime": 1560796816.077,
"roleArn": "arn:aws:iam::123456789012:role/IoTEventsRole",
"creationTime": 1560796816.077,
"detectorModelArn": "arn:aws:iotevents:us-west-2:123456789012:detectorModel/motorDetectorModel",
"key": "motorid",
"detectorModelName": "motorDetectorModel",
"detectorModelVersion": "1"
},
"detectorModelDefinition": {
"states": [
{
"onInput": {
"transitionEvents": [
{
"eventName": "Overpressurized",
"actions": [
{
"setVariable": {
"variableName": "pressureThresholdBreached",
"value": "$variable.pressureThresholdBreached + 3"
}
}
],
"condition": "$input.PressureInput.sensorData.pressure > 70",
"nextState": "Dangerous"
}
],
"events": []
},
"stateName": "Normal",
"onEnter": {
"events": [
{
"eventName": "init",
"actions": [
{
"setVariable": {
"variableName": "pressureThresholdBreached",
"value": "0"
}
}
],
"condition": "true"
}
]
},
"onExit": {
"events": []
}
},
{
"onInput": {
"transitionEvents": [
{
"eventName": "BackToNormal",
"actions": [],
"condition": "$input.PressureInput.sensorData.pressure <= 70 && $variable.pressureThresholdBreached <= 1",
"nextState": "Normal"
}
],
"events": [
{
"eventName": "Overpressurized",
"actions": [
{
"setVariable": {
"variableName": "pressureThresholdBreached",
"value": "3"
}
}
],
"condition": "$input.PressureInput.sensorData.pressure > 70"
},
{
"eventName": "Pressure Okay",
"actions": [
{
"setVariable": {
"variableName": "pressureThresholdBreached",
"value": "$variable.pressureThresholdBreached - 1"
}
}
],
"condition": "$input.PressureInput.sensorData.pressure <= 70"
}
]
},
"stateName": "Dangerous",
"onEnter": {
"events": [
{
"eventName": "Pressure Threshold Breached",
"actions": [
{
"sns": {
"targetArn": "arn:aws:sns:us-east-1:123456789012:underPressureAction"
}
}
],
"condition": "$variable.pressureThresholdBreached > 1"
}
]
},
"onExit": {
"events": [
{
"eventName": "Normal Pressure Restored",
"actions": [
{
"sns": {
"targetArn": "arn:aws:sns:us-east-1:123456789012:pressureClearedAction"
}
}
],
"condition": "true"
}
]
}
}
],
"initialStateName": "Normal"
}
}
}
For more information, see DescribeDetectorModel in the AWS IoT Events API Reference.
detectorModel -> (structure)
Information about the detector model.
detectorModelDefinition -> (structure)
Information that defines how a detector operates.
states -> (list)
Information about the states of the detector.
(structure)
Information that defines a state of a detector.
stateName -> (string)
The name of the state.
onInput -> (structure)
When an input is received and the
condition
is TRUE, perform the specifiedactions
.events -> (list)
Specifies the actions performed when the
condition
evaluates to TRUE.(structure)
Specifies the
actions
to be performed when thecondition
evaluates to TRUE.eventName -> (string)
The name of the event.
condition -> (string)
Optional. The Boolean expression that, when TRUE, causes the
actions
to be performed. If not present, the actions are performed (=TRUE). If the expression result is not a Boolean value, the actions are not performed (=FALSE).actions -> (list)
The actions to be performed.
(structure)
An action to be performed when the
condition
is TRUE.setVariable -> (structure)
Sets a variable to a specified value.
variableName -> (string)
The name of the variable.
value -> (string)
The new value of the variable.
sns -> (structure)
Sends an Amazon SNS message.
targetArn -> (string)
The ARN of the Amazon SNS target where the message is sent.
payload -> (structure)
You can configure the action payload when you send a message as an Amazon SNS push notification.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotTopicPublish -> (structure)
Publishes an MQTT message with the given topic to the AWS IoT message broker.
mqttTopic -> (string)
The MQTT topic of the message. You can use a string expression that includes variables (
$variable.<variable-name>
) and input values ($input.<input-name>.<path-to-datum>
) as the topic string.payload -> (structure)
You can configure the action payload when you publish a message to an AWS IoT Core topic.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.setTimer -> (structure)
Information needed to set the timer.
timerName -> (string)
The name of the timer.
seconds -> (integer)
The number of seconds until the timer expires. The minimum value is 60 seconds to ensure accuracy. The maximum value is 31622400 seconds.
durationExpression -> (string)
The duration of the timer, in seconds. You can use a string expression that includes numbers, variables (
$variable.<variable-name>
), and input values ($input.<input-name>.<path-to-datum>
) as the duration. The range of the duration is 1-31622400 seconds. To ensure accuracy, the minimum duration is 60 seconds. The evaluated result of the duration is rounded down to the nearest whole number.clearTimer -> (structure)
Information needed to clear the timer.
timerName -> (string)
The name of the timer to clear.
resetTimer -> (structure)
Information needed to reset the timer.
timerName -> (string)
The name of the timer to reset.
lambda -> (structure)
Calls a Lambda function, passing in information about the detector model instance and the event that triggered the action.
functionArn -> (string)
The ARN of the Lambda function that is executed.
payload -> (structure)
You can configure the action payload when you send a message to a Lambda function.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotEvents -> (structure)
Sends AWS IoT Events input, which passes information about the detector model instance and the event that triggered the action.
inputName -> (string)
The name of the AWS IoT Events input where the data is sent.
payload -> (structure)
You can configure the action payload when you send a message to an AWS IoT Events input.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.sqs -> (structure)
Sends information about the detector model instance and the event that triggered the action to an Amazon SQS queue.
queueUrl -> (string)
The URL of the SQS queue where the data is written.
useBase64 -> (boolean)
Set this to TRUE if you want the data to be base-64 encoded before it is written to the queue. Otherwise, set this to FALSE.
payload -> (structure)
You can configure the action payload when you send a message to an Amazon SQS queue.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.firehose -> (structure)
Sends information about the detector model instance and the event that triggered the action to an Amazon Kinesis Data Firehose delivery stream.
deliveryStreamName -> (string)
The name of the Kinesis Data Firehose delivery stream where the data is written.
separator -> (string)
A character separator that is used to separate records written to the Kinesis Data Firehose delivery stream. Valid values are: ‘n’ (newline), ‘t’ (tab), ‘rn’ (Windows newline), ‘,’ (comma).
payload -> (structure)
You can configure the action payload when you send a message to an Amazon Kinesis Data Firehose delivery stream.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.dynamoDB -> (structure)
Writes to the DynamoDB table that you created. The default action payload contains all attribute-value pairs that have the information about the detector model instance and the event that triggered the action. You can customize the payload . One column of the DynamoDB table receives all attribute-value pairs in the payload that you specify. For more information, see Actions in AWS IoT Events Developer Guide .
hashKeyType -> (string)
The data type for the hash key (also called the partition key). You can specify the following values:
'STRING'
- The hash key is a string.
'NUMBER'
- The hash key is a number.If you don’t specify
hashKeyType
, the default value is'STRING'
.hashKeyField -> (string)
The name of the hash key (also called the partition key). The
hashKeyField
value must match the partition key of the target DynamoDB table.hashKeyValue -> (string)
The value of the hash key (also called the partition key).
rangeKeyType -> (string)
The data type for the range key (also called the sort key), You can specify the following values:
'STRING'
- The range key is a string.
'NUMBER'
- The range key is number.If you don’t specify
rangeKeyField
, the default value is'STRING'
.rangeKeyField -> (string)
The name of the range key (also called the sort key). The
rangeKeyField
value must match the sort key of the target DynamoDB table.rangeKeyValue -> (string)
The value of the range key (also called the sort key).
operation -> (string)
The type of operation to perform. You can specify the following values:
'INSERT'
- Insert data as a new item into the DynamoDB table. This item uses the specified hash key as a partition key. If you specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with new data. This item’s partition key must match the specified hash key. If you specified a range key, the range key must match the item’s sort key.
'DELETE'
- Delete an existing item of the DynamoDB table. This item’s partition key must match the specified hash key. If you specified a range key, the range key must match the item’s sort key.If you don’t specify this parameter, AWS IoT Events triggers the
'INSERT'
operation.payloadField -> (string)
The name of the DynamoDB column that receives the action payload.
If you don’t specify this parameter, the name of the DynamoDB column is
payload
.tableName -> (string)
The name of the DynamoDB table. The
tableName
value must match the table name of the target DynamoDB table.payload -> (structure)
Information needed to configure the payload.
By default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use
contentExpression
.contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.dynamoDBv2 -> (structure)
Writes to the DynamoDB table that you created. The default action payload contains all attribute-value pairs that have the information about the detector model instance and the event that triggered the action. You can customize the payload . A separate column of the DynamoDB table receives one attribute-value pair in the payload that you specify. For more information, see Actions in AWS IoT Events Developer Guide .
tableName -> (string)
The name of the DynamoDB table.
payload -> (structure)
Information needed to configure the payload.
By default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use
contentExpression
.contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotSiteWise -> (structure)
Sends information about the detector model instance and the event that triggered the action to an asset property in AWS IoT SiteWise .
entryId -> (string)
A unique identifier for this entry. You can use the entry ID to track which data entry causes an error in case of failure. The default is a new unique identifier.
assetId -> (string)
The ID of the asset that has the specified property.
propertyId -> (string)
The ID of the asset property.
propertyAlias -> (string)
The alias of the asset property.
propertyValue -> (structure)
The value to send to the asset property. This value contains timestamp, quality, and value (TQV) information.
value -> (structure)
The value to send to an asset property.
stringValue -> (string)
The asset property value is a string. You must use an expression, and the evaluated result should be a string.
integerValue -> (string)
The asset property value is an integer. You must use an expression, and the evaluated result should be an integer.
doubleValue -> (string)
The asset property value is a double. You must use an expression, and the evaluated result should be a double.
booleanValue -> (string)
The asset property value is a Boolean value that must be
'TRUE'
or'FALSE'
. You must use an expression, and the evaluated result should be a Boolean value.timestamp -> (structure)
The timestamp associated with the asset property value. The default is the current event time.
timeInSeconds -> (string)
The timestamp, in seconds, in the Unix epoch format. The valid range is between 1-31556889864403199.
offsetInNanos -> (string)
The nanosecond offset converted from
timeInSeconds
. The valid range is between 0-999999999.quality -> (string)
The quality of the asset property value. The value must be
'GOOD'
,'BAD'
, or'UNCERTAIN'
.transitionEvents -> (list)
Specifies the actions performed, and the next state entered, when a
condition
evaluates to TRUE.(structure)
Specifies the actions performed and the next state entered when a
condition
evaluates to TRUE.eventName -> (string)
The name of the transition event.
condition -> (string)
Required. A Boolean expression that when TRUE causes the actions to be performed and the
nextState
to be entered.actions -> (list)
The actions to be performed.
(structure)
An action to be performed when the
condition
is TRUE.setVariable -> (structure)
Sets a variable to a specified value.
variableName -> (string)
The name of the variable.
value -> (string)
The new value of the variable.
sns -> (structure)
Sends an Amazon SNS message.
targetArn -> (string)
The ARN of the Amazon SNS target where the message is sent.
payload -> (structure)
You can configure the action payload when you send a message as an Amazon SNS push notification.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotTopicPublish -> (structure)
Publishes an MQTT message with the given topic to the AWS IoT message broker.
mqttTopic -> (string)
The MQTT topic of the message. You can use a string expression that includes variables (
$variable.<variable-name>
) and input values ($input.<input-name>.<path-to-datum>
) as the topic string.payload -> (structure)
You can configure the action payload when you publish a message to an AWS IoT Core topic.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.setTimer -> (structure)
Information needed to set the timer.
timerName -> (string)
The name of the timer.
seconds -> (integer)
The number of seconds until the timer expires. The minimum value is 60 seconds to ensure accuracy. The maximum value is 31622400 seconds.
durationExpression -> (string)
The duration of the timer, in seconds. You can use a string expression that includes numbers, variables (
$variable.<variable-name>
), and input values ($input.<input-name>.<path-to-datum>
) as the duration. The range of the duration is 1-31622400 seconds. To ensure accuracy, the minimum duration is 60 seconds. The evaluated result of the duration is rounded down to the nearest whole number.clearTimer -> (structure)
Information needed to clear the timer.
timerName -> (string)
The name of the timer to clear.
resetTimer -> (structure)
Information needed to reset the timer.
timerName -> (string)
The name of the timer to reset.
lambda -> (structure)
Calls a Lambda function, passing in information about the detector model instance and the event that triggered the action.
functionArn -> (string)
The ARN of the Lambda function that is executed.
payload -> (structure)
You can configure the action payload when you send a message to a Lambda function.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotEvents -> (structure)
Sends AWS IoT Events input, which passes information about the detector model instance and the event that triggered the action.
inputName -> (string)
The name of the AWS IoT Events input where the data is sent.
payload -> (structure)
You can configure the action payload when you send a message to an AWS IoT Events input.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.sqs -> (structure)
Sends information about the detector model instance and the event that triggered the action to an Amazon SQS queue.
queueUrl -> (string)
The URL of the SQS queue where the data is written.
useBase64 -> (boolean)
Set this to TRUE if you want the data to be base-64 encoded before it is written to the queue. Otherwise, set this to FALSE.
payload -> (structure)
You can configure the action payload when you send a message to an Amazon SQS queue.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.firehose -> (structure)
Sends information about the detector model instance and the event that triggered the action to an Amazon Kinesis Data Firehose delivery stream.
deliveryStreamName -> (string)
The name of the Kinesis Data Firehose delivery stream where the data is written.
separator -> (string)
A character separator that is used to separate records written to the Kinesis Data Firehose delivery stream. Valid values are: ‘n’ (newline), ‘t’ (tab), ‘rn’ (Windows newline), ‘,’ (comma).
payload -> (structure)
You can configure the action payload when you send a message to an Amazon Kinesis Data Firehose delivery stream.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.dynamoDB -> (structure)
Writes to the DynamoDB table that you created. The default action payload contains all attribute-value pairs that have the information about the detector model instance and the event that triggered the action. You can customize the payload . One column of the DynamoDB table receives all attribute-value pairs in the payload that you specify. For more information, see Actions in AWS IoT Events Developer Guide .
hashKeyType -> (string)
The data type for the hash key (also called the partition key). You can specify the following values:
'STRING'
- The hash key is a string.
'NUMBER'
- The hash key is a number.If you don’t specify
hashKeyType
, the default value is'STRING'
.hashKeyField -> (string)
The name of the hash key (also called the partition key). The
hashKeyField
value must match the partition key of the target DynamoDB table.hashKeyValue -> (string)
The value of the hash key (also called the partition key).
rangeKeyType -> (string)
The data type for the range key (also called the sort key), You can specify the following values:
'STRING'
- The range key is a string.
'NUMBER'
- The range key is number.If you don’t specify
rangeKeyField
, the default value is'STRING'
.rangeKeyField -> (string)
The name of the range key (also called the sort key). The
rangeKeyField
value must match the sort key of the target DynamoDB table.rangeKeyValue -> (string)
The value of the range key (also called the sort key).
operation -> (string)
The type of operation to perform. You can specify the following values:
'INSERT'
- Insert data as a new item into the DynamoDB table. This item uses the specified hash key as a partition key. If you specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with new data. This item’s partition key must match the specified hash key. If you specified a range key, the range key must match the item’s sort key.
'DELETE'
- Delete an existing item of the DynamoDB table. This item’s partition key must match the specified hash key. If you specified a range key, the range key must match the item’s sort key.If you don’t specify this parameter, AWS IoT Events triggers the
'INSERT'
operation.payloadField -> (string)
The name of the DynamoDB column that receives the action payload.
If you don’t specify this parameter, the name of the DynamoDB column is
payload
.tableName -> (string)
The name of the DynamoDB table. The
tableName
value must match the table name of the target DynamoDB table.payload -> (structure)
Information needed to configure the payload.
By default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use
contentExpression
.contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.dynamoDBv2 -> (structure)
Writes to the DynamoDB table that you created. The default action payload contains all attribute-value pairs that have the information about the detector model instance and the event that triggered the action. You can customize the payload . A separate column of the DynamoDB table receives one attribute-value pair in the payload that you specify. For more information, see Actions in AWS IoT Events Developer Guide .
tableName -> (string)
The name of the DynamoDB table.
payload -> (structure)
Information needed to configure the payload.
By default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use
contentExpression
.contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotSiteWise -> (structure)
Sends information about the detector model instance and the event that triggered the action to an asset property in AWS IoT SiteWise .
entryId -> (string)
A unique identifier for this entry. You can use the entry ID to track which data entry causes an error in case of failure. The default is a new unique identifier.
assetId -> (string)
The ID of the asset that has the specified property.
propertyId -> (string)
The ID of the asset property.
propertyAlias -> (string)
The alias of the asset property.
propertyValue -> (structure)
The value to send to the asset property. This value contains timestamp, quality, and value (TQV) information.
value -> (structure)
The value to send to an asset property.
stringValue -> (string)
The asset property value is a string. You must use an expression, and the evaluated result should be a string.
integerValue -> (string)
The asset property value is an integer. You must use an expression, and the evaluated result should be an integer.
doubleValue -> (string)
The asset property value is a double. You must use an expression, and the evaluated result should be a double.
booleanValue -> (string)
The asset property value is a Boolean value that must be
'TRUE'
or'FALSE'
. You must use an expression, and the evaluated result should be a Boolean value.timestamp -> (structure)
The timestamp associated with the asset property value. The default is the current event time.
timeInSeconds -> (string)
The timestamp, in seconds, in the Unix epoch format. The valid range is between 1-31556889864403199.
offsetInNanos -> (string)
The nanosecond offset converted from
timeInSeconds
. The valid range is between 0-999999999.quality -> (string)
The quality of the asset property value. The value must be
'GOOD'
,'BAD'
, or'UNCERTAIN'
.nextState -> (string)
The next state to enter.
onEnter -> (structure)
When entering this state, perform these
actions
if thecondition
is TRUE.events -> (list)
Specifies the actions that are performed when the state is entered and the
condition
isTRUE
.(structure)
Specifies the
actions
to be performed when thecondition
evaluates to TRUE.eventName -> (string)
The name of the event.
condition -> (string)
Optional. The Boolean expression that, when TRUE, causes the
actions
to be performed. If not present, the actions are performed (=TRUE). If the expression result is not a Boolean value, the actions are not performed (=FALSE).actions -> (list)
The actions to be performed.
(structure)
An action to be performed when the
condition
is TRUE.setVariable -> (structure)
Sets a variable to a specified value.
variableName -> (string)
The name of the variable.
value -> (string)
The new value of the variable.
sns -> (structure)
Sends an Amazon SNS message.
targetArn -> (string)
The ARN of the Amazon SNS target where the message is sent.
payload -> (structure)
You can configure the action payload when you send a message as an Amazon SNS push notification.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotTopicPublish -> (structure)
Publishes an MQTT message with the given topic to the AWS IoT message broker.
mqttTopic -> (string)
The MQTT topic of the message. You can use a string expression that includes variables (
$variable.<variable-name>
) and input values ($input.<input-name>.<path-to-datum>
) as the topic string.payload -> (structure)
You can configure the action payload when you publish a message to an AWS IoT Core topic.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.setTimer -> (structure)
Information needed to set the timer.
timerName -> (string)
The name of the timer.
seconds -> (integer)
The number of seconds until the timer expires. The minimum value is 60 seconds to ensure accuracy. The maximum value is 31622400 seconds.
durationExpression -> (string)
The duration of the timer, in seconds. You can use a string expression that includes numbers, variables (
$variable.<variable-name>
), and input values ($input.<input-name>.<path-to-datum>
) as the duration. The range of the duration is 1-31622400 seconds. To ensure accuracy, the minimum duration is 60 seconds. The evaluated result of the duration is rounded down to the nearest whole number.clearTimer -> (structure)
Information needed to clear the timer.
timerName -> (string)
The name of the timer to clear.
resetTimer -> (structure)
Information needed to reset the timer.
timerName -> (string)
The name of the timer to reset.
lambda -> (structure)
Calls a Lambda function, passing in information about the detector model instance and the event that triggered the action.
functionArn -> (string)
The ARN of the Lambda function that is executed.
payload -> (structure)
You can configure the action payload when you send a message to a Lambda function.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotEvents -> (structure)
Sends AWS IoT Events input, which passes information about the detector model instance and the event that triggered the action.
inputName -> (string)
The name of the AWS IoT Events input where the data is sent.
payload -> (structure)
You can configure the action payload when you send a message to an AWS IoT Events input.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.sqs -> (structure)
Sends information about the detector model instance and the event that triggered the action to an Amazon SQS queue.
queueUrl -> (string)
The URL of the SQS queue where the data is written.
useBase64 -> (boolean)
Set this to TRUE if you want the data to be base-64 encoded before it is written to the queue. Otherwise, set this to FALSE.
payload -> (structure)
You can configure the action payload when you send a message to an Amazon SQS queue.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.firehose -> (structure)
Sends information about the detector model instance and the event that triggered the action to an Amazon Kinesis Data Firehose delivery stream.
deliveryStreamName -> (string)
The name of the Kinesis Data Firehose delivery stream where the data is written.
separator -> (string)
A character separator that is used to separate records written to the Kinesis Data Firehose delivery stream. Valid values are: ‘n’ (newline), ‘t’ (tab), ‘rn’ (Windows newline), ‘,’ (comma).
payload -> (structure)
You can configure the action payload when you send a message to an Amazon Kinesis Data Firehose delivery stream.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.dynamoDB -> (structure)
Writes to the DynamoDB table that you created. The default action payload contains all attribute-value pairs that have the information about the detector model instance and the event that triggered the action. You can customize the payload . One column of the DynamoDB table receives all attribute-value pairs in the payload that you specify. For more information, see Actions in AWS IoT Events Developer Guide .
hashKeyType -> (string)
The data type for the hash key (also called the partition key). You can specify the following values:
'STRING'
- The hash key is a string.
'NUMBER'
- The hash key is a number.If you don’t specify
hashKeyType
, the default value is'STRING'
.hashKeyField -> (string)
The name of the hash key (also called the partition key). The
hashKeyField
value must match the partition key of the target DynamoDB table.hashKeyValue -> (string)
The value of the hash key (also called the partition key).
rangeKeyType -> (string)
The data type for the range key (also called the sort key), You can specify the following values:
'STRING'
- The range key is a string.
'NUMBER'
- The range key is number.If you don’t specify
rangeKeyField
, the default value is'STRING'
.rangeKeyField -> (string)
The name of the range key (also called the sort key). The
rangeKeyField
value must match the sort key of the target DynamoDB table.rangeKeyValue -> (string)
The value of the range key (also called the sort key).
operation -> (string)
The type of operation to perform. You can specify the following values:
'INSERT'
- Insert data as a new item into the DynamoDB table. This item uses the specified hash key as a partition key. If you specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with new data. This item’s partition key must match the specified hash key. If you specified a range key, the range key must match the item’s sort key.
'DELETE'
- Delete an existing item of the DynamoDB table. This item’s partition key must match the specified hash key. If you specified a range key, the range key must match the item’s sort key.If you don’t specify this parameter, AWS IoT Events triggers the
'INSERT'
operation.payloadField -> (string)
The name of the DynamoDB column that receives the action payload.
If you don’t specify this parameter, the name of the DynamoDB column is
payload
.tableName -> (string)
The name of the DynamoDB table. The
tableName
value must match the table name of the target DynamoDB table.payload -> (structure)
Information needed to configure the payload.
By default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use
contentExpression
.contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.dynamoDBv2 -> (structure)
Writes to the DynamoDB table that you created. The default action payload contains all attribute-value pairs that have the information about the detector model instance and the event that triggered the action. You can customize the payload . A separate column of the DynamoDB table receives one attribute-value pair in the payload that you specify. For more information, see Actions in AWS IoT Events Developer Guide .
tableName -> (string)
The name of the DynamoDB table.
payload -> (structure)
Information needed to configure the payload.
By default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use
contentExpression
.contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotSiteWise -> (structure)
Sends information about the detector model instance and the event that triggered the action to an asset property in AWS IoT SiteWise .
entryId -> (string)
A unique identifier for this entry. You can use the entry ID to track which data entry causes an error in case of failure. The default is a new unique identifier.
assetId -> (string)
The ID of the asset that has the specified property.
propertyId -> (string)
The ID of the asset property.
propertyAlias -> (string)
The alias of the asset property.
propertyValue -> (structure)
The value to send to the asset property. This value contains timestamp, quality, and value (TQV) information.
value -> (structure)
The value to send to an asset property.
stringValue -> (string)
The asset property value is a string. You must use an expression, and the evaluated result should be a string.
integerValue -> (string)
The asset property value is an integer. You must use an expression, and the evaluated result should be an integer.
doubleValue -> (string)
The asset property value is a double. You must use an expression, and the evaluated result should be a double.
booleanValue -> (string)
The asset property value is a Boolean value that must be
'TRUE'
or'FALSE'
. You must use an expression, and the evaluated result should be a Boolean value.timestamp -> (structure)
The timestamp associated with the asset property value. The default is the current event time.
timeInSeconds -> (string)
The timestamp, in seconds, in the Unix epoch format. The valid range is between 1-31556889864403199.
offsetInNanos -> (string)
The nanosecond offset converted from
timeInSeconds
. The valid range is between 0-999999999.quality -> (string)
The quality of the asset property value. The value must be
'GOOD'
,'BAD'
, or'UNCERTAIN'
.onExit -> (structure)
When exiting this state, perform these
actions
if the specifiedcondition
isTRUE
.events -> (list)
Specifies the
actions
that are performed when the state is exited and thecondition
isTRUE
.(structure)
Specifies the
actions
to be performed when thecondition
evaluates to TRUE.eventName -> (string)
The name of the event.
condition -> (string)
Optional. The Boolean expression that, when TRUE, causes the
actions
to be performed. If not present, the actions are performed (=TRUE). If the expression result is not a Boolean value, the actions are not performed (=FALSE).actions -> (list)
The actions to be performed.
(structure)
An action to be performed when the
condition
is TRUE.setVariable -> (structure)
Sets a variable to a specified value.
variableName -> (string)
The name of the variable.
value -> (string)
The new value of the variable.
sns -> (structure)
Sends an Amazon SNS message.
targetArn -> (string)
The ARN of the Amazon SNS target where the message is sent.
payload -> (structure)
You can configure the action payload when you send a message as an Amazon SNS push notification.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotTopicPublish -> (structure)
Publishes an MQTT message with the given topic to the AWS IoT message broker.
mqttTopic -> (string)
The MQTT topic of the message. You can use a string expression that includes variables (
$variable.<variable-name>
) and input values ($input.<input-name>.<path-to-datum>
) as the topic string.payload -> (structure)
You can configure the action payload when you publish a message to an AWS IoT Core topic.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.setTimer -> (structure)
Information needed to set the timer.
timerName -> (string)
The name of the timer.
seconds -> (integer)
The number of seconds until the timer expires. The minimum value is 60 seconds to ensure accuracy. The maximum value is 31622400 seconds.
durationExpression -> (string)
The duration of the timer, in seconds. You can use a string expression that includes numbers, variables (
$variable.<variable-name>
), and input values ($input.<input-name>.<path-to-datum>
) as the duration. The range of the duration is 1-31622400 seconds. To ensure accuracy, the minimum duration is 60 seconds. The evaluated result of the duration is rounded down to the nearest whole number.clearTimer -> (structure)
Information needed to clear the timer.
timerName -> (string)
The name of the timer to clear.
resetTimer -> (structure)
Information needed to reset the timer.
timerName -> (string)
The name of the timer to reset.
lambda -> (structure)
Calls a Lambda function, passing in information about the detector model instance and the event that triggered the action.
functionArn -> (string)
The ARN of the Lambda function that is executed.
payload -> (structure)
You can configure the action payload when you send a message to a Lambda function.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotEvents -> (structure)
Sends AWS IoT Events input, which passes information about the detector model instance and the event that triggered the action.
inputName -> (string)
The name of the AWS IoT Events input where the data is sent.
payload -> (structure)
You can configure the action payload when you send a message to an AWS IoT Events input.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.sqs -> (structure)
Sends information about the detector model instance and the event that triggered the action to an Amazon SQS queue.
queueUrl -> (string)
The URL of the SQS queue where the data is written.
useBase64 -> (boolean)
Set this to TRUE if you want the data to be base-64 encoded before it is written to the queue. Otherwise, set this to FALSE.
payload -> (structure)
You can configure the action payload when you send a message to an Amazon SQS queue.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.firehose -> (structure)
Sends information about the detector model instance and the event that triggered the action to an Amazon Kinesis Data Firehose delivery stream.
deliveryStreamName -> (string)
The name of the Kinesis Data Firehose delivery stream where the data is written.
separator -> (string)
A character separator that is used to separate records written to the Kinesis Data Firehose delivery stream. Valid values are: ‘n’ (newline), ‘t’ (tab), ‘rn’ (Windows newline), ‘,’ (comma).
payload -> (structure)
You can configure the action payload when you send a message to an Amazon Kinesis Data Firehose delivery stream.
contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.dynamoDB -> (structure)
Writes to the DynamoDB table that you created. The default action payload contains all attribute-value pairs that have the information about the detector model instance and the event that triggered the action. You can customize the payload . One column of the DynamoDB table receives all attribute-value pairs in the payload that you specify. For more information, see Actions in AWS IoT Events Developer Guide .
hashKeyType -> (string)
The data type for the hash key (also called the partition key). You can specify the following values:
'STRING'
- The hash key is a string.
'NUMBER'
- The hash key is a number.If you don’t specify
hashKeyType
, the default value is'STRING'
.hashKeyField -> (string)
The name of the hash key (also called the partition key). The
hashKeyField
value must match the partition key of the target DynamoDB table.hashKeyValue -> (string)
The value of the hash key (also called the partition key).
rangeKeyType -> (string)
The data type for the range key (also called the sort key), You can specify the following values:
'STRING'
- The range key is a string.
'NUMBER'
- The range key is number.If you don’t specify
rangeKeyField
, the default value is'STRING'
.rangeKeyField -> (string)
The name of the range key (also called the sort key). The
rangeKeyField
value must match the sort key of the target DynamoDB table.rangeKeyValue -> (string)
The value of the range key (also called the sort key).
operation -> (string)
The type of operation to perform. You can specify the following values:
'INSERT'
- Insert data as a new item into the DynamoDB table. This item uses the specified hash key as a partition key. If you specified a range key, the item uses the range key as a sort key.
'UPDATE'
- Update an existing item of the DynamoDB table with new data. This item’s partition key must match the specified hash key. If you specified a range key, the range key must match the item’s sort key.
'DELETE'
- Delete an existing item of the DynamoDB table. This item’s partition key must match the specified hash key. If you specified a range key, the range key must match the item’s sort key.If you don’t specify this parameter, AWS IoT Events triggers the
'INSERT'
operation.payloadField -> (string)
The name of the DynamoDB column that receives the action payload.
If you don’t specify this parameter, the name of the DynamoDB column is
payload
.tableName -> (string)
The name of the DynamoDB table. The
tableName
value must match the table name of the target DynamoDB table.payload -> (structure)
Information needed to configure the payload.
By default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use
contentExpression
.contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.dynamoDBv2 -> (structure)
Writes to the DynamoDB table that you created. The default action payload contains all attribute-value pairs that have the information about the detector model instance and the event that triggered the action. You can customize the payload . A separate column of the DynamoDB table receives one attribute-value pair in the payload that you specify. For more information, see Actions in AWS IoT Events Developer Guide .
tableName -> (string)
The name of the DynamoDB table.
payload -> (structure)
Information needed to configure the payload.
By default, AWS IoT Events generates a standard payload in JSON for any action. This action payload contains all attribute-value pairs that have the information about the detector model instance and the event triggered the action. To configure the action payload, you can use
contentExpression
.contentExpression -> (string)
The content of the payload. You can use a string expression that includes quoted strings (
'<string>'
), variables ($variable.<variable-name>
), input values ($input.<input-name>.<path-to-datum>
), string concatenations, and quoted strings that contain${}
as the content. The recommended maximum size of a content expression is 1 KB.type -> (string)
The value of the payload type can be either
STRING
orJSON
.iotSiteWise -> (structure)
Sends information about the detector model instance and the event that triggered the action to an asset property in AWS IoT SiteWise .
entryId -> (string)
A unique identifier for this entry. You can use the entry ID to track which data entry causes an error in case of failure. The default is a new unique identifier.
assetId -> (string)
The ID of the asset that has the specified property.
propertyId -> (string)
The ID of the asset property.
propertyAlias -> (string)
The alias of the asset property.
propertyValue -> (structure)
The value to send to the asset property. This value contains timestamp, quality, and value (TQV) information.
value -> (structure)
The value to send to an asset property.
stringValue -> (string)
The asset property value is a string. You must use an expression, and the evaluated result should be a string.
integerValue -> (string)
The asset property value is an integer. You must use an expression, and the evaluated result should be an integer.
doubleValue -> (string)
The asset property value is a double. You must use an expression, and the evaluated result should be a double.
booleanValue -> (string)
The asset property value is a Boolean value that must be
'TRUE'
or'FALSE'
. You must use an expression, and the evaluated result should be a Boolean value.timestamp -> (structure)
The timestamp associated with the asset property value. The default is the current event time.
timeInSeconds -> (string)
The timestamp, in seconds, in the Unix epoch format. The valid range is between 1-31556889864403199.
offsetInNanos -> (string)
The nanosecond offset converted from
timeInSeconds
. The valid range is between 0-999999999.quality -> (string)
The quality of the asset property value. The value must be
'GOOD'
,'BAD'
, or'UNCERTAIN'
.initialStateName -> (string)
The state that is entered at the creation of each detector (instance).
detectorModelConfiguration -> (structure)
Information about how the detector is configured.
detectorModelName -> (string)
The name of the detector model.
detectorModelVersion -> (string)
The version of the detector model.
detectorModelDescription -> (string)
A brief description of the detector model.
detectorModelArn -> (string)
The ARN of the detector model.
roleArn -> (string)
The ARN of the role that grants permission to AWS IoT Events to perform its operations.
creationTime -> (timestamp)
The time the detector model was created.
lastUpdateTime -> (timestamp)
The time the detector model was last updated.
status -> (string)
The status of the detector model.
key -> (string)
The value used to identify a detector instance. When a device or system sends input, a new detector instance with a unique key value is created. AWS IoT Events can continue to route input to its corresponding detector instance based on this identifying information.
This parameter uses a JSON-path expression to select the attribute-value pair in the message payload that is used for identification. To route the message to the correct detector instance, the device must send a message payload that contains the same attribute-value.
evaluationMethod -> (string)
Information about the order in which events are evaluated and how actions are executed.