aws-sdk-iotfleetwise 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 97307c54a728771016349ed6d5208177bb7ea6c7b054b1d89655eba4f981dc4f
4
- data.tar.gz: f9bc76f74f86610712ccbc1cb84bd24fb0269b16ae3a1fd36f8045f42ff0ff54
3
+ metadata.gz: c69648a70cd60702da4dbae253214de3375f6e0ddad8757879e86031b7dc7eea
4
+ data.tar.gz: 7acffe232f49d8bf8b89fc27b27d196d7d8576610b2e5abde1f5969674379f01
5
5
  SHA512:
6
- metadata.gz: 5cbbbf7c9cdf2fb858cff5b026e9cf762519467be49a8a4f352bfaf049214c0849810f2d8e0ba03b806e02edba02a83d8995bbf2e77f948b771747db29baa4fc
7
- data.tar.gz: f0457dbbba97a163e6ddbeacfb9a85d192ebfdce778874789758eaeaae342062bba87cc29cc63d1bdadd19e145c838e6ab7e245d5ec449e543a4b7ce3a54cd8f
6
+ metadata.gz: 76a83544eadfd50557f506ed5d59e00208c8ef461fb7a7cdfd7dfc47dee165addf6b1fc24024d716af1ab6cd98d9bb6783299e4c8214672c1409bdc04d248535
7
+ data.tar.gz: 20bf20823d718b1c2289d3b4515fa6d4c8a1c1918a39004cf5dd29991bddcd2ecca5a5d43534cb735c350b3102d28503f3d33372f0abba10a53826137f5d7f85
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.8.0 (2023-05-30)
5
+ ------------------
6
+
7
+ * Feature - Campaigns now support selecting Timestream or S3 as the data destination, Signal catalogs now support "Deprecation" keyword released in VSS v2.1 and "Comment" keyword released in VSS v3.0
8
+
4
9
  1.7.0 (2023-01-26)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.7.0
1
+ 1.8.0
@@ -557,8 +557,8 @@ module Aws::IoTFleetWise
557
557
  #
558
558
  # @option params [Time,DateTime,Date,Integer,String] :expiry_time
559
559
  # (Optional) The time the campaign expires, in seconds since epoch
560
- # (January 1, 1970 at midnight UTC time). Vehicle data won't be
561
- # collected after the campaign expires.
560
+ # (January 1, 1970 at midnight UTC time). Vehicle data isn't collected
561
+ # after the campaign expires.
562
562
  #
563
563
  # Default: 253402214400 (December 31, 9999, 00:00:00 UTC)
564
564
  #
@@ -622,6 +622,18 @@ module Aws::IoTFleetWise
622
622
  # @option params [Array<Types::Tag>] :tags
623
623
  # Metadata that can be used to manage the campaign.
624
624
  #
625
+ # @option params [Array<Types::DataDestinationConfig>] :data_destination_configs
626
+ # The destination where the campaign sends data. You can choose to send
627
+ # data to be stored in Amazon S3 or Amazon Timestream.
628
+ #
629
+ # Amazon S3 optimizes the cost of data storage and provides additional
630
+ # mechanisms to use vehicle data, such as data lakes, centralized data
631
+ # storage, data processing pipelines, and analytics.
632
+ #
633
+ # You can use Amazon Timestream to access and analyze time series data,
634
+ # and Timestream to query vehicle data so that you can identify trends
635
+ # and patterns.
636
+ #
625
637
  # @return [Types::CreateCampaignResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
626
638
  #
627
639
  # * {Types::CreateCampaignResponse#name #name} => String
@@ -666,6 +678,20 @@ module Aws::IoTFleetWise
666
678
  # value: "TagValue", # required
667
679
  # },
668
680
  # ],
681
+ # data_destination_configs: [
682
+ # {
683
+ # s3_config: {
684
+ # bucket_arn: "S3BucketArn", # required
685
+ # data_format: "JSON", # accepts JSON, PARQUET
686
+ # storage_compression_format: "NONE", # accepts NONE, GZIP
687
+ # prefix: "Prefix",
688
+ # },
689
+ # timestream_config: {
690
+ # timestream_table_arn: "TimestreamTableArn", # required
691
+ # execution_role_arn: "IAMRoleArn", # required
692
+ # },
693
+ # },
694
+ # ],
669
695
  # })
670
696
  #
671
697
  # @example Response structure
@@ -933,6 +959,8 @@ module Aws::IoTFleetWise
933
959
  # branch: {
934
960
  # fully_qualified_name: "string", # required
935
961
  # description: "description",
962
+ # deprecation_message: "message",
963
+ # comment: "message",
936
964
  # },
937
965
  # sensor: {
938
966
  # fully_qualified_name: "string", # required
@@ -942,6 +970,8 @@ module Aws::IoTFleetWise
942
970
  # allowed_values: ["string"],
943
971
  # min: 1.0,
944
972
  # max: 1.0,
973
+ # deprecation_message: "message",
974
+ # comment: "message",
945
975
  # },
946
976
  # actuator: {
947
977
  # fully_qualified_name: "string", # required
@@ -952,6 +982,8 @@ module Aws::IoTFleetWise
952
982
  # min: 1.0,
953
983
  # max: 1.0,
954
984
  # assigned_value: "string",
985
+ # deprecation_message: "message",
986
+ # comment: "message",
955
987
  # },
956
988
  # attribute: {
957
989
  # fully_qualified_name: "string", # required
@@ -963,6 +995,8 @@ module Aws::IoTFleetWise
963
995
  # max: 1.0,
964
996
  # assigned_value: "string",
965
997
  # default_value: "string",
998
+ # deprecation_message: "message",
999
+ # comment: "message",
966
1000
  # },
967
1001
  # },
968
1002
  # ],
@@ -990,7 +1024,7 @@ module Aws::IoTFleetWise
990
1024
  # manifest). Vehicles created from the same vehicle model consist of the
991
1025
  # same signals inherited from the vehicle model.
992
1026
  #
993
- # <note markdown="1"> If you have an existing Amazon Web Services IoT Thing, you can use
1027
+ # <note markdown="1"> If you have an existing Amazon Web Services IoT thing, you can use
994
1028
  # Amazon Web Services IoT FleetWise to create a vehicle and collect data
995
1029
  # from your thing.
996
1030
  #
@@ -1014,7 +1048,10 @@ module Aws::IoTFleetWise
1014
1048
  #
1015
1049
  # @option params [Hash<String,String>] :attributes
1016
1050
  # Static information about a vehicle in a key-value pair. For example:
1017
- # `"engineType"`\: `"1.3 L R2"`
1051
+ # `"engineType"` : `"1.3 L R2"`
1052
+ #
1053
+ # A campaign must include the keys (attribute names) in
1054
+ # `dataExtraDimensions` for them to display in Amazon Timestream.
1018
1055
  #
1019
1056
  # @option params [String] :association_behavior
1020
1057
  # An option to create a new Amazon Web Services IoT thing when creating
@@ -1321,6 +1358,7 @@ module Aws::IoTFleetWise
1321
1358
  # * {Types::GetCampaignResponse#data_extra_dimensions #data_extra_dimensions} => Array&lt;String&gt;
1322
1359
  # * {Types::GetCampaignResponse#creation_time #creation_time} => Time
1323
1360
  # * {Types::GetCampaignResponse#last_modification_time #last_modification_time} => Time
1361
+ # * {Types::GetCampaignResponse#data_destination_configs #data_destination_configs} => Array&lt;Types::DataDestinationConfig&gt;
1324
1362
  #
1325
1363
  # @example Request syntax with placeholder values
1326
1364
  #
@@ -1356,6 +1394,13 @@ module Aws::IoTFleetWise
1356
1394
  # resp.data_extra_dimensions[0] #=> String
1357
1395
  # resp.creation_time #=> Time
1358
1396
  # resp.last_modification_time #=> Time
