AWS::IoTFleetWise::Campaign - Amazon CloudFormation
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

AWS::IoTFleetWise::Campaign

Creates an orchestration of data collection rules. The Amazon 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, Amazon IoT FleetWise automatically deploys them to vehicles.

For more information, see Collect and transfer data with campaigns in the Amazon IoT FleetWise Developer Guide.

Syntax

To declare this entity in your Amazon CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::IoTFleetWise::Campaign", "Properties" : { "Action" : String, "CollectionScheme" : CollectionScheme, "Compression" : String, "DataDestinationConfigs" : [ DataDestinationConfig, ... ], "DataExtraDimensions" : [ String, ... ], "Description" : String, "DiagnosticsMode" : String, "ExpiryTime" : String, "Name" : String, "PostTriggerCollectionDuration" : Number, "Priority" : Integer, "SignalCatalogArn" : String, "SignalsToCollect" : [ SignalInformation, ... ], "SpoolingMode" : String, "StartTime" : String, "Tags" : [ Tag, ... ], "TargetArn" : String } }

YAML

Type: AWS::IoTFleetWise::Campaign Properties: Action: String CollectionScheme: CollectionScheme Compression: String DataDestinationConfigs: - DataDestinationConfig DataExtraDimensions: - String Description: String DiagnosticsMode: String ExpiryTime: String Name: String PostTriggerCollectionDuration: Number Priority: Integer SignalCatalogArn: String SignalsToCollect: - SignalInformation 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 the SUSPEND campaign. The campaign is redeployed to all vehicles and the vehicles will resume sending data.

  • UPDATE - To update a campaign.

Required: Yes

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

(Optional) Whether to compress signals before transmitting data to Amazon 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

(Optional) 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. Amazon IoT FleetWise supports at-least-once file delivery to S3. Your vehicle data is stored on multiple Amazon 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

(Optional) A list of vehicle attributes to associate with a campaign.

Enrich the data with specified vehicle attributes. For example, add make and model to the campaign, and Amazon IoT FleetWise will associate the data with those attributes as dimensions in Amazon Timestream. You can then query the data against make and model.

Default: An empty array

Required: No

Type: Array of String

Minimum: 1 | 0

Maximum: 150 | 5

Update requires: No interruption

Description

(Optional) The description of the campaign.

Required: No

Type: String

Pattern: ^[^\u0000-\u001F\u007F]+$

Minimum: 1

Maximum: 2048

Update requires: No interruption

DiagnosticsMode

(Optional) Option for a vehicle to send diagnostic trouble codes to Amazon 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

(Optional) 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

(Optional) 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

(Optional) 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

(Optional) A list of information about signals to collect.

Required: No

Type: Array of SignalInformation

Minimum: 0

Maximum: 1000

Update requires: No interruption

SpoolingMode

(Optional) 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 Amazon 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

(Optional) 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

Tags

(Optional) 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, and SUSPENDED.