class Aws::IoTEvents::Types::UpdateDetectorModelRequest

@note When making an API call, you may pass UpdateDetectorModelRequest

data as a hash:

    {
      detector_model_name: "DetectorModelName", # required
      detector_model_definition: { # required
        states: [ # required
          {
            state_name: "StateName", # required
            on_input: {
              events: [
                {
                  event_name: "EventName", # required
                  condition: "Condition",
                  actions: [
                    {
                      set_variable: {
                        variable_name: "VariableName", # required
                        value: "VariableValue", # required
                      },
                      sns: {
                        target_arn: "AmazonResourceName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_topic_publish: {
                        mqtt_topic: "MQTTTopic", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      set_timer: {
                        timer_name: "TimerName", # required
                        seconds: 1,
                        duration_expression: "VariableValue",
                      },
                      clear_timer: {
                        timer_name: "TimerName", # required
                      },
                      reset_timer: {
                        timer_name: "TimerName", # required
                      },
                      lambda: {
                        function_arn: "AmazonResourceName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_events: {
                        input_name: "InputName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      sqs: {
                        queue_url: "QueueUrl", # required
                        use_base_64: false,
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      firehose: {
                        delivery_stream_name: "DeliveryStreamName", # required
                        separator: "FirehoseSeparator",
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      dynamo_db: {
                        hash_key_type: "DynamoKeyType",
                        hash_key_field: "DynamoKeyField", # required
                        hash_key_value: "DynamoKeyValue", # required
                        range_key_type: "DynamoKeyType",
                        range_key_field: "DynamoKeyField",
                        range_key_value: "DynamoKeyValue",
                        operation: "DynamoOperation",
                        payload_field: "DynamoKeyField",
                        table_name: "DynamoTableName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      dynamo_d_bv_2: {
                        table_name: "DynamoTableName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_site_wise: {
                        entry_id: "AssetPropertyEntryId",
                        asset_id: "AssetId",
                        property_id: "AssetPropertyId",
                        property_alias: "AssetPropertyAlias",
                        property_value: {
                          value: {
                            string_value: "AssetPropertyStringValue",
                            integer_value: "AssetPropertyIntegerValue",
                            double_value: "AssetPropertyDoubleValue",
                            boolean_value: "AssetPropertyBooleanValue",
                          },
                          timestamp: {
                            time_in_seconds: "AssetPropertyTimeInSeconds", # required
                            offset_in_nanos: "AssetPropertyOffsetInNanos",
                          },
                          quality: "AssetPropertyQuality",
                        },
                      },
                    },
                  ],
                },
              ],
              transition_events: [
                {
                  event_name: "EventName", # required
                  condition: "Condition", # required
                  actions: [
                    {
                      set_variable: {
                        variable_name: "VariableName", # required
                        value: "VariableValue", # required
                      },
                      sns: {
                        target_arn: "AmazonResourceName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_topic_publish: {
                        mqtt_topic: "MQTTTopic", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      set_timer: {
                        timer_name: "TimerName", # required
                        seconds: 1,
                        duration_expression: "VariableValue",
                      },
                      clear_timer: {
                        timer_name: "TimerName", # required
                      },
                      reset_timer: {
                        timer_name: "TimerName", # required
                      },
                      lambda: {
                        function_arn: "AmazonResourceName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_events: {
                        input_name: "InputName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      sqs: {
                        queue_url: "QueueUrl", # required
                        use_base_64: false,
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      firehose: {
                        delivery_stream_name: "DeliveryStreamName", # required
                        separator: "FirehoseSeparator",
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      dynamo_db: {
                        hash_key_type: "DynamoKeyType",
                        hash_key_field: "DynamoKeyField", # required
                        hash_key_value: "DynamoKeyValue", # required
                        range_key_type: "DynamoKeyType",
                        range_key_field: "DynamoKeyField",
                        range_key_value: "DynamoKeyValue",
                        operation: "DynamoOperation",
                        payload_field: "DynamoKeyField",
                        table_name: "DynamoTableName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      dynamo_d_bv_2: {
                        table_name: "DynamoTableName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_site_wise: {
                        entry_id: "AssetPropertyEntryId",
                        asset_id: "AssetId",
                        property_id: "AssetPropertyId",
                        property_alias: "AssetPropertyAlias",
                        property_value: {
                          value: {
                            string_value: "AssetPropertyStringValue",
                            integer_value: "AssetPropertyIntegerValue",
                            double_value: "AssetPropertyDoubleValue",
                            boolean_value: "AssetPropertyBooleanValue",
                          },
                          timestamp: {
                            time_in_seconds: "AssetPropertyTimeInSeconds", # required
                            offset_in_nanos: "AssetPropertyOffsetInNanos",
                          },
                          quality: "AssetPropertyQuality",
                        },
                      },
                    },
                  ],
                  next_state: "StateName", # required
                },
              ],
            },
            on_enter: {
              events: [
                {
                  event_name: "EventName", # required
                  condition: "Condition",
                  actions: [
                    {
                      set_variable: {
                        variable_name: "VariableName", # required
                        value: "VariableValue", # required
                      },
                      sns: {
                        target_arn: "AmazonResourceName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_topic_publish: {
                        mqtt_topic: "MQTTTopic", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      set_timer: {
                        timer_name: "TimerName", # required
                        seconds: 1,
                        duration_expression: "VariableValue",
                      },
                      clear_timer: {
                        timer_name: "TimerName", # required
                      },
                      reset_timer: {
                        timer_name: "TimerName", # required
                      },
                      lambda: {
                        function_arn: "AmazonResourceName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_events: {
                        input_name: "InputName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      sqs: {
                        queue_url: "QueueUrl", # required
                        use_base_64: false,
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      firehose: {
                        delivery_stream_name: "DeliveryStreamName", # required
                        separator: "FirehoseSeparator",
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      dynamo_db: {
                        hash_key_type: "DynamoKeyType",
                        hash_key_field: "DynamoKeyField", # required
                        hash_key_value: "DynamoKeyValue", # required
                        range_key_type: "DynamoKeyType",
                        range_key_field: "DynamoKeyField",
                        range_key_value: "DynamoKeyValue",
                        operation: "DynamoOperation",
                        payload_field: "DynamoKeyField",
                        table_name: "DynamoTableName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      dynamo_d_bv_2: {
                        table_name: "DynamoTableName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_site_wise: {
                        entry_id: "AssetPropertyEntryId",
                        asset_id: "AssetId",
                        property_id: "AssetPropertyId",
                        property_alias: "AssetPropertyAlias",
                        property_value: {
                          value: {
                            string_value: "AssetPropertyStringValue",
                            integer_value: "AssetPropertyIntegerValue",
                            double_value: "AssetPropertyDoubleValue",
                            boolean_value: "AssetPropertyBooleanValue",
                          },
                          timestamp: {
                            time_in_seconds: "AssetPropertyTimeInSeconds", # required
                            offset_in_nanos: "AssetPropertyOffsetInNanos",
                          },
                          quality: "AssetPropertyQuality",
                        },
                      },
                    },
                  ],
                },
              ],
            },
            on_exit: {
              events: [
                {
                  event_name: "EventName", # required
                  condition: "Condition",
                  actions: [
                    {
                      set_variable: {
                        variable_name: "VariableName", # required
                        value: "VariableValue", # required
                      },
                      sns: {
                        target_arn: "AmazonResourceName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_topic_publish: {
                        mqtt_topic: "MQTTTopic", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      set_timer: {
                        timer_name: "TimerName", # required
                        seconds: 1,
                        duration_expression: "VariableValue",
                      },
                      clear_timer: {
                        timer_name: "TimerName", # required
                      },
                      reset_timer: {
                        timer_name: "TimerName", # required
                      },
                      lambda: {
                        function_arn: "AmazonResourceName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_events: {
                        input_name: "InputName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      sqs: {
                        queue_url: "QueueUrl", # required
                        use_base_64: false,
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      firehose: {
                        delivery_stream_name: "DeliveryStreamName", # required
                        separator: "FirehoseSeparator",
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      dynamo_db: {
                        hash_key_type: "DynamoKeyType",
                        hash_key_field: "DynamoKeyField", # required
                        hash_key_value: "DynamoKeyValue", # required
                        range_key_type: "DynamoKeyType",
                        range_key_field: "DynamoKeyField",
                        range_key_value: "DynamoKeyValue",
                        operation: "DynamoOperation",
                        payload_field: "DynamoKeyField",
                        table_name: "DynamoTableName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      dynamo_d_bv_2: {
                        table_name: "DynamoTableName", # required
                        payload: {
                          content_expression: "ContentExpression", # required
                          type: "STRING", # required, accepts STRING, JSON
                        },
                      },
                      iot_site_wise: {
                        entry_id: "AssetPropertyEntryId",
                        asset_id: "AssetId",
                        property_id: "AssetPropertyId",
                        property_alias: "AssetPropertyAlias",
                        property_value: {
                          value: {
                            string_value: "AssetPropertyStringValue",
                            integer_value: "AssetPropertyIntegerValue",
                            double_value: "AssetPropertyDoubleValue",
                            boolean_value: "AssetPropertyBooleanValue",
                          },
                          timestamp: {
                            time_in_seconds: "AssetPropertyTimeInSeconds", # required
                            offset_in_nanos: "AssetPropertyOffsetInNanos",
                          },
                          quality: "AssetPropertyQuality",
                        },
                      },
                    },
                  ],
                },
              ],
            },
          },
        ],
        initial_state_name: "StateName", # required
      },
      detector_model_description: "DetectorModelDescription",
      role_arn: "AmazonResourceName", # required
      evaluation_method: "BATCH", # accepts BATCH, SERIAL
    }

@!attribute [rw] detector_model_name

The name of the detector model that is updated.
@return [String]

@!attribute [rw] detector_model_definition

Information that defines how a detector operates.
@return [Types::DetectorModelDefinition]

@!attribute [rw] detector_model_description

A brief description of the detector model.
@return [String]

@!attribute [rw] role_arn

The ARN of the role that grants permission to AWS IoT Events to
perform its operations.
@return [String]

@!attribute [rw] evaluation_method

Information about the order in which events are evaluated and how
actions are executed.
@return [String]

Constants

SENSITIVE