1397
+ # resp.data_destination_configs #=> Array
1398
+ # resp.data_destination_configs[0].s3_config.bucket_arn #=> String
1399
+ # resp.data_destination_configs[0].s3_config.data_format #=> String, one of "JSON", "PARQUET"
1400
+ # resp.data_destination_configs[0].s3_config.storage_compression_format #=> String, one of "NONE", "GZIP"
1401
+ # resp.data_destination_configs[0].s3_config.prefix #=> String
1402
+ # resp.data_destination_configs[0].timestream_config.timestream_table_arn #=> String
1403
+ # resp.data_destination_configs[0].timestream_config.execution_role_arn #=> String
1359
1404
  #
1360
1405
  # @overload get_campaign(params = {})
1361
1406
  # @param [Hash] params ({})
@@ -2155,6 +2200,8 @@ module Aws::IoTFleetWise
2155
2200
  # resp.nodes #=> Array
2156
2201
  # resp.nodes[0].branch.fully_qualified_name #=> String
2157
2202
  # resp.nodes[0].branch.description #=> String
2203
+ # resp.nodes[0].branch.deprecation_message #=> String
2204
+ # resp.nodes[0].branch.comment #=> String
2158
2205
  # resp.nodes[0].sensor.fully_qualified_name #=> String
2159
2206
  # resp.nodes[0].sensor.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2160
2207
  # resp.nodes[0].sensor.description #=> String
@@ -2163,6 +2210,8 @@ module Aws::IoTFleetWise
2163
2210
  # resp.nodes[0].sensor.allowed_values[0] #=> String
2164
2211
  # resp.nodes[0].sensor.min #=> Float
2165
2212
  # resp.nodes[0].sensor.max #=> Float
2213
+ # resp.nodes[0].sensor.deprecation_message #=> String
2214
+ # resp.nodes[0].sensor.comment #=> String
2166
2215
  # resp.nodes[0].actuator.fully_qualified_name #=> String
2167
2216
  # resp.nodes[0].actuator.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2168
2217
  # resp.nodes[0].actuator.description #=> String
@@ -2172,6 +2221,8 @@ module Aws::IoTFleetWise
2172
2221
  # resp.nodes[0].actuator.min #=> Float
2173
2222
  # resp.nodes[0].actuator.max #=> Float
2174
2223
  # resp.nodes[0].actuator.assigned_value #=> String
2224
+ # resp.nodes[0].actuator.deprecation_message #=> String
2225
+ # resp.nodes[0].actuator.comment #=> String
2175
2226
  # resp.nodes[0].attribute.fully_qualified_name #=> String
2176
2227
  # resp.nodes[0].attribute.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2177
2228
  # resp.nodes[0].attribute.description #=> String
@@ -2182,6 +2233,8 @@ module Aws::IoTFleetWise
2182
2233
  # resp.nodes[0].attribute.max #=> Float
2183
2234
  # resp.nodes[0].attribute.assigned_value #=> String
2184
2235
  # resp.nodes[0].attribute.default_value #=> String
2236
+ # resp.nodes[0].attribute.deprecation_message #=> String
2237
+ # resp.nodes[0].attribute.comment #=> String
2185
2238
  # resp.next_token #=> String
2186
2239
  #
2187
2240
  # @overload list_model_manifest_nodes(params = {})
@@ -2291,6 +2344,8 @@ module Aws::IoTFleetWise
2291
2344
  # resp.nodes #=> Array
2292
2345
  # resp.nodes[0].branch.fully_qualified_name #=> String
2293
2346
  # resp.nodes[0].branch.description #=> String
2347
+ # resp.nodes[0].branch.deprecation_message #=> String
2348
+ # resp.nodes[0].branch.comment #=> String
2294
2349
  # resp.nodes[0].sensor.fully_qualified_name #=> String
2295
2350
  # resp.nodes[0].sensor.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2296
2351
  # resp.nodes[0].sensor.description #=> String
@@ -2299,6 +2354,8 @@ module Aws::IoTFleetWise
2299
2354
  # resp.nodes[0].sensor.allowed_values[0] #=> String
2300
2355
  # resp.nodes[0].sensor.min #=> Float
2301
2356
  # resp.nodes[0].sensor.max #=> Float
2357
+ # resp.nodes[0].sensor.deprecation_message #=> String
2358
+ # resp.nodes[0].sensor.comment #=> String
2302
2359
  # resp.nodes[0].actuator.fully_qualified_name #=> String
2303
2360
  # resp.nodes[0].actuator.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2304
2361
  # resp.nodes[0].actuator.description #=> String
@@ -2308,6 +2365,8 @@ module Aws::IoTFleetWise
2308
2365
  # resp.nodes[0].actuator.min #=> Float
2309
2366
  # resp.nodes[0].actuator.max #=> Float
2310
2367
  # resp.nodes[0].actuator.assigned_value #=> String
2368
+ # resp.nodes[0].actuator.deprecation_message #=> String
2369
+ # resp.nodes[0].actuator.comment #=> String
2311
2370
  # resp.nodes[0].attribute.fully_qualified_name #=> String
2312
2371
  # resp.nodes[0].attribute.data_type #=> String, one of "INT8", "UINT8", "INT16", "UINT16", "INT32", "UINT32", "INT64", "UINT64", "BOOLEAN", "FLOAT", "DOUBLE", "STRING", "UNIX_TIMESTAMP", "INT8_ARRAY", "UINT8_ARRAY", "INT16_ARRAY", "UINT16_ARRAY", "INT32_ARRAY", "UINT32_ARRAY", "INT64_ARRAY", "UINT64_ARRAY", "BOOLEAN_ARRAY", "FLOAT_ARRAY", "DOUBLE_ARRAY", "STRING_ARRAY", "UNIX_TIMESTAMP_ARRAY", "UNKNOWN"
2313
2372
  # resp.nodes[0].attribute.description #=> String
@@ -2318,6 +2377,8 @@ module Aws::IoTFleetWise
2318
2377
  # resp.nodes[0].attribute.max #=> Float
2319
2378
  # resp.nodes[0].attribute.assigned_value #=> String
2320
2379
  # resp.nodes[0].attribute.default_value #=> String
2380
+ # resp.nodes[0].attribute.deprecation_message #=> String
2381
+ # resp.nodes[0].attribute.comment #=> String
2321
2382
  # resp.next_token #=> String
2322
2383
  #
2323
2384
  # @overload list_signal_catalog_nodes(params = {})
@@ -2538,29 +2599,33 @@ module Aws::IoTFleetWise
2538
2599
  req.send_request(options)
2539
2600
  end
2540
2601
 
2541
- # Registers your Amazon Web Services account, IAM, and Amazon Timestream
2542
- # resources so Amazon Web Services IoT FleetWise can transfer your
2543
- # vehicle data to the Amazon Web Services Cloud. For more information,
2544
- # including step-by-step procedures, see [Setting up Amazon Web Services
2545
- # IoT FleetWise][1].
2602
+ # This API operation contains deprecated parameters. Register your
2603
+ # account again without the Timestream resources parameter so that
2604
+ # Amazon Web Services IoT FleetWise can remove the Timestream metadata
2605
+ # stored. You should then pass the data destination into the
2606
+ # [CreateCampaign][1] API operation.
2546
2607
  #
2547
- # <note markdown="1"> An Amazon Web Services account is **not** the same thing as a "user
2548
- # account". An [Amazon Web Services user][2] is an identity that you
2549
- # create using Identity and Access Management (IAM) and takes the form
2550
- # of either an [IAM user][3] or an [IAM role, both with credentials][4].
2551
- # A single Amazon Web Services account can, and typically does, contain
2552
- # many users and roles.
2608
+ # You must delete any existing campaigns that include an empty data
2609
+ # destination before you register your account again. For more
2610
+ # information, see the [DeleteCampaign][2] API operation.
2553
2611
  #
