Class: AWSCDK::IoTFleetWise::CfnCampaignProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
io_t_fleet_wise/cfn_campaign_props.rb

Overview

Properties for defining a CfnCampaign.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(collection_scheme:, name:, signal_catalog_arn:, target_arn:, action: nil, compression: nil, data_destination_configs: nil, data_extra_dimensions: nil, data_partitions: nil, description: nil, diagnostics_mode: nil, expiry_time: nil, post_trigger_collection_duration: nil, priority: nil, signals_to_collect: nil, signals_to_fetch: nil, spooling_mode: nil, start_time: nil, tags: nil) ⇒ CfnCampaignProps

Returns a new instance of CfnCampaignProps.

Parameters:

  • collection_scheme (AWSCDK::IResolvable, AWSCDK::IoTFleetWise::CfnCampaign::CollectionSchemeProperty)

    The data collection scheme associated with the campaign.

  • name (String)

    The name of a campaign.

  • signal_catalog_arn (String)

    The Amazon Resource Name (ARN) of the signal catalog associated with the campaign.

  • target_arn (String)

    The Amazon Resource Name (ARN) of a vehicle or fleet to which the campaign is deployed.

  • action (String, nil) (defaults to: nil)

    Specifies how to update a campaign. The action can be one of the following:.

  • compression (String, nil) (defaults to: nil)

    Whether to compress signals before transmitting data to AWS IoT FleetWise .

  • data_destination_configs (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::IoTFleetWise::CfnCampaign::DataDestinationConfigProperty>, nil) (defaults to: nil)

    The destination where the campaign sends data.

  • data_extra_dimensions (Array<String>, nil) (defaults to: nil)

    A list of vehicle attributes to associate with a campaign.

  • data_partitions (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::IoTFleetWise::CfnCampaign::DataPartitionProperty>, nil) (defaults to: nil)

    The data partitions associated with the signals collected from the vehicle.

  • description (String, nil) (defaults to: nil)

    The description of the campaign.

  • diagnostics_mode (String, nil) (defaults to: nil)

    Option for a vehicle to send diagnostic trouble codes to AWS IoT FleetWise .

  • expiry_time (String, nil) (defaults to: nil)

    The time the campaign expires, in seconds since epoch (January 1, 1970 at midnight UTC time).

  • post_trigger_collection_duration (Numeric, nil) (defaults to: nil)

    How long (in milliseconds) to collect raw data after a triggering event initiates the collection.

  • priority (Numeric, nil) (defaults to: nil)

    A number indicating the priority of one campaign over another campaign for a certain vehicle or fleet.

  • signals_to_collect (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::IoTFleetWise::CfnCampaign::SignalInformationProperty>, nil) (defaults to: nil)

    A list of information about signals to collect.

  • signals_to_fetch (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::IoTFleetWise::CfnCampaign::SignalFetchInformationProperty>, nil) (defaults to: nil)

    A list of information about signals to fetch.

  • spooling_mode (String, nil) (defaults to: nil)

    Whether to store collected data after a vehicle lost a connection with the cloud.

  • start_time (String, nil) (defaults to: nil)

    The time, in milliseconds, to deliver a campaign after it was approved. If it's not specified, 0 is used.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Metadata that can be used to manage the campaign.



28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 28

