aws-sdk-kinesisvideo 1.42.0 → 1.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 37b15a6a5e103f647a447918dcca1dbea04af6cb4b59a93eadeb619823ea384d
4
- data.tar.gz: b3136ea4288365d281afc30c9fe537f081bc4f0470a65e5f84adc6048400ea8e
3
+ metadata.gz: ca1533e1296d690b1e1c8aa14f50ffeee67187d490cc0c6c52a0fa9017f69552
4
+ data.tar.gz: d70d1f5a003b1b7ec20727204972a9f13a942dd39d682aa749836ad73433b457
5
5
  SHA512:
6
- metadata.gz: 5c347ea27526bac42519027f72cf6fa35c63119ae48e353ad1b7a440f1424d520ee6f5cba0f80ddcc1a08eb1c193bf12ce0ba3756c4adeeea32aefce4ee33c93
7
- data.tar.gz: 0a44a6e0c03a3b049449981a89ec6fe4da4046015a1e04aaeae9a839f9244c5541781ac5491131b7b937d1fb525399d2cfdc555acfe95e70c59db0976647a733
6
+ metadata.gz: 522053cfb4a8aa651157da1449edcef69fd8251b3fe0e725a361fff71034a47cb5ef0992b1efd9d6a527195da9ce789a48459f96784dc65306a121eb03c01aef
7
+ data.tar.gz: 8fa3049ae9d0e29e6c101f63e845b090797f5f38c786bc6c96f47229e4c6fc9062294b063dc3c96cf8ab71cbbd200f4eea4cd9a4c6d8192af287263f5454f9ff
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.44.0 (2022-12-12)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for public preview of Kinesis Video Stream at Edge enabling customers to provide configuration for the Kinesis Video Stream EdgeAgent running on an on-premise IoT device. Customers can now locally record from cameras and stream videos to the cloud on configured schedule.
8
+
9
+ 1.43.0 (2022-10-25)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.42.0 (2022-05-03)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.42.0
1
+ 1.44.0
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
35
35
 
36
36
  Aws::Plugins::GlobalConfiguration.add_identifier(:kinesisvideo)
@@ -79,8 +79,9 @@ module Aws::KinesisVideo
79
79
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
80
80
  add_plugin(Aws::Plugins::DefaultsMode)
81
81
  add_plugin(Aws::Plugins::RecursionDetection)
82
- add_plugin(Aws::Plugins::SignatureV4)
82
+ add_plugin(Aws::Plugins::Sign)
83
83
  add_plugin(Aws::Plugins::Protocols::RestJson)
84
+ add_plugin(Aws::KinesisVideo::Plugins::Endpoints)
84
85
 
85
86
  # @overload initialize(options)
86
87
  # @param [Hash] options
@@ -287,6 +288,19 @@ module Aws::KinesisVideo
287
288
  # ** Please note ** When response stubbing is enabled, no HTTP
288
289
  # requests are made, and retries are disabled.
289
290
  #
291
+ # @option options [Aws::TokenProvider] :token_provider
292
+ # A Bearer Token Provider. This can be an instance of any one of the
293
+ # following classes:
294
+ #
295
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
296
+ # tokens.
297
+ #
298
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
299
+ # access token generated from `aws login`.
300
+ #
301
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
302
+ # will be used to search for tokens configured for your profile in shared configuration files.
303
+ #
290
304
  # @option options [Boolean] :use_dualstack_endpoint
291
305
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
292
306
  # will be used if available.
@@ -300,6 +314,9 @@ module Aws::KinesisVideo
300
314
  # When `true`, request parameters are validated before
301
315
  # sending the request.
302
316
  #
