Class CfnDetectorModelProps
Properties for defining a CfnDetectorModel
.
Inheritance
Implements
Namespace: Amazon.CDK.AWS.IoTEvents
Assembly: Amazon.CDK.AWS.IoTEvents.dll
Syntax (csharp)
public class CfnDetectorModelProps : Object, ICfnDetectorModelProps
Syntax (vb)
Public Class CfnDetectorModelProps
Inherits Object
Implements ICfnDetectorModelProps
Remarks
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.IoTEvents;
var cfnDetectorModelProps = new CfnDetectorModelProps {
DetectorModelDefinition = new DetectorModelDefinitionProperty {
InitialStateName = "initialStateName",
States = new [] { new StateProperty {
StateName = "stateName",
// the properties below are optional
OnEnter = new OnEnterProperty {
Events = new [] { new EventProperty {
EventName = "eventName",
// the properties below are optional
Actions = new [] { new ActionProperty {
ClearTimer = new ClearTimerProperty {
TimerName = "timerName"
},
DynamoDb = new DynamoDBProperty {
HashKeyField = "hashKeyField",
HashKeyValue = "hashKeyValue",
TableName = "tableName",
// the properties below are optional
HashKeyType = "hashKeyType",
Operation = "operation",
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
PayloadField = "payloadField",
RangeKeyField = "rangeKeyField",
RangeKeyType = "rangeKeyType",
RangeKeyValue = "rangeKeyValue"
},
DynamoDBv2 = new DynamoDBv2Property {
TableName = "tableName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Firehose = new FirehoseProperty {
DeliveryStreamName = "deliveryStreamName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
Separator = "separator"
},
IotEvents = new IotEventsProperty {
InputName = "inputName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
IotSiteWise = new IotSiteWiseProperty {
PropertyValue = new AssetPropertyValueProperty {
Value = new AssetPropertyVariantProperty {
BooleanValue = "booleanValue",
DoubleValue = "doubleValue",
IntegerValue = "integerValue",
StringValue = "stringValue"
},
// the properties below are optional
Quality = "quality",
Timestamp = new AssetPropertyTimestampProperty {
TimeInSeconds = "timeInSeconds",
// the properties below are optional
OffsetInNanos = "offsetInNanos"
}
},
// the properties below are optional
AssetId = "assetId",
EntryId = "entryId",
PropertyAlias = "propertyAlias",
PropertyId = "propertyId"
},
IotTopicPublish = new IotTopicPublishProperty {
MqttTopic = "mqttTopic",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Lambda = new LambdaProperty {
FunctionArn = "functionArn",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
ResetTimer = new ResetTimerProperty {
TimerName = "timerName"
},
SetTimer = new SetTimerProperty {
TimerName = "timerName",
// the properties below are optional
DurationExpression = "durationExpression",
Seconds = 123
},
SetVariable = new SetVariableProperty {
Value = "value",
VariableName = "variableName"
},
Sns = new SnsProperty {
TargetArn = "targetArn",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Sqs = new SqsProperty {
QueueUrl = "queueUrl",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
UseBase64 = false
}
} },
Condition = "condition"
} }
},
OnExit = new OnExitProperty {
Events = new [] { new EventProperty {
EventName = "eventName",
// the properties below are optional
Actions = new [] { new ActionProperty {
ClearTimer = new ClearTimerProperty {
TimerName = "timerName"
},
DynamoDb = new DynamoDBProperty {
HashKeyField = "hashKeyField",
HashKeyValue = "hashKeyValue",
TableName = "tableName",
// the properties below are optional
HashKeyType = "hashKeyType",
Operation = "operation",
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
PayloadField = "payloadField",
RangeKeyField = "rangeKeyField",
RangeKeyType = "rangeKeyType",
RangeKeyValue = "rangeKeyValue"
},
DynamoDBv2 = new DynamoDBv2Property {
TableName = "tableName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Firehose = new FirehoseProperty {
DeliveryStreamName = "deliveryStreamName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
Separator = "separator"
},
IotEvents = new IotEventsProperty {
InputName = "inputName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
IotSiteWise = new IotSiteWiseProperty {
PropertyValue = new AssetPropertyValueProperty {
Value = new AssetPropertyVariantProperty {
BooleanValue = "booleanValue",
DoubleValue = "doubleValue",
IntegerValue = "integerValue",
StringValue = "stringValue"
},
// the properties below are optional
Quality = "quality",
Timestamp = new AssetPropertyTimestampProperty {
TimeInSeconds = "timeInSeconds",
// the properties below are optional
OffsetInNanos = "offsetInNanos"
}
},
// the properties below are optional
AssetId = "assetId",
EntryId = "entryId",
PropertyAlias = "propertyAlias",
PropertyId = "propertyId"
},
IotTopicPublish = new IotTopicPublishProperty {
MqttTopic = "mqttTopic",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Lambda = new LambdaProperty {
FunctionArn = "functionArn",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
ResetTimer = new ResetTimerProperty {
TimerName = "timerName"
},
SetTimer = new SetTimerProperty {
TimerName = "timerName",
// the properties below are optional
DurationExpression = "durationExpression",
Seconds = 123
},
SetVariable = new SetVariableProperty {
Value = "value",
VariableName = "variableName"
},
Sns = new SnsProperty {
TargetArn = "targetArn",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Sqs = new SqsProperty {
QueueUrl = "queueUrl",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
UseBase64 = false
}
} },
Condition = "condition"
} }
},
OnInput = new OnInputProperty {
Events = new [] { new EventProperty {
EventName = "eventName",
// the properties below are optional
Actions = new [] { new ActionProperty {
ClearTimer = new ClearTimerProperty {
TimerName = "timerName"
},
DynamoDb = new DynamoDBProperty {
HashKeyField = "hashKeyField",
HashKeyValue = "hashKeyValue",
TableName = "tableName",
// the properties below are optional
HashKeyType = "hashKeyType",
Operation = "operation",
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
PayloadField = "payloadField",
RangeKeyField = "rangeKeyField",
RangeKeyType = "rangeKeyType",
RangeKeyValue = "rangeKeyValue"
},
DynamoDBv2 = new DynamoDBv2Property {
TableName = "tableName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Firehose = new FirehoseProperty {
DeliveryStreamName = "deliveryStreamName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
Separator = "separator"
},
IotEvents = new IotEventsProperty {
InputName = "inputName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
IotSiteWise = new IotSiteWiseProperty {
PropertyValue = new AssetPropertyValueProperty {
Value = new AssetPropertyVariantProperty {
BooleanValue = "booleanValue",
DoubleValue = "doubleValue",
IntegerValue = "integerValue",
StringValue = "stringValue"
},
// the properties below are optional
Quality = "quality",
Timestamp = new AssetPropertyTimestampProperty {
TimeInSeconds = "timeInSeconds",
// the properties below are optional
OffsetInNanos = "offsetInNanos"
}
},
// the properties below are optional
AssetId = "assetId",
EntryId = "entryId",
PropertyAlias = "propertyAlias",
PropertyId = "propertyId"
},
IotTopicPublish = new IotTopicPublishProperty {
MqttTopic = "mqttTopic",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Lambda = new LambdaProperty {
FunctionArn = "functionArn",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
ResetTimer = new ResetTimerProperty {
TimerName = "timerName"
},
SetTimer = new SetTimerProperty {
TimerName = "timerName",
// the properties below are optional
DurationExpression = "durationExpression",
Seconds = 123
},
SetVariable = new SetVariableProperty {
Value = "value",
VariableName = "variableName"
},
Sns = new SnsProperty {
TargetArn = "targetArn",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Sqs = new SqsProperty {
QueueUrl = "queueUrl",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
UseBase64 = false
}
} },
Condition = "condition"
} },
TransitionEvents = new [] { new TransitionEventProperty {
Condition = "condition",
EventName = "eventName",
NextState = "nextState",
// the properties below are optional
Actions = new [] { new ActionProperty {
ClearTimer = new ClearTimerProperty {
TimerName = "timerName"
},
DynamoDb = new DynamoDBProperty {
HashKeyField = "hashKeyField",
HashKeyValue = "hashKeyValue",
TableName = "tableName",
// the properties below are optional
HashKeyType = "hashKeyType",
Operation = "operation",
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
PayloadField = "payloadField",
RangeKeyField = "rangeKeyField",
RangeKeyType = "rangeKeyType",
RangeKeyValue = "rangeKeyValue"
},
DynamoDBv2 = new DynamoDBv2Property {
TableName = "tableName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Firehose = new FirehoseProperty {
DeliveryStreamName = "deliveryStreamName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
Separator = "separator"
},
IotEvents = new IotEventsProperty {
InputName = "inputName",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
IotSiteWise = new IotSiteWiseProperty {
PropertyValue = new AssetPropertyValueProperty {
Value = new AssetPropertyVariantProperty {
BooleanValue = "booleanValue",
DoubleValue = "doubleValue",
IntegerValue = "integerValue",
StringValue = "stringValue"
},
// the properties below are optional
Quality = "quality",
Timestamp = new AssetPropertyTimestampProperty {
TimeInSeconds = "timeInSeconds",
// the properties below are optional
OffsetInNanos = "offsetInNanos"
}
},
// the properties below are optional
AssetId = "assetId",
EntryId = "entryId",
PropertyAlias = "propertyAlias",
PropertyId = "propertyId"
},
IotTopicPublish = new IotTopicPublishProperty {
MqttTopic = "mqttTopic",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Lambda = new LambdaProperty {
FunctionArn = "functionArn",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
ResetTimer = new ResetTimerProperty {
TimerName = "timerName"
},
SetTimer = new SetTimerProperty {
TimerName = "timerName",
// the properties below are optional
DurationExpression = "durationExpression",
Seconds = 123
},
SetVariable = new SetVariableProperty {
Value = "value",
VariableName = "variableName"
},
Sns = new SnsProperty {
TargetArn = "targetArn",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
}
},
Sqs = new SqsProperty {
QueueUrl = "queueUrl",
// the properties below are optional
Payload = new PayloadProperty {
ContentExpression = "contentExpression",
Type = "type"
},
UseBase64 = false
}
} }
} }
}
} }
},
RoleArn = "roleArn",
// the properties below are optional
DetectorModelDescription = "detectorModelDescription",
DetectorModelName = "detectorModelName",
EvaluationMethod = "evaluationMethod",
Key = "key",
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} }
};
Synopsis
Constructors
CfnDetectorModelProps() |
Properties
DetectorModelDefinition | Information that defines how a detector operates. |
DetectorModelDescription | A brief description of the detector model. |
DetectorModelName | The name of the detector model. |
EvaluationMethod | Information about the order in which events are evaluated and how actions are executed. |
Key | The value used to identify a detector instance. |
RoleArn | The ARN of the role that grants permission to AWS IoT Events to perform its operations. |
Tags | An array of key-value pairs to apply to this resource. |
Constructors
CfnDetectorModelProps()
public CfnDetectorModelProps()
Properties
DetectorModelDefinition
Information that defines how a detector operates.
public object DetectorModelDefinition { get; set; }
Property Value
System.Object
Remarks
DetectorModelDescription
A brief description of the detector model.
public string DetectorModelDescription { get; set; }
Property Value
System.String
Remarks
DetectorModelName
The name of the detector model.
public string DetectorModelName { get; set; }
Property Value
System.String
Remarks
EvaluationMethod
Information about the order in which events are evaluated and how actions are executed.
public string EvaluationMethod { get; set; }
Property Value
System.String
Remarks
Key
The value used to identify a detector instance.
public string Key { get; set; }
Property Value
System.String
Remarks
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.
RoleArn
The ARN of the role that grants permission to AWS IoT Events to perform its operations.
public string RoleArn { get; set; }
Property Value
System.String
Remarks
Tags
An array of key-value pairs to apply to this resource.
public ICfnTag[] Tags { get; set; }
Property Value
ICfnTag[]
Remarks
For more information, see Tag .