def initialize(collection_scheme:, name:, signal_catalog_arn:, target_arn:, action: nil, compression: nil, data_destination_configs: nil, data_extra_dimensions: nil, data_partitions: nil, description: nil, diagnostics_mode: nil, expiry_time: nil, post_trigger_collection_duration: nil, priority: nil, signals_to_collect: nil, signals_to_fetch: nil, spooling_mode: nil, start_time: nil, tags: nil)
  @collection_scheme = collection_scheme.is_a?(Hash) ? ::AWSCDK::IoTFleetWise::CfnCampaign::CollectionSchemeProperty.new(**collection_scheme.transform_keys(&:to_sym)) : collection_scheme
  Jsii::Type.check_type(@collection_scheme, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pb3RmbGVldHdpc2UuQ2ZuQ2FtcGFpZ24uQ29sbGVjdGlvblNjaGVtZVByb3BlcnR5In1dfX0=")), "collectionScheme")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @signal_catalog_arn = signal_catalog_arn
  Jsii::Type.check_type(@signal_catalog_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "signalCatalogArn")
  @target_arn = target_arn
  Jsii::Type.check_type(@target_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "targetArn")
  @action = action
  Jsii::Type.check_type(@action, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "action") unless @action.nil?
  @compression = compression
  Jsii::Type.check_type(@compression, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "compression") unless @compression.nil?
  @data_destination_configs = data_destination_configs
  Jsii::Type.check_type(@data_destination_configs, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW90ZmxlZXR3aXNlLkNmbkNhbXBhaWduLkRhdGFEZXN0aW5hdGlvbkNvbmZpZ1Byb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "dataDestinationConfigs") unless @data_destination_configs.nil?
  @data_extra_dimensions = data_extra_dimensions
  Jsii::Type.check_type(@data_extra_dimensions, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "dataExtraDimensions") unless @data_extra_dimensions.nil?
  @data_partitions = data_partitions
  Jsii::Type.check_type(@data_partitions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW90ZmxlZXR3aXNlLkNmbkNhbXBhaWduLkRhdGFQYXJ0aXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "dataPartitions") unless @data_partitions.nil?
  @description = description
  Jsii::Type.check_type(@description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless @description.nil?
  @diagnostics_mode = diagnostics_mode
  Jsii::Type.check_type(@diagnostics_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "diagnosticsMode") unless @diagnostics_mode.nil?
  @expiry_time = expiry_time
  Jsii::Type.check_type(@expiry_time, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "expiryTime") unless @expiry_time.nil?
  @post_trigger_collection_duration = post_trigger_collection_duration
  Jsii::Type.check_type(@post_trigger_collection_duration, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "postTriggerCollectionDuration") unless @post_trigger_collection_duration.nil?
  @priority = priority
  Jsii::Type.check_type(@priority, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "priority") unless @priority.nil?
  @signals_to_collect = signals_to_collect
  Jsii::Type.check_type(@signals_to_collect, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW90ZmxlZXR3aXNlLkNmbkNhbXBhaWduLlNpZ25hbEluZm9ybWF0aW9uUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "signalsToCollect") unless @signals_to_collect.nil?
  @signals_to_fetch = signals_to_fetch
  Jsii::Type.check_type(@signals_to_fetch, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW90ZmxlZXR3aXNlLkNmbkNhbXBhaWduLlNpZ25hbEZldGNoSW5mb3JtYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "signalsToFetch") unless @signals_to_fetch.nil?
  @spooling_mode = spooling_mode
  Jsii::Type.check_type(@spooling_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "spoolingMode") unless @spooling_mode.nil?
  @start_time = start_time
  Jsii::Type.check_type(@start_time, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "startTime") unless @start_time.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#actionString? (readonly)

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.


100
101
102
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 100

def action
  @action
end

#collection_schemeAWSCDK::IResolvable, AWSCDK::IoTFleetWise::CfnCampaign::CollectionSchemeProperty (readonly)

The data collection scheme associated with the campaign.

You can specify a scheme that collects data based on time or an event.



75
76
77
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 75

def collection_scheme
  @collection_scheme
end

#compressionString? (readonly)

Note:

Default: - "OFF"

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



110
111
112
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 110

def compression
  @compression
end

#data_destination_configsAWSCDK::IResolvable, ... (readonly)

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.



121
122
123
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 121

def data_destination_configs
  @data_destination_configs
end

#data_extra_dimensionsArray<String>? (readonly)

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



130
131
132
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 130

def data_extra_dimensions
  @data_extra_dimensions
end

#data_partitionsAWSCDK::IResolvable, ... (readonly)

The data partitions associated with the signals collected from the vehicle.



135
136
137
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 135

def data_partitions
  @data_partitions
end

#descriptionString? (readonly)

The description of the campaign.



140
141
142
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 140

def description
  @description
end

#diagnostics_modeString? (readonly)

Note:

Default: - "OFF"

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



150
151
152
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 150

def diagnostics_mode
  @diagnostics_mode
end

#expiry_timeString? (readonly)

Note:

Default: - "253402214400"

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)



160
161
162
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 160

def expiry_time
  @expiry_time
end

#nameString (readonly)

The name of a campaign.



80
81
82
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 80

def name
  @name
end

#post_trigger_collection_durationNumeric? (readonly)

Note:

Default: - 0

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



170
171
172
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 170

def post_trigger_collection_duration
  @post_trigger_collection_duration
end

#priorityNumeric? (readonly)

Note:

Default: - 0

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



180
181
182
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 180

def priority
  @priority
end

#signal_catalog_arnString (readonly)

The Amazon Resource Name (ARN) of the signal catalog associated with the campaign.



85
86
87
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 85

def signal_catalog_arn
  @signal_catalog_arn
end

#signals_to_collectAWSCDK::IResolvable, ... (readonly)

A list of information about signals to collect.



185
186
187
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 185

def signals_to_collect
  @signals_to_collect
end

#signals_to_fetchAWSCDK::IResolvable, ... (readonly)

A list of information about signals to fetch.



190
191
192
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 190

def signals_to_fetch
  @signals_to_fetch
end

#spooling_modeString? (readonly)

Note:

Default: - "OFF"

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



200
201
202
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 200

def spooling_mode
  @spooling_mode
end

#start_timeString? (readonly)

Note:

Default: - "0"

The time, in milliseconds, to deliver a campaign after it was approved. If it's not specified, 0 is used.

Default: 0



208
209
210
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 208

def start_time
  @start_time
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Metadata that can be used to manage the campaign.



213
214
215
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 213

def tags
  @tags
end

#target_arnString (readonly)

The Amazon Resource Name (ARN) of a vehicle or fleet to which the campaign is deployed.



90
91
92
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 90

def target_arn
  @target_arn
end

Class Method Details

.jsii_propertiesObject



215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 215

def self.jsii_properties
  {
    :collection_scheme => "collectionScheme",
    :name => "name",
    :signal_catalog_arn => "signalCatalogArn",
    :target_arn => "targetArn",
    :action => "action",
    :compression => "compression",
    :data_destination_configs => "dataDestinationConfigs",
    :data_extra_dimensions => "dataExtraDimensions",
    :data_partitions => "dataPartitions",
    :description => "description",
    :diagnostics_mode => "diagnosticsMode",
    :expiry_time => "expiryTime",
    :post_trigger_collection_duration => "postTriggerCollectionDuration",
    :priority => "priority",
    :signals_to_collect => "signalsToCollect",
    :signals_to_fetch => "signalsToFetch",
    :spooling_mode => "spoolingMode",
    :start_time => "startTime",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
# File 'io_t_fleet_wise/cfn_campaign_props.rb', line 239

def to_jsii
  result = {}
  result.merge!({
    "collectionScheme" => @collection_scheme,
    "name" => @name,
    "signalCatalogArn" => @signal_catalog_arn,
    "targetArn" => @target_arn,
    "action" => @action,
    "compression" => @compression,
    "dataDestinationConfigs" => @data_destination_configs,
    "dataExtraDimensions" => @data_extra_dimensions,
    "dataPartitions" => @data_partitions,
    "description" => @description,
    "diagnosticsMode" => @diagnostics_mode,
    "expiryTime" => @expiry_time,
    "postTriggerCollectionDuration" => @post_trigger_collection_duration,
    "priority" => @priority,
    "signalsToCollect" => @signals_to_collect,
    "signalsToFetch" => @signals_to_fetch,
    "spoolingMode" => @spooling_mode,
    "startTime" => @start_time,
    "tags" => @tags,
  })
  result.compact
end