Table Of Contents

Feedback

User Guide

First time using the AWS CLI? See the User Guide for help getting started.

[ aws . iotevents ]

describe-detector-model

Description

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.

Synopsis

  describe-detector-model
--detector-model-name <value>
[--detector-model-version <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

Options

--detector-model-name (string)

The name of the detector model.

--detector-model-version (string)

The version of the detector model.

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI 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.

--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. 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.

Examples

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.

Output

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 specified "actions" .

events -> (list)

Specifies the actions performed when the "condition" evaluates to TRUE.

(structure)

Specifies the "actions" to be performed when the "condition" 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.

iotTopicPublish -> (structure)

Publishes an MQTT message with the given topic to the AWS IoT message broker.

mqttTopic -> (string)

The MQTT topic of the message.

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.

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 an AWS Lambda function, passing in information about the detector model instance and the event which triggered the action.

functionArn -> (string)

The ARN of the AWS Lambda function which is executed.

iotEvents -> (structure)

Sends an IoT Events input, passing in information about the detector model instance and the event which triggered the action.

inputName -> (string)

The name of the AWS IoT Events input where the data is sent.

sqs -> (structure)

Sends information about the detector model instance and the event which triggered the action to an Amazon SQS queue.

queueUrl -> (string)

The URL of the Amazon 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.

firehose -> (structure)

Sends information about the detector model instance and the event which triggered the action to a 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).

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.

iotTopicPublish -> (structure)

Publishes an MQTT message with the given topic to the AWS IoT message broker.

mqttTopic -> (string)

The MQTT topic of the message.

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.

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 an AWS Lambda function, passing in information about the detector model instance and the event which triggered the action.

functionArn -> (string)

The ARN of the AWS Lambda function which is executed.

iotEvents -> (structure)

Sends an IoT Events input, passing in information about the detector model instance and the event which triggered the action.

inputName -> (string)

The name of the AWS IoT Events input where the data is sent.

sqs -> (structure)

Sends information about the detector model instance and the event which triggered the action to an Amazon SQS queue.

queueUrl -> (string)

The URL of the Amazon 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.

firehose -> (structure)

Sends information about the detector model instance and the event which triggered the action to a 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).

nextState -> (string)

The next state to enter.

onEnter -> (structure)

When entering this state, perform these "actions" if the "condition" is TRUE.

events -> (list)

Specifies the actions that are performed when the state is entered and the "condition" is TRUE.

(structure)

Specifies the "actions" to be performed when the "condition" 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.

iotTopicPublish -> (structure)

Publishes an MQTT message with the given topic to the AWS IoT message broker.

mqttTopic -> (string)

The MQTT topic of the message.

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.

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 an AWS Lambda function, passing in information about the detector model instance and the event which triggered the action.

functionArn -> (string)

The ARN of the AWS Lambda function which is executed.

iotEvents -> (structure)

Sends an IoT Events input, passing in information about the detector model instance and the event which triggered the action.

inputName -> (string)

The name of the AWS IoT Events input where the data is sent.

sqs -> (structure)

Sends information about the detector model instance and the event which triggered the action to an Amazon SQS queue.

queueUrl -> (string)

The URL of the Amazon 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.

firehose -> (structure)

Sends information about the detector model instance and the event which triggered the action to a 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).

onExit -> (structure)

When exiting this state, perform these "actions" if the specified "condition" is TRUE.

events -> (list)

Specifies the "actions" that are performed when the state is exited and the "condition" is TRUE.

(structure)

Specifies the "actions" to be performed when the "condition" 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.

iotTopicPublish -> (structure)

Publishes an MQTT message with the given topic to the AWS IoT message broker.

mqttTopic -> (string)

The MQTT topic of the message.

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.

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 an AWS Lambda function, passing in information about the detector model instance and the event which triggered the action.

functionArn -> (string)

The ARN of the AWS Lambda function which is executed.

iotEvents -> (structure)

Sends an IoT Events input, passing in information about the detector model instance and the event which triggered the action.

inputName -> (string)

The name of the AWS IoT Events input where the data is sent.

sqs -> (structure)

Sends information about the detector model instance and the event which triggered the action to an Amazon SQS queue.

queueUrl -> (string)

The URL of the Amazon 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.

firehose -> (structure)

Sends information about the detector model instance and the event which triggered the action to a 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).

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 input attribute key used to identify a device or system to create a detector (an instance of the detector model) and then to route each input received to the appropriate detector (instance). This parameter uses a JSON-path expression to specify the attribute-value pair in the message payload of each input that is used to identify the device associated with the input.

evaluationMethod -> (string)

When set to SERIAL , variables are updated and event conditions evaluated in the order that the events are defined. When set to BATCH , variables are updated and events performed only after all event conditions are evaluated.