aws-sdk-mediatailor 1.45.0 → 1.46.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: '0779b9ea619f4bc6e099db8d8d52c314cb4c0b203ae0aa30efe962da3cb57405'
4
- data.tar.gz: c12f66df94fb1b84850ac0a55cdf2ba080ad78f063ae2697e978e3fde3b3dcff
3
+ metadata.gz: '0390f7045456ff4cade4220bec704930f989d58a000b26782343d5eae3f1ed4b'
4
+ data.tar.gz: edbdd528db1168b93c80c4c260bf40a08bdfb2bb601582309f5f5a8de7317138
5
5
  SHA512:
6
- metadata.gz: 031e6dacd4d9db5ba35056d1489a6b19210e11d0da688e76a0eee3fc916768e52e9c557a88939e43ddc5ca44dff6d40125a7a483b5bded0c998cb9094ea1ad60
7
- data.tar.gz: fda18b10c1c6e00b5bc3170ca325b38376b8e0c12dee25af84e9435c72d3e485969e89190d8d6e22464a1291326ea98fdfee702b6c9d1d573b1512902835acfe
6
+ metadata.gz: c1951c71e0332f1b4fb816a67200d18f8ea70c51331bf47ecfb938b30110cf9edab7539a6c44b812e6b0a9b1d31a2498faf214d3d9ed7dee975242842f63c627
7
+ data.tar.gz: 02bddf9914b5e407774bf21f9a351b995d035d9996f97b7a43891013b5f55e9a59311af4e02a15a0486a407473560b182925b6d212670158696474c970b6cea5
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.46.0 (2021-10-12)
5
+ ------------------
6
+
7
+ * Feature - MediaTailor now supports ad prefetching.
8
+
4
9
  1.45.0 (2021-09-22)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.45.0
1
+ 1.46.0
@@ -470,6 +470,92 @@ module Aws::MediaTailor
470
470
  req.send_request(options)
471
471
  end
472
472
 
473
+ # Creates a new prefetch schedule for the specified playback
474
+ # configuration.
475
+ #
476
+ # @option params [required, Types::PrefetchConsumption] :consumption
477
+ # The configuration settings for MediaTailor's *consumption* of the
478
+ # prefetched ads from the ad decision server. Each consumption
479
+ # configuration contains an end time and an optional start time that
480
+ # define the *consumption window*. Prefetch schedules automatically
481
+ # expire no earlier than seven days after the end time.
482
+ #
483
+ # @option params [required, String] :name
484
+ #
485
+ # @option params [required, String] :playback_configuration_name
486
+ #
487
+ # @option params [required, Types::PrefetchRetrieval] :retrieval
488
+ # The configuration settings for retrieval of prefetched ads from the ad
489
+ # decision server. Only one set of prefetched ads will be retrieved and
490
+ # subsequently consumed for each ad break.
491
+ #
492
+ # @option params [String] :stream_id
493
+ # An optional stream identifier that MediaTailor uses to prefetch ads
494
+ # for multiple streams that use the same playback configuration. If
495
+ # StreamId is specified, MediaTailor returns all of the prefetch
496
+ # schedules with an exact match on StreamId. If not specified,
497
+ # MediaTailor returns all of the prefetch schedules for the playback
498
+ # configuration, regardless of StreamId.
499
+ #
500
+ # @return [Types::CreatePrefetchScheduleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
501
+ #
502
+ # * {Types::CreatePrefetchScheduleResponse#arn #arn} => String
503
+ # * {Types::CreatePrefetchScheduleResponse#consumption #consumption} => Types::PrefetchConsumption
504
+ # * {Types::CreatePrefetchScheduleResponse#name #name} => String
505
+ # * {Types::CreatePrefetchScheduleResponse#playback_configuration_name #playback_configuration_name} => String
506
+ # * {Types::CreatePrefetchScheduleResponse#retrieval #retrieval} => Types::PrefetchRetrieval
507
+ # * {Types::CreatePrefetchScheduleResponse#stream_id #stream_id} => String
508
+ #
509
+ # @example Request syntax with placeholder values
510
+ #
511
+ # resp = client.create_prefetch_schedule({
512
+ # consumption: { # required
513
+ # avail_matching_criteria: [
514
+ # {
515
+ # dynamic_variable: "__string", # required
516
+ # operator: "EQUALS", # required, accepts EQUALS
517
+ # },
518
+ # ],
519
+ # end_time: Time.now, # required
520
+ # start_time: Time.now,
521
+ # },
522
+ # name: "__string", # required
523
+ # playback_configuration_name: "__string", # required
524
+ # retrieval: { # required
525
+ # dynamic_variables: {
526
+ # "__string" => "__string",
527
+ # },
528
+ # end_time: Time.now, # required
529
+ # start_time: Time.now,
530
+ # },
531
+ # stream_id: "__string",
532
+ # })
533
+ #
534
+ # @example Response structure
535
+ #
536
+ # resp.arn #=> String
537
+ # resp.consumption.avail_matching_criteria #=> Array
538
+ # resp.consumption.avail_matching_criteria[0].dynamic_variable #=> String
539
+ # resp.consumption.avail_matching_criteria[0].operator #=> String, one of "EQUALS"
540
+ # resp.consumption.end_time #=> Time
541
+ # resp.consumption.start_time #=> Time
542
+ # resp.name #=> String
543
+ # resp.playback_configuration_name #=> String
544
+ # resp.retrieval.dynamic_variables #=> Hash
545
+ # resp.retrieval.dynamic_variables["__string"] #=> String
546
+ # resp.retrieval.end_time #=> Time
547
+ # resp.retrieval.start_time #=> Time
548
+ # resp.stream_id #=> String
549
+ #
550
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/CreatePrefetchSchedule AWS API Documentation
551
+ #
552
+ # @overload create_prefetch_schedule(params = {})
553
+ # @param [Hash] params ({})
554
+ def create_prefetch_schedule(params = {}, options = {})
555
+ req = build_request(:create_prefetch_schedule, params)
556
+ req.send_request(options)
557
+ end
558
+
473
559
  # Creates a program.
