aws-sdk-mediatailor 1.45.0 → 1.49.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: '0779b9ea619f4bc6e099db8d8d52c314cb4c0b203ae0aa30efe962da3cb57405'
4
- data.tar.gz: c12f66df94fb1b84850ac0a55cdf2ba080ad78f063ae2697e978e3fde3b3dcff
3
+ metadata.gz: 13790039e48f3e63d7a040972153804459d05fe49963df5e3579532032c04e64
4
+ data.tar.gz: ca2acc5b5ba08391df043dcd6cd32305b3afa158aab2cbc46761380a4887ca07
5
5
  SHA512:
6
- metadata.gz: 031e6dacd4d9db5ba35056d1489a6b19210e11d0da688e76a0eee3fc916768e52e9c557a88939e43ddc5ca44dff6d40125a7a483b5bded0c998cb9094ea1ad60
7
- data.tar.gz: fda18b10c1c6e00b5bc3170ca325b38376b8e0c12dee25af84e9435c72d3e485969e89190d8d6e22464a1291326ea98fdfee702b6c9d1d573b1512902835acfe
6
+ metadata.gz: 2fc8785851d3068c1985bfeb2ebd7d791a4c55ed96b67f9fbe7bea8795faa4b431e0102771cb202163381b4585af38c99e6be885cdbc8bcc1475aeceb15b9055
7
+ data.tar.gz: b9f48231cb818fce1ab1b31c4a742250c0eed522cd2efb5a481f0f3bf0ad2dfc5c064036475b2c0a757e26d21f40bb67d105710038fe4101addb5d9b0737a786
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.49.0 (2021-11-30)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.48.0 (2021-11-04)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.47.0 (2021-10-18)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
19
+ 1.46.0 (2021-10-12)
20
+ ------------------
21
+
22
+ * Feature - MediaTailor now supports ad prefetching.
23
+
4
24
  1.45.0 (2021-09-22)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.45.0
1
+ 1.49.0
@@ -119,7 +119,9 @@ module Aws::MediaTailor
119
119
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
120
  # are very aggressive. Construct and pass an instance of
121
121
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
122
+ # enable retries and extended timeouts. Instance profile credential
123
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
124
+ # to true.
123
125
  #
124
126
  # @option options [required, String] :region
125
127
  # The AWS region to connect to. The configured `:region` is
@@ -275,6 +277,15 @@ module Aws::MediaTailor
275
277
  # ** Please note ** When response stubbing is enabled, no HTTP
276
278
  # requests are made, and retries are disabled.
277
279
  #
280
+ # @option options [Boolean] :use_dualstack_endpoint
281
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
+ # will be used if available.
283
+ #
284
+ # @option options [Boolean] :use_fips_endpoint
285
+ # When set to `true`, fips compatible endpoints will be used if available.
286
+ # When a `fips` region is used, the region is normalized and this config
287
+ # is set to `true`.
288
+ #
278
289
  # @option options [Boolean] :validate_params (true)
279
290
  # When `true`, request parameters are validated before
280
291
  # sending the request.
@@ -470,6 +481,92 @@ module Aws::MediaTailor
470
481
  req.send_request(options)
471
482
  end
472
483
 
484
+ # Creates a new prefetch schedule for the specified playback
485
+ # configuration.
486
+ #
487
+ # @option params [required, Types::PrefetchConsumption] :consumption
488
+ # The configuration settings for MediaTailor's *consumption* of the
489
+ # prefetched ads from the ad decision server. Each consumption
490
+ # configuration contains an end time and an optional start time that
491
+ # define the *consumption window*. Prefetch schedules automatically
492
+ # expire no earlier than seven days after the end time.
493
+ #
494
+ # @option params [required, String] :name
495
+ #
496
+ # @option params [required, String] :playback_configuration_name
497
+ #
498
+ # @option params [required, Types::PrefetchRetrieval] :retrieval
499
+ # The configuration settings for retrieval of prefetched ads from the ad
500
+ # decision server. Only one set of prefetched ads will be retrieved and
501
+ # subsequently consumed for each ad break.
502
+ #
503
+ # @option params [String] :stream_id
504
+ # An optional stream identifier that MediaTailor uses to prefetch ads
505
+ # for multiple streams that use the same playback configuration. If
506
+ # StreamId is specified, MediaTailor returns all of the prefetch
507
+ # schedules with an exact match on StreamId. If not specified,
508
+ # MediaTailor returns all of the prefetch schedules for the playback
509
+ # configuration, regardless of StreamId.
510
+ #
511
+ # @return [Types::CreatePrefetchScheduleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
512
+ #
513
+ # * {Types::CreatePrefetchScheduleResponse#arn #arn} => String
514
+ # * {Types::CreatePrefetchScheduleResponse#consumption #consumption} => Types::PrefetchConsumption
515
+ # * {Types::CreatePrefetchScheduleResponse#name #name} => String
516
+ # * {Types::CreatePrefetchScheduleResponse#playback_configuration_name #playback_configuration_name} => String
517
+ # * {Types::CreatePrefetchScheduleResponse#retrieval #retrieval} => Types::PrefetchRetrieval
518
+ # * {Types::CreatePrefetchScheduleResponse#stream_id #stream_id} => String
519
+ #
520
+ # @example Request syntax with placeholder values
521
+ #
522
+ # resp = client.create_prefetch_schedule({
523
+ # consumption: { # required
524
+ # avail_matching_criteria: [
525
+ # {
526
+ # dynamic_variable: "__string", # required
527
+ # operator: "EQUALS", # required, accepts EQUALS
528
+ # },
529
+ # ],
530
+ # end_time: Time.now, # required
531
+ # start_time: Time.now,
532
+ # },
533
+ # name: "__string", # required
534
+ # playback_configuration_name: "__string", # required
535
+ # retrieval: { # required
536
+ # dynamic_variables: {
537
+ # "__string" => "__string",
538
+ # },
539
+ # end_time: Time.now, # required
540
+ # start_time: Time.now,
541
+ # },
542
+ # stream_id: "__string",
543
+ # })
544
+ #
545
+ # @example Response structure
546
+ #
547
+ # resp.arn #=> String
548
+ # resp.consumption.avail_matching_criteria #=> Array
549
+ # resp.consumption.avail_matching_criteria[0].dynamic_variable #=> String
550
+ # resp.consumption.avail_matching_criteria[0].operator #=> String, one of "EQUALS"
551
+ # resp.consumption.end_time #=> Time
552
+ # resp.consumption.start_time #=> Time
553
+ # resp.name #=> String
554
+ # resp.playback_configuration_name #=> String
555
+ # resp.retrieval.dynamic_variables #=> Hash
556
+ # resp.retrieval.dynamic_variables["__string"] #=> String
557
+ # resp.retrieval.end_time #=> Time
558
+ # resp.retrieval.start_time #=> Time
559
+ # resp.stream_id #=> String
560
+ #
561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/CreatePrefetchSchedule AWS API Documentation
562
+ #
563
+ # @overload create_prefetch_schedule(params = {})
564
+ # @param [Hash] params ({})
565
+ def create_prefetch_schedule(params = {}, options = {})
566
+ req = build_request(:create_prefetch_schedule, params)
567
+ req.send_request(options)
568
+ end
569
+
473
570
  # Creates a program.
474
571
  #
475
572
  # @option params [Array<Types::AdBreak>] :ad_breaks
@@ -760,6 +857,32 @@ module Aws::MediaTailor
760
857
  req.send_request(options)
761
858
  end
762
859
 