2554
- # </note>
2612
+ # If you want to delete the Timestream inline policy from the
2613
+ # service-linked role, such as to mitigate an overly permissive policy,
2614
+ # you must first delete any existing campaigns. Then delete the
2615
+ # service-linked role and register your account again to enable
2616
+ # CloudWatch metrics. For more information, see
2617
+ # [DeleteServiceLinkedRole][3] in the *Identity and Access Management
2618
+ # API Reference*.
2555
2619
  #
2620
+ # <p>Registers your Amazon Web Services account, IAM, and Amazon Timestream resources so Amazon Web Services IoT FleetWise can transfer your vehicle data to the Amazon Web Services Cloud. For more information, including step-by-step procedures, see <a href="https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html">Setting up Amazon Web Services IoT FleetWise</a>. </p> <note> <p>An Amazon Web Services account is <b>not</b> the same thing as a "user." An <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html#intro-identity-users">Amazon Web Services user</a> is an identity that you create using Identity and Access Management (IAM) and takes the form of either an <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html">IAM user</a> or an <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html">IAM role, both with credentials</a>. A single Amazon Web Services account can, and typically does, contain many users and roles.</p> </note>
2556
2621
  #
2557
2622
  #
2558
- # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/developerguide/setting-up.html
2559
- # [2]: https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html#intro-identity-users
2560
- # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html
2561
- # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html
2562
2623
  #
2563
- # @option params [required, Types::TimestreamResources] :timestream_resources
2624
+ # [1]: https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_CreateCampaign.html
2625
+ # [2]: https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_DeleteCampaign.html
2626
+ # [3]: https://docs.aws.amazon.com/IAM/latest/APIReference/API_DeleteServiceLinkedRole.html
2627
+ #
2628
+ # @option params [Types::TimestreamResources] :timestream_resources
2564
2629
  # The registered Amazon Timestream resources that Amazon Web Services
2565
2630
  # IoT FleetWise edge agent software can transfer your vehicle data to.
2566
2631
  #
@@ -2579,7 +2644,7 @@ module Aws::IoTFleetWise
2579
2644
  # @example Request syntax with placeholder values
2580
2645
  #
2581
2646
  # resp = client.register_account({
2582
- # timestream_resources: { # required
2647
+ # timestream_resources: {
2583
2648
  # timestream_database_name: "TimestreamDatabaseName", # required
2584
2649
  # timestream_table_name: "TimestreamTableName", # required
2585
2650
  # },
@@ -2678,9 +2743,13 @@ module Aws::IoTFleetWise
2678
2743
  # * `APPROVE` - To approve delivering a data collection scheme to
2679
2744
  # vehicles.
2680
2745
  #
2681
- # * `SUSPEND` - To suspend collecting signal data.
2746
+ # * `SUSPEND` - To suspend collecting signal data. The campaign is
2747
+ # deleted from vehicles and all vehicles in the suspended campaign
2748
+ # will stop sending data.
2682
2749
  #
2683
- # * `RESUME` - To resume collecting signal data.
2750
+ # * `RESUME` - To reactivate the `SUSPEND` campaign. The campaign is
2751
+ # redeployed to all vehicles and the vehicles will resume sending
2752
+ # data.
2684
2753
  #
2685
2754
  # * `UPDATE` - To update a campaign.
2686
2755
  #
@@ -2992,6 +3061,8 @@ module Aws::IoTFleetWise
2992
3061
  # branch: {
2993
3062
  # fully_qualified_name: "string", # required
2994
3063
  # description: "description",
3064
+ # deprecation_message: "message",
3065
+ # comment: "message",
2995
3066
  # },
2996
3067
  # sensor: {
2997
3068
  # fully_qualified_name: "string", # required
@@ -3001,6 +3072,8 @@ module Aws::IoTFleetWise
3001
3072
  # allowed_values: ["string"],
3002
3073
  # min: 1.0,
3003
3074
  # max: 1.0,
3075
+ # deprecation_message: "message",
3076
+ # comment: "message",
3004
3077
  # },
3005
3078
  # actuator: {
3006
3079
  # fully_qualified_name: "string", # required
@@ -3011,6 +3084,8 @@ module Aws::IoTFleetWise
3011
3084
  # min: 1.0,
3012
3085
  # max: 1.0,
3013
3086
  # assigned_value: "string",
3087
+ # deprecation_message: "message",
3088
+ # comment: "message",
3014
3089
  # },
3015
3090
  # attribute: {
3016
3091
  # fully_qualified_name: "string", # required
@@ -3022,6 +3097,8 @@ module Aws::IoTFleetWise
3022
3097
  # max: 1.0,
3023
3098
  # assigned_value: "string",
3024
3099
  # default_value: "string",
3100
+ # deprecation_message: "message",
3101
+ # comment: "message",
3025
3102
  # },
3026
3103
  # },
3027
3104
  # ],
@@ -3030,6 +3107,8 @@ module Aws::IoTFleetWise
3030
3107
  # branch: {
3031
3108
  # fully_qualified_name: "string", # required
3032
3109
  # description: "description",
3110
+ # deprecation_message: "message",
3111
+ # comment: "message",
3033
3112
  # },
3034
3113
  # sensor: {
3035
3114
  # fully_qualified_name: "string", # required
@@ -3039,6 +3118,8 @@ module Aws::IoTFleetWise
3039
3118
  # allowed_values: ["string"],
3040
3119
  # min: 1.0,
3041
3120
  # max: 1.0,
3121
+ # deprecation_message: "message",
3122
+ # comment: "message",
3042
3123
  # },
3043
3124
  # actuator: {
3044
3125
  # fully_qualified_name: "string", # required
@@ -3049,6 +3130,8 @@ module Aws::IoTFleetWise
3049
3130
  # min: 1.0,
3050
3131
  # max: 1.0,
3051
3132
  # assigned_value: "string",
3133
+ # deprecation_message: "message",
3134
+ # comment: "message",
3052
3135
  # },
3053
3136
  # attribute: {
3054
3137
  # fully_qualified_name: "string", # required
@@ -3060,6 +3143,8 @@ module Aws::IoTFleetWise
3060
3143
  # max: 1.0,
3061
3144
  # assigned_value: "string",
3062
3145
  # default_value: "string",
3146
+ # deprecation_message: "message",
3147
+ # comment: "message",
3063
3148
  # },
3064
3149
  # },
3065
3150
  # ],
@@ -3093,7 +3178,7 @@ module Aws::IoTFleetWise
3093
3178
  # @option params [Hash<String,String>] :attributes
3094
3179
  # Static information about a vehicle in a key-value pair. For example:
3095
3180
  #
3096
- # `"engineType"`\: `"1.3 L R2"`
3181
+ # `"engineType"` : `"1.3 L R2"`
3097
3182
  #
3098
3183
  # @option params [String] :attribute_update_mode
3099
3184
  # The method the specified attributes will update the existing
@@ -3145,7 +3230,7 @@ module Aws::IoTFleetWise
3145
3230
  params: params,
3146
3231
  config: config)
3147
3232
  context[:gem_name] = 'aws-sdk-iotfleetwise'
3148
- context[:gem_version] = '1.7.0'
3233
+ context[:gem_version] = '1.8.0'
3149
3234
  Seahorse::Client::Request.new(handlers, context)
3150
3235
  end
3151
3236
 
@@ -52,7 +52,10 @@ module Aws::IoTFleetWise
52
52
  CreateVehicleRequestItem = Shapes::StructureShape.new(name: 'CreateVehicleRequestItem')
53
53
  CreateVehicleResponse = Shapes::StructureShape.new(name: 'CreateVehicleResponse')
54
54
  CreateVehicleResponseItem = Shapes::StructureShape.new(name: 'CreateVehicleResponseItem')