474
560
  #
475
561
  # @option params [Array<Types::AdBreak>] :ad_breaks
@@ -760,6 +846,32 @@ module Aws::MediaTailor
760
846
  req.send_request(options)
761
847
  end
762
848
 
849
+ # Deletes a prefetch schedule for a specific playback configuration. If
850
+ # you call DeletePrefetchSchedule on an expired prefetch schedule,
851
+ # MediaTailor returns an HTTP 404 status code.
852
+ #
853
+ # @option params [required, String] :name
854
+ #
855
+ # @option params [required, String] :playback_configuration_name
856
+ #
857
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
858
+ #
859
+ # @example Request syntax with placeholder values
860
+ #
861
+ # resp = client.delete_prefetch_schedule({
862
+ # name: "__string", # required
863
+ # playback_configuration_name: "__string", # required
864
+ # })
865
+ #
866
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/DeletePrefetchSchedule AWS API Documentation
867
+ #
868
+ # @overload delete_prefetch_schedule(params = {})
869
+ # @param [Hash] params ({})
870
+ def delete_prefetch_schedule(params = {}, options = {})
871
+ req = build_request(:delete_prefetch_schedule, params)
872
+ req.send_request(options)
873
+ end
874
+
763
875
  # Deletes a specific program on a specific channel.
764
876
  #
765
877
  # @option params [required, String] :channel_name
@@ -1178,6 +1290,55 @@ module Aws::MediaTailor
1178
1290
  req.send_request(options)
1179
1291
  end
1180
1292
 
1293
+ # Returns information about the prefetch schedule for a specific
1294
+ # playback configuration. If you call GetPrefetchSchedule on an expired
1295
+ # prefetch schedule, MediaTailor returns an HTTP 404 status code.
1296
+ #
1297
+ # @option params [required, String] :name
1298
+ #
1299
+ # @option params [required, String] :playback_configuration_name
1300
+ #
1301
+ # @return [Types::GetPrefetchScheduleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1302
+ #
1303
+ # * {Types::GetPrefetchScheduleResponse#arn #arn} => String
1304
+ # * {Types::GetPrefetchScheduleResponse#consumption #consumption} => Types::PrefetchConsumption
1305
+ # * {Types::GetPrefetchScheduleResponse#name #name} => String
1306
+ # * {Types::GetPrefetchScheduleResponse#playback_configuration_name #playback_configuration_name} => String
1307
+ # * {Types::GetPrefetchScheduleResponse#retrieval #retrieval} => Types::PrefetchRetrieval
1308
+ # * {Types::GetPrefetchScheduleResponse#stream_id #stream_id} => String
1309
+ #
1310
+ # @example Request syntax with placeholder values
1311
+ #
1312
+ # resp = client.get_prefetch_schedule({
1313
+ # name: "__string", # required
1314
+ # playback_configuration_name: "__string", # required
1315
+ # })
1316
+ #
1317
+ # @example Response structure
1318
+ #
1319
+ # resp.arn #=> String
1320
+ # resp.consumption.avail_matching_criteria #=> Array
1321
+ # resp.consumption.avail_matching_criteria[0].dynamic_variable #=> String
1322
+ # resp.consumption.avail_matching_criteria[0].operator #=> String, one of "EQUALS"
1323
+ # resp.consumption.end_time #=> Time
1324
+ # resp.consumption.start_time #=> Time
1325
+ # resp.name #=> String
1326
+ # resp.playback_configuration_name #=> String
1327
+ # resp.retrieval.dynamic_variables #=> Hash
1328
+ # resp.retrieval.dynamic_variables["__string"] #=> String
1329
+ # resp.retrieval.end_time #=> Time
1330
+ # resp.retrieval.start_time #=> Time
1331
+ # resp.stream_id #=> String
1332
+ #
1333
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/GetPrefetchSchedule AWS API Documentation
1334
+ #
1335
+ # @overload get_prefetch_schedule(params = {})
1336
+ # @param [Hash] params ({})
1337
+ def get_prefetch_schedule(params = {}, options = {})
1338
+ req = build_request(:get_prefetch_schedule, params)
1339
+ req.send_request(options)
1340
+ end
1341
+
1181
1342
  # Returns a list of alerts for the given resource.