860
+ # Deletes a prefetch schedule for a specific playback configuration. If
861
+ # you call DeletePrefetchSchedule on an expired prefetch schedule,
862
+ # MediaTailor returns an HTTP 404 status code.
863
+ #
864
+ # @option params [required, String] :name
865
+ #
866
+ # @option params [required, String] :playback_configuration_name
867
+ #
868
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
869
+ #
870
+ # @example Request syntax with placeholder values
871
+ #
872
+ # resp = client.delete_prefetch_schedule({
873
+ # name: "__string", # required
874
+ # playback_configuration_name: "__string", # required
875
+ # })
876
+ #
877
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/DeletePrefetchSchedule AWS API Documentation
878
+ #
879
+ # @overload delete_prefetch_schedule(params = {})
880
+ # @param [Hash] params ({})
881
+ def delete_prefetch_schedule(params = {}, options = {})
882
+ req = build_request(:delete_prefetch_schedule, params)
883
+ req.send_request(options)
884
+ end
885
+
763
886
  # Deletes a specific program on a specific channel.
764
887
  #
765
888
  # @option params [required, String] :channel_name
@@ -1178,6 +1301,55 @@ module Aws::MediaTailor
1178
1301
  req.send_request(options)
1179
1302
  end
1180
1303
 
1304
+ # Returns information about the prefetch schedule for a specific
1305
+ # playback configuration. If you call GetPrefetchSchedule on an expired
1306
+ # prefetch schedule, MediaTailor returns an HTTP 404 status code.
1307
+ #
1308
+ # @option params [required, String] :name
1309
+ #
1310
+ # @option params [required, String] :playback_configuration_name
1311
+ #
1312
+ # @return [Types::GetPrefetchScheduleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1313
+ #
1314
+ # * {Types::GetPrefetchScheduleResponse#arn #arn} => String
1315
+ # * {Types::GetPrefetchScheduleResponse#consumption #consumption} => Types::PrefetchConsumption
1316
+ # * {Types::GetPrefetchScheduleResponse#name #name} => String
1317
+ # * {Types::GetPrefetchScheduleResponse#playback_configuration_name #playback_configuration_name} => String
1318
+ # * {Types::GetPrefetchScheduleResponse#retrieval #retrieval} => Types::PrefetchRetrieval
1319
+ # * {Types::GetPrefetchScheduleResponse#stream_id #stream_id} => String
1320
+ #
1321
+ # @example Request syntax with placeholder values
1322
+ #
1323
+ # resp = client.get_prefetch_schedule({
1324
+ # name: "__string", # required
1325
+ # playback_configuration_name: "__string", # required
1326
+ # })
1327
+ #
1328
+ # @example Response structure
1329
+ #
1330
+ # resp.arn #=> String
1331
+ # resp.consumption.avail_matching_criteria #=> Array
1332
+ # resp.consumption.avail_matching_criteria[0].dynamic_variable #=> String
1333
+ # resp.consumption.avail_matching_criteria[0].operator #=> String, one of "EQUALS"
1334
+ # resp.consumption.end_time #=> Time
1335
+ # resp.consumption.start_time #=> Time
1336
+ # resp.name #=> String
1337
+ # resp.playback_configuration_name #=> String
1338
+ # resp.retrieval.dynamic_variables #=> Hash
1339
+ # resp.retrieval.dynamic_variables["__string"] #=> String
1340
+ # resp.retrieval.end_time #=> Time
1341
+ # resp.retrieval.start_time #=> Time
1342
+ # resp.stream_id #=> String
1343
+ #
1344
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/GetPrefetchSchedule AWS API Documentation
1345
+ #
1346
+ # @overload get_prefetch_schedule(params = {})
1347
+ # @param [Hash] params ({})
1348
+ def get_prefetch_schedule(params = {}, options = {})
1349
+ req = build_request(:get_prefetch_schedule, params)
1350
+ req.send_request(options)
1351
+ end
1352
+
1181
1353
  # Returns a list of alerts for the given resource.
1182
1354
  #
1183
1355
  # @option params [Integer] :max_results
@@ -1341,6 +1513,77 @@ module Aws::MediaTailor
1341
1513
  req.send_request(options)
1342
1514
  end
1343
1515
 
1516
+ # Creates a new prefetch schedule.
1517
+ #
1518
+ # @option params [Integer] :max_results
1519
+ # The maximum number of prefetch schedules that you want MediaTailor to
1520
+ # return in response to the current request. If the playback
1521
+ # configuration has more than MaxResults prefetch schedules, use the
1522
+ # value of NextToken in the response to get the next page of results.
1523
+ #
1524
+ # @option params [String] :next_token
1525
+ # (Optional) If the playback configuration has more than MaxResults
1526
+ # prefetch schedules, use NextToken to get the second and subsequent
1527
+ # pages of results.
1528
+ #
1529
+ # For the first ListPrefetchSchedulesRequest request, omit this value.
1530
+ #
1531
+ # For the second and subsequent requests, get the value of NextToken
1532
+ # from the previous response and specify that value for NextToken in the
1533
+ # request.
1534
+ #
1535
+ # If the previous response didn't include a NextToken element, there
1536
+ # are no more prefetch schedules to get.
1537
+ #
1538
+ # @option params [required, String] :playback_configuration_name
1539
+ #
1540
+ # @option params [String] :stream_id
1541
+ # An optional filtering parameter whereby MediaTailor filters the
1542
+ # prefetch schedules to include only specific streams.
1543
+ #
1544
+ # @return [Types::ListPrefetchSchedulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1545
+ #
1546
+ # * {Types::ListPrefetchSchedulesResponse#items #items} => Array&lt;Types::PrefetchSchedule&gt;
1547
+ # * {Types::ListPrefetchSchedulesResponse#next_token #next_token} => String
1548
+ #
1549
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1550
+ #
1551
+ # @example Request syntax with placeholder values
1552
+ #
1553
+ # resp = client.list_prefetch_schedules({
1554
+ # max_results: 1,
1555
+ # next_token: "__string",
1556
+ # playback_configuration_name: "__string", # required
1557
+ # stream_id: "__string",
1558
+ # })
1559
+ #
1560
+ # @example Response structure
1561
+ #
1562
+ # resp.items #=> Array
1563
+ # resp.items[0].arn #=> String
1564
+ # resp.items[0].consumption.avail_matching_criteria #=> Array
1565
+ # resp.items[0].consumption.avail_matching_criteria[0].dynamic_variable #=> String
1566
+ # resp.items[0].consumption.avail_matching_criteria[0].operator #=> String, one of "EQUALS"
1567
+ # resp.items[0].consumption.end_time #=> Time
1568
+ # resp.items[0].consumption.start_time #=> Time
1569
+ # resp.items[0].name #=> String
1570
+ # resp.items[0].playback_configuration_name #=> String
1571
+ # resp.items[0].retrieval.dynamic_variables #=> Hash
1572
+ # resp.items[0].retrieval.dynamic_variables["__string"] #=> String
1573
+ # resp.items[0].retrieval.end_time #=> Time
1574
+ # resp.items[0].retrieval.start_time #=> Time
1575
+ # resp.items[0].stream_id #=> String
1576
+ # resp.next_token #=> String
1577
+ #
1578
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/ListPrefetchSchedules AWS API Documentation
1579
+ #
1580
+ # @overload list_prefetch_schedules(params = {})
1581
+ # @param [Hash] params ({})
1582
+ def list_prefetch_schedules(params = {}, options = {})
1583
+ req = build_request(:list_prefetch_schedules, params)
1584
+ req.send_request(options)
1585
+ end
1586
+
1344
1587
  # Retrieves a list of source locations.