55
+ DataDestinationConfig = Shapes::UnionShape.new(name: 'DataDestinationConfig')
56
+ DataDestinationConfigs = Shapes::ListShape.new(name: 'DataDestinationConfigs')
55
57
  DataExtraDimensionNodePathList = Shapes::ListShape.new(name: 'DataExtraDimensionNodePathList')
58
+ DataFormat = Shapes::StringShape.new(name: 'DataFormat')
56
59
  DecoderManifestSummary = Shapes::StructureShape.new(name: 'DecoderManifestSummary')
57
60
  DecoderManifestValidationException = Shapes::StructureShape.new(name: 'DecoderManifestValidationException')
58
61
  DeleteCampaignRequest = Shapes::StructureShape.new(name: 'DeleteCampaignRequest')
@@ -161,6 +164,7 @@ module Aws::IoTFleetWise
161
164
  ObdInterfaceName = Shapes::StringShape.new(name: 'ObdInterfaceName')
162
165
  ObdSignal = Shapes::StructureShape.new(name: 'ObdSignal')
163
166
  ObdStandard = Shapes::StringShape.new(name: 'ObdStandard')
167
+ Prefix = Shapes::StringShape.new(name: 'Prefix')
164
168
  ProtocolName = Shapes::StringShape.new(name: 'ProtocolName')
165
169
  ProtocolVersion = Shapes::StringShape.new(name: 'ProtocolVersion')
166
170
  PutLoggingOptionsRequest = Shapes::StructureShape.new(name: 'PutLoggingOptionsRequest')
@@ -170,6 +174,8 @@ module Aws::IoTFleetWise
170
174
  RegistrationStatus = Shapes::StringShape.new(name: 'RegistrationStatus')
171
175
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
172
176
  RetryAfterSeconds = Shapes::IntegerShape.new(name: 'RetryAfterSeconds')
177
+ S3BucketArn = Shapes::StringShape.new(name: 'S3BucketArn')
178
+ S3Config = Shapes::StructureShape.new(name: 'S3Config')
173
179
  Sensor = Shapes::StructureShape.new(name: 'Sensor')
174
180
  SignalCatalogSummary = Shapes::StructureShape.new(name: 'SignalCatalogSummary')
175
181
  SignalDecoder = Shapes::StructureShape.new(name: 'SignalDecoder')
@@ -179,6 +185,7 @@ module Aws::IoTFleetWise
179
185
  SignalInformation = Shapes::StructureShape.new(name: 'SignalInformation')
180
186
  SignalInformationList = Shapes::ListShape.new(name: 'SignalInformationList')
181
187
  SpoolingMode = Shapes::StringShape.new(name: 'SpoolingMode')
188
+ StorageCompressionFormat = Shapes::StringShape.new(name: 'StorageCompressionFormat')
182
189
  String = Shapes::StringShape.new(name: 'String')
183
190
  Tag = Shapes::StructureShape.new(name: 'Tag')
184
191
  TagKey = Shapes::StringShape.new(name: 'TagKey')
@@ -189,9 +196,11 @@ module Aws::IoTFleetWise
189
196
  TagValue = Shapes::StringShape.new(name: 'TagValue')
190
197
  ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
191
198
  TimeBasedCollectionScheme = Shapes::StructureShape.new(name: 'TimeBasedCollectionScheme')
199
+ TimestreamConfig = Shapes::StructureShape.new(name: 'TimestreamConfig')
192
200
  TimestreamDatabaseName = Shapes::StringShape.new(name: 'TimestreamDatabaseName')
193
201
  TimestreamRegistrationResponse = Shapes::StructureShape.new(name: 'TimestreamRegistrationResponse')
194
202
  TimestreamResources = Shapes::StructureShape.new(name: 'TimestreamResources')
203
+ TimestreamTableArn = Shapes::StringShape.new(name: 'TimestreamTableArn')
195
204
  TimestreamTableName = Shapes::StringShape.new(name: 'TimestreamTableName')
196
205
  TriggerMode = Shapes::StringShape.new(name: 'TriggerMode')
197
206
  UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
@@ -247,6 +256,7 @@ module Aws::IoTFleetWise
247
256
  listVehiclesMaxResults = Shapes::IntegerShape.new(name: 'listVehiclesMaxResults')
248
257
  maxResults = Shapes::IntegerShape.new(name: 'maxResults')
249
258
  maxSampleCount = Shapes::IntegerShape.new(name: 'maxSampleCount')
259
+ message = Shapes::StringShape.new(name: 'message')
250
260
  modelManifestSummaries = Shapes::ListShape.new(name: 'modelManifestSummaries')
251
261
  nextToken = Shapes::StringShape.new(name: 'nextToken')
252
262
  nonNegativeInteger = Shapes::IntegerShape.new(name: 'nonNegativeInteger')
@@ -278,6 +288,8 @@ module Aws::IoTFleetWise
278
288
  Actuator.add_member(:min, Shapes::ShapeRef.new(shape: double, location_name: "min"))
279
289
  Actuator.add_member(:max, Shapes::ShapeRef.new(shape: double, location_name: "max"))
280
290
  Actuator.add_member(:assigned_value, Shapes::ShapeRef.new(shape: string, deprecated: true, location_name: "assignedValue", metadata: {"deprecatedMessage"=>"assignedValue is no longer in use"}))
291
+ Actuator.add_member(:deprecation_message, Shapes::ShapeRef.new(shape: message, location_name: "deprecationMessage"))
292
+ Actuator.add_member(:comment, Shapes::ShapeRef.new(shape: message, location_name: "comment"))
281
293
  Actuator.struct_class = Types::Actuator
282
294
 
283
295
  AssociateVehicleFleetRequest.add_member(:vehicle_name, Shapes::ShapeRef.new(shape: vehicleName, required: true, location_name: "vehicleName"))
@@ -295,6 +307,8 @@ module Aws::IoTFleetWise
295
307
  Attribute.add_member(:max, Shapes::ShapeRef.new(shape: double, location_name: "max"))
296
308
  Attribute.add_member(:assigned_value, Shapes::ShapeRef.new(shape: string, deprecated: true, location_name: "assignedValue", metadata: {"deprecatedMessage"=>"assignedValue is no longer in use"}))
297
309
  Attribute.add_member(:default_value, Shapes::ShapeRef.new(shape: string, location_name: "defaultValue"))
310
+ Attribute.add_member(:deprecation_message, Shapes::ShapeRef.new(shape: message, location_name: "deprecationMessage"))
311
+ Attribute.add_member(:comment, Shapes::ShapeRef.new(shape: message, location_name: "comment"))
298
312
  Attribute.struct_class = Types::Attribute
299
313
 
300
314
  BatchCreateVehicleRequest.add_member(:vehicles, Shapes::ShapeRef.new(shape: createVehicleRequestItems, required: true, location_name: "vehicles"))
@@ -313,6 +327,8 @@ module Aws::IoTFleetWise
313
327
 
314
328
  Branch.add_member(:fully_qualified_name, Shapes::ShapeRef.new(shape: string, required: true, location_name: "fullyQualifiedName"))
315
329
  Branch.add_member(:description, Shapes::ShapeRef.new(shape: description, location_name: "description"))
330
+ Branch.add_member(:deprecation_message, Shapes::ShapeRef.new(shape: message, location_name: "deprecationMessage"))
331
+ Branch.add_member(:comment, Shapes::ShapeRef.new(shape: message, location_name: "comment"))
316
332
  Branch.struct_class = Types::Branch
317
333
 
318
334
  CampaignSummary.add_member(:arn, Shapes::ShapeRef.new(shape: arn, location_name: "arn"))
@@ -383,6 +399,7 @@ module Aws::IoTFleetWise
383
399
  CreateCampaignRequest.add_member(:collection_scheme, Shapes::ShapeRef.new(shape: CollectionScheme, required: true, location_name: "collectionScheme"))