1182
1343
  #
1183
1344
  # @option params [Integer] :max_results
@@ -1341,6 +1502,77 @@ module Aws::MediaTailor
1341
1502
  req.send_request(options)
1342
1503
  end
1343
1504
 
1505
+ # Creates a new prefetch schedule.
1506
+ #
1507
+ # @option params [Integer] :max_results
1508
+ # The maximum number of prefetch schedules that you want MediaTailor to
1509
+ # return in response to the current request. If the playback
1510
+ # configuration has more than MaxResults prefetch schedules, use the
1511
+ # value of NextToken in the response to get the next page of results.
1512
+ #
1513
+ # @option params [String] :next_token
1514
+ # (Optional) If the playback configuration has more than MaxResults
1515
+ # prefetch schedules, use NextToken to get the second and subsequent
1516
+ # pages of results.
1517
+ #
1518
+ # For the first ListPrefetchSchedulesRequest request, omit this value.
1519
+ #
1520
+ # For the second and subsequent requests, get the value of NextToken
1521
+ # from the previous response and specify that value for NextToken in the
1522
+ # request.
1523
+ #
1524
+ # If the previous response didn't include a NextToken element, there
1525
+ # are no more prefetch schedules to get.
1526
+ #
1527
+ # @option params [required, String] :playback_configuration_name
1528
+ #
1529
+ # @option params [String] :stream_id
1530
+ # An optional filtering parameter whereby MediaTailor filters the
1531
+ # prefetch schedules to include only specific streams.
1532
+ #
1533
+ # @return [Types::ListPrefetchSchedulesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1534
+ #
1535
+ # * {Types::ListPrefetchSchedulesResponse#items #items} => Array&lt;Types::PrefetchSchedule&gt;
1536
+ # * {Types::ListPrefetchSchedulesResponse#next_token #next_token} => String
1537
+ #
1538
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1539
+ #
1540
+ # @example Request syntax with placeholder values
1541
+ #
1542
+ # resp = client.list_prefetch_schedules({
1543
+ # max_results: 1,
1544
+ # next_token: "__string",
1545
+ # playback_configuration_name: "__string", # required
1546
+ # stream_id: "__string",
1547
+ # })
1548
+ #
1549
+ # @example Response structure
1550
+ #
1551
+ # resp.items #=> Array
1552
+ # resp.items[0].arn #=> String
1553
+ # resp.items[0].consumption.avail_matching_criteria #=> Array
1554
+ # resp.items[0].consumption.avail_matching_criteria[0].dynamic_variable #=> String
1555
+ # resp.items[0].consumption.avail_matching_criteria[0].operator #=> String, one of "EQUALS"
1556
+ # resp.items[0].consumption.end_time #=> Time
1557
+ # resp.items[0].consumption.start_time #=> Time
1558
+ # resp.items[0].name #=> String
1559
+ # resp.items[0].playback_configuration_name #=> String
1560
+ # resp.items[0].retrieval.dynamic_variables #=> Hash
1561
+ # resp.items[0].retrieval.dynamic_variables["__string"] #=> String
1562
+ # resp.items[0].retrieval.end_time #=> Time
1563
+ # resp.items[0].retrieval.start_time #=> Time
1564
+ # resp.items[0].stream_id #=> String
1565
+ # resp.next_token #=> String
1566
+ #
1567
+ # @see http://docs.aws.amazon.com/goto/WebAPI/mediatailor-2018-04-23/ListPrefetchSchedules AWS API Documentation
1568
+ #
1569
+ # @overload list_prefetch_schedules(params = {})
1570
+ # @param [Hash] params ({})
1571
+ def list_prefetch_schedules(params = {}, options = {})
1572
+ req = build_request(:list_prefetch_schedules, params)
1573
+ req.send_request(options)
1574
+ end
1575
+
1344
1576
  # Retrieves a list of source locations.
1345
1577
  #
1346
1578
  # @option params [Integer] :max_results
@@ -1989,7 +2221,7 @@ module Aws::MediaTailor
1989
2221
  params: params,
1990
2222
  config: config)
1991
2223
  context[:gem_name] = 'aws-sdk-mediatailor'
1992
- context[:gem_version] = '1.45.0'
2224
+ context[:gem_version] = '1.46.0'
1993
2225
  Seahorse::Client::Request.new(handlers, context)
1994
2226
  end
1995
2227
 
@@ -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.46.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.46.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-10-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core