1345
1588
  #
1346
1589
  # @option params [Integer] :max_results
@@ -1989,7 +2232,7 @@ module Aws::MediaTailor
1989
2232
  params: params,
1990
2233
  config: config)
1991
2234
  context[:gem_name] = 'aws-sdk-mediatailor'
1992
- context[:gem_version] = '1.45.0'
2235
+ context[:gem_version] = '1.49.0'
1993
2236
  Seahorse::Client::Request.new(handlers, context)
1994
2237
  end
1995
2238
 
@@ -18,6 +18,7 @@ module Aws::MediaTailor
18
18
  AdBreak = Shapes::StructureShape.new(name: 'AdBreak')
19
19
  AdMarkerPassthrough = Shapes::StructureShape.new(name: 'AdMarkerPassthrough')
20
20
  Alert = Shapes::StructureShape.new(name: 'Alert')
21
+ AvailMatchingCriteria = Shapes::StructureShape.new(name: 'AvailMatchingCriteria')
21
22
  AvailSuppression = Shapes::StructureShape.new(name: 'AvailSuppression')
22
23
  BadRequestException = Shapes::StructureShape.new(name: 'BadRequestException')
23
24
  Bumper = Shapes::StructureShape.new(name: 'Bumper')
@@ -30,6 +31,8 @@ module Aws::MediaTailor
30
31
  ConfigureLogsForPlaybackConfigurationResponse = Shapes::StructureShape.new(name: 'ConfigureLogsForPlaybackConfigurationResponse')
31
32
  CreateChannelRequest = Shapes::StructureShape.new(name: 'CreateChannelRequest')
32
33
  CreateChannelResponse = Shapes::StructureShape.new(name: 'CreateChannelResponse')
34
+ CreatePrefetchScheduleRequest = Shapes::StructureShape.new(name: 'CreatePrefetchScheduleRequest')
35
+ CreatePrefetchScheduleResponse = Shapes::StructureShape.new(name: 'CreatePrefetchScheduleResponse')
33
36
  CreateProgramRequest = Shapes::StructureShape.new(name: 'CreateProgramRequest')
34
37
  CreateProgramResponse = Shapes::StructureShape.new(name: 'CreateProgramResponse')
35
38
  CreateSourceLocationRequest = Shapes::StructureShape.new(name: 'CreateSourceLocationRequest')
@@ -46,6 +49,8 @@ module Aws::MediaTailor
46
49
  DeleteChannelResponse = Shapes::StructureShape.new(name: 'DeleteChannelResponse')
47
50
  DeletePlaybackConfigurationRequest = Shapes::StructureShape.new(name: 'DeletePlaybackConfigurationRequest')
48
51
  DeletePlaybackConfigurationResponse = Shapes::StructureShape.new(name: 'DeletePlaybackConfigurationResponse')
52
+ DeletePrefetchScheduleRequest = Shapes::StructureShape.new(name: 'DeletePrefetchScheduleRequest')
53
+ DeletePrefetchScheduleResponse = Shapes::StructureShape.new(name: 'DeletePrefetchScheduleResponse')
49
54
  DeleteProgramRequest = Shapes::StructureShape.new(name: 'DeleteProgramRequest')
50
55
  DeleteProgramResponse = Shapes::StructureShape.new(name: 'DeleteProgramResponse')
51
56
  DeleteSourceLocationRequest = Shapes::StructureShape.new(name: 'DeleteSourceLocationRequest')
@@ -66,6 +71,8 @@ module Aws::MediaTailor
66
71
  GetChannelScheduleResponse = Shapes::StructureShape.new(name: 'GetChannelScheduleResponse')
67
72
  GetPlaybackConfigurationRequest = Shapes::StructureShape.new(name: 'GetPlaybackConfigurationRequest')
68
73
  GetPlaybackConfigurationResponse = Shapes::StructureShape.new(name: 'GetPlaybackConfigurationResponse')
74
+ GetPrefetchScheduleRequest = Shapes::StructureShape.new(name: 'GetPrefetchScheduleRequest')
75
+ GetPrefetchScheduleResponse = Shapes::StructureShape.new(name: 'GetPrefetchScheduleResponse')
69
76
  HlsConfiguration = Shapes::StructureShape.new(name: 'HlsConfiguration')
70
77
  HlsPlaylistSettings = Shapes::StructureShape.new(name: 'HlsPlaylistSettings')
71
78
  HttpConfiguration = Shapes::StructureShape.new(name: 'HttpConfiguration')
@@ -77,6 +84,8 @@ module Aws::MediaTailor
77
84
  ListChannelsResponse = Shapes::StructureShape.new(name: 'ListChannelsResponse')
78
85
  ListPlaybackConfigurationsRequest = Shapes::StructureShape.new(name: 'ListPlaybackConfigurationsRequest')
79
86
  ListPlaybackConfigurationsResponse = Shapes::StructureShape.new(name: 'ListPlaybackConfigurationsResponse')
87
+ ListPrefetchSchedulesRequest = Shapes::StructureShape.new(name: 'ListPrefetchSchedulesRequest')
88
+ ListPrefetchSchedulesResponse = Shapes::StructureShape.new(name: 'ListPrefetchSchedulesResponse')
80
89
  ListSourceLocationsRequest = Shapes::StructureShape.new(name: 'ListSourceLocationsRequest')
81
90
  ListSourceLocationsResponse = Shapes::StructureShape.new(name: 'ListSourceLocationsResponse')
82
91
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
@@ -89,9 +98,13 @@ module Aws::MediaTailor
89
98
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
90
99
  MessageType = Shapes::StringShape.new(name: 'MessageType')
91
100
  Mode = Shapes::StringShape.new(name: 'Mode')
101
+ Operator = Shapes::StringShape.new(name: 'Operator')
92
102
  OriginManifestType = Shapes::StringShape.new(name: 'OriginManifestType')
93
103
  PlaybackConfiguration = Shapes::StructureShape.new(name: 'PlaybackConfiguration')
94
104
  PlaybackMode = Shapes::StringShape.new(name: 'PlaybackMode')
105
+ PrefetchConsumption = Shapes::StructureShape.new(name: 'PrefetchConsumption')
106
+ PrefetchRetrieval = Shapes::StructureShape.new(name: 'PrefetchRetrieval')
107
+ PrefetchSchedule = Shapes::StructureShape.new(name: 'PrefetchSchedule')
95
108
  PutChannelPolicyRequest = Shapes::StructureShape.new(name: 'PutChannelPolicyRequest')
96
109
  PutChannelPolicyResponse = Shapes::StructureShape.new(name: 'PutChannelPolicyResponse')
97
110
  PutPlaybackConfigurationRequest = Shapes::StructureShape.new(name: 'PutPlaybackConfigurationRequest')
@@ -127,10 +140,13 @@ module Aws::MediaTailor
127
140
  __boolean = Shapes::BooleanShape.new(name: '__boolean')
128
141
  __integer = Shapes::IntegerShape.new(name: '__integer')
129
142
  __integerMin1 = Shapes::IntegerShape.new(name: '__integerMin1')
143
+ __integerMin1Max100 = Shapes::IntegerShape.new(name: '__integerMin1Max100')
130
144
  __listOfAdBreak = Shapes::ListShape.new(name: '__listOfAdBreak')
131
145
  __listOfAlert = Shapes::ListShape.new(name: '__listOfAlert')