384
400
  CreateCampaignRequest.add_member(:data_extra_dimensions, Shapes::ShapeRef.new(shape: DataExtraDimensionNodePathList, location_name: "dataExtraDimensions"))
385
401
  CreateCampaignRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
402
+ CreateCampaignRequest.add_member(:data_destination_configs, Shapes::ShapeRef.new(shape: DataDestinationConfigs, location_name: "dataDestinationConfigs"))
386
403
  CreateCampaignRequest.struct_class = Types::CreateCampaignRequest
387
404
 
388
405
  CreateCampaignResponse.add_member(:name, Shapes::ShapeRef.new(shape: campaignName, location_name: "name"))
@@ -463,6 +480,16 @@ module Aws::IoTFleetWise
463
480
  CreateVehicleResponseItem.add_member(:thing_arn, Shapes::ShapeRef.new(shape: arn, location_name: "thingArn"))
464
481
  CreateVehicleResponseItem.struct_class = Types::CreateVehicleResponseItem
465
482
 
483
+ DataDestinationConfig.add_member(:s3_config, Shapes::ShapeRef.new(shape: S3Config, location_name: "s3Config"))
484
+ DataDestinationConfig.add_member(:timestream_config, Shapes::ShapeRef.new(shape: TimestreamConfig, location_name: "timestreamConfig"))
485
+ DataDestinationConfig.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
486
+ DataDestinationConfig.add_member_subclass(:s3_config, Types::DataDestinationConfig::S3Config)
487
+ DataDestinationConfig.add_member_subclass(:timestream_config, Types::DataDestinationConfig::TimestreamConfig)
488
+ DataDestinationConfig.add_member_subclass(:unknown, Types::DataDestinationConfig::Unknown)
489
+ DataDestinationConfig.struct_class = Types::DataDestinationConfig
490
+
491
+ DataDestinationConfigs.member = Shapes::ShapeRef.new(shape: DataDestinationConfig)
492
+
466
493
  DataExtraDimensionNodePathList.member = Shapes::ShapeRef.new(shape: NodePath)
467
494
 
468
495
  DecoderManifestSummary.add_member(:name, Shapes::ShapeRef.new(shape: string, location_name: "name"))
@@ -564,6 +591,7 @@ module Aws::IoTFleetWise
564
591
  GetCampaignResponse.add_member(:data_extra_dimensions, Shapes::ShapeRef.new(shape: DataExtraDimensionNodePathList, location_name: "dataExtraDimensions"))
565
592
  GetCampaignResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: timestamp, location_name: "creationTime"))
566
593
  GetCampaignResponse.add_member(:last_modification_time, Shapes::ShapeRef.new(shape: timestamp, location_name: "lastModificationTime"))
594
+ GetCampaignResponse.add_member(:data_destination_configs, Shapes::ShapeRef.new(shape: DataDestinationConfigs, location_name: "dataDestinationConfigs"))
567
595
  GetCampaignResponse.struct_class = Types::GetCampaignResponse
568
596
 
569
597
  GetDecoderManifestRequest.add_member(:name, Shapes::ShapeRef.new(shape: resourceName, required: true, location_name: "name"))
@@ -610,7 +638,7 @@ module Aws::IoTFleetWise
610
638
 
611
639
  GetRegisterAccountStatusResponse.add_member(:customer_account_id, Shapes::ShapeRef.new(shape: customerAccountId, required: true, location_name: "customerAccountId"))
612
640
  GetRegisterAccountStatusResponse.add_member(:account_status, Shapes::ShapeRef.new(shape: RegistrationStatus, required: true, location_name: "accountStatus"))
613
- GetRegisterAccountStatusResponse.add_member(:timestream_registration_response, Shapes::ShapeRef.new(shape: TimestreamRegistrationResponse, required: true, location_name: "timestreamRegistrationResponse"))
641
+ GetRegisterAccountStatusResponse.add_member(:timestream_registration_response, Shapes::ShapeRef.new(shape: TimestreamRegistrationResponse, location_name: "timestreamRegistrationResponse"))
614
642
  GetRegisterAccountStatusResponse.add_member(:iam_registration_response, Shapes::ShapeRef.new(shape: IamRegistrationResponse, required: true, location_name: "iamRegistrationResponse"))
615
643
  GetRegisterAccountStatusResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "creationTime"))
616
644
  GetRegisterAccountStatusResponse.add_member(:last_modification_time, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "lastModificationTime"))
@@ -902,12 +930,12 @@ module Aws::IoTFleetWise
902
930
 
903
931
  PutLoggingOptionsResponse.struct_class = Types::PutLoggingOptionsResponse
904
932
 
905
- RegisterAccountRequest.add_member(:timestream_resources, Shapes::ShapeRef.new(shape: TimestreamResources, required: true, location_name: "timestreamResources"))
933
+ RegisterAccountRequest.add_member(:timestream_resources, Shapes::ShapeRef.new(shape: TimestreamResources, deprecated: true, location_name: "timestreamResources", metadata: {"deprecatedMessage"=>"Amazon Timestream metadata is now passed in the CreateCampaign API."}))
906
934
  RegisterAccountRequest.add_member(:iam_resources, Shapes::ShapeRef.new(shape: IamResources, deprecated: true, location_name: "iamResources", metadata: {"deprecatedMessage"=>"iamResources is no longer used or needed as input"}))
907
935
  RegisterAccountRequest.struct_class = Types::RegisterAccountRequest
908
936
 
909
937
  RegisterAccountResponse.add_member(:register_account_status, Shapes::ShapeRef.new(shape: RegistrationStatus, required: true, location_name: "registerAccountStatus"))
910
- RegisterAccountResponse.add_member(:timestream_resources, Shapes::ShapeRef.new(shape: TimestreamResources, required: true, location_name: "timestreamResources"))
938
+ RegisterAccountResponse.add_member(:timestream_resources, Shapes::ShapeRef.new(shape: TimestreamResources, location_name: "timestreamResources"))
911
939
  RegisterAccountResponse.add_member(:iam_resources, Shapes::ShapeRef.new(shape: IamResources, required: true, location_name: "iamResources"))
912
940
  RegisterAccountResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "creationTime"))
913
941
  RegisterAccountResponse.add_member(:last_modification_time, Shapes::ShapeRef.new(shape: timestamp, required: true, location_name: "lastModificationTime"))
@@ -918,6 +946,12 @@ module Aws::IoTFleetWise
918
946
  ResourceNotFoundException.add_member(:resource_type, Shapes::ShapeRef.new(shape: string, required: true, location_name: "resourceType"))
919
947
  ResourceNotFoundException.struct_class = Types::ResourceNotFoundException
920
948
 
949
+ S3Config.add_member(:bucket_arn, Shapes::ShapeRef.new(shape: S3BucketArn, required: true, location_name: "bucketArn"))
950
+ S3Config.add_member(:data_format, Shapes::ShapeRef.new(shape: DataFormat, location_name: "dataFormat"))
951
+ S3Config.add_member(:storage_compression_format, Shapes::ShapeRef.new(shape: StorageCompressionFormat, location_name: "storageCompressionFormat"))
952
+ S3Config.add_member(:prefix, Shapes::ShapeRef.new(shape: Prefix, location_name: "prefix"))
953
+ S3Config.struct_class = Types::S3Config
954
+
921
955
  Sensor.add_member(:fully_qualified_name, Shapes::ShapeRef.new(shape: string, required: true, location_name: "fullyQualifiedName"))
922
956
  Sensor.add_member(:data_type, Shapes::ShapeRef.new(shape: NodeDataType, required: true, location_name: "dataType"))
923
957
  Sensor.add_member(:description, Shapes::ShapeRef.new(shape: description, location_name: "description"))
@@ -925,6 +959,8 @@ module Aws::IoTFleetWise
925
959
  Sensor.add_member(:allowed_values, Shapes::ShapeRef.new(shape: listOfStrings, location_name: "allowedValues"))
