aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
973 lines • 93.8 kB
TypeScript
import * as cdk from "../../core";
import * as constructs from "constructs";
import * as cfn_parse from "../../core/lib/helpers-internal";
/**
* 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 [Collect and transfer data with campaigns](https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/campaigns.html) in the *AWS IoT FleetWise Developer Guide* .
*
* @cloudformationResource AWS::IoTFleetWise::Campaign
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html
*/
export declare class CfnCampaign extends cdk.CfnResource implements cdk.IInspectable, cdk.ITaggable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnCampaign from CloudFormation properties
*
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnCampaign;
/**
* The Amazon Resource Name (ARN) of the campaign.
*
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The time the campaign was created in seconds since epoch (January 1, 1970 at midnight UTC time).
*
* @cloudformationAttribute CreationTime
*/
readonly attrCreationTime: string;
/**
* The last time the campaign was modified.
*
* @cloudformationAttribute LastModificationTime
*/
readonly attrLastModificationTime: string;
/**
* The state of the campaign. The status can be one of: `CREATING` , `WAITING_FOR_APPROVAL` , `RUNNING` , and `SUSPENDED` .
*
* @cloudformationAttribute Status
*/
readonly attrStatus: string;
/**
* Specifies how to update a campaign. The action can be one of the following:.
*/
action: string;
/**
* The data collection scheme associated with the campaign.
*/
collectionScheme: CfnCampaign.CollectionSchemeProperty | cdk.IResolvable;
/**
* (Optional) Whether to compress signals before transmitting data to AWS IoT FleetWise .
*/
compression?: string;
/**
* (Optional) The destination where the campaign sends data.
*/
dataDestinationConfigs?: Array<CfnCampaign.DataDestinationConfigProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* (Optional) A list of vehicle attributes to associate with a campaign.
*/
dataExtraDimensions?: Array<string>;
/**
* (Optional) The description of the campaign.
*/
description?: string;
/**
* (Optional) Option for a vehicle to send diagnostic trouble codes to AWS IoT FleetWise .
*/
diagnosticsMode?: string;
/**
* (Optional) The time the campaign expires, in seconds since epoch (January 1, 1970 at midnight UTC time).
*/
expiryTime?: string;
/**
* The name of a campaign.
*/
name: string;
/**
* (Optional) How long (in milliseconds) to collect raw data after a triggering event initiates the collection.
*/
postTriggerCollectionDuration?: number;
/**
* (Optional) A number indicating the priority of one campaign over another campaign for a certain vehicle or fleet.
*/
priority?: number;
/**
* The Amazon Resource Name (ARN) of the signal catalog associated with the campaign.
*/
signalCatalogArn: string;
/**
* (Optional) A list of information about signals to collect.
*/
signalsToCollect?: Array<cdk.IResolvable | CfnCampaign.SignalInformationProperty> | cdk.IResolvable;
signalsToFetch?: Array<cdk.IResolvable | CfnCampaign.SignalFetchInformationProperty> | cdk.IResolvable;
/**
* (Optional) Whether to store collected data after a vehicle lost a connection with the cloud.
*/
spoolingMode?: string;
/**
* (Optional) The time, in milliseconds, to deliver a campaign after it was approved.
*/
startTime?: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly tags: cdk.TagManager;
/**
* (Optional) Metadata that can be used to manage the campaign.
*/
tagsRaw?: Array<cdk.CfnTag>;
/**
* The Amazon Resource Name (ARN) of a vehicle or fleet to which the campaign is deployed.
*/
targetArn: string;
/**
* @param scope Scope in which this resource is defined
* @param id Construct identifier for this resource (unique in its scope)
* @param props Resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnCampaignProps);
protected get cfnProperties(): Record<string, any>;
/**
* Examines the CloudFormation resource and discloses attributes
*
* @param inspector tree inspector to collect and process attributes
*/
inspect(inspector: cdk.TreeInspector): void;
protected renderProperties(props: Record<string, any>): Record<string, any>;
}
export declare namespace CfnCampaign {
/**
* Information about a signal.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalinformation.html
*/
interface SignalInformationProperty {
/**
* (Optional) The maximum number of samples to collect.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalinformation.html#cfn-iotfleetwise-campaign-signalinformation-maxsamplecount
*/
readonly maxSampleCount?: number;
/**
* (Optional) The minimum duration of time (in milliseconds) between two triggering events to collect data.
*
* > If a signal changes often, you might want to collect data at a slower rate.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalinformation.html#cfn-iotfleetwise-campaign-signalinformation-minimumsamplingintervalms
*/
readonly minimumSamplingIntervalMs?: number;
/**
* The name of the signal.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalinformation.html#cfn-iotfleetwise-campaign-signalinformation-name
*/
readonly name: string;
}
/**
* The destination where the AWS IoT FleetWise campaign sends data.
*
* You can send data to be stored in Amazon S3 or Amazon Timestream .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-datadestinationconfig.html
*/
interface DataDestinationConfigProperty {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-datadestinationconfig.html#cfn-iotfleetwise-campaign-datadestinationconfig-mqtttopicconfig
*/
readonly mqttTopicConfig?: cdk.IResolvable | CfnCampaign.MqttTopicConfigProperty;
/**
* (Optional) The Amazon S3 bucket where the AWS IoT FleetWise campaign sends data.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-datadestinationconfig.html#cfn-iotfleetwise-campaign-datadestinationconfig-s3config
*/
readonly s3Config?: cdk.IResolvable | CfnCampaign.S3ConfigProperty;
/**
* (Optional) The Amazon Timestream table where the campaign sends data.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-datadestinationconfig.html#cfn-iotfleetwise-campaign-datadestinationconfig-timestreamconfig
*/
readonly timestreamConfig?: cdk.IResolvable | CfnCampaign.TimestreamConfigProperty;
}
/**
* The Amazon S3 bucket where the AWS IoT FleetWise campaign sends data.
*
* Amazon S3 is an object storage service that stores data as objects within buckets. For more information, see [Creating, configuring, and working with Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html) in the *Amazon Simple Storage Service User Guide* .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html
*/
interface S3ConfigProperty {
/**
* The Amazon Resource Name (ARN) of the Amazon S3 bucket.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html#cfn-iotfleetwise-campaign-s3config-bucketarn
*/
readonly bucketArn: string;
/**
* (Optional) Specify the format that files are saved in the Amazon S3 bucket.
*
* You can save files in an Apache Parquet or JSON format.
*
* - Parquet - Store data in a columnar storage file format. Parquet is optimal for fast data retrieval and can reduce costs. This option is selected by default.
* - JSON - Store data in a standard text-based JSON file format.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html#cfn-iotfleetwise-campaign-s3config-dataformat
*/
readonly dataFormat?: string;
/**
* (Optional) Enter an S3 bucket prefix.
*
* The prefix is the string of characters after the bucket name and before the object name. You can use the prefix to organize data stored in Amazon S3 buckets. For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html) in the *Amazon Simple Storage Service User Guide* .
*
* By default, AWS IoT FleetWise sets the prefix `processed-data/year=YY/month=MM/date=DD/hour=HH/` (in UTC) to data it delivers to Amazon S3 . You can enter a prefix to append it to this default prefix. For example, if you enter the prefix `vehicles` , the prefix will be `vehicles/processed-data/year=YY/month=MM/date=DD/hour=HH/` .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html#cfn-iotfleetwise-campaign-s3config-prefix
*/
readonly prefix?: string;
/**
* (Optional) By default, stored data is compressed as a .gzip file. Compressed files have a reduced file size, which can optimize the cost of data storage.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-s3config.html#cfn-iotfleetwise-campaign-s3config-storagecompressionformat
*/
readonly storageCompressionFormat?: string;
}
/**
* The Amazon Timestream table where the AWS IoT FleetWise campaign sends data.
*
* Timestream stores and organizes data to optimize query processing time and to reduce storage costs. For more information, see [Data modeling](https://docs.aws.amazon.com/timestream/latest/developerguide/data-modeling.html) in the *Amazon Timestream Developer Guide* .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timestreamconfig.html
*/
interface TimestreamConfigProperty {
/**
* The Amazon Resource Name (ARN) of the task execution role that grants AWS IoT FleetWise permission to deliver data to the Amazon Timestream table.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timestreamconfig.html#cfn-iotfleetwise-campaign-timestreamconfig-executionrolearn
*/
readonly executionRoleArn: string;
/**
* The Amazon Resource Name (ARN) of the Amazon Timestream table.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timestreamconfig.html#cfn-iotfleetwise-campaign-timestreamconfig-timestreamtablearn
*/
readonly timestreamTableArn: string;
}
/**
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-mqtttopicconfig.html
*/
interface MqttTopicConfigProperty {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-mqtttopicconfig.html#cfn-iotfleetwise-campaign-mqtttopicconfig-executionrolearn
*/
readonly executionRoleArn: string;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-mqtttopicconfig.html#cfn-iotfleetwise-campaign-mqtttopicconfig-mqtttopicarn
*/
readonly mqttTopicArn: string;
}
/**
* Specifies what data to collect and how often or when to collect it.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-collectionscheme.html
*/
interface CollectionSchemeProperty {
/**
* (Optional) Information about a collection scheme that uses a simple logical expression to recognize what data to collect.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-collectionscheme.html#cfn-iotfleetwise-campaign-collectionscheme-conditionbasedcollectionscheme
*/
readonly conditionBasedCollectionScheme?: CfnCampaign.ConditionBasedCollectionSchemeProperty | cdk.IResolvable;
/**
* (Optional) Information about a collection scheme that uses a time period to decide how often to collect data.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-collectionscheme.html#cfn-iotfleetwise-campaign-collectionscheme-timebasedcollectionscheme
*/
readonly timeBasedCollectionScheme?: cdk.IResolvable | CfnCampaign.TimeBasedCollectionSchemeProperty;
}
/**
* Information about a collection scheme that uses a time period to decide how often to collect data.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timebasedcollectionscheme.html
*/
interface TimeBasedCollectionSchemeProperty {
/**
* The time period (in milliseconds) to decide how often to collect data.
*
* For example, if the time period is `60000` , the Edge Agent software collects data once every minute.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timebasedcollectionscheme.html#cfn-iotfleetwise-campaign-timebasedcollectionscheme-periodms
*/
readonly periodMs: number;
}
/**
* Information about a collection scheme that uses a simple logical expression to recognize what data to collect.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html
*/
interface ConditionBasedCollectionSchemeProperty {
/**
* (Optional) Specifies the version of the conditional expression language.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html#cfn-iotfleetwise-campaign-conditionbasedcollectionscheme-conditionlanguageversion
*/
readonly conditionLanguageVersion?: number;
/**
* The logical expression used to recognize what data to collect.
*
* For example, `$variable.Vehicle.OutsideAirTemperature >= 105.0` .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html#cfn-iotfleetwise-campaign-conditionbasedcollectionscheme-expression
*/
readonly expression: string;
/**
* (Optional) The minimum duration of time between two triggering events to collect data, in milliseconds.
*
* > If a signal changes often, you might want to collect data at a slower rate.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html#cfn-iotfleetwise-campaign-conditionbasedcollectionscheme-minimumtriggerintervalms
*/
readonly minimumTriggerIntervalMs?: number;
/**
* (Optional) Whether to collect data for all triggering events ( `ALWAYS` ).
*
* Specify ( `RISING_EDGE` ), or specify only when the condition first evaluates to false. For example, triggering on "AirbagDeployed"; Users aren't interested on triggering when the airbag is already exploded; they only care about the change from not deployed => deployed.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedcollectionscheme.html#cfn-iotfleetwise-campaign-conditionbasedcollectionscheme-triggermode
*/
readonly triggerMode?: string;
}
/**
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalfetchinformation.html
*/
interface SignalFetchInformationProperty {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalfetchinformation.html#cfn-iotfleetwise-campaign-signalfetchinformation-actions
*/
readonly actions: Array<string>;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalfetchinformation.html#cfn-iotfleetwise-campaign-signalfetchinformation-conditionlanguageversion
*/
readonly conditionLanguageVersion?: number;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalfetchinformation.html#cfn-iotfleetwise-campaign-signalfetchinformation-fullyqualifiedname
*/
readonly fullyQualifiedName: string;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalfetchinformation.html#cfn-iotfleetwise-campaign-signalfetchinformation-signalfetchconfig
*/
readonly signalFetchConfig: cdk.IResolvable | CfnCampaign.SignalFetchConfigProperty;
}
/**
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalfetchconfig.html
*/
interface SignalFetchConfigProperty {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalfetchconfig.html#cfn-iotfleetwise-campaign-signalfetchconfig-conditionbased
*/
readonly conditionBased?: CfnCampaign.ConditionBasedSignalFetchConfigProperty | cdk.IResolvable;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-signalfetchconfig.html#cfn-iotfleetwise-campaign-signalfetchconfig-timebased
*/
readonly timeBased?: cdk.IResolvable | CfnCampaign.TimeBasedSignalFetchConfigProperty;
}
/**
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timebasedsignalfetchconfig.html
*/
interface TimeBasedSignalFetchConfigProperty {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-timebasedsignalfetchconfig.html#cfn-iotfleetwise-campaign-timebasedsignalfetchconfig-executionfrequencyms
*/
readonly executionFrequencyMs: number;
}
/**
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedsignalfetchconfig.html
*/
interface ConditionBasedSignalFetchConfigProperty {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedsignalfetchconfig.html#cfn-iotfleetwise-campaign-conditionbasedsignalfetchconfig-conditionexpression
*/
readonly conditionExpression: string;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-campaign-conditionbasedsignalfetchconfig.html#cfn-iotfleetwise-campaign-conditionbasedsignalfetchconfig-triggermode
*/
readonly triggerMode: string;
}
}
/**
* Properties for defining a `CfnCampaign`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html
*/
export interface CfnCampaignProps {
/**
* 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.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-action
*/
readonly action: string;
/**
* The data collection scheme associated with the campaign.
*
* You can specify a scheme that collects data based on time or an event.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-collectionscheme
*/
readonly collectionScheme: CfnCampaign.CollectionSchemeProperty | cdk.IResolvable;
/**
* (Optional) 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`
*
* @default - "OFF"
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-compression
*/
readonly compression?: string;
/**
* (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. 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.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-datadestinationconfigs
*/
readonly dataDestinationConfigs?: Array<CfnCampaign.DataDestinationConfigProperty | cdk.IResolvable> | cdk.IResolvable;
/**
* (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 AWS 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
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-dataextradimensions
*/
readonly dataExtraDimensions?: Array<string>;
/**
* (Optional) The description of the campaign.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-description
*/
readonly description?: string;
/**
* (Optional) 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`
*
* @default - "OFF"
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-diagnosticsmode
*/
readonly diagnosticsMode?: string;
/**
* (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)
*
* @default - "253402214400"
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-expirytime
*/
readonly expiryTime?: string;
/**
* The name of a campaign.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-name
*/
readonly name: string;
/**
* (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`
*
* @default - 0
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-posttriggercollectionduration
*/
readonly postTriggerCollectionDuration?: number;
/**
* (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`
*
* @default - 0
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-priority
*/
readonly priority?: number;
/**
* The Amazon Resource Name (ARN) of the signal catalog associated with the campaign.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-signalcatalogarn
*/
readonly signalCatalogArn: string;
/**
* (Optional) A list of information about signals to collect.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-signalstocollect
*/
readonly signalsToCollect?: Array<cdk.IResolvable | CfnCampaign.SignalInformationProperty> | cdk.IResolvable;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-signalstofetch
*/
readonly signalsToFetch?: Array<cdk.IResolvable | CfnCampaign.SignalFetchInformationProperty> | cdk.IResolvable;
/**
* (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 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`
*
* @default - "OFF"
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-spoolingmode
*/
readonly spoolingMode?: string;
/**
* (Optional) The time, in milliseconds, to deliver a campaign after it was approved.
*
* If it's not specified, `0` is used.
*
* Default: `0`
*
* @default - "0"
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-starttime
*/
readonly startTime?: string;
/**
* (Optional) Metadata that can be used to manage the campaign.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-tags
*/
readonly tags?: Array<cdk.CfnTag>;
/**
* The Amazon Resource Name (ARN) of a vehicle or fleet to which the campaign is deployed.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-campaign.html#cfn-iotfleetwise-campaign-targetarn
*/
readonly targetArn: string;
}
/**
* Creates the decoder manifest associated with a model manifest. To create a decoder manifest, the following must be true:.
*
* - Every signal decoder has a unique name.
* - Each signal decoder is associated with a network interface.
* - Each network interface has a unique ID.
* - The signal decoders are specified in the model manifest.
*
* @cloudformationResource AWS::IoTFleetWise::DecoderManifest
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotfleetwise-decodermanifest.html
*/
export declare class CfnDecoderManifest extends cdk.CfnResource implements cdk.IInspectable, cdk.ITaggable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnDecoderManifest from CloudFormation properties
*
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDecoderManifest;
/**
* The Amazon Resource Name (ARN) of the decoder manifest.
*
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The time the decoder manifest was created in seconds since epoch (January 1, 1970 at midnight UTC time).
*
* @cloudformationAttribute CreationTime
*/
readonly attrCreationTime: string;
/**
* The time the decoder manifest was last updated in seconds since epoch (January 1, 1970 at midnight UTC time).
*
* @cloudformationAttribute LastModificationTime
*/
readonly attrLastModificationTime: string;
/**
* (Optional) A brief description of the decoder manifest.
*/
description?: string;
/**
* The Amazon Resource Name (ARN) of a vehicle model (model manifest) associated with the decoder manifest.
*/
modelManifestArn: string;
/**
* The name of the decoder manifest.
*/
name: string;
/**
* (Optional) A list of information about available network interfaces.
*/
networkInterfaces?: Array<cdk.IResolvable | CfnDecoderManifest.NetworkInterfacesItemsProperty> | cdk.IResolvable;
/**
* (Optional) A list of information about signal decoders.
*/
signalDecoders?: Array<cdk.IResolvable | CfnDecoderManifest.SignalDecodersItemsProperty> | cdk.IResolvable;
/**
* (Optional) The state of the decoder manifest.
*/
status?: string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly tags: cdk.TagManager;
/**
* (Optional) Metadata that can be used to manage the decoder manifest.
*/
tagsRaw?: Array<cdk.CfnTag>;
/**
* @param scope Scope in which this resource is defined
* @param id Construct identifier for this resource (unique in its scope)
* @param props Resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnDecoderManifestProps);
protected get cfnProperties(): Record<string, any>;
/**
* Examines the CloudFormation resource and discloses attributes
*
* @param inspector tree inspector to collect and process attributes
*/
inspect(inspector: cdk.TreeInspector): void;
protected renderProperties(props: Record<string, any>): Record<string, any>;
}
export declare namespace CfnDecoderManifest {
/**
* Information about signal decoder using the Controller Area Network (CAN) protocol.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignaldecoder.html
*/
interface CanSignalDecoderProperty {
/**
* Information about a single controller area network (CAN) signal and the messages it receives and transmits.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignaldecoder.html#cfn-iotfleetwise-decodermanifest-cansignaldecoder-cansignal
*/
readonly canSignal: CfnDecoderManifest.CanSignalProperty | cdk.IResolvable;
/**
* The fully qualified name of a signal decoder as defined in a vehicle model.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignaldecoder.html#cfn-iotfleetwise-decodermanifest-cansignaldecoder-fullyqualifiedname
*/
readonly fullyQualifiedName: string;
/**
* The ID of a network interface that specifies what network protocol a vehicle follows.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignaldecoder.html#cfn-iotfleetwise-decodermanifest-cansignaldecoder-interfaceid
*/
readonly interfaceId: string;
/**
* The network protocol for the vehicle.
*
* For example, `CAN_SIGNAL` specifies a protocol that defines how data is communicated between electronic control units (ECUs). `OBD_SIGNAL` specifies a protocol that defines how self-diagnostic data is communicated between ECUs.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignaldecoder.html#cfn-iotfleetwise-decodermanifest-cansignaldecoder-type
*/
readonly type: string;
}
/**
* (Optional) Information about a single controller area network (CAN) signal and the messages it receives and transmits.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html
*/
interface CanSignalProperty {
/**
* A multiplier used to decode the CAN message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-factor
*/
readonly factor: string;
/**
* Whether the byte ordering of a CAN message is big-endian.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-isbigendian
*/
readonly isBigEndian: string;
/**
* Whether the message data is specified as a signed value.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-issigned
*/
readonly isSigned: string;
/**
* How many bytes of data are in the message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-length
*/
readonly length: string;
/**
* The ID of the message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-messageid
*/
readonly messageId: string;
/**
* (Optional) The name of the signal.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-name
*/
readonly name?: string;
/**
* The offset used to calculate the signal value.
*
* Combined with factor, the calculation is `value = raw_value * factor + offset` .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-offset
*/
readonly offset: string;
/**
* Indicates the beginning of the CAN message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cansignal.html#cfn-iotfleetwise-decodermanifest-cansignal-startbit
*/
readonly startBit: string;
}
/**
* A list of information about signal decoders.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignaldecoder.html
*/
interface ObdSignalDecoderProperty {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignaldecoder.html#cfn-iotfleetwise-decodermanifest-obdsignaldecoder-fullyqualifiedname
*/
readonly fullyQualifiedName: string;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignaldecoder.html#cfn-iotfleetwise-decodermanifest-obdsignaldecoder-interfaceid
*/
readonly interfaceId: string;
/**
* Information about signal messages using the on-board diagnostics (OBD) II protocol in a vehicle.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignaldecoder.html#cfn-iotfleetwise-decodermanifest-obdsignaldecoder-obdsignal
*/
readonly obdSignal: cdk.IResolvable | CfnDecoderManifest.ObdSignalProperty;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignaldecoder.html#cfn-iotfleetwise-decodermanifest-obdsignaldecoder-type
*/
readonly type: string;
}
/**
* Information about signal messages using the on-board diagnostics (OBD) II protocol in a vehicle.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html
*/
interface ObdSignalProperty {
/**
* (Optional) The number of bits to mask in a message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-bitmasklength
*/
readonly bitMaskLength?: string;
/**
* (Optional) The number of positions to shift bits in the message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-bitrightshift
*/
readonly bitRightShift?: string;
/**
* The length of a message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-bytelength
*/
readonly byteLength: string;
/**
* The offset used to calculate the signal value.
*
* Combined with scaling, the calculation is `value = raw_value * scaling + offset` .
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-offset
*/
readonly offset: string;
/**
* The diagnostic code used to request data from a vehicle for this signal.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-pid
*/
readonly pid: string;
/**
* The length of the requested data.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-pidresponselength
*/
readonly pidResponseLength: string;
/**
* A multiplier used to decode the message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-scaling
*/
readonly scaling: string;
/**
* The mode of operation (diagnostic service) in a message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-servicemode
*/
readonly serviceMode: string;
/**
* Indicates the beginning of the message.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdsignal.html#cfn-iotfleetwise-decodermanifest-obdsignal-startbyte
*/
readonly startByte: string;
}
/**
* Information about a signal decoder.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html
*/
interface SignalDecodersItemsProperty {
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-cansignal
*/
readonly canSignal?: CfnDecoderManifest.CanSignalProperty | cdk.IResolvable;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-fullyqualifiedname
*/
readonly fullyQualifiedName: string;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-interfaceid
*/
readonly interfaceId: string;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-obdsignal
*/
readonly obdSignal?: cdk.IResolvable | CfnDecoderManifest.ObdSignalProperty;
/**
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-signaldecodersitems.html#cfn-iotfleetwise-decodermanifest-signaldecodersitems-type
*/
readonly type: string;
}
/**
* Represents a node and its specifications in an in-vehicle communication network.
*
* All signal decoders must be associated with a network node.
*
* To return this information about all the network interfaces specified in a decoder manifest, use the [ListDecoderManifestNetworkInterfaces](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_ListDecoderManifestNetworkInterfaces.html) in the *AWS IoT FleetWise API Reference* .
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cannetworkinterface.html
*/
interface CanNetworkInterfaceProperty {
/**
* Information about a network interface specified by the Controller Area Network (CAN) protocol.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cannetworkinterface.html#cfn-iotfleetwise-decodermanifest-cannetworkinterface-caninterface
*/
readonly canInterface: CfnDecoderManifest.CanInterfaceProperty | cdk.IResolvable;
/**
* The ID of the network interface.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cannetworkinterface.html#cfn-iotfleetwise-decodermanifest-cannetworkinterface-interfaceid
*/
readonly interfaceId: string;
/**
* The network protocol for the vehicle.
*
* For example, `CAN_SIGNAL` specifies a protocol that defines how data is communicated between electronic control units (ECUs). `OBD_SIGNAL` specifies a protocol that defines how self-diagnostic data is communicated between ECUs.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-cannetworkinterface.html#cfn-iotfleetwise-decodermanifest-cannetworkinterface-type
*/
readonly type: string;
}
/**
* A single controller area network (CAN) device interface.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-caninterface.html
*/
interface CanInterfaceProperty {
/**
* The unique name of the interface.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-caninterface.html#cfn-iotfleetwise-decodermanifest-caninterface-name
*/
readonly name: string;
/**
* (Optional) The name of the communication protocol for the interface.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-caninterface.html#cfn-iotfleetwise-decodermanifest-caninterface-protocolname
*/
readonly protocolName?: string;
/**
* (Optional) The version of the communication protocol for the interface.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-caninterface.html#cfn-iotfleetwise-decodermanifest-caninterface-protocolversion
*/
readonly protocolVersion?: string;
}
/**
* Information about a network interface specified by the On-board diagnostic (OBD) II protocol.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdnetworkinterface.html
*/
interface ObdNetworkInterfaceProperty {
/**
* The ID of the network interface.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotfleetwise-decodermanifest-obdnetworkinterface.html#cfn-iotfleetwise-decodermanifest-obdnetworkinterface-interfaceid
*/
readonly interfaceId: string;
/**
* (Optional) Information about a ne