146
+ __listOfAvailMatchingCriteria = Shapes::ListShape.new(name: '__listOfAvailMatchingCriteria')
132
147
  __listOfChannel = Shapes::ListShape.new(name: '__listOfChannel')
133
148
  __listOfPlaybackConfiguration = Shapes::ListShape.new(name: '__listOfPlaybackConfiguration')
149
+ __listOfPrefetchSchedule = Shapes::ListShape.new(name: '__listOfPrefetchSchedule')
134
150
  __listOfScheduleAdBreak = Shapes::ListShape.new(name: '__listOfScheduleAdBreak')
135
151
  __listOfScheduleEntry = Shapes::ListShape.new(name: '__listOfScheduleEntry')
136
152
  __listOfSourceLocation = Shapes::ListShape.new(name: '__listOfSourceLocation')
@@ -161,6 +177,10 @@ module Aws::MediaTailor
161
177
  Alert.add_member(:resource_arn, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "ResourceArn"))
162
178
  Alert.struct_class = Types::Alert
163
179
 
180
+ AvailMatchingCriteria.add_member(:dynamic_variable, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "DynamicVariable"))
181
+ AvailMatchingCriteria.add_member(:operator, Shapes::ShapeRef.new(shape: Operator, required: true, location_name: "Operator"))
182
+ AvailMatchingCriteria.struct_class = Types::AvailMatchingCriteria
183
+
164
184
  AvailSuppression.add_member(:mode, Shapes::ShapeRef.new(shape: Mode, location_name: "Mode"))
165
185
  AvailSuppression.add_member(:value, Shapes::ShapeRef.new(shape: __string, location_name: "Value"))
166
186
  AvailSuppression.struct_class = Types::AvailSuppression
@@ -219,6 +239,21 @@ module Aws::MediaTailor
219
239
  CreateChannelResponse.add_member(:tags, Shapes::ShapeRef.new(shape: __mapOf__string, location_name: "tags"))
220
240
  CreateChannelResponse.struct_class = Types::CreateChannelResponse
221
241
 
242
+ CreatePrefetchScheduleRequest.add_member(:consumption, Shapes::ShapeRef.new(shape: PrefetchConsumption, required: true, location_name: "Consumption"))
243
+ CreatePrefetchScheduleRequest.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "Name"))
244
+ CreatePrefetchScheduleRequest.add_member(:playback_configuration_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "PlaybackConfigurationName"))
245
+ CreatePrefetchScheduleRequest.add_member(:retrieval, Shapes::ShapeRef.new(shape: PrefetchRetrieval, required: true, location_name: "Retrieval"))
246
+ CreatePrefetchScheduleRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "StreamId"))
247
+ CreatePrefetchScheduleRequest.struct_class = Types::CreatePrefetchScheduleRequest
248
+
249
+ CreatePrefetchScheduleResponse.add_member(:arn, Shapes::ShapeRef.new(shape: __string, location_name: "Arn"))
250
+ CreatePrefetchScheduleResponse.add_member(:consumption, Shapes::ShapeRef.new(shape: PrefetchConsumption, location_name: "Consumption"))
251
+ CreatePrefetchScheduleResponse.add_member(:name, Shapes::ShapeRef.new(shape: __string, location_name: "Name"))
252
+ CreatePrefetchScheduleResponse.add_member(:playback_configuration_name, Shapes::ShapeRef.new(shape: __string, location_name: "PlaybackConfigurationName"))
253
+ CreatePrefetchScheduleResponse.add_member(:retrieval, Shapes::ShapeRef.new(shape: PrefetchRetrieval, location_name: "Retrieval"))
254
+ CreatePrefetchScheduleResponse.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "StreamId"))
255
+ CreatePrefetchScheduleResponse.struct_class = Types::CreatePrefetchScheduleResponse
256
+
222
257
  CreateProgramRequest.add_member(:ad_breaks, Shapes::ShapeRef.new(shape: __listOfAdBreak, location_name: "AdBreaks"))
223
258
  CreateProgramRequest.add_member(:channel_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "channelName"))
224
259
  CreateProgramRequest.add_member(:program_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "programName"))
@@ -302,6 +337,12 @@ module Aws::MediaTailor
302
337
 
303
338
  DeletePlaybackConfigurationResponse.struct_class = Types::DeletePlaybackConfigurationResponse
304
339
 
340
+ DeletePrefetchScheduleRequest.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "Name"))
341
+ DeletePrefetchScheduleRequest.add_member(:playback_configuration_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "PlaybackConfigurationName"))
342
+ DeletePrefetchScheduleRequest.struct_class = Types::DeletePrefetchScheduleRequest
343
+
344
+ DeletePrefetchScheduleResponse.struct_class = Types::DeletePrefetchScheduleResponse
345
+
305
346
  DeleteProgramRequest.add_member(:channel_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "channelName"))
306
347
  DeleteProgramRequest.add_member(:program_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "programName"))
307
348
  DeleteProgramRequest.struct_class = Types::DeleteProgramRequest
@@ -413,6 +454,18 @@ module Aws::MediaTailor
413
454
  GetPlaybackConfigurationResponse.add_member(:video_content_source_url, Shapes::ShapeRef.new(shape: __string, location_name: "VideoContentSourceUrl"))
414
455
  GetPlaybackConfigurationResponse.struct_class = Types::GetPlaybackConfigurationResponse
415
456
 
457
+ GetPrefetchScheduleRequest.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "Name"))
458
+ GetPrefetchScheduleRequest.add_member(:playback_configuration_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "PlaybackConfigurationName"))
459
+ GetPrefetchScheduleRequest.struct_class = Types::GetPrefetchScheduleRequest
460
+
461
+ GetPrefetchScheduleResponse.add_member(:arn, Shapes::ShapeRef.new(shape: __string, location_name: "Arn"))
462
+ GetPrefetchScheduleResponse.add_member(:consumption, Shapes::ShapeRef.new(shape: PrefetchConsumption, location_name: "Consumption"))
463
+ GetPrefetchScheduleResponse.add_member(:name, Shapes::ShapeRef.new(shape: __string, location_name: "Name"))
464
+ GetPrefetchScheduleResponse.add_member(:playback_configuration_name, Shapes::ShapeRef.new(shape: __string, location_name: "PlaybackConfigurationName"))
465
+ GetPrefetchScheduleResponse.add_member(:retrieval, Shapes::ShapeRef.new(shape: PrefetchRetrieval, location_name: "Retrieval"))
466
+ GetPrefetchScheduleResponse.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "StreamId"))
467
+ GetPrefetchScheduleResponse.struct_class = Types::GetPrefetchScheduleResponse
468
+
416
469
  HlsConfiguration.add_member(:manifest_endpoint_prefix, Shapes::ShapeRef.new(shape: __string, location_name: "ManifestEndpointPrefix"))
417
470
  HlsConfiguration.struct_class = Types::HlsConfiguration
418
471
 
@@ -454,6 +507,16 @@ module Aws::MediaTailor
454
507
  ListPlaybackConfigurationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: __string, location_name: "NextToken"))
455
508
  ListPlaybackConfigurationsResponse.struct_class = Types::ListPlaybackConfigurationsResponse
456
509
 