926
960
  Sensor.add_member(:min, Shapes::ShapeRef.new(shape: double, location_name: "min"))
927
961
  Sensor.add_member(:max, Shapes::ShapeRef.new(shape: double, location_name: "max"))
962
+ Sensor.add_member(:deprecation_message, Shapes::ShapeRef.new(shape: message, location_name: "deprecationMessage"))
963
+ Sensor.add_member(:comment, Shapes::ShapeRef.new(shape: message, location_name: "comment"))
928
964
  Sensor.struct_class = Types::Sensor
929
965
 
930
966
  SignalCatalogSummary.add_member(:name, Shapes::ShapeRef.new(shape: string, location_name: "name"))
@@ -972,6 +1008,10 @@ module Aws::IoTFleetWise
972
1008
  TimeBasedCollectionScheme.add_member(:period_ms, Shapes::ShapeRef.new(shape: collectionPeriodMs, required: true, location_name: "periodMs"))
973
1009
  TimeBasedCollectionScheme.struct_class = Types::TimeBasedCollectionScheme
974
1010
 
1011
+ TimestreamConfig.add_member(:timestream_table_arn, Shapes::ShapeRef.new(shape: TimestreamTableArn, required: true, location_name: "timestreamTableArn"))
1012
+ TimestreamConfig.add_member(:execution_role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, required: true, location_name: "executionRoleArn"))
1013
+ TimestreamConfig.struct_class = Types::TimestreamConfig
1014
+
975
1015
  TimestreamRegistrationResponse.add_member(:timestream_database_name, Shapes::ShapeRef.new(shape: TimestreamDatabaseName, required: true, location_name: "timestreamDatabaseName"))
976
1016
  TimestreamRegistrationResponse.add_member(:timestream_table_name, Shapes::ShapeRef.new(shape: TimestreamTableName, required: true, location_name: "timestreamTableName"))
977
1017
  TimestreamRegistrationResponse.add_member(:timestream_database_arn, Shapes::ShapeRef.new(shape: arn, location_name: "timestreamDatabaseArn"))
@@ -50,9 +50,6 @@ module Aws::IoTFleetWise
50
50
 
51
51
  def initialize(options = {})
52
52
  self[:region] = options[:region]
53
- if self[:region].nil?
54
- raise ArgumentError, "Missing required EndpointParameter: :region"
55
- end
56
53
  self[:use_dual_stack] = options[:use_dual_stack]
57
54
  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
55
  if self[:use_dual_stack].nil?
@@ -14,36 +14,39 @@ module Aws::IoTFleetWise
14
14
  use_dual_stack = parameters.use_dual_stack
15
15
  use_fips = parameters.use_fips
16
16
  endpoint = parameters.endpoint