317
+ # @option options [Aws::KinesisVideo::EndpointProvider] :endpoint_provider
318
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::KinesisVideo::EndpointParameters`
319
+ #
303
320
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
304
321
  # requests through. Formatted like 'http://proxy.com:123'.
305
322
  #
@@ -591,6 +608,64 @@ module Aws::KinesisVideo
591
608
  req.send_request(options)
592
609
  end
593
610
 
611
+ # Describes a stream’s edge configuration that was set using the
612
+ # `StartEdgeConfigurationUpdate` API. Use this API to get the status of
613
+ # the configuration if the configuration is in sync with the Edge Agent.
614
+ #
615
+ # @option params [String] :stream_name
616
+ # The name of the stream whose edge configuration you want to update.
617
+ # Specify either the `StreamName` or the `StreamARN`.
618
+ #
619
+ # @option params [String] :stream_arn
620
+ # The Amazon Resource Name (ARN) of the stream. Specify either the
621
+ # `StreamName`or the `StreamARN`.
622
+ #
623
+ # @return [Types::DescribeEdgeConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
624
+ #
625
+ # * {Types::DescribeEdgeConfigurationOutput#stream_name #stream_name} => String
626
+ # * {Types::DescribeEdgeConfigurationOutput#stream_arn #stream_arn} => String
627
+ # * {Types::DescribeEdgeConfigurationOutput#creation_time #creation_time} => Time
628
+ # * {Types::DescribeEdgeConfigurationOutput#last_updated_time #last_updated_time} => Time
629
+ # * {Types::DescribeEdgeConfigurationOutput#sync_status #sync_status} => String
630
+ # * {Types::DescribeEdgeConfigurationOutput#failed_status_details #failed_status_details} => String
631
+ # * {Types::DescribeEdgeConfigurationOutput#edge_config #edge_config} => Types::EdgeConfig
632
+ #
633
+ # @example Request syntax with placeholder values
634
+ #
635
+ # resp = client.describe_edge_configuration({
636
+ # stream_name: "StreamName",
637
+ # stream_arn: "ResourceARN",
638
+ # })
639
+ #
640
+ # @example Response structure
641
+ #
642
+ # resp.stream_name #=> String
643
+ # resp.stream_arn #=> String
644
+ # resp.creation_time #=> Time
645
+ # resp.last_updated_time #=> Time
646
+ # resp.sync_status #=> String, one of "SYNCING", "ACKNOWLEDGED", "IN_SYNC", "SYNC_FAILED", "DELETING", "DELETE_FAILED"
647
+ # resp.failed_status_details #=> String
648
+ # resp.edge_config.hub_device_arn #=> String
649
+ # resp.edge_config.recorder_config.media_source_config.media_uri_secret_arn #=> String
650
+ # resp.edge_config.recorder_config.media_source_config.media_uri_type #=> String, one of "RTSP_URI", "FILE_URI"
651
+ # resp.edge_config.recorder_config.schedule_config.schedule_expression #=> String
652
+ # resp.edge_config.recorder_config.schedule_config.duration_in_seconds #=> Integer
653
+ # resp.edge_config.uploader_config.schedule_config.schedule_expression #=> String
654
+ # resp.edge_config.uploader_config.schedule_config.duration_in_seconds #=> Integer
655
+ # resp.edge_config.deletion_config.edge_retention_in_hours #=> Integer
656
+ # resp.edge_config.deletion_config.local_size_config.max_local_media_size_in_mb #=> Integer
657
+ # resp.edge_config.deletion_config.local_size_config.strategy_on_full_size #=> String, one of "DELETE_OLDEST_MEDIA", "DENY_NEW_MEDIA"
658
+ # resp.edge_config.deletion_config.delete_after_upload #=> Boolean
659
+ #
660
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/DescribeEdgeConfiguration AWS API Documentation
661
+ #
662
+ # @overload describe_edge_configuration(params = {})
663
+ # @param [Hash] params ({})
664
+ def describe_edge_configuration(params = {}, options = {})
665
+ req = build_request(:describe_edge_configuration, params)
666
+ req.send_request(options)
667
+ end
668
+
594
669
  # Gets the `ImageGenerationConfiguration` for a given Kinesis video
595
670
  # stream.
596
671
  #
@@ -1058,6 +1133,110 @@ module Aws::KinesisVideo
1058
1133
  req.send_request(options)
1059
1134
  end
1060
1135
 
1136
+ # An asynchronous API that updates a stream’s existing edge
1137
+ # configuration. If this API is invoked for the first time, a new edge
1138
+ # configuration will be created for the stream, and the sync status will
1139
+ # be set to `SYNCING`.
1140
+ #
1141
+ # The Kinesis Video Stream will sync the stream’s edge configuration
1142
+ # with the Edge Agent IoT Greengrass component that runs on an IoT Hub
1143
+ # Device setup at your premise. The time to sync can vary and depends on
1144
+ # the connectivity of the Hub Device. The `SyncStatus` will be updated
1145
+ # as the edge configuration is acknowledged, and synced with the Edge
1146
+ # Agent. You will have to wait for the sync status to reach a terminal
1147
+ # state such as: `IN_SYNC` and `SYNC_FAILED`, before using this API
1148
+ # again.
1149
+ #
1150
+ # If you invoke this API during the syncing process, a
1151
+ # `ResourceInUseException` will be thrown. The connectivity of the
1152
+ # stream's edge configuration and the Edge Agent will be retried for 15
1153
+ # minutes. After 15 minutes, the status will transition into the
1154
+ # `SYNC_FAILED` state.
1155
+ #
1156
+ # @option params [String] :stream_name
1157
+ # The name of the stream whose edge configuration you want to update.
1158
+ # Specify either the `StreamName` or the `StreamARN`.
1159
+ #
1160
+ # @option params [String] :stream_arn
1161
+ # The Amazon Resource Name (ARN) of the stream. Specify either the
1162
+ # `StreamName` or the `StreamARN`.
1163
+ #
1164
+ # @option params [required, Types::EdgeConfig] :edge_config
1165
+ # The edge configuration details required to invoke the update process.
1166
+ #
1167
+ # @return [Types::StartEdgeConfigurationUpdateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1168
+ #
1169
+ # * {Types::StartEdgeConfigurationUpdateOutput#stream_name #stream_name} => String
1170
+ # * {Types::StartEdgeConfigurationUpdateOutput#stream_arn #stream_arn} => String
1171
+ # * {Types::StartEdgeConfigurationUpdateOutput#creation_time #creation_time} => Time
1172
+ # * {Types::StartEdgeConfigurationUpdateOutput#last_updated_time #last_updated_time} => Time
1173
+ # * {Types::StartEdgeConfigurationUpdateOutput#sync_status #sync_status} => String
1174
+ # * {Types::StartEdgeConfigurationUpdateOutput#failed_status_details #failed_status_details} => String
1175
+ # * {Types::StartEdgeConfigurationUpdateOutput#edge_config #edge_config} => Types::EdgeConfig
1176
+ #
1177
+ # @example Request syntax with placeholder values
1178
+ #
1179
+ # resp = client.start_edge_configuration_update({
1180
+ # stream_name: "StreamName",
1181
+ # stream_arn: "ResourceARN",
1182
+ # edge_config: { # required
1183
+ # hub_device_arn: "HubDeviceArn", # required
1184
+ # recorder_config: { # required
1185
+ # media_source_config: { # required
1186
+ # media_uri_secret_arn: "MediaUriSecretArn", # required
1187
+ # media_uri_type: "RTSP_URI", # required, accepts RTSP_URI, FILE_URI
1188
+ # },
1189
+ # schedule_config: {
1190
+ # schedule_expression: "ScheduleExpression", # required
1191
+ # duration_in_seconds: 1, # required
1192
+ # },
1193
+ # },
1194
+ # uploader_config: {
1195
+ # schedule_config: { # required
1196
+ # schedule_expression: "ScheduleExpression", # required
1197
+ # duration_in_seconds: 1, # required
1198
+ # },
1199
+ # },
1200
+ # deletion_config: {
1201
+ # edge_retention_in_hours: 1,
1202
+ # local_size_config: {
1203
+ # max_local_media_size_in_mb: 1,
1204
+ # strategy_on_full_size: "DELETE_OLDEST_MEDIA", # accepts DELETE_OLDEST_MEDIA, DENY_NEW_MEDIA
1205
+ # },
1206
+ # delete_after_upload: false,
1207
+ # },
1208
+ # },
1209
+ # })
1210
+ #
1211
+ # @example Response structure
1212
+ #
1213
+ # resp.stream_name #=> String
1214
+ # resp.stream_arn #=> String
1215
+ # resp.creation_time #=> Time
1216
+ # resp.last_updated_time #=> Time
1217
+ # resp.sync_status #=> String, one of "SYNCING", "ACKNOWLEDGED", "IN_SYNC", "SYNC_FAILED", "DELETING", "DELETE_FAILED"
1218
+ # resp.failed_status_details #=> String
1219
+ # resp.edge_config.hub_device_arn #=> String
1220
+ # resp.edge_config.recorder_config.media_source_config.media_uri_secret_arn #=> String
1221
+ # resp.edge_config.recorder_config.media_source_config.media_uri_type #=> String, one of "RTSP_URI", "FILE_URI"
1222
+ # resp.edge_config.recorder_config.schedule_config.schedule_expression #=> String
1223
+ # resp.edge_config.recorder_config.schedule_config.duration_in_seconds #=> Integer
1224
+ # resp.edge_config.uploader_config.schedule_config.schedule_expression #=> String
1225
+ # resp.edge_config.uploader_config.schedule_config.duration_in_seconds #=> Integer
1226
+ # resp.edge_config.deletion_config.edge_retention_in_hours #=> Integer
1227
+ # resp.edge_config.deletion_config.local_size_config.max_local_media_size_in_mb #=> Integer
1228
+ # resp.edge_config.deletion_config.local_size_config.strategy_on_full_size #=> String, one of "DELETE_OLDEST_MEDIA", "DENY_NEW_MEDIA"
1229
+ # resp.edge_config.deletion_config.delete_after_upload #=> Boolean
1230
+ #
1231
+ # @see http://docs.aws.amazon.com/goto/WebAPI/kinesisvideo-2017-09-30/StartEdgeConfigurationUpdate AWS API Documentation
1232
+ #
1233
+ # @overload start_edge_configuration_update(params = {})
1234
+ # @param [Hash] params ({})
1235
+ def start_edge_configuration_update(params = {}, options = {})
1236
+ req = build_request(:start_edge_configuration_update, params)
1237
+ req.send_request(options)
1238
+ end
1239
+
1061
1240
  # Adds one or more tags to a signaling channel. A *tag* is a key-value
1062
1241
  # pair (the value is optional) that you can define and assign to Amazon
1063
1242
  # Web Services resources. If you specify a tag that already exists, the
@@ -1497,7 +1676,7 @@ module Aws::KinesisVideo
1497
1676
  params: params,
1498
1677
  config: config)
1499
1678
  context[:gem_name] = 'aws-sdk-kinesisvideo'
1500
- context[:gem_version] = '1.42.0'
1679
+ context[:gem_version] = '1.44.0'
1501
1680
  Seahorse::Client::Request.new(handlers, context)
1502
1681
  end
1503
1682
 
@@ -34,10 +34,14 @@ module Aws::KinesisVideo
34
34
  DataEndpoint = Shapes::StringShape.new(name: 'DataEndpoint')
35
35
  DataRetentionChangeInHours = Shapes::IntegerShape.new(name: 'DataRetentionChangeInHours')
36
36
  DataRetentionInHours = Shapes::IntegerShape.new(name: 'DataRetentionInHours')
37
+ DeleteAfterUpload = Shapes::BooleanShape.new(name: 'DeleteAfterUpload')
37
38
  DeleteSignalingChannelInput = Shapes::StructureShape.new(name: 'DeleteSignalingChannelInput')
38
39
  DeleteSignalingChannelOutput = Shapes::StructureShape.new(name: 'DeleteSignalingChannelOutput')
39
40
  DeleteStreamInput = Shapes::StructureShape.new(name: 'DeleteStreamInput')
40
41
  DeleteStreamOutput = Shapes::StructureShape.new(name: 'DeleteStreamOutput')
42
+ DeletionConfig = Shapes::StructureShape.new(name: 'DeletionConfig')
43
+ DescribeEdgeConfigurationInput = Shapes::StructureShape.new(name: 'DescribeEdgeConfigurationInput')
44
+ DescribeEdgeConfigurationOutput = Shapes::StructureShape.new(name: 'DescribeEdgeConfigurationOutput')
41
45
  DescribeImageGenerationConfigurationInput = Shapes::StructureShape.new(name: 'DescribeImageGenerationConfigurationInput')
42
46
  DescribeImageGenerationConfigurationOutput = Shapes::StructureShape.new(name: 'DescribeImageGenerationConfigurationOutput')
43
47
  DescribeNotificationConfigurationInput = Shapes::StructureShape.new(name: 'DescribeNotificationConfigurationInput')
@@ -50,7 +54,11 @@ module Aws::KinesisVideo
50
54
  DestinationUri = Shapes::StringShape.new(name: 'DestinationUri')
51
55
  DeviceName = Shapes::StringShape.new(name: 'DeviceName')
52
56
  DeviceStreamLimitExceededException = Shapes::StructureShape.new(name: 'DeviceStreamLimitExceededException')
57
+ DurationInSeconds = Shapes::IntegerShape.new(name: 'DurationInSeconds')
58
+ EdgeConfig = Shapes::StructureShape.new(name: 'EdgeConfig')
59
+ EdgeRetentionInHours = Shapes::IntegerShape.new(name: 'EdgeRetentionInHours')
53
60
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
61
+ FailedStatusDetails = Shapes::StringShape.new(name: 'FailedStatusDetails')
54
62
  Format = Shapes::StringShape.new(name: 'Format')
55
63
  FormatConfig = Shapes::MapShape.new(name: 'FormatConfig')
56
64
  FormatConfigKey = Shapes::StringShape.new(name: 'FormatConfigKey')
@@ -60,6 +68,7 @@ module Aws::KinesisVideo
60
68
  GetSignalingChannelEndpointInput = Shapes::StructureShape.new(name: 'GetSignalingChannelEndpointInput')
61
69
  GetSignalingChannelEndpointOutput = Shapes::StructureShape.new(name: 'GetSignalingChannelEndpointOutput')
62
70
  HeightPixels = Shapes::IntegerShape.new(name: 'HeightPixels')
71
+ HubDeviceArn = Shapes::StringShape.new(name: 'HubDeviceArn')
63
72
  ImageGenerationConfiguration = Shapes::StructureShape.new(name: 'ImageGenerationConfiguration')
64
73
  ImageGenerationDestinationConfig = Shapes::StructureShape.new(name: 'ImageGenerationDestinationConfig')
65
74
  ImageSelectorType = Shapes::StringShape.new(name: 'ImageSelectorType')
@@ -77,13 +86,19 @@ module Aws::KinesisVideo
77
86
  ListTagsForResourceOutput = Shapes::StructureShape.new(name: 'ListTagsForResourceOutput')
78
87
  ListTagsForStreamInput = Shapes::StructureShape.new(name: 'ListTagsForStreamInput')
79
88
  ListTagsForStreamOutput = Shapes::StructureShape.new(name: 'ListTagsForStreamOutput')
89
+ LocalSizeConfig = Shapes::StructureShape.new(name: 'LocalSizeConfig')
90
+ MaxLocalMediaSizeInMB = Shapes::IntegerShape.new(name: 'MaxLocalMediaSizeInMB')
91
+ MediaSourceConfig = Shapes::StructureShape.new(name: 'MediaSourceConfig')
80
92
  MediaType = Shapes::StringShape.new(name: 'MediaType')
93
+ MediaUriSecretArn = Shapes::StringShape.new(name: 'MediaUriSecretArn')
94
+ MediaUriType = Shapes::StringShape.new(name: 'MediaUriType')
81
95
  MessageTtlSeconds = Shapes::IntegerShape.new(name: 'MessageTtlSeconds')
82
96
  NextToken = Shapes::StringShape.new(name: 'NextToken')
83
97
  NoDataRetentionException = Shapes::StructureShape.new(name: 'NoDataRetentionException')
84
98
  NotAuthorizedException = Shapes::StructureShape.new(name: 'NotAuthorizedException')
85
99
  NotificationConfiguration = Shapes::StructureShape.new(name: 'NotificationConfiguration')
86
100
  NotificationDestinationConfig = Shapes::StructureShape.new(name: 'NotificationDestinationConfig')
101
+ RecorderConfig = Shapes::StructureShape.new(name: 'RecorderConfig')
87
102
  ResourceARN = Shapes::StringShape.new(name: 'ResourceARN')
88
103
  ResourceEndpoint = Shapes::StringShape.new(name: 'ResourceEndpoint')
89
104
  ResourceEndpointList = Shapes::ListShape.new(name: 'ResourceEndpointList')
@@ -92,13 +107,20 @@ module Aws::KinesisVideo
92
107
  ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
93
108
  ResourceTags = Shapes::MapShape.new(name: 'ResourceTags')
94
109
  SamplingInterval = Shapes::IntegerShape.new(name: 'SamplingInterval')
110
+ ScheduleConfig = Shapes::StructureShape.new(name: 'ScheduleConfig')
111
+ ScheduleExpression = Shapes::StringShape.new(name: 'ScheduleExpression')
95
112
  SingleMasterChannelEndpointConfiguration = Shapes::StructureShape.new(name: 'SingleMasterChannelEndpointConfiguration')
96
113
  SingleMasterConfiguration = Shapes::StructureShape.new(name: 'SingleMasterConfiguration')
114
+ StartEdgeConfigurationUpdateInput = Shapes::StructureShape.new(name: 'StartEdgeConfigurationUpdateInput')
115
+ StartEdgeConfigurationUpdateOutput = Shapes::StructureShape.new(name: 'StartEdgeConfigurationUpdateOutput')
97
116
  Status = Shapes::StringShape.new(name: 'Status')
117
+ StrategyOnFullSize = Shapes::StringShape.new(name: 'StrategyOnFullSize')
118
+ StreamEdgeConfigurationNotFoundException = Shapes::StructureShape.new(name: 'StreamEdgeConfigurationNotFoundException')
98
119
  StreamInfo = Shapes::StructureShape.new(name: 'StreamInfo')
99
120
  StreamInfoList = Shapes::ListShape.new(name: 'StreamInfoList')
100
121
  StreamName = Shapes::StringShape.new(name: 'StreamName')
101
122
  StreamNameCondition = Shapes::StructureShape.new(name: 'StreamNameCondition')
123
+ SyncStatus = Shapes::StringShape.new(name: 'SyncStatus')
102
124
  Tag = Shapes::StructureShape.new(name: 'Tag')
103
125
  TagKey = Shapes::StringShape.new(name: 'TagKey')
104
126
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
@@ -126,6 +148,7 @@ module Aws::KinesisVideo
126
148
  UpdateSignalingChannelOutput = Shapes::StructureShape.new(name: 'UpdateSignalingChannelOutput')
127
149
  UpdateStreamInput = Shapes::StructureShape.new(name: 'UpdateStreamInput')
128
150
  UpdateStreamOutput = Shapes::StructureShape.new(name: 'UpdateStreamOutput')
151
+ UploaderConfig = Shapes::StructureShape.new(name: 'UploaderConfig')
129
152
  Version = Shapes::StringShape.new(name: 'Version')
130
153
  VersionMismatchException = Shapes::StructureShape.new(name: 'VersionMismatchException')
131
154
  WidthPixels = Shapes::IntegerShape.new(name: 'WidthPixels')
@@ -189,6 +212,24 @@ module Aws::KinesisVideo
189
212
 
190
213
  DeleteStreamOutput.struct_class = Types::DeleteStreamOutput
191
214
 
215
+ DeletionConfig.add_member(:edge_retention_in_hours, Shapes::ShapeRef.new(shape: EdgeRetentionInHours, location_name: "EdgeRetentionInHours"))
216
+ DeletionConfig.add_member(:local_size_config, Shapes::ShapeRef.new(shape: LocalSizeConfig, location_name: "LocalSizeConfig"))
217
+ DeletionConfig.add_member(:delete_after_upload, Shapes::ShapeRef.new(shape: DeleteAfterUpload, location_name: "DeleteAfterUpload"))
218
+ DeletionConfig.struct_class = Types::DeletionConfig
219
+
220
+ DescribeEdgeConfigurationInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, location_name: "StreamName"))
221
+ DescribeEdgeConfigurationInput.add_member(:stream_arn, Shapes::ShapeRef.new(shape: ResourceARN, location_name: "StreamARN"))
222
+ DescribeEdgeConfigurationInput.struct_class = Types::DescribeEdgeConfigurationInput
223
+
224
+ DescribeEdgeConfigurationOutput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, location_name: "StreamName"))
225
+ DescribeEdgeConfigurationOutput.add_member(:stream_arn, Shapes::ShapeRef.new(shape: ResourceARN, location_name: "StreamARN"))
226
+ DescribeEdgeConfigurationOutput.add_member(:creation_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreationTime"))
227
+ DescribeEdgeConfigurationOutput.add_member(:last_updated_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastUpdatedTime"))
228
+ DescribeEdgeConfigurationOutput.add_member(:sync_status, Shapes::ShapeRef.new(shape: SyncStatus, location_name: "SyncStatus"))
229
+ DescribeEdgeConfigurationOutput.add_member(:failed_status_details, Shapes::ShapeRef.new(shape: FailedStatusDetails, location_name: "FailedStatusDetails"))
230
+ DescribeEdgeConfigurationOutput.add_member(:edge_config, Shapes::ShapeRef.new(shape: EdgeConfig, location_name: "EdgeConfig"))
231
+ DescribeEdgeConfigurationOutput.struct_class = Types::DescribeEdgeConfigurationOutput
232
+
192
233
  DescribeImageGenerationConfigurationInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, location_name: "StreamName"))
193
234
  DescribeImageGenerationConfigurationInput.add_member(:stream_arn, Shapes::ShapeRef.new(shape: ResourceARN, location_name: "StreamARN"))
194
235
  DescribeImageGenerationConfigurationInput.struct_class = Types::DescribeImageGenerationConfigurationInput
@@ -220,6 +261,12 @@ module Aws::KinesisVideo
220
261
  DeviceStreamLimitExceededException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
221
262
  DeviceStreamLimitExceededException.struct_class = Types::DeviceStreamLimitExceededException
222
263
 
264
+ EdgeConfig.add_member(:hub_device_arn, Shapes::ShapeRef.new(shape: HubDeviceArn, required: true, location_name: "HubDeviceArn"))
265
+ EdgeConfig.add_member(:recorder_config, Shapes::ShapeRef.new(shape: RecorderConfig, required: true, location_name: "RecorderConfig"))
266
+ EdgeConfig.add_member(:uploader_config, Shapes::ShapeRef.new(shape: UploaderConfig, location_name: "UploaderConfig"))
267
+ EdgeConfig.add_member(:deletion_config, Shapes::ShapeRef.new(shape: DeletionConfig, location_name: "DeletionConfig"))
268
+ EdgeConfig.struct_class = Types::EdgeConfig
269
+
223
270
  FormatConfig.key = Shapes::ShapeRef.new(shape: FormatConfigKey)
224
271
  FormatConfig.value = Shapes::ShapeRef.new(shape: FormatConfigValue)
225
272
 
@@ -298,6 +345,14 @@ module Aws::KinesisVideo
298
345
  ListTagsForStreamOutput.add_member(:tags, Shapes::ShapeRef.new(shape: ResourceTags, location_name: "Tags"))
299
346
  ListTagsForStreamOutput.struct_class = Types::ListTagsForStreamOutput
300
347
 
348
+ LocalSizeConfig.add_member(:max_local_media_size_in_mb, Shapes::ShapeRef.new(shape: MaxLocalMediaSizeInMB, location_name: "MaxLocalMediaSizeInMB"))
349
+ LocalSizeConfig.add_member(:strategy_on_full_size, Shapes::ShapeRef.new(shape: StrategyOnFullSize, location_name: "StrategyOnFullSize"))
350
+ LocalSizeConfig.struct_class = Types::LocalSizeConfig
351
+
352
+ MediaSourceConfig.add_member(:media_uri_secret_arn, Shapes::ShapeRef.new(shape: MediaUriSecretArn, required: true, location_name: "MediaUriSecretArn"))
353
+ MediaSourceConfig.add_member(:media_uri_type, Shapes::ShapeRef.new(shape: MediaUriType, required: true, location_name: "MediaUriType"))
354
+ MediaSourceConfig.struct_class = Types::MediaSourceConfig
355
+
301
356
  NoDataRetentionException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
302
357
  NoDataRetentionException.struct_class = Types::NoDataRetentionException
303
358
 
@@ -311,6 +366,10 @@ module Aws::KinesisVideo
311
366
  NotificationDestinationConfig.add_member(:uri, Shapes::ShapeRef.new(shape: DestinationUri, required: true, location_name: "Uri"))
312
367
  NotificationDestinationConfig.struct_class = Types::NotificationDestinationConfig
313
368
 
369
+ RecorderConfig.add_member(:media_source_config, Shapes::ShapeRef.new(shape: MediaSourceConfig, required: true, location_name: "MediaSourceConfig"))
370
+ RecorderConfig.add_member(:schedule_config, Shapes::ShapeRef.new(shape: ScheduleConfig, location_name: "ScheduleConfig"))
371
+ RecorderConfig.struct_class = Types::RecorderConfig
372
+
314
373
  ResourceEndpointList.member = Shapes::ShapeRef.new(shape: ResourceEndpointListItem)
315
374
 
316
375
  ResourceEndpointListItem.add_member(:protocol, Shapes::ShapeRef.new(shape: ChannelProtocol, location_name: "Protocol"))
@@ -326,6 +385,10 @@ module Aws::KinesisVideo
326
385
  ResourceTags.key = Shapes::ShapeRef.new(shape: TagKey)
327
386
  ResourceTags.value = Shapes::ShapeRef.new(shape: TagValue)
328
387
 
388
+ ScheduleConfig.add_member(:schedule_expression, Shapes::ShapeRef.new(shape: ScheduleExpression, required: true, location_name: "ScheduleExpression"))
389
+ ScheduleConfig.add_member(:duration_in_seconds, Shapes::ShapeRef.new(shape: DurationInSeconds, required: true, location_name: "DurationInSeconds"))
390
+ ScheduleConfig.struct_class = Types::ScheduleConfig
391
+
329
392
  SingleMasterChannelEndpointConfiguration.add_member(:protocols, Shapes::ShapeRef.new(shape: ListOfProtocols, location_name: "Protocols"))
330
393
  SingleMasterChannelEndpointConfiguration.add_member(:role, Shapes::ShapeRef.new(shape: ChannelRole, location_name: "Role"))
331
394
  SingleMasterChannelEndpointConfiguration.struct_class = Types::SingleMasterChannelEndpointConfiguration
@@ -333,6 +396,23 @@ module Aws::KinesisVideo
333
396
  SingleMasterConfiguration.add_member(:message_ttl_seconds, Shapes::ShapeRef.new(shape: MessageTtlSeconds, location_name: "MessageTtlSeconds"))
334
397
  SingleMasterConfiguration.struct_class = Types::SingleMasterConfiguration
335
398
 
399
+ StartEdgeConfigurationUpdateInput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, location_name: "StreamName"))
400
+ StartEdgeConfigurationUpdateInput.add_member(:stream_arn, Shapes::ShapeRef.new(shape: ResourceARN, location_name: "StreamARN"))
401
+ StartEdgeConfigurationUpdateInput.add_member(:edge_config, Shapes::ShapeRef.new(shape: EdgeConfig, required: true, location_name: "EdgeConfig"))
402
+ StartEdgeConfigurationUpdateInput.struct_class = Types::StartEdgeConfigurationUpdateInput
403
+
404
+ StartEdgeConfigurationUpdateOutput.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, location_name: "StreamName"))
405
+ StartEdgeConfigurationUpdateOutput.add_member(:stream_arn, Shapes::ShapeRef.new(shape: ResourceARN, location_name: "StreamARN"))
406
+ StartEdgeConfigurationUpdateOutput.add_member(:creation_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreationTime"))
407
+ StartEdgeConfigurationUpdateOutput.add_member(:last_updated_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastUpdatedTime"))
408
+ StartEdgeConfigurationUpdateOutput.add_member(:sync_status, Shapes::ShapeRef.new(shape: SyncStatus, location_name: "SyncStatus"))
409
+ StartEdgeConfigurationUpdateOutput.add_member(:failed_status_details, Shapes::ShapeRef.new(shape: FailedStatusDetails, location_name: "FailedStatusDetails"))
410
+ StartEdgeConfigurationUpdateOutput.add_member(:edge_config, Shapes::ShapeRef.new(shape: EdgeConfig, location_name: "EdgeConfig"))
411
+ StartEdgeConfigurationUpdateOutput.struct_class = Types::StartEdgeConfigurationUpdateOutput
412
+
413
+ StreamEdgeConfigurationNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
414
+ StreamEdgeConfigurationNotFoundException.struct_class = Types::StreamEdgeConfigurationNotFoundException
415
+
336
416
  StreamInfo.add_member(:device_name, Shapes::ShapeRef.new(shape: DeviceName, location_name: "DeviceName"))
337
417
  StreamInfo.add_member(:stream_name, Shapes::ShapeRef.new(shape: StreamName, location_name: "StreamName"))
338
418
  StreamInfo.add_member(:stream_arn, Shapes::ShapeRef.new(shape: ResourceARN, location_name: "StreamARN"))
@@ -428,6 +508,9 @@ module Aws::KinesisVideo
428
508
 
429
509
  UpdateStreamOutput.struct_class = Types::UpdateStreamOutput
430
510
 
511
+ UploaderConfig.add_member(:schedule_config, Shapes::ShapeRef.new(shape: ScheduleConfig, required: true, location_name: "ScheduleConfig"))
512
+ UploaderConfig.struct_class = Types::UploaderConfig
513
+
431
514
  VersionMismatchException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
432
515
  VersionMismatchException.struct_class = Types::VersionMismatchException
433
516
 
@@ -505,6 +588,19 @@ module Aws::KinesisVideo
505
588
  o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
506
589
  end)
507
590
 
591
+ api.add_operation(:describe_edge_configuration, Seahorse::Model::Operation.new.tap do |o|
592
+ o.name = "DescribeEdgeConfiguration"
593
+ o.http_method = "POST"
594
+ o.http_request_uri = "/describeEdgeConfiguration"
595
+ o.input = Shapes::ShapeRef.new(shape: DescribeEdgeConfigurationInput)
596
+ o.output = Shapes::ShapeRef.new(shape: DescribeEdgeConfigurationOutput)
597
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
598
+ o.errors << Shapes::ShapeRef.new(shape: ClientLimitExceededException)
599
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
600
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
601
+ o.errors << Shapes::ShapeRef.new(shape: StreamEdgeConfigurationNotFoundException)
602
+ end)
603
+
508
604
  api.add_operation(:describe_image_generation_configuration, Seahorse::Model::Operation.new.tap do |o|
509
605
  o.name = "DescribeImageGenerationConfiguration"
510
606
  o.http_method = "POST"
@@ -636,6 +732,20 @@ module Aws::KinesisVideo
636
732
  o.errors << Shapes::ShapeRef.new(shape: InvalidResourceFormatException)
637
733
  end)
638
734
 
735
+ api.add_operation(:start_edge_configuration_update, Seahorse::Model::Operation.new.tap do |o|
736
+ o.name = "StartEdgeConfigurationUpdate"
737
+ o.http_method = "POST"
738
+ o.http_request_uri = "/startEdgeConfigurationUpdate"
739
+ o.input = Shapes::ShapeRef.new(shape: StartEdgeConfigurationUpdateInput)
740
+ o.output = Shapes::ShapeRef.new(shape: StartEdgeConfigurationUpdateOutput)
741
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
742
+ o.errors << Shapes::ShapeRef.new(shape: ClientLimitExceededException)
743
+ o.errors << Shapes::ShapeRef.new(shape: InvalidArgumentException)
744
+ o.errors << Shapes::ShapeRef.new(shape: NoDataRetentionException)
745
+ o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
746
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
747
+ end)
748
+
639
749
  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
640
750
  o.name = "TagResource"
641
751
  o.http_method = "POST"
@@ -0,0 +1,69 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::KinesisVideo
11
+ # Endpoint parameters used to influence endpoints per request.
12
+ #
13
+ # @!attribute region
14
+ # The AWS region used to dispatch the request.
15
+ #
16
+ # @return [String]
17
+ #
18
+ # @!attribute use_dual_stack
19
+ # When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
20
+ #
21
+ # @return [Boolean]
22
+ #
23
+ # @!attribute use_fips
24
+ # When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
25
+ #
26
+ # @return [Boolean]
27
+ #
28
+ # @!attribute endpoint
29
+ # Override the endpoint used to send this request
30
+ #
31
+ # @return [String]
32
+ #
33
+ EndpointParameters = Struct.new(
34
+ :region,
35
+ :use_dual_stack,
36
+ :use_fips,
37
+ :endpoint,
38
+ ) do
39
+ include Aws::Structure
40
+
41
+ # @api private
42
+ class << self
43
+ PARAM_MAP = {
44
+ 'Region' => :region,
45
+ 'UseDualStack' => :use_dual_stack,
46
+ 'UseFIPS' => :use_fips,
47
+ 'Endpoint' => :endpoint,
48
+ }.freeze
49
+ end
50
+
51
+ def initialize(options = {})
52
+ self[:region] = options[:region]
53
+ if self[:region].nil?
54
+ raise ArgumentError, "Missing required EndpointParameter: :region"
55
+ end
56
+ self[:use_dual_stack] = options[:use_dual_stack]
57
+ self[:use_dual_stack] = false if self[:use_dual_stack].nil?
58
+ if self[:use_dual_stack].nil?
59
+ raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
60
+ end
61
+ self[:use_fips] = options[:use_fips]
62
+ self[:use_fips] = false if self[:use_fips].nil?
63
+ if self[:use_fips].nil?
64
+ raise ArgumentError, "Missing required EndpointParameter: :use_fips"
65
+ end
66
+ self[:endpoint] = options[:endpoint]
67
+ end
68
+ end
69
+ end