510
+ ListPrefetchSchedulesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: __integerMin1Max100, location_name: "MaxResults"))
511
+ ListPrefetchSchedulesRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: __string, location_name: "NextToken"))
512
+ ListPrefetchSchedulesRequest.add_member(:playback_configuration_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "PlaybackConfigurationName"))
513
+ ListPrefetchSchedulesRequest.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "StreamId"))
514
+ ListPrefetchSchedulesRequest.struct_class = Types::ListPrefetchSchedulesRequest
515
+
516
+ ListPrefetchSchedulesResponse.add_member(:items, Shapes::ShapeRef.new(shape: __listOfPrefetchSchedule, location_name: "Items"))
517
+ ListPrefetchSchedulesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: __string, location_name: "NextToken"))
518
+ ListPrefetchSchedulesResponse.struct_class = Types::ListPrefetchSchedulesResponse
519
+
457
520
  ListSourceLocationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "maxResults"))
458
521
  ListSourceLocationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: __string, location: "querystring", location_name: "nextToken"))
459
522
  ListSourceLocationsRequest.struct_class = Types::ListSourceLocationsRequest
@@ -508,6 +571,24 @@ module Aws::MediaTailor
508
571
  PlaybackConfiguration.add_member(:video_content_source_url, Shapes::ShapeRef.new(shape: __string, location_name: "VideoContentSourceUrl"))
509
572
  PlaybackConfiguration.struct_class = Types::PlaybackConfiguration
510
573
 
574
+ PrefetchConsumption.add_member(:avail_matching_criteria, Shapes::ShapeRef.new(shape: __listOfAvailMatchingCriteria, location_name: "AvailMatchingCriteria"))
575
+ PrefetchConsumption.add_member(:end_time, Shapes::ShapeRef.new(shape: __timestampUnix, required: true, location_name: "EndTime"))
576
+ PrefetchConsumption.add_member(:start_time, Shapes::ShapeRef.new(shape: __timestampUnix, location_name: "StartTime"))
577
+ PrefetchConsumption.struct_class = Types::PrefetchConsumption
578
+
579
+ PrefetchRetrieval.add_member(:dynamic_variables, Shapes::ShapeRef.new(shape: __mapOf__string, location_name: "DynamicVariables"))
580
+ PrefetchRetrieval.add_member(:end_time, Shapes::ShapeRef.new(shape: __timestampUnix, required: true, location_name: "EndTime"))
581
+ PrefetchRetrieval.add_member(:start_time, Shapes::ShapeRef.new(shape: __timestampUnix, location_name: "StartTime"))
582
+ PrefetchRetrieval.struct_class = Types::PrefetchRetrieval
583
+
584
+ PrefetchSchedule.add_member(:arn, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "Arn"))
585
+ PrefetchSchedule.add_member(:consumption, Shapes::ShapeRef.new(shape: PrefetchConsumption, required: true, location_name: "Consumption"))
586
+ PrefetchSchedule.add_member(:name, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "Name"))
587
+ PrefetchSchedule.add_member(:playback_configuration_name, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "PlaybackConfigurationName"))
588
+ PrefetchSchedule.add_member(:retrieval, Shapes::ShapeRef.new(shape: PrefetchRetrieval, required: true, location_name: "Retrieval"))
589
+ PrefetchSchedule.add_member(:stream_id, Shapes::ShapeRef.new(shape: __string, location_name: "StreamId"))
590
+ PrefetchSchedule.struct_class = Types::PrefetchSchedule
591
+
511
592
  PutChannelPolicyRequest.add_member(:channel_name, Shapes::ShapeRef.new(shape: __string, required: true, location: "uri", location_name: "channelName"))
512
593
  PutChannelPolicyRequest.add_member(:policy, Shapes::ShapeRef.new(shape: __string, required: true, location_name: "Policy"))
513
594
  PutChannelPolicyRequest.struct_class = Types::PutChannelPolicyRequest
@@ -695,10 +776,14 @@ module Aws::MediaTailor
695
776
 
696
777
  __listOfAlert.member = Shapes::ShapeRef.new(shape: Alert)
697
778
 
779
+ __listOfAvailMatchingCriteria.member = Shapes::ShapeRef.new(shape: AvailMatchingCriteria)
780
+
698
781
  __listOfChannel.member = Shapes::ShapeRef.new(shape: Channel)
699
782
 
700
783
  __listOfPlaybackConfiguration.member = Shapes::ShapeRef.new(shape: PlaybackConfiguration)
701
784
 
785
+ __listOfPrefetchSchedule.member = Shapes::ShapeRef.new(shape: PrefetchSchedule)
786
+
702
787
  __listOfScheduleAdBreak.member = Shapes::ShapeRef.new(shape: ScheduleAdBreak)
703
788
 
704
789
  __listOfScheduleEntry.member = Shapes::ShapeRef.new(shape: ScheduleEntry)
@@ -747,6 +832,14 @@ module Aws::MediaTailor
747
832
  o.output = Shapes::ShapeRef.new(shape: CreateChannelResponse)
748
833
  end)
749
834
 
835
+ api.add_operation(:create_prefetch_schedule, Seahorse::Model::Operation.new.tap do |o|
836
+ o.name = "CreatePrefetchSchedule"
837
+ o.http_method = "POST"
838
+ o.http_request_uri = "/prefetchSchedule/{PlaybackConfigurationName}/{Name}"
839
+ o.input = Shapes::ShapeRef.new(shape: CreatePrefetchScheduleRequest)
840
+ o.output = Shapes::ShapeRef.new(shape: CreatePrefetchScheduleResponse)
841
+ end)
842
+
750
843
  api.add_operation(:create_program, Seahorse::Model::Operation.new.tap do |o|
751
844
  o.name = "CreateProgram"
752
845
  o.http_method = "POST"
@@ -795,6 +888,14 @@ module Aws::MediaTailor
795
888
  o.output = Shapes::ShapeRef.new(shape: DeletePlaybackConfigurationResponse)
796
889
  end)
797
890
 
891
+ api.add_operation(:delete_prefetch_schedule, Seahorse::Model::Operation.new.tap do |o|
892
+ o.name = "DeletePrefetchSchedule"
893
+ o.http_method = "DELETE"
894
+ o.http_request_uri = "/prefetchSchedule/{PlaybackConfigurationName}/{Name}"
895
+ o.input = Shapes::ShapeRef.new(shape: DeletePrefetchScheduleRequest)
896
+ o.output = Shapes::ShapeRef.new(shape: DeletePrefetchScheduleResponse)
897
+ end)
898
+
798
899
  api.add_operation(:delete_program, Seahorse::Model::Operation.new.tap do |o|
799
900
  o.name = "DeleteProgram"
800
901
  o.http_method = "DELETE"
@@ -881,6 +982,14 @@ module Aws::MediaTailor
881
982
  o.output = Shapes::ShapeRef.new(shape: GetPlaybackConfigurationResponse)
882
983
  end)
883
984
 
985
+ api.add_operation(:get_prefetch_schedule, Seahorse::Model::Operation.new.tap do |o|
986
+ o.name = "GetPrefetchSchedule"
987
+ o.http_method = "GET"
988
+ o.http_request_uri = "/prefetchSchedule/{PlaybackConfigurationName}/{Name}"
989
+ o.input = Shapes::ShapeRef.new(shape: GetPrefetchScheduleRequest)
990
+ o.output = Shapes::ShapeRef.new(shape: GetPrefetchScheduleResponse)
991
+ end)
992
+
884
993
  api.add_operation(:list_alerts, Seahorse::Model::Operation.new.tap do |o|
885
994
  o.name = "ListAlerts"
886
995
  o.http_method = "GET"
@@ -923,6 +1032,20 @@ module Aws::MediaTailor
923
1032
  )
924
1033
  end)
925
1034
 