17
- if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
18
- if Aws::Endpoints::Matchers.set?(endpoint)
19
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
20
- raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
21
- end
22
- if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
23
- raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
24
- end
25
- return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
26
- end
27
- if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
28
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
29
- return Aws::Endpoints::Endpoint.new(url: "https://iotfleetwise-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
30
- end
31
- raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
32
- end
17
+ if Aws::Endpoints::Matchers.set?(endpoint)
33
18
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
34
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
- return Aws::Endpoints::Endpoint.new(url: "https://iotfleetwise-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
36
- end
37
- raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
19
+ raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
38
20
  end
39
21
  if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
40
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
41
- return Aws::Endpoints::Endpoint.new(url: "https://iotfleetwise.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
22
+ raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
23
+ end
24
+ return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
25
+ end
26
+ if Aws::Endpoints::Matchers.set?(region)
27
+ if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
28
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
29
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
30
+ return Aws::Endpoints::Endpoint.new(url: "https://iotfleetwise-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
31
+ end
32
+ raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
+ end
34
+ if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
36
+ return Aws::Endpoints::Endpoint.new(url: "https://iotfleetwise-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
+ end
38
+ raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
39
+ end
40
+ if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
41
+ if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
42
+ return Aws::Endpoints::Endpoint.new(url: "https://iotfleetwise.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
43
+ end
44
+ raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
42
45
  end
43
- raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
46
+ return Aws::Endpoints::Endpoint.new(url: "https://iotfleetwise.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
44
47
  end
45
- return Aws::Endpoints::Endpoint.new(url: "https://iotfleetwise.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
46
48
  end
49
+ raise ArgumentError, "Invalid Configuration: Missing Region"
47
50
  raise ArgumentError, 'No endpoint could be resolved'
48
51
 
49
52
  end
@@ -64,6 +64,15 @@ module Aws::IoTFleetWise
64
64
  # A specified value for the actuator.
65
65
  # @return [String]
66
66
  #
67
+ # @!attribute [rw] deprecation_message
68
+ # The deprecation message for the node or the branch that was moved or
69
+ # deleted.
70
+ # @return [String]
71
+ #
72
+ # @!attribute [rw] comment
73
+ # A comment in addition to the description.
74
+ # @return [String]
75
+ #
67
76
  class Actuator < Struct.new(
68
77
  :fully_qualified_name,
69
78
  :data_type,
@@ -72,7 +81,9 @@ module Aws::IoTFleetWise
72
81
  :allowed_values,
73
82
  :min,
74
83
  :max,
75
- :assigned_value)
84
+ :assigned_value,
85
+ :deprecation_message,
86
+ :comment)
76
87
  SENSITIVE = []
77
88
  include Aws::Structure
78
89
  end
@@ -134,6 +145,15 @@ module Aws::IoTFleetWise
134
145
  # The default value of the attribute.
135
146
  # @return [String]
136
147
  #
148
+ # @!attribute [rw] deprecation_message
149
+ # The deprecation message for the node or the branch that was moved or
150
+ # deleted.
151
+ # @return [String]
152
+ #
153
+ # @!attribute [rw] comment
154
+ # A comment in addition to the description.
155
+ # @return [String]
156
+ #
137
157
  class Attribute < Struct.new(
138
158
  :fully_qualified_name,
139
159
  :data_type,
@@ -143,7 +163,9 @@ module Aws::IoTFleetWise
143
163
  :min,
144
164
  :max,
145
165
  :assigned_value,
146
- :default_value)
166
+ :default_value,
167
+ :deprecation_message,
168
+ :comment)
147
169
  SENSITIVE = []
148
170
  include Aws::Structure
149
171
  end
@@ -219,9 +241,20 @@ module Aws::IoTFleetWise
219
241
  # A brief description of the branch.
220
242
  # @return [String]
221
243
  #
244
+ # @!attribute [rw] deprecation_message
245
+ # The deprecation message for the node or the branch that was moved or
246
+ # deleted.
247
+ # @return [String]
248
+ #
249
+ # @!attribute [rw] comment
250
+ # A comment in addition to the description.
251
+ # @return [String]
252
+ #
222
253
  class Branch < Struct.new(
223
254
  :fully_qualified_name,
224
- :description)
255
+ :description,
256
+ :deprecation_message,
257
+ :comment)
225
258
  SENSITIVE = []
226
259
  include Aws::Structure
227
260
  end
@@ -352,11 +385,19 @@ module Aws::IoTFleetWise
352
385
  # @return [Boolean]
353
386
  #
354
387
  # @!attribute [rw] start_bit
355
- # Indicates the beginning of the CAN message.
388
+ # Indicates the beginning of the CAN signal. This should always be the
389
+ # least significant bit (LSB).
390
+ #
391
+ # This value might be different from the value in a DBC file. For
392
+ # little endian signals, `startBit` is the same value as in the DBC
393
+ # file. For big endian signals in a DBC file, the start bit is the
394
+ # most significant bit (MSB). You will have to calculate the LSB
395
+ # instead and pass it as the `startBit`.
356
396
  # @return [Integer]
357
397
  #
358
398
  # @!attribute [rw] offset
359
- # Indicates where data appears in the CAN message.
399
+ # The offset used to calculate the signal value. Combined with factor,
400
+ # the calculation is `value = raw_value * factor + offset`.
360
401
  # @return [Float]
361
402
  #
362
403
  # @!attribute [rw] factor
@@ -520,7 +561,7 @@ module Aws::IoTFleetWise
520
561
  #
521
562
  # @!attribute [rw] expiry_time
522
563
  # (Optional) The time the campaign expires, in seconds since epoch
523
- # (January 1, 1970 at midnight UTC time). Vehicle data won't be
564
+ # (January 1, 1970 at midnight UTC time). Vehicle data isn't
524
565
  # collected after the campaign expires.
525
566
  #
526
567
  # Default: 253402214400 (December 31, 9999, 00:00:00 UTC)
@@ -597,6 +638,19 @@ module Aws::IoTFleetWise
597
638
  # Metadata that can be used to manage the campaign.
598
639
  # @return [Array<Types::Tag>]
599
640
  #
641
+ # @!attribute [rw] data_destination_configs
642
+ # The destination where the campaign sends data. You can choose to
643
+ # send data to be stored in Amazon S3 or Amazon Timestream.
644
+ #
645
+ # Amazon S3 optimizes the cost of data storage and provides additional
646
+ # mechanisms to use vehicle data, such as data lakes, centralized data
647
+ # storage, data processing pipelines, and analytics.
648
+ #
649
+ # You can use Amazon Timestream to access and analyze time series
650
+ # data, and Timestream to query vehicle data so that you can identify
651
+ # trends and patterns.
652
+ # @return [Array<Types::DataDestinationConfig>]
653
+ #
600
654
  class CreateCampaignRequest < Struct.new(
601
655
  :name,
602
656
  :description,
@@ -612,7 +666,8 @@ module Aws::IoTFleetWise
612
666
  :signals_to_collect,
613
667
  :collection_scheme,
614
668
  :data_extra_dimensions,
615
- :tags)
669
+ :tags,
670
+ :data_destination_configs)
616
671
  SENSITIVE = []
617
672
  include Aws::Structure
618
673
  end
@@ -845,7 +900,10 @@ module Aws::IoTFleetWise
845
900
  #
846
901
  # @!attribute [rw] attributes
847
902
  # Static information about a vehicle in a key-value pair. For example:
848
- # `"engineType"`\: `"1.3 L R2"`
903
+ # `"engineType"` : `"1.3 L R2"`
904
+ #
905
+ # A campaign must include the keys (attribute names) in
906
+ # `dataExtraDimensions` for them to display in Amazon Timestream.
849
907
  # @return [Hash<String,String>]
850
908
  #
851
909
  # @!attribute [rw] association_behavior
@@ -889,7 +947,7 @@ module Aws::IoTFleetWise
889
947
  #
890
948
  # @!attribute [rw] attributes
891
949
  # Static information about a vehicle in a key-value pair. For example:
892
- # `"engine Type"`\: `"v6"`
950
+ # `"engine Type"` : `"v6"`
893
951
  # @return [Hash<String,String>]
894
952
  #
895
953
  # @!attribute [rw] association_behavior
@@ -954,6 +1012,36 @@ module Aws::IoTFleetWise
954
1012
  include Aws::Structure
955
1013
  end
956
1014
 
1015
+ # The destination where the Amazon Web Services IoT FleetWise campaign
1016
+ # sends data. You can send data to be stored in Amazon S3 or Amazon
1017
+ # Timestream.
1018
+ #
1019
+ # @note DataDestinationConfig is a union - when making an API calls you must set exactly one of the members.
1020
+ #
1021
+ # @note DataDestinationConfig is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of DataDestinationConfig corresponding to the set member.
1022
+ #
1023
+ # @!attribute [rw] s3_config
1024
+ # The Amazon S3 bucket where the Amazon Web Services IoT FleetWise
1025
+ # campaign sends data.
1026
+ # @return [Types::S3Config]
1027
+ #
1028
+ # @!attribute [rw] timestream_config
1029
+ # The Amazon Timestream table where the campaign sends data.
1030
+ # @return [Types::TimestreamConfig]
1031
+ #
1032
+ class DataDestinationConfig < Struct.new(
1033
+ :s3_config,
1034
+ :timestream_config,
1035
+ :unknown)
1036
+ SENSITIVE = []
1037
+ include Aws::Structure
1038
+ include Aws::Structure::Union
1039
+
1040
+ class S3Config < DataDestinationConfig; end
1041
+ class TimestreamConfig < DataDestinationConfig; end
1042
+ class Unknown < DataDestinationConfig; end
1043
+ end
1044
+
957
1045
  # Information about a created decoder manifest. You can use the API
958
1046
  # operation to return this information about multiple decoder manifests.
959
1047
  #
@@ -1240,10 +1328,14 @@ module Aws::IoTFleetWise
1240
1328
  include Aws::Structure
1241
1329
  end
1242
1330
 
1243
- # Vehicle Signal Specification (VSS) is a precise language used to
1331
+ # [Vehicle Signal Specification (VSS)][1] is a precise language used to
1244
1332
  # describe and model signals in vehicle networks. The JSON file collects
1245
1333
  # signal specificiations in a VSS format.
1246
1334
  #
1335
+ #
1336
+ #
1337
+ # [1]: https://www.w3.org/auto/wg/wiki/Vehicle_Signal_Specification_(VSS)/Vehicle_Data_Spec
1338
+ #
1247
1339
  # @note FormattedVss is a union - when making an API calls you must set exactly one of the members.
1248
1340
  #
1249
1341
  # @!attribute [rw] vss_json
@@ -1357,6 +1449,19 @@ module Aws::IoTFleetWise
1357
1449
  # The last time the campaign was modified.
1358
1450
  # @return [Time]
1359
1451
  #
1452
+ # @!attribute [rw] data_destination_configs
1453
+ # The destination where the campaign sends data. You can choose to
1454
+ # send data to be stored in Amazon S3 or Amazon Timestream.
1455
+ #
1456
+ # Amazon S3 optimizes the cost of data storage and provides additional
1457
+ # mechanisms to use vehicle data, such as data lakes, centralized data
1458
+ # storage, data processing pipelines, and analytics.
1459
+ #
1460
+ # You can use Amazon Timestream to access and analyze time series
1461
+ # data, and Timestream to query vehicle data so that you can identify
1462
+ # trends and patterns.
1463
+ # @return [Array<Types::DataDestinationConfig>]
1464
+ #
1360
1465
  class GetCampaignResponse < Struct.new(
1361
1466
  :name,
1362
1467
  :arn,
@@ -1375,7 +1480,8 @@ module Aws::IoTFleetWise
1375
1480
  :collection_scheme,
1376
1481
  :data_extra_dimensions,
1377
1482
  :creation_time,
1378
- :last_modification_time)
1483
+ :last_modification_time,
1484
+ :data_destination_configs)
1379
1485
  SENSITIVE = []
1380
1486
  include Aws::Structure
1381
1487
  end
@@ -1680,7 +1786,7 @@ module Aws::IoTFleetWise
1680
1786
  # @!attribute [rw] attributes
1681
1787
  # Static information about a vehicle in a key-value pair. For example:
1682
1788
  #
1683
- # `"engineType"`\: `"1.3 L R2"`
1789
+ # `"engineType"` : `"1.3 L R2"`
1684
1790
  # @return [Hash<String,String>]
1685
1791
  #
1686
1792
  # @!attribute [rw] creation_time
@@ -2783,7 +2889,8 @@ module Aws::IoTFleetWise
2783
2889
  # @return [Float]
2784
2890
  #
2785
2891
  # @!attribute [rw] offset
2786
- # Indicates where data appears in the message.
2892
+ # The offset used to calculate the signal value. Combined with
2893
+ # scaling, the calculation is `value = raw_value * scaling + offset`.
2787
2894
  # @return [Float]
2788
2895
  #
2789
2896
  # @!attribute [rw] start_byte
@@ -2902,6 +3009,65 @@ module Aws::IoTFleetWise
2902
3009
  include Aws::Structure
2903
3010
  end
2904
3011
 
3012
+ # The Amazon S3 bucket where the Amazon Web Services IoT FleetWise
3013
+ # campaign sends data. Amazon S3 is an object storage service that
3014
+ # stores data as objects within buckets. For more information, see
3015
+ # [Creating, configuring, and working with Amazon S3 buckets][1] in the
3016
+ # *Amazon Simple Storage Service User Guide*.
3017
+ #
3018
+ #
3019
+ #
3020
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html
3021
+ #
3022
+ # @!attribute [rw] bucket_arn
3023
+ # The Amazon Resource Name (ARN) of the Amazon S3 bucket.
3024
+ # @return [String]
3025
+ #
3026
+ # @!attribute [rw] data_format
3027
+ # Specify the format that files are saved in the Amazon S3 bucket. You
3028
+ # can save files in an Apache Parquet or JSON format.
3029
+ #
3030
+ # * Parquet - Store data in a columnar storage file format. Parquet is
3031
+ # optimal for fast data retrieval and can reduce costs. This option
3032
+ # is selected by default.
3033
+ #
3034
+ # * JSON - Store data in a standard text-based JSON file format.
3035
+ # @return [String]
3036
+ #
3037
+ # @!attribute [rw] storage_compression_format
3038
+ # By default, stored data is compressed as a .gzip file. Compressed
3039
+ # files have a reduced file size, which can optimize the cost of data
3040
+ # storage.
3041
+ # @return [String]
3042
+ #
3043
+ # @!attribute [rw] prefix
3044
+ # (Optional) Enter an S3 bucket prefix. The prefix is the string of
3045
+ # characters after the bucket name and before the object name. You can
3046
+ # use the prefix to organize data stored in Amazon S3 buckets. For
3047
+ # more information, see [Organizing objects using prefixes][1] in the
3048
+ # *Amazon Simple Storage Service User Guide*.
3049
+ #
3050
+ # By default, Amazon Web Services IoT FleetWise sets the prefix
3051
+ # `processed-data/year=YY/month=MM/date=DD/hour=HH/` (in UTC) to data
3052
+ # it delivers to Amazon S3. You can enter a prefix to append it to
3053
+ # this default prefix. For example, if you enter the prefix
3054
+ # `vehicles`, the prefix will be
3055
+ # `vehicles/processed-data/year=YY/month=MM/date=DD/hour=HH/`.
3056
+ #
3057
+ #
3058
+ #
3059
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html
3060
+ # @return [String]
3061
+ #
3062
+ class S3Config < Struct.new(
3063
+ :bucket_arn,
3064
+ :data_format,
3065
+ :storage_compression_format,
3066
+ :prefix)
3067
+ SENSITIVE = []
3068
+ include Aws::Structure
3069
+ end
3070
+
2905
3071
  # An input component that reports the environmental condition of a
2906
3072
  # vehicle.
2907
3073
  #
@@ -2939,6 +3105,15 @@ module Aws::IoTFleetWise
2939
3105
  # The specified possible maximum value of the sensor.
2940
3106
  # @return [Float]
2941
3107
  #
3108
+ # @!attribute [rw] deprecation_message
3109
+ # The deprecation message for the node or the branch that was moved or
3110
+ # deleted.
3111
+ # @return [String]
3112
+ #
3113
+ # @!attribute [rw] comment
3114
+ # A comment in addition to the description.
3115
+ # @return [String]
3116
+ #
2942
3117
  class Sensor < Struct.new(
2943
3118
  :fully_qualified_name,
2944
3119
  :data_type,
@@ -2946,7 +3121,9 @@ module Aws::IoTFleetWise
2946
3121
  :unit,
2947
3122
  :allowed_values,
2948
3123
  :min,
2949
- :max)
3124
+ :max,
3125
+ :deprecation_message,
3126
+ :comment)
2950
3127
  SENSITIVE = []
2951
3128
  include Aws::Structure
2952
3129
  end
@@ -3125,6 +3302,33 @@ module Aws::IoTFleetWise
3125
3302
  include Aws::Structure
3126
3303
  end
3127
3304
 
3305
+ # The Amazon Timestream table where the Amazon Web Services IoT
3306
+ # FleetWise campaign sends data. Timestream stores and organizes data to
3307
+ # optimize query processing time and to reduce storage costs. For more
3308
+ # information, see [Data modeling][1] in the *Amazon Timestream
3309
+ # Developer Guide*.
3310
+ #
3311
+ #
3312
+ #
3313
+ # [1]: https://docs.aws.amazon.com/timestream/latest/developerguide/data-modeling.html
3314
+ #
3315
+ # @!attribute [rw] timestream_table_arn
3316
+ # The Amazon Resource Name (ARN) of the Amazon Timestream table.
3317
+ # @return [String]
3318
+ #
3319
+ # @!attribute [rw] execution_role_arn
3320
+ # The Amazon Resource Name (ARN) of the task execution role that
3321
+ # grants Amazon Web Services IoT FleetWise permission to deliver data
3322
+ # to the Amazon Timestream table.
3323
+ # @return [String]
3324
+ #
3325
+ class TimestreamConfig < Struct.new(
3326
+ :timestream_table_arn,
3327
+ :execution_role_arn)
3328
+ SENSITIVE = []
3329
+ include Aws::Structure
3330
+ end
3331
+
3128
3332
  # Information about the registered Amazon Timestream resources or
3129
3333
  # errors, if any.
3130
3334
  #
@@ -3221,9 +3425,13 @@ module Aws::IoTFleetWise
3221
3425
  # * `APPROVE` - To approve delivering a data collection scheme to
3222
3426
  # vehicles.
3223
3427
  #
3224
- # * `SUSPEND` - To suspend collecting signal data.
3428
+ # * `SUSPEND` - To suspend collecting signal data. The campaign is
3429
+ # deleted from vehicles and all vehicles in the suspended campaign
3430
+ # will stop sending data.
3225
3431
  #
3226
- # * `RESUME` - To resume collecting signal data.
3432
+ # * `RESUME` - To reactivate the `SUSPEND` campaign. The campaign is
3433
+ # redeployed to all vehicles and the vehicles will resume sending
3434
+ # data.
3227
3435
  #
3228
3436
  # * `UPDATE` - To update a campaign.
3229
3437
  # @return [String]
@@ -3504,7 +3712,7 @@ module Aws::IoTFleetWise
3504
3712
  # @!attribute [rw] attributes
3505
3713
  # Static information about a vehicle in a key-value pair. For example:
3506
3714
  #
3507
- # `"engineType"`\: `"1.3 L R2"`
3715
+ # `"engineType"` : `"1.3 L R2"`
3508
3716
  # @return [Hash<String,String>]
3509
3717
  #
3510
3718
  # @!attribute [rw] attribute_update_mode
@@ -3545,7 +3753,7 @@ module Aws::IoTFleetWise
3545
3753
  # @!attribute [rw] attributes
3546
3754
  # Static information about a vehicle in a key-value pair. For example:
3547
3755
  #
3548
- # `"engineType"`\: `"1.3 L R2"`
3756
+ # `"engineType"` : `"1.3 L R2"`
3549
3757
  # @return [Hash<String,String>]
3550
3758
  #
3551
3759
  # @!attribute [rw] attribute_update_mode
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-iotfleetwise/customizations'
53
53
  # @!group service
54
54
  module Aws::IoTFleetWise
55
55
 
56
- GEM_VERSION = '1.7.0'
56
+ GEM_VERSION = '1.8.0'
57
57
 
58
58
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-iotfleetwise
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-26 00:00:00.000000000 Z
11
+ date: 2023-05-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core