AWS::IoTFleetWise::Campaign
Creates an orchestration of data collection rules. The AWS IoT FleetWise Edge Agent software running in vehicles uses campaigns to decide how to collect and transfer data to the cloud. You create campaigns in the cloud. After you or your team approve campaigns, AWS IoT FleetWise automatically deploys them to vehicles.
For more information, see Campaigns in the AWS IoT FleetWise Developer Guide.
Important
Access to certain AWS IoT FleetWise features is currently gated. For more information, see AWS Region and feature availability in the AWS IoT FleetWise Developer Guide.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::IoTFleetWise::Campaign", "Properties" : { "Action" :
String
, "CollectionScheme" :CollectionScheme
, "Compression" :String
, "DataDestinationConfigs" :[ DataDestinationConfig, ... ]
, "DataExtraDimensions" :[ String, ... ]
, "DataPartitions" :[ DataPartition, ... ]
, "Description" :String
, "DiagnosticsMode" :String
, "ExpiryTime" :String
, "Name" :String
, "PostTriggerCollectionDuration" :Number
, "Priority" :Integer
, "SignalCatalogArn" :String
, "SignalsToCollect" :[ SignalInformation, ... ]
, "SignalsToFetch" :[ SignalFetchInformation, ... ]
, "SpoolingMode" :String
, "StartTime" :String
, "Tags" :[ Tag, ... ]
, "TargetArn" :String
} }
YAML
Type: AWS::IoTFleetWise::Campaign Properties: Action:
String
CollectionScheme:CollectionScheme
Compression:String
DataDestinationConfigs:- DataDestinationConfig
DataExtraDimensions:- String
DataPartitions:- DataPartition
Description:String
DiagnosticsMode:String
ExpiryTime:String
Name:String
PostTriggerCollectionDuration:Number
Priority:Integer
SignalCatalogArn:String
SignalsToCollect:- SignalInformation
SignalsToFetch:- SignalFetchInformation
SpoolingMode:String
StartTime:String
Tags:- Tag
TargetArn:String
Properties
Action
-
Specifies how to update a campaign. The action can be one of the following:
-
APPROVE
- To approve delivering a data collection scheme to vehicles. -
SUSPEND
- To suspend collecting signal data. The campaign is deleted from vehicles and all vehicles in the suspended campaign will stop sending data. -
RESUME
- To reactivate theSUSPEND
campaign. The campaign is redeployed to all vehicles and the vehicles will resume sending data. -
UPDATE
- To update a campaign.
Required: No
Type: String
Allowed values:
APPROVE | SUSPEND | RESUME | UPDATE
Update requires: No interruption
-
CollectionScheme
-
The data collection scheme associated with the campaign. You can specify a scheme that collects data based on time or an event.
Required: Yes
Type: CollectionScheme
Update requires: Replacement
Compression
-
Whether to compress signals before transmitting data to AWS IoT FleetWise. If you don't want to compress the signals, use
OFF
. If it's not specified,SNAPPY
is used.Default:
SNAPPY
Required: No
Type: String
Allowed values:
OFF | SNAPPY
Update requires: Replacement
DataDestinationConfigs
-
The destination where the campaign sends data. You can choose to send data to be stored in Amazon S3 or Amazon Timestream.
Amazon S3 optimizes the cost of data storage and provides additional mechanisms to use vehicle data, such as data lakes, centralized data storage, data processing pipelines, and analytics. AWS IoT FleetWise supports at-least-once file delivery to S3. Your vehicle data is stored on multiple AWS IoT FleetWise servers for redundancy and high availability.
You can use Amazon Timestream to access and analyze time series data, and Timestream to query vehicle data so that you can identify trends and patterns.
Required: No
Type: Array of DataDestinationConfig
Minimum:
1
Maximum:
1
Update requires: No interruption
DataExtraDimensions
-
A list of vehicle attributes to associate with a campaign.
Enrich the data with specified vehicle attributes. For example, add
make
andmodel
to the campaign, and AWS IoT FleetWise will associate the data with those attributes as dimensions in Amazon Timestream. You can then query the data againstmake
andmodel
.Default: An empty array
Required: No
Type: Array of String
Minimum:
1 | 0
Maximum:
150 | 5
Update requires: No interruption
DataPartitions
-
The data partitions associated with the signals collected from the vehicle.
Required: No
Type: Array of DataPartition
Minimum:
0
Maximum:
20
Update requires: Replacement
Description
-
The description of the campaign.
Required: No
Type: String
Pattern:
^[^\u0000-\u001F\u007F]+$
Minimum:
1
Maximum:
2048
Update requires: No interruption
DiagnosticsMode
-
Option for a vehicle to send diagnostic trouble codes to AWS IoT FleetWise. If you want to send diagnostic trouble codes, use
SEND_ACTIVE_DTCS
. If it's not specified,OFF
is used.Default:
OFF
Required: No
Type: String
Allowed values:
OFF | SEND_ACTIVE_DTCS
Update requires: Replacement
ExpiryTime
-
The time the campaign expires, in seconds since epoch (January 1, 1970 at midnight UTC time). Vehicle data isn't collected after the campaign expires.
Default: 253402214400 (December 31, 9999, 00:00:00 UTC)
Required: No
Type: String
Update requires: Replacement
Name
-
The name of a campaign.
Required: Yes
Type: String
Pattern:
^[a-zA-Z\d\-_:]+$
Minimum:
1
Maximum:
100
Update requires: Replacement
PostTriggerCollectionDuration
-
How long (in milliseconds) to collect raw data after a triggering event initiates the collection. If it's not specified,
0
is used.Default:
0
Required: No
Type: Number
Minimum:
0
Maximum:
4294967295
Update requires: Replacement
Priority
-
A number indicating the priority of one campaign over another campaign for a certain vehicle or fleet. A campaign with the lowest value is deployed to vehicles before any other campaigns. If it's not specified,
0
is used.Default:
0
Required: No
Type: Integer
Minimum:
0
Update requires: Replacement
SignalCatalogArn
-
The Amazon Resource Name (ARN) of the signal catalog associated with the campaign.
Required: Yes
Type: String
Update requires: Replacement
SignalsToCollect
-
A list of information about signals to collect.
Required: No
Type: Array of SignalInformation
Minimum:
0
Maximum:
1000
Update requires: No interruption
SignalsToFetch
-
A list of information about signals to fetch.
Required: No
Type: Array of SignalFetchInformation
Minimum:
0
Maximum:
10
Update requires: No interruption
SpoolingMode
-
Whether to store collected data after a vehicle lost a connection with the cloud. After a connection is re-established, the data is automatically forwarded to AWS IoT FleetWise. If you want to store collected data when a vehicle loses connection with the cloud, use
TO_DISK
. If it's not specified,OFF
is used.Default:
OFF
Required: No
Type: String
Allowed values:
OFF | TO_DISK
Update requires: Replacement
StartTime
-
The time, in milliseconds, to deliver a campaign after it was approved. If it's not specified,
0
is used.Default:
0
Required: No
Type: String
Update requires: Replacement
-
Metadata that can be used to manage the campaign.
Required: No
Type: Array of Tag
Minimum:
0
Maximum:
50
Update requires: No interruption
TargetArn
-
The Amazon Resource Name (ARN) of a vehicle or fleet to which the campaign is deployed.
Required: Yes
Type: String
Update requires: Replacement
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref
returns the Name.
For more information about using the Ref
function, see Ref
.
Fn::GetAtt
The Fn::GetAtt
intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt
intrinsic function, see Fn::GetAtt
.
Arn
-
The Amazon Resource Name (ARN) of the campaign.
CreationTime
-
The time the campaign was created in seconds since epoch (January 1, 1970 at midnight UTC time).
LastModificationTime
-
The last time the campaign was modified.
Status
-
The state of the campaign. The status can be one of:
CREATING
,WAITING_FOR_APPROVAL
,RUNNING
, andSUSPENDED
.