1035
+ api.add_operation(:list_prefetch_schedules, Seahorse::Model::Operation.new.tap do |o|
1036
+ o.name = "ListPrefetchSchedules"
1037
+ o.http_method = "POST"
1038
+ o.http_request_uri = "/prefetchSchedule/{PlaybackConfigurationName}"
1039
+ o.input = Shapes::ShapeRef.new(shape: ListPrefetchSchedulesRequest)
1040
+ o.output = Shapes::ShapeRef.new(shape: ListPrefetchSchedulesResponse)
1041
+ o[:pager] = Aws::Pager.new(
1042
+ limit_key: "max_results",
1043
+ tokens: {
1044
+ "next_token" => "next_token"
1045
+ }
1046
+ )
1047
+ end)
1048
+
926
1049
  api.add_operation(:list_source_locations, Seahorse::Model::Operation.new.tap do |o|
927
1050
  o.name = "ListSourceLocations"
928
1051
  o.http_method = "GET"
@@ -179,6 +179,61 @@ module Aws::MediaTailor
179
179
  include Aws::Structure
180
180
  end
181
181
 
182
+ # MediaTailor only places (consumes) prefetched ads if the ad break
183
+ # meets the criteria defined by the dynamic variables. This gives you
184
+ # granular control over which ad break to place the prefetched ads into.
185
+ #
186
+ # As an example, let's say that you set DynamicVariable to
187
+ # scte.event\_id and Operator to EQUALS, and your playback configuration
188
+ # has an ADS URL of
189
+ # https://my.ads.server.com/path?&amp;podId=\[scte.avail\_num\]&amp;event=\[scte.event\_id\]&amp;duration=\[session.avail\_duration\_secs\].
190
+ # And the prefetch request to the ADS contains these values
191
+ # https://my.ads.server.com/path?&amp;podId=3&amp;event=my-awesome-event&amp;duration=30.
192
+ # MediaTailor will only insert the prefetched ads into the ad break if
193
+ # has a SCTE marker with an event id of my-awesome-event, since it must
194
+ # match the event id that MediaTailor uses to query the ADS.
195
+ #
196
+ # You can specify up to five AvailMatchingCriteria. If you specify
197
+ # multiple AvailMatchingCriteria, MediaTailor combines them to match
198
+ # using a logical AND. You can model logical OR combinations by creating
199
+ # multiple prefetch schedules.
200
+ #
201
+ # @note When making an API call, you may pass AvailMatchingCriteria
202
+ # data as a hash:
203
+ #
204
+ # {
205
+ # dynamic_variable: "__string", # required
206
+ # operator: "EQUALS", # required, accepts EQUALS
207
+ # }
208
+ #
209
+ # @!attribute [rw] dynamic_variable
210
+ # The dynamic variable(s) that MediaTailor should use as avail
211
+ # matching criteria. MediaTailor only places the prefetched ads into
212
+ # the avail if the avail matches the criteria defined by the dynamic
213
+ # variable. For information about dynamic variables, see [Using
214
+ # dynamic ad variables][1] in the *MediaTailor User Guide*.
215
+ #
216
+ # You can include up to 100 dynamic variables.
217
+ #
218
+ #
219
+ #
220
+ # [1]: https://docs.aws.amazon.com/mediatailor/latest/ug/variables.html
221
+ # @return [String]
222
+ #
223
+ # @!attribute [rw] operator
224
+ # For the DynamicVariable specified in AvailMatchingCriteria, the
225
+ # Operator that is used for the comparison.
226
+ # @return [String]
227
+ #
228
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/AvailMatchingCriteria AWS API Documentation
229
+ #
230
+ class AvailMatchingCriteria < Struct.new(
231
+ :dynamic_variable,
232
+ :operator)
233
+ SENSITIVE = []
234
+ include Aws::Structure
235
+ end
236
+
182
237
  # The configuration for avail suppression, also known as ad suppression.
183
238
  # For more information about ad suppression, see [Ad Suppression][1].
184
239
  #
@@ -549,6 +604,112 @@ module Aws::MediaTailor
549
604
  include Aws::Structure
550
605
  end
551
606
 
607
+ # A complex type that contains configuration settings for retrieval,
608
+ # consumption, and an optional stream ID.
609
+ #
610
+ # @note When making an API call, you may pass CreatePrefetchScheduleRequest
611
+ # data as a hash:
612
+ #
613
+ # {
614
+ # consumption: { # required
615
+ # avail_matching_criteria: [
616
+ # {
617
+ # dynamic_variable: "__string", # required
618
+ # operator: "EQUALS", # required, accepts EQUALS
619
+ # },
620
+ # ],
621
+ # end_time: Time.now, # required
622
+ # start_time: Time.now,
623
+ # },
624
+ # name: "__string", # required
625
+ # playback_configuration_name: "__string", # required
626
+ # retrieval: { # required
627
+ # dynamic_variables: {
628
+ # "__string" => "__string",
629
+ # },
630
+ # end_time: Time.now, # required
631
+ # start_time: Time.now,
632
+ # },
633
+ # stream_id: "__string",
634
+ # }
635
+ #
636
+ # @!attribute [rw] consumption
637
+ # The configuration settings for MediaTailor's *consumption* of the
638
+ # prefetched ads from the ad decision server. Each consumption
639
+ # configuration contains an end time and an optional start time that
640
+ # define the *consumption window*. Prefetch schedules automatically
641
+ # expire no earlier than seven days after the end time.
642
+ # @return [Types::PrefetchConsumption]
643
+ #
644
+ # @!attribute [rw] name
645
+ # @return [String]
646
+ #
647
+ # @!attribute [rw] playback_configuration_name
648
+ # @return [String]
649
+ #
650
+ # @!attribute [rw] retrieval
651
+ # The configuration settings for retrieval of prefetched ads from the
652
+ # ad decision server. Only one set of prefetched ads will be retrieved
653
+ # and subsequently consumed for each ad break.
654
+ # @return [Types::PrefetchRetrieval]
655
+ #
656
+ # @!attribute [rw] stream_id
657
+ # An optional stream identifier that MediaTailor uses to prefetch ads
658
+ # for multiple streams that use the same playback configuration. If
659
+ # StreamId is specified, MediaTailor returns all of the prefetch
660
+ # schedules with an exact match on StreamId. If not specified,
661
+ # MediaTailor returns all of the prefetch schedules for the playback
662
+ # configuration, regardless of StreamId.
663
+ # @return [String]
664
+ #
665
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/CreatePrefetchScheduleRequest AWS API Documentation
666
+ #
667
+ class CreatePrefetchScheduleRequest < Struct.new(
668
+ :consumption,
669
+ :name,
670
+ :playback_configuration_name,
671
+ :retrieval,
672
+ :stream_id)
673
+ SENSITIVE = []
674
+ include Aws::Structure
675
+ end
676
+
677
+ # @!attribute [rw] arn
678
+ # @return [String]
679
+ #
680
+ # @!attribute [rw] consumption
681
+ # A complex type that contains settings that determine how and when
682
+ # that MediaTailor places prefetched ads into upcoming ad breaks.
683
+ # @return [Types::PrefetchConsumption]
684
+ #
685
+ # @!attribute [rw] name
686
+ # @return [String]
687
+ #
688
+ # @!attribute [rw] playback_configuration_name
689
+ # @return [String]
690
+ #
691
+ # @!attribute [rw] retrieval
692
+ # A complex type that contains settings governing when MediaTailor
693
+ # prefetches ads, and which dynamic variables that MediaTailor
694
+ # includes in the request to the ad decision server.
695
+ # @return [Types::PrefetchRetrieval]
696
+ #
697
+ # @!attribute [rw] stream_id
698
+ # @return [String]
699
+ #
700
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/CreatePrefetchScheduleResponse AWS API Documentation
701
+ #
702
+ class CreatePrefetchScheduleResponse < Struct.new(
703
+ :arn,
704
+ :consumption,
705
+ :name,
706
+ :playback_configuration_name,
707
+ :retrieval,
708
+ :stream_id)
709
+ SENSITIVE = []
710
+ include Aws::Structure
711
+ end
712
+
552
713
  # Program configuration parameters.
553
714
  #
554
715
  # @note When making an API call, you may pass CreateProgramRequest
@@ -1072,6 +1233,36 @@ module Aws::MediaTailor
1072
1233
  #
1073
1234
  class DeletePlaybackConfigurationResponse < Aws::EmptyStructure; end
1074
1235
 
1236
+ # @note When making an API call, you may pass DeletePrefetchScheduleRequest
1237
+ # data as a hash:
1238
+ #
1239
+ # {
1240
+ # name: "__string", # required
1241
+ # playback_configuration_name: "__string", # required
1242
+ # }
1243
+ #
1244
+ # @!attribute [rw] name
1245
+ # @return [String]
1246
+ #
1247
+ # @!attribute [rw] playback_configuration_name
1248
+ # @return [String]
1249
+ #
1250
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/DeletePrefetchScheduleRequest AWS API Documentation
1251
+ #
1252
+ class DeletePrefetchScheduleRequest < Struct.new(
1253
+ :name,
1254
+ :playback_configuration_name)
1255
+ SENSITIVE = []
1256
+ include Aws::Structure
1257
+ end
1258
+
1259
+ # If the action is successful, the service sends back an HTTP 204
1260
+ # response with an empty HTTP body.
1261
+ #
1262
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/DeletePrefetchScheduleResponse AWS API Documentation
1263
+ #
1264
+ class DeletePrefetchScheduleResponse < Aws::EmptyStructure; end
1265
+
1075
1266
  # @note When making an API call, you may pass DeleteProgramRequest
1076
1267
  # data as a hash:
1077
1268
  #
@@ -1694,6 +1885,65 @@ module Aws::MediaTailor
1694
1885
  include Aws::Structure
1695
1886
  end
1696
1887
 
1888
+ # @note When making an API call, you may pass GetPrefetchScheduleRequest
1889
+ # data as a hash:
1890
+ #
1891
+ # {
1892
+ # name: "__string", # required
1893
+ # playback_configuration_name: "__string", # required
1894
+ # }
1895
+ #
1896
+ # @!attribute [rw] name
1897
+ # @return [String]
1898
+ #
1899
+ # @!attribute [rw] playback_configuration_name
1900
+ # @return [String]
1901
+ #
1902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/GetPrefetchScheduleRequest AWS API Documentation
1903
+ #
1904
+ class GetPrefetchScheduleRequest < Struct.new(
1905
+ :name,
1906
+ :playback_configuration_name)
1907
+ SENSITIVE = []
1908
+ include Aws::Structure
1909
+ end
1910
+
1911
+ # @!attribute [rw] arn
1912
+ # @return [String]
1913
+ #
1914
+ # @!attribute [rw] consumption
1915
+ # A complex type that contains settings that determine how and when
1916
+ # that MediaTailor places prefetched ads into upcoming ad breaks.
1917
+ # @return [Types::PrefetchConsumption]
1918
+ #
1919
+ # @!attribute [rw] name
1920
+ # @return [String]
1921
+ #
1922
+ # @!attribute [rw] playback_configuration_name
1923
+ # @return [String]
1924
+ #
1925
+ # @!attribute [rw] retrieval
1926
+ # A complex type that contains settings governing when MediaTailor
1927
+ # prefetches ads, and which dynamic variables that MediaTailor
1928
+ # includes in the request to the ad decision server.
1929
+ # @return [Types::PrefetchRetrieval]
1930
+ #
1931
+ # @!attribute [rw] stream_id
1932
+ # @return [String]
1933
+ #
1934
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/GetPrefetchScheduleResponse AWS API Documentation
1935
+ #
1936
+ class GetPrefetchScheduleResponse < Struct.new(
1937
+ :arn,
1938
+ :consumption,
1939
+ :name,
1940
+ :playback_configuration_name,
1941
+ :retrieval,
1942
+ :stream_id)
1943
+ SENSITIVE = []
1944
+ include Aws::Structure
1945
+ end
1946
+
1697
1947
  # The configuration for HLS content.
1698
1948
  #
1699
1949
  # @!attribute [rw] manifest_endpoint_prefix
@@ -1928,6 +2178,81 @@ module Aws::MediaTailor
1928
2178
  include Aws::Structure
1929
2179
  end
1930
2180
 
2181
+ # Retrieves the prefetch schedule(s) for a specific playback
2182
+ # configuration.
2183
+ #
2184
+ # @note When making an API call, you may pass ListPrefetchSchedulesRequest
2185
+ # data as a hash:
2186
+ #
2187
+ # {
2188
+ # max_results: 1,
2189
+ # next_token: "__string",
2190
+ # playback_configuration_name: "__string", # required
2191
+ # stream_id: "__string",
2192
+ # }
2193
+ #
2194
+ # @!attribute [rw] max_results
2195
+ # The maximum number of prefetch schedules that you want MediaTailor
2196
+ # to return in response to the current request. If the playback
2197
+ # configuration has more than MaxResults prefetch schedules, use the
2198
+ # value of NextToken in the response to get the next page of results.
2199
+ # @return [Integer]
2200
+ #
2201
+ # @!attribute [rw] next_token
2202
+ # (Optional) If the playback configuration has more than MaxResults
2203
+ # prefetch schedules, use NextToken to get the second and subsequent
2204
+ # pages of results.
2205
+ #
2206
+ # For the first ListPrefetchSchedulesRequest request, omit this value.
2207
+ #
2208
+ # For the second and subsequent requests, get the value of NextToken
2209
+ # from the previous response and specify that value for NextToken in
2210
+ # the request.
2211
+ #
2212
+ # If the previous response didn't include a NextToken element, there
2213
+ # are no more prefetch schedules to get.
2214
+ # @return [String]
2215
+ #
2216
+ # @!attribute [rw] playback_configuration_name
2217
+ # @return [String]
2218
+ #
2219
+ # @!attribute [rw] stream_id
2220
+ # An optional filtering parameter whereby MediaTailor filters the
2221
+ # prefetch schedules to include only specific streams.
2222
+ # @return [String]
2223
+ #
2224
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/ListPrefetchSchedulesRequest AWS API Documentation
2225
+ #
2226
+ class ListPrefetchSchedulesRequest < Struct.new(
2227
+ :max_results,
2228
+ :next_token,
2229
+ :playback_configuration_name,
2230
+ :stream_id)
2231
+ SENSITIVE = []
2232
+ include Aws::Structure
2233
+ end
2234
+
2235
+ # The list of prefetch schedules.
2236
+ #
2237
+ # @!attribute [rw] items
2238
+ # Lists the prefetch schedules. An empty Items list doesn't mean
2239
+ # there aren't more items to fetch, just that that page was empty.
2240
+ # @return [Array<Types::PrefetchSchedule>]
2241
+ #
2242
+ # @!attribute [rw] next_token
2243
+ # The value that you will use forNextToken in the next
2244
+ # ListPrefetchSchedulesRequest request.
2245
+ # @return [String]
2246
+ #
2247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/ListPrefetchSchedulesResponse AWS API Documentation
2248
+ #
2249
+ class ListPrefetchSchedulesResponse < Struct.new(
2250
+ :items,
2251
+ :next_token)
2252
+ SENSITIVE = []
2253
+ include Aws::Structure
2254
+ end
2255
+
1931
2256
  # @note When making an API call, you may pass ListSourceLocationsRequest
1932
2257
  # data as a hash:
1933
2258
  #
@@ -2300,6 +2625,154 @@ module Aws::MediaTailor
2300
2625
  include Aws::Structure
2301
2626
  end
2302
2627
 
2628
+ # A complex type that contains settings that determine how and when that
2629
+ # MediaTailor places prefetched ads into upcoming ad breaks.
2630
+ #
2631
+ # @note When making an API call, you may pass PrefetchConsumption
2632
+ # data as a hash:
2633
+ #
2634
+ # {
2635
+ # avail_matching_criteria: [
2636
+ # {
2637
+ # dynamic_variable: "__string", # required
2638
+ # operator: "EQUALS", # required, accepts EQUALS
2639
+ # },
2640
+ # ],
2641
+ # end_time: Time.now, # required
2642
+ # start_time: Time.now,
2643
+ # }
2644
+ #
2645
+ # @!attribute [rw] avail_matching_criteria
2646
+ # If you only want MediaTailor to insert prefetched ads into avails
2647
+ # (ad breaks) that match specific dynamic variables, such as
2648
+ # scte.event\_id, set the avail matching criteria.
2649
+ # @return [Array<Types::AvailMatchingCriteria>]
2650
+ #
2651
+ # @!attribute [rw] end_time
2652
+ # The time when MediaTailor no longer considers the prefetched ads for
2653
+ # use in an ad break. MediaTailor automatically deletes prefetch
2654
+ # schedules no less than seven days after the end time. If you'd like
2655
+ # to manually delete the prefetch schedule, you can call
2656
+ # DeletePrefetchSchedule.
2657
+ # @return [Time]
2658
+ #
2659
+ # @!attribute [rw] start_time
2660
+ # The time when prefetched ads are considered for use in an ad break.
2661
+ # If you don't specify StartTime, the prefetched ads are available
2662
+ # after MediaTailor retrives them from the ad decision server.
2663
+ # @return [Time]
2664
+ #
2665
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/PrefetchConsumption AWS API Documentation
2666
+ #
2667
+ class PrefetchConsumption < Struct.new(
2668
+ :avail_matching_criteria,
2669
+ :end_time,
2670
+ :start_time)
2671
+ SENSITIVE = []
2672
+ include Aws::Structure
2673
+ end
2674
+
2675
+ # A complex type that contains settings governing when MediaTailor
2676
+ # prefetches ads, and which dynamic variables that MediaTailor includes
2677
+ # in the request to the ad decision server.
2678
+ #
2679
+ # @note When making an API call, you may pass PrefetchRetrieval
2680
+ # data as a hash:
2681
+ #
2682
+ # {
2683
+ # dynamic_variables: {
2684
+ # "__string" => "__string",
2685
+ # },
2686
+ # end_time: Time.now, # required
2687
+ # start_time: Time.now,
2688
+ # }
2689
+ #
2690
+ # @!attribute [rw] dynamic_variables
2691
+ # The dynamic variables to use for substitution during prefetch
2692
+ # requests to the ad decision server (ADS).
2693
+ #
2694
+ # You intially configure [dynamic variables][1] for the ADS URL when
2695
+ # you set up your playback configuration. When you specify
2696
+ # DynamicVariables for prefetch retrieval, MediaTailor includes the
2697
+ # dynamic variables in the request to the ADS.
2698
+ #
2699
+ #
2700
+ #
2701
+ # [1]: https://docs.aws.amazon.com/mediatailor/latest/ug/variables.html
2702
+ # @return [Hash<String,String>]
2703
+ #
2704
+ # @!attribute [rw] end_time
2705
+ # The time when prefetch retrieval ends for the ad break. Prefetching
2706
+ # will be attempted for manifest requests that occur at or before this
2707
+ # time.
2708
+ # @return [Time]
2709
+ #
2710
+ # @!attribute [rw] start_time
2711
+ # The time when prefetch retrievals can start for this break. Ad
2712
+ # prefetching will be attempted for manifest requests that occur at or
2713
+ # after this time. Defaults to the current time. If not specified, the
2714
+ # prefetch retrieval starts as soon as possible.
2715
+ # @return [Time]
2716
+ #
2717
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/PrefetchRetrieval AWS API Documentation
2718
+ #
2719
+ class PrefetchRetrieval < Struct.new(
2720
+ :dynamic_variables,
2721
+ :end_time,
2722
+ :start_time)
2723
+ SENSITIVE = []
2724
+ include Aws::Structure
2725
+ end
2726
+
2727
+ # A complex type that contains prefetch schedule information.
2728
+ #
2729
+ # @!attribute [rw] arn
2730
+ # The Amazon Resource Name (ARN) of the prefetch schedule.
2731
+ # @return [String]
2732
+ #
2733
+ # @!attribute [rw] consumption
2734
+ # Consumption settings determine how, and when, MediaTailor places the
2735
+ # prefetched ads into ad breaks. Ad consumption occurs within a span
2736
+ # of time that you define, called a *consumption window*. You can
2737
+ # designate which ad breaks that MediaTailor fills with prefetch ads
2738
+ # by setting avail matching criteria.
2739
+ # @return [Types::PrefetchConsumption]
2740
+ #
2741
+ # @!attribute [rw] name
2742
+ # The name of the prefetch schedule. The name must be unique among all
2743
+ # prefetch schedules that are associated with the specified playback
2744
+ # configuration.
2745
+ # @return [String]
2746
+ #
2747
+ # @!attribute [rw] playback_configuration_name
2748
+ # The name of the playback configuration to create the prefetch
2749
+ # schedule for.
2750
+ # @return [String]
2751
+ #
2752
+ # @!attribute [rw] retrieval
2753
+ # A complex type that contains settings for prefetch retrieval from
2754
+ # the ad decision server (ADS).
2755
+ # @return [Types::PrefetchRetrieval]
2756
+ #
2757
+ # @!attribute [rw] stream_id
2758
+ # An optional stream identifier that you can specify in order to
2759
+ # prefetch for multiple streams that use the same playback
2760
+ # configuration.
2761
+ # @return [String]
2762
+ #
2763
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/PrefetchSchedule AWS API Documentation
2764
+ #
2765
+ class PrefetchSchedule < Struct.new(
2766
+ :arn,
2767
+ :consumption,
2768
+ :name,
2769
+ :playback_configuration_name,
2770
+ :retrieval,
2771
+ :stream_id)
2772
+ SENSITIVE = []
2773
+ include Aws::Structure
2774
+ end
2775
+
2303
2776
  # Adds an IAM policy for the channel.
2304
2777
  #
2305
2778
  # @note When making an API call, you may pass PutChannelPolicyRequest
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-mediatailor/customizations'
48
48
  # @!group service
49
49
  module Aws::MediaTailor
50
50
 
51
- GEM_VERSION = '1.45.0'
51
+ GEM_VERSION = '1.49.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-mediatailor
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.45.0
4
+ version: 1.49.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: 2021-09-22 00:00:00.000000000 Z
11
+ date: 2021-11-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.120.0
22
+ version: 3.122.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.120.0
32
+ version: 3.122.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement