MediaTailor *********** Client ====== class MediaTailor.Client A low-level client representing AWS MediaTailor Use the AWS Elemental MediaTailor SDKs and CLI to configure scalable ad insertion and linear channels. With MediaTailor, you can assemble existing content into a linear stream and serve targeted ads to viewers while maintaining broadcast quality in over-the-top (OTT) video applications. For information about using the service, including detailed information about the settings covered in this guide, see the AWS Elemental MediaTailor User Guide. Through the SDKs and the CLI you manage AWS Elemental MediaTailor configurations and channels the same as you do through the console. For example, you specify ad insertion behavior and mapping information for the origin server and the ad decision server (ADS). import boto3 client = boto3.client('mediatailor') These are the available methods: * can_paginate * close * configure_logs_for_channel * configure_logs_for_playback_configuration * create_channel * create_live_source * create_prefetch_schedule * create_program * create_source_location * create_vod_source * delete_channel * delete_channel_policy * delete_live_source * delete_playback_configuration * delete_prefetch_schedule * delete_program * delete_source_location * delete_vod_source * describe_channel * describe_live_source * describe_program * describe_source_location * describe_vod_source * get_channel_policy * get_channel_schedule * get_paginator * get_playback_configuration * get_prefetch_schedule * get_waiter * list_alerts * list_channels * list_live_sources * list_playback_configurations * list_prefetch_schedules * list_source_locations * list_tags_for_resource * list_vod_sources * put_channel_policy * put_playback_configuration * start_channel * stop_channel * tag_resource * untag_resource * update_channel * update_live_source * update_program * update_source_location * update_vod_source Paginators ========== Paginators are available on a client instance via the "get_paginator" method. For more detailed instructions and examples on the usage of paginators, see the paginators user guide. The available paginators are: * GetChannelSchedule * ListAlerts * ListChannels * ListLiveSources * ListPlaybackConfigurations * ListPrefetchSchedules * ListSourceLocations * ListVodSources MediaTailor / Paginator / ListVodSources ListVodSources ************** class MediaTailor.Paginator.ListVodSources paginator = client.get_paginator('list_vod_sources') paginate(**kwargs) Creates an iterator that will paginate through responses from "MediaTailor.Client.list_vod_sources()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( SourceLocationName='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **SourceLocationName** (*string*) -- **[REQUIRED]** The name of the source location associated with this VOD Source list. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'HttpPackageConfigurations': [ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], 'LastModifiedTime': datetime(2015, 1, 1), 'SourceLocationName': 'string', 'Tags': { 'string': 'string' }, 'VodSourceName': 'string' }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* Lists the VOD sources. * *(dict) --* VOD source configuration parameters. * **Arn** *(string) --* The ARN for the VOD source. * **CreationTime** *(datetime) --* The timestamp that indicates when the VOD source was created. * **HttpPackageConfigurations** *(list) --* The HTTP package configurations for the VOD source. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the VOD source was last modified. * **SourceLocationName** *(string) --* The name of the source location that the VOD source is associated with. * **Tags** *(dict) --* The tags assigned to the VOD source. Tags are key- value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **VodSourceName** *(string) --* The name of the VOD source. MediaTailor / Paginator / ListPlaybackConfigurations ListPlaybackConfigurations ************************** class MediaTailor.Paginator.ListPlaybackConfigurations paginator = client.get_paginator('list_playback_configurations') paginate(**kwargs) Creates an iterator that will paginate through responses from "MediaTailor.Client.list_playback_configurations()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max- items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'AdDecisionServerUrl': 'string', 'AvailSuppression': { 'Mode': 'OFF'|'BEHIND_LIVE_EDGE'|'AFTER_LIVE_EDGE', 'Value': 'string', 'FillPolicy': 'FULL_AVAIL_ONLY'|'PARTIAL_AVAIL' }, 'Bumper': { 'EndUrl': 'string', 'StartUrl': 'string' }, 'CdnConfiguration': { 'AdSegmentUrlPrefix': 'string', 'ContentSegmentUrlPrefix': 'string' }, 'ConfigurationAliases': { 'string': { 'string': 'string' } }, 'DashConfiguration': { 'ManifestEndpointPrefix': 'string', 'MpdLocation': 'string', 'OriginManifestType': 'SINGLE_PERIOD'|'MULTI_PERIOD' }, 'HlsConfiguration': { 'ManifestEndpointPrefix': 'string' }, 'InsertionMode': 'STITCHED_ONLY'|'PLAYER_SELECT', 'LivePreRollConfiguration': { 'AdDecisionServerUrl': 'string', 'MaxDurationSeconds': 123 }, 'LogConfiguration': { 'PercentEnabled': 123, 'EnabledLoggingStrategies': [ 'VENDED_LOGS'|'LEGACY_CLOUDWATCH', ], 'AdsInteractionLog': { 'PublishOptInEventTypes': [ 'RAW_ADS_RESPONSE', ], 'ExcludeEventTypes': [ 'AD_MARKER_FOUND'|'NON_AD_MARKER_FOUND'|'MAKING_ADS_REQUEST'|'MODIFIED_TARGET_URL'|'VAST_REDIRECT'|'EMPTY_VAST_RESPONSE'|'EMPTY_VMAP_RESPONSE'|'VAST_RESPONSE'|'REDIRECTED_VAST_RESPONSE'|'FILLED_AVAIL'|'FILLED_OVERLAY_AVAIL'|'BEACON_FIRED'|'WARNING_NO_ADVERTISEMENTS'|'WARNING_VPAID_AD_DROPPED'|'WARNING_URL_VARIABLE_SUBSTITUTION_FAILED'|'ERROR_UNKNOWN'|'ERROR_UNKNOWN_HOST'|'ERROR_DISALLOWED_HOST'|'ERROR_ADS_IO'|'ERROR_ADS_TIMEOUT'|'ERROR_ADS_RESPONSE_PARSE'|'ERROR_ADS_RESPONSE_UNKNOWN_ROOT_ELEMENT'|'ERROR_ADS_INVALID_RESPONSE'|'ERROR_VAST_REDIRECT_EMPTY_RESPONSE'|'ERROR_VAST_REDIRECT_MULTIPLE_VAST'|'ERROR_VAST_REDIRECT_FAILED'|'ERROR_VAST_MISSING_MEDIAFILES'|'ERROR_VAST_MISSING_CREATIVES'|'ERROR_VAST_MISSING_OVERLAYS'|'ERROR_VAST_MISSING_IMPRESSION'|'ERROR_VAST_INVALID_VAST_AD_TAG_URI'|'ERROR_VAST_MULTIPLE_TRACKING_EVENTS'|'ERROR_VAST_MULTIPLE_LINEAR'|'ERROR_VAST_INVALID_MEDIA_FILE'|'ERROR_FIRING_BEACON_FAILED'|'ERROR_PERSONALIZATION_DISABLED'|'VOD_TIME_BASED_AVAIL_PLAN_VAST_RESPONSE_FOR_OFFSET'|'VOD_TIME_BASED_AVAIL_PLAN_SUCCESS'|'VOD_TIME_BASED_AVAIL_PLAN_WARNING_NO_ADVERTISEMENTS'|'INTERSTITIAL_VOD_SUCCESS'|'INTERSTITIAL_VOD_FAILURE', ] }, 'ManifestServiceInteractionLog': { 'ExcludeEventTypes': [ 'GENERATED_MANIFEST'|'ORIGIN_MANIFEST'|'SESSION_INITIALIZED'|'TRACKING_RESPONSE'|'CONFIG_SYNTAX_ERROR'|'CONFIG_SECURITY_ERROR'|'UNKNOWN_HOST'|'TIMEOUT_ERROR'|'CONNECTION_ERROR'|'IO_ERROR'|'UNKNOWN_ERROR'|'HOST_DISALLOWED'|'PARSING_ERROR'|'MANIFEST_ERROR'|'NO_MASTER_OR_MEDIA_PLAYLIST'|'NO_MASTER_PLAYLIST'|'NO_MEDIA_PLAYLIST'|'INCOMPATIBLE_HLS_VERSION'|'SCTE35_PARSING_ERROR'|'INVALID_SINGLE_PERIOD_DASH_MANIFEST'|'UNSUPPORTED_SINGLE_PERIOD_DASH_MANIFEST'|'LAST_PERIOD_MISSING_AUDIO'|'LAST_PERIOD_MISSING_AUDIO_WARNING'|'ERROR_ORIGIN_PREFIX_INTERPOLATION'|'ERROR_ADS_INTERPOLATION'|'ERROR_LIVE_PRE_ROLL_ADS_INTERPOLATION'|'ERROR_CDN_AD_SEGMENT_INTERPOLATION'|'ERROR_CDN_CONTENT_SEGMENT_INTERPOLATION'|'ERROR_SLATE_AD_URL_INTERPOLATION'|'ERROR_PROFILE_NAME_INTERPOLATION'|'ERROR_BUMPER_START_INTERPOLATION'|'ERROR_BUMPER_END_INTERPOLATION', ] } }, 'ManifestProcessingRules': { 'AdMarkerPassthrough': { 'Enabled': True|False } }, 'Name': 'string', 'PersonalizationThresholdSeconds': 123, 'PlaybackConfigurationArn': 'string', 'PlaybackEndpointPrefix': 'string', 'SessionInitializationEndpointPrefix': 'string', 'SlateAdUrl': 'string', 'Tags': { 'string': 'string' }, 'TranscodeProfileName': 'string', 'VideoContentSourceUrl': 'string', 'AdConditioningConfiguration': { 'StreamingMediaFileConditioning': 'TRANSCODE'|'NONE' } }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* Array of playback configurations. This might be all the available configurations or a subset, depending on the settings that you provide and the total number of configurations stored. * *(dict) --* A playback configuration. For information about MediaTailor configurations, see Working with configurations in AWS Elemental MediaTailor. * **AdDecisionServerUrl** *(string) --* The URL for the ad decision server (ADS). This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player-specific and session- specific parameters as needed when calling the ADS. Alternately, for testing you can provide a static VAST URL. The maximum length is 25,000 characters. * **AvailSuppression** *(dict) --* The configuration for avail suppression, also known as ad suppression. For more information about ad suppression, see Ad Suppression. * **Mode** *(string) --* Sets the ad suppression mode. By default, ad suppression is off and all ad breaks are filled with ads or slate. When Mode is set to "BEHIND_LIVE_EDGE", ad suppression is active and MediaTailor won't fill ad breaks on or behind the ad suppression Value time in the manifest lookback window. When Mode is set to "AFTER_LIVE_EDGE", ad suppression is active and MediaTailor won't fill ad breaks that are within the live edge plus the avail suppression value. * **Value** *(string) --* A live edge offset time in HH:MM:SS. MediaTailor won't fill ad breaks on or behind this time in the manifest lookback window. If Value is set to 00:00:00, it is in sync with the live edge, and MediaTailor won't fill any ad breaks on or behind the live edge. If you set a Value time, MediaTailor won't fill any ad breaks on or behind this time in the manifest lookback window. For example, if you set 00:45:00, then MediaTailor will fill ad breaks that occur within 45 minutes behind the live edge, but won't fill ad breaks on or behind 45 minutes behind the live edge. * **FillPolicy** *(string) --* Defines the policy to apply to the avail suppression mode. "BEHIND_LIVE_EDGE" will always use the full avail suppression policy. "AFTER_LIVE_EDGE" mode can be used to invoke partial ad break fills when a session starts mid- break. * **Bumper** *(dict) --* The configuration for bumpers. Bumpers are short audio or video clips that play at the start or before the end of an ad break. To learn more about bumpers, see Bumpers. * **EndUrl** *(string) --* The URL for the end bumper asset. * **StartUrl** *(string) --* The URL for the start bumper asset. * **CdnConfiguration** *(dict) --* The configuration for using a content delivery network (CDN), like Amazon CloudFront, for content and ad segment management. * **AdSegmentUrlPrefix** *(string) --* A non-default content delivery network (CDN) to serve ad segments. By default, AWS Elemental MediaTailor uses Amazon CloudFront with default cache settings as its CDN for ad segments. To set up an alternate CDN, create a rule in your CDN for the origin ads.mediatailor.**.amazonaws.com. Then specify the rule's name in this "AdSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for ad segments. * **ContentSegmentUrlPrefix** *(string) --* A content delivery network (CDN) to cache content segments, so that content requests don’t always have to go to the origin server. First, create a rule in your CDN for the content segment origin server. Then specify the rule's name in this "ContentSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for content segments. * **ConfigurationAliases** *(dict) --* The player parameters and aliases used as dynamic variables during session initialization. For more information, see Domain Variables. * *(string) --* The dynamic variable that has aliases. * *(dict) --* Map of aliases to the value to be used at request time. * *(string) --* * *(string) --* * **DashConfiguration** *(dict) --* The configuration for a DASH source. * **ManifestEndpointPrefix** *(string) --* The URL generated by MediaTailor to initiate a playback session. The session uses server-side reporting. This setting is ignored in PUT operations. * **MpdLocation** *(string) --* The setting that controls whether MediaTailor includes the Location tag in DASH manifests. MediaTailor populates the Location tag with the URL for manifest update requests, to be used by players that don't support sticky redirects. Disable this if you have CDN routing rules set up for accessing MediaTailor manifests, and you are either using client-side reporting or your players support sticky HTTP redirects. Valid values are "DISABLED" and "EMT_DEFAULT". The "EMT_DEFAULT" setting enables the inclusion of the tag and is the default value. * **OriginManifestType** *(string) --* The setting that controls whether MediaTailor handles manifests from the origin server as multi- period manifests or single-period manifests. If your origin server produces single-period manifests, set this to "SINGLE_PERIOD". The default setting is "MULTI_PERIOD". For multi-period manifests, omit this setting or set it to "MULTI_PERIOD". * **HlsConfiguration** *(dict) --* The configuration for HLS content. * **ManifestEndpointPrefix** *(string) --* The URL that is used to initiate a playback session for devices that support Apple HLS. The session uses server-side reporting. * **InsertionMode** *(string) --* The setting that controls whether players can use stitched or guided ad insertion. The default, "STITCHED_ONLY", forces all player sessions to use stitched (server-side) ad insertion. Choosing "PLAYER_SELECT" allows players to select either stitched or guided ad insertion at session- initialization time. The default for players that do not specify an insertion mode is stitched. * **LivePreRollConfiguration** *(dict) --* The configuration for pre-roll ad insertion. * **AdDecisionServerUrl** *(string) --* The URL for the ad decision server (ADS) for pre- roll ads. This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player- specific and session-specific parameters as needed when calling the ADS. Alternately, for testing, you can provide a static VAST URL. The maximum length is 25,000 characters. * **MaxDurationSeconds** *(integer) --* The maximum allowed duration for the pre-roll ad avail. AWS Elemental MediaTailor won't play pre- roll ads to exceed this duration, regardless of the total duration of ads that the ADS returns. * **LogConfiguration** *(dict) --* Defines where AWS Elemental MediaTailor sends logs for the playback configuration. * **PercentEnabled** *(integer) --* The percentage of session logs that MediaTailor sends to your configured log destination. For example, if your playback configuration has 1000 sessions and "percentEnabled" is set to "60", MediaTailor sends logs for 600 of the sessions to CloudWatch Logs. MediaTailor decides at random which of the playback configuration sessions to send logs for. If you want to view logs for a specific session, you can use the debug log mode. Valid values: "0" - "100" * **EnabledLoggingStrategies** *(list) --* The method used for collecting logs from AWS Elemental MediaTailor. "LEGACY_CLOUDWATCH" indicates that MediaTailor is sending logs directly to Amazon CloudWatch Logs. "VENDED_LOGS" indicates that MediaTailor is sending logs to CloudWatch, which then vends the logs to your destination of choice. Supported destinations are CloudWatch Logs log group, Amazon S3 bucket, and Amazon Data Firehose stream. * *(string) --* * **AdsInteractionLog** *(dict) --* Settings for customizing what events are included in logs for interactions with the ad decision server (ADS). * **PublishOptInEventTypes** *(list) --* Indicates that MediaTailor emits "RAW_ADS_RESPONSE" logs for playback sessions that are initialized with this configuration. * *(string) --* * **ExcludeEventTypes** *(list) --* Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration. * *(string) --* * **ManifestServiceInteractionLog** *(dict) --* Settings for customizing what events are included in logs for interactions with the origin server. * **ExcludeEventTypes** *(list) --* Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration. * *(string) --* * **ManifestProcessingRules** *(dict) --* The configuration for manifest processing rules. Manifest processing rules enable customization of the personalized manifests created by MediaTailor. * **AdMarkerPassthrough** *(dict) --* For HLS, when set to "true", MediaTailor passes through "EXT-X-CUE-IN", "EXT-X-CUE-OUT", and "EXT-X -SPLICEPOINT-SCTE35" ad markers from the origin manifest to the MediaTailor personalized manifest. No logic is applied to these ad markers. For example, if "EXT-X-CUE-OUT" has a value of "60", but no ads are filled for that ad break, MediaTailor will not set the value to "0". * **Enabled** *(boolean) --* Enables ad marker passthrough for your configuration. * **Name** *(string) --* The identifier for the playback configuration. * **PersonalizationThresholdSeconds** *(integer) --* Defines the maximum duration of underfilled ad time (in seconds) allowed in an ad break. If the duration of underfilled ad time exceeds the personalization threshold, then the personalization of the ad break is abandoned and the underlying content is shown. This feature applies to *ad replacement* in live and VOD streams, rather than ad insertion, because it relies on an underlying content stream. For more information about ad break behavior, including ad replacement and insertion, see Ad Behavior in AWS Elemental MediaTailor. * **PlaybackConfigurationArn** *(string) --* The Amazon Resource Name (ARN) for the playback configuration. * **PlaybackEndpointPrefix** *(string) --* The URL that the player accesses to get a manifest from AWS Elemental MediaTailor. * **SessionInitializationEndpointPrefix** *(string) --* The URL that the player uses to initialize a session that uses client-side reporting. * **SlateAdUrl** *(string) --* The URL for a video asset to transcode and use to fill in time that's not used by ads. AWS Elemental MediaTailor shows the slate to fill in gaps in media content. Configuring the slate is optional for non- VPAID playback configurations. For VPAID, the slate is required because MediaTailor provides it in the slots designated for dynamic ad content. The slate must be a high-quality asset that contains both audio and video. * **Tags** *(dict) --* The tags to assign to the playback configuration. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **TranscodeProfileName** *(string) --* The name that is used to associate this playback configuration with a custom transcode profile. This overrides the dynamic transcoding defaults of MediaTailor. Use this only if you have already set up custom profiles with the help of AWS Support. * **VideoContentSourceUrl** *(string) --* The URL prefix for the parent manifest for the stream, minus the asset ID. The maximum length is 512 characters. * **AdConditioningConfiguration** *(dict) --* The setting that indicates what conditioning MediaTailor will perform on ads that the ad decision server (ADS) returns, and what priority MediaTailor uses when inserting ads. * **StreamingMediaFileConditioning** *(string) --* For ads that have media files with streaming delivery and supported file extensions, indicates what transcoding action MediaTailor takes when it first receives these ads from the ADS. "TRANSCODE" indicates that MediaTailor must transcode the ads. "NONE" indicates that you have already transcoded the ads outside of MediaTailor and don't need them transcoded as part of the ad insertion workflow. For more information about ad conditioning see Using preconditioned ads in the Elemental MediaTailor user guide. MediaTailor / Paginator / ListChannels ListChannels ************ class MediaTailor.Paginator.ListChannels paginator = client.get_paginator('list_channels') paginate(**kwargs) Creates an iterator that will paginate through responses from "MediaTailor.Client.list_channels()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max- items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'ChannelName': 'string', 'ChannelState': 'string', 'CreationTime': datetime(2015, 1, 1), 'FillerSlate': { 'SourceLocationName': 'string', 'VodSourceName': 'string' }, 'LastModifiedTime': datetime(2015, 1, 1), 'Outputs': [ { 'DashPlaylistSettings': { 'ManifestWindowSeconds': 123, 'MinBufferTimeSeconds': 123, 'MinUpdatePeriodSeconds': 123, 'SuggestedPresentationDelaySeconds': 123 }, 'HlsPlaylistSettings': { 'ManifestWindowSeconds': 123, 'AdMarkupType': [ 'DATERANGE'|'SCTE35_ENHANCED', ] }, 'ManifestName': 'string', 'PlaybackUrl': 'string', 'SourceGroup': 'string' }, ], 'PlaybackMode': 'string', 'Tags': { 'string': 'string' }, 'Tier': 'string', 'LogConfiguration': { 'LogTypes': [ 'AS_RUN', ] }, 'Audiences': [ 'string', ] }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* A list of channels that are associated with this account. * *(dict) --* The configuration parameters for a channel. For information about MediaTailor channels, see Working with channels in the *MediaTailor User Guide*. * **Arn** *(string) --* The ARN of the channel. * **ChannelName** *(string) --* The name of the channel. * **ChannelState** *(string) --* Returns the state whether the channel is running or not. * **CreationTime** *(datetime) --* The timestamp of when the channel was created. * **FillerSlate** *(dict) --* The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the "LINEAR" "PlaybackMode". MediaTailor doesn't support filler slate for channels using the "LOOP" "PlaybackMode". * **SourceLocationName** *(string) --* The name of the source location where the slate VOD source is stored. * **VodSourceName** *(string) --* The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate. * **LastModifiedTime** *(datetime) --* The timestamp of when the channel was last modified. * **Outputs** *(list) --* The channel's output properties. * *(dict) --* The output item response. * **DashPlaylistSettings** *(dict) --* DASH manifest configuration settings. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **MinBufferTimeSeconds** *(integer) --* Minimum amount of content (measured in seconds) that a player must keep available in the buffer. Minimum value: "2" seconds. Maximum value: "60" seconds. * **MinUpdatePeriodSeconds** *(integer) --* Minimum amount of time (in seconds) that the player should wait before requesting updates to the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **SuggestedPresentationDelaySeconds** *(integer) --* Amount of time (in seconds) that the player should be from the live point at the end of the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **HlsPlaylistSettings** *(dict) --* HLS manifest configuration settings. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **AdMarkupType** *(list) --* Determines the type of SCTE 35 tags to use in ad markup. Specify "DATERANGE" to use "DATERANGE" tags (for live or VOD content). Specify "SCTE35_ENHANCED" to use "EXT-X-CUE- OUT" and "EXT-X-CUE-IN" tags (for VOD content only). * *(string) --* * **ManifestName** *(string) --* The name of the manifest for the channel that will appear in the channel output's playback URL. * **PlaybackUrl** *(string) --* The URL used for playback by content players. * **SourceGroup** *(string) --* A string used to associate a package configuration source group with a channel output. * **PlaybackMode** *(string) --* The type of playback mode for this channel. "LINEAR" - Programs play back-to-back only once. "LOOP" - Programs play back-to-back in an endless loop. When the last program in the schedule plays, playback loops back to the first program in the schedule. * **Tags** *(dict) --* The tags to assign to the channel. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **Tier** *(string) --* The tier for this channel. STANDARD tier channels can contain live programs. * **LogConfiguration** *(dict) --* The log configuration. * **LogTypes** *(list) --* The log types. * *(string) --* * **Audiences** *(list) --* The list of audiences defined in channel. * *(string) --* MediaTailor / Paginator / ListSourceLocations ListSourceLocations ******************* class MediaTailor.Paginator.ListSourceLocations paginator = client.get_paginator('list_source_locations') paginate(**kwargs) Creates an iterator that will paginate through responses from "MediaTailor.Client.list_source_locations()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max- items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'AccessConfiguration': { 'AccessType': 'S3_SIGV4'|'SECRETS_MANAGER_ACCESS_TOKEN'|'AUTODETECT_SIGV4', 'SecretsManagerAccessTokenConfiguration': { 'HeaderName': 'string', 'SecretArn': 'string', 'SecretStringKey': 'string' } }, 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'DefaultSegmentDeliveryConfiguration': { 'BaseUrl': 'string' }, 'HttpConfiguration': { 'BaseUrl': 'string' }, 'LastModifiedTime': datetime(2015, 1, 1), 'SegmentDeliveryConfigurations': [ { 'BaseUrl': 'string', 'Name': 'string' }, ], 'SourceLocationName': 'string', 'Tags': { 'string': 'string' } }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* A list of source locations. * *(dict) --* A source location is a container for sources. For more information about source locations, see Working with source locations in the *MediaTailor User Guide*. * **AccessConfiguration** *(dict) --* The access configuration for the source location. * **AccessType** *(string) --* The type of authentication used to access content from "HttpConfiguration::BaseUrl" on your source location. "S3_SIGV4" - AWS Signature Version 4 authentication for Amazon S3 hosted virtual-style access. If your source location base URL is an Amazon S3 bucket, MediaTailor can use AWS Signature Version 4 (SigV4) authentication to access the bucket where your source content is stored. Your MediaTailor source location baseURL must follow the S3 virtual hosted- style request URL format. For example, https ://bucket-name.s3.Region.amazonaws.com/key-name. Before you can use "S3_SIGV4", you must meet these requirements: * You must allow MediaTailor to access your S3 bucket by granting mediatailor.amazonaws.com principal access in IAM. For information about configuring access in IAM, see Access management in the IAM User Guide. * The mediatailor.amazonaws.com service principal must have permissions to read all top level manifests referenced by the VodSource packaging configurations. * The caller of the API must have s3:GetObject IAM permissions to read all top level manifests referenced by your MediaTailor VodSource packaging configurations. "AUTODETECT_SIGV4" - AWS Signature Version 4 authentication for a set of supported services: MediaPackage Version 2 and Amazon S3 hosted virtual-style access. If your source location base URL is a MediaPackage Version 2 endpoint or an Amazon S3 bucket, MediaTailor can use AWS Signature Version 4 (SigV4) authentication to access the resource where your source content is stored. Before you can use "AUTODETECT_SIGV4" with a MediaPackage Version 2 endpoint, you must meet these requirements: * You must grant MediaTailor access to your MediaPackage endpoint by granting "mediatailor.amazonaws.com" principal access in an Origin Access policy on the endpoint. * Your MediaTailor source location base URL must be a MediaPackage V2 endpoint. * The caller of the API must have "mediapackagev2:GetObject" IAM permissions to read all top level manifests referenced by the MediaTailor source packaging configurations. Before you can use "AUTODETECT_SIGV4" with an Amazon S3 bucket, you must meet these requirements: * You must grant MediaTailor access to your S3 bucket by granting "mediatailor.amazonaws.com" principal access in IAM. For more information about configuring access in IAM, see Access management in the *IAM User Guide.*. * The "mediatailor.amazonaws.com" service principal must have permissions to read all top-level manifests referenced by the "VodSource" packaging configurations. * The caller of the API must have "s3:GetObject" IAM permissions to read all top level manifests referenced by your MediaTailor "VodSource" packaging configurations. * **SecretsManagerAccessTokenConfiguration** *(dict) --* AWS Secrets Manager access token configuration parameters. * **HeaderName** *(string) --* The name of the HTTP header used to supply the access token in requests to the source location. * **SecretArn** *(string) --* The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains the access token. * **SecretStringKey** *(string) --* The AWS Secrets Manager SecretString key associated with the access token. MediaTailor uses the key to look up SecretString key and value pair containing the access token. * **Arn** *(string) --* The ARN of the SourceLocation. * **CreationTime** *(datetime) --* The timestamp that indicates when the source location was created. * **DefaultSegmentDeliveryConfiguration** *(dict) --* The default segment delivery configuration. * **BaseUrl** *(string) --* The hostname of the server that will be used to serve segments. This string must include the protocol, such as **https://**. * **HttpConfiguration** *(dict) --* The HTTP configuration for the source location. * **BaseUrl** *(string) --* The base URL for the source location host server. This string must include the protocol, such as **https://**. * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the source location was last modified. * **SegmentDeliveryConfigurations** *(list) --* The segment delivery configurations for the source location. * *(dict) --* The segment delivery configuration settings. * **BaseUrl** *(string) --* The base URL of the host or path of the segment delivery server that you're using to serve segments. This is typically a content delivery network (CDN). The URL can be absolute or relative. To use an absolute URL include the protocol, such as "https://example.com/some/path". To use a relative URL specify the relative path, such as "/some/path*". * **Name** *(string) --* A unique identifier used to distinguish between multiple segment delivery configurations in a source location. * **SourceLocationName** *(string) --* The name of the source location. * **Tags** *(dict) --* The tags assigned to the source location. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* MediaTailor / Paginator / ListAlerts ListAlerts ********** class MediaTailor.Paginator.ListAlerts paginator = client.get_paginator('list_alerts') paginate(**kwargs) Creates an iterator that will paginate through responses from "MediaTailor.Client.list_alerts()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( ResourceArn='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **ResourceArn** (*string*) -- **[REQUIRED]** The Amazon Resource Name (ARN) of the resource. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'AlertCode': 'string', 'AlertMessage': 'string', 'LastModifiedTime': datetime(2015, 1, 1), 'RelatedResourceArns': [ 'string', ], 'ResourceArn': 'string', 'Category': 'SCHEDULING_ERROR'|'PLAYBACK_WARNING'|'INFO' }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* A list of alerts that are associated with this resource. * *(dict) --* Alert configuration parameters. * **AlertCode** *(string) --* The code for the alert. For example, "NOT_PROCESSED". * **AlertMessage** *(string) --* If an alert is generated for a resource, an explanation of the reason for the alert. * **LastModifiedTime** *(datetime) --* The timestamp when the alert was last modified. * **RelatedResourceArns** *(list) --* The Amazon Resource Names (ARNs) related to this alert. * *(string) --* * **ResourceArn** *(string) --* The Amazon Resource Name (ARN) of the resource. * **Category** *(string) --* The category that MediaTailor assigns to the alert. MediaTailor / Paginator / GetChannelSchedule GetChannelSchedule ****************** class MediaTailor.Paginator.GetChannelSchedule paginator = client.get_paginator('get_channel_schedule') paginate(**kwargs) Creates an iterator that will paginate through responses from "MediaTailor.Client.get_channel_schedule()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( ChannelName='string', DurationMinutes='string', Audience='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel associated with this Channel Schedule. * **DurationMinutes** (*string*) -- The duration in minutes of the channel schedule. * **Audience** (*string*) -- The single audience for GetChannelScheduleRequest. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'ApproximateDurationSeconds': 123, 'ApproximateStartTime': datetime(2015, 1, 1), 'Arn': 'string', 'ChannelName': 'string', 'LiveSourceName': 'string', 'ProgramName': 'string', 'ScheduleAdBreaks': [ { 'ApproximateDurationSeconds': 123, 'ApproximateStartTime': datetime(2015, 1, 1), 'SourceLocationName': 'string', 'VodSourceName': 'string' }, ], 'ScheduleEntryType': 'PROGRAM'|'FILLER_SLATE'|'ALTERNATE_MEDIA', 'SourceLocationName': 'string', 'VodSourceName': 'string', 'Audiences': [ 'string', ] }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* A list of schedule entries for the channel. * *(dict) --* The properties for a schedule. * **ApproximateDurationSeconds** *(integer) --* The approximate duration of this program, in seconds. * **ApproximateStartTime** *(datetime) --* The approximate time that the program will start playing. * **Arn** *(string) --* The ARN of the program. * **ChannelName** *(string) --* The name of the channel that uses this schedule. * **LiveSourceName** *(string) --* The name of the live source used for the program. * **ProgramName** *(string) --* The name of the program. * **ScheduleAdBreaks** *(list) --* The schedule's ad break properties. * *(dict) --* The schedule's ad break properties. * **ApproximateDurationSeconds** *(integer) --* The approximate duration of the ad break, in seconds. * **ApproximateStartTime** *(datetime) --* The approximate time that the ad will start playing. * **SourceLocationName** *(string) --* The name of the source location containing the VOD source used for the ad break. * **VodSourceName** *(string) --* The name of the VOD source used for the ad break. * **ScheduleEntryType** *(string) --* The type of schedule entry. * **SourceLocationName** *(string) --* The name of the source location. * **VodSourceName** *(string) --* The name of the VOD source. * **Audiences** *(list) --* The list of audiences defined in ScheduleEntry. * *(string) --* MediaTailor / Paginator / ListPrefetchSchedules ListPrefetchSchedules ********************* class MediaTailor.Paginator.ListPrefetchSchedules paginator = client.get_paginator('list_prefetch_schedules') paginate(**kwargs) Creates an iterator that will paginate through responses from "MediaTailor.Client.list_prefetch_schedules()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( PlaybackConfigurationName='string', ScheduleType='SINGLE'|'RECURRING'|'ALL', StreamId='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **PlaybackConfigurationName** (*string*) -- **[REQUIRED]** Retrieves the prefetch schedule(s) for a specific playback configuration. * **ScheduleType** (*string*) -- The type of prefetch schedules that you want to list. "SINGLE" indicates that you want to list the configured single prefetch schedules. "RECURRING" indicates that you want to list the configured recurring prefetch schedules. "ALL" indicates that you want to list all configured prefetch schedules. * **StreamId** (*string*) -- An optional filtering parameter whereby MediaTailor filters the prefetch schedules to include only specific streams. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'Consumption': { 'AvailMatchingCriteria': [ { 'DynamicVariable': 'string', 'Operator': 'EQUALS' }, ], 'EndTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1) }, 'Name': 'string', 'PlaybackConfigurationName': 'string', 'Retrieval': { 'DynamicVariables': { 'string': 'string' }, 'EndTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1), 'TrafficShapingType': 'RETRIEVAL_WINDOW', 'TrafficShapingRetrievalWindow': { 'RetrievalWindowDurationSeconds': 123 } }, 'ScheduleType': 'SINGLE'|'RECURRING', 'RecurringPrefetchConfiguration': { 'StartTime': datetime(2015, 1, 1), 'EndTime': datetime(2015, 1, 1), 'RecurringConsumption': { 'RetrievedAdExpirationSeconds': 123, 'AvailMatchingCriteria': [ { 'DynamicVariable': 'string', 'Operator': 'EQUALS' }, ] }, 'RecurringRetrieval': { 'DynamicVariables': { 'string': 'string' }, 'DelayAfterAvailEndSeconds': 123, 'TrafficShapingType': 'RETRIEVAL_WINDOW', 'TrafficShapingRetrievalWindow': { 'RetrievalWindowDurationSeconds': 123 } } }, 'StreamId': 'string' }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* Lists the prefetch schedules. An empty "Items" list doesn't mean there aren't more items to fetch, just that that page was empty. * *(dict) --* A prefetch schedule allows you to tell MediaTailor to fetch and prepare certain ads before an ad break happens. For more information about ad prefetching, see Using ad prefetching in the *MediaTailor User Guide*. * **Arn** *(string) --* The Amazon Resource Name (ARN) of the prefetch schedule. * **Consumption** *(dict) --* Consumption settings determine how, and when, MediaTailor places the prefetched ads into ad breaks for single prefetch schedules. Ad consumption occurs within a span of time that you define, called a *consumption window*. You can designate which ad breaks that MediaTailor fills with prefetch ads by setting avail matching criteria. * **AvailMatchingCriteria** *(list) --* If you only want MediaTailor to insert prefetched ads into avails (ad breaks) that match specific dynamic variables, such as "scte.event_id", set the avail matching criteria. * *(dict) --* MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into. As an example, let's say that you set "DynamicVariable" to "scte.event_id" and "Operator" to "EQUALS", and your playback configuration has an ADS URL of "https://my.ads. server.com/path?&podId=[scte.avail_num]&event=[s cte.event_id]&duration=[session.avail_duration_s ecs]". And the prefetch request to the ADS contains these values "https://my.ads.server.com/path?&podId=3&event =my-awesome-event&duration=30". MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of "my- awesome-event", since it must match the event id that MediaTailor uses to query the ADS. You can specify up to five "AvailMatchingCriteria". If you specify multiple "AvailMatchingCriteria", MediaTailor combines them to match using a logical "AND". You can model logical "OR" combinations by creating multiple prefetch schedules. * **DynamicVariable** *(string) --* The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the *MediaTailor User Guide*. You can include up to 100 dynamic variables. * **Operator** *(string) --* For the "DynamicVariable" specified in "AvailMatchingCriteria", the Operator that is used for the comparison. * **EndTime** *(datetime) --* The time when MediaTailor no longer considers the prefetched ads for use in an ad break. MediaTailor automatically deletes prefetch schedules no less than seven days after the end time. If you'd like to manually delete the prefetch schedule, you can call "DeletePrefetchSchedule". * **StartTime** *(datetime) --* The time when prefetched ads are considered for use in an ad break. If you don't specify "StartTime", the prefetched ads are available after MediaTailor retrieves them from the ad decision server. * **Name** *(string) --* The name of the prefetch schedule. The name must be unique among all prefetch schedules that are associated with the specified playback configuration. * **PlaybackConfigurationName** *(string) --* The name of the playback configuration to create the prefetch schedule for. * **Retrieval** *(dict) --* A complex type that contains settings for prefetch retrieval from the ad decision server (ADS). * **DynamicVariables** *(dict) --* The dynamic variables to use for substitution during prefetch requests to the ad decision server (ADS). You initially configure dynamic variables for the ADS URL when you set up your playback configuration. When you specify "DynamicVariables" for prefetch retrieval, MediaTailor includes the dynamic variables in the request to the ADS. * *(string) --* * *(string) --* * **EndTime** *(datetime) --* The time when prefetch retrieval ends for the ad break. Prefetching will be attempted for manifest requests that occur at or before this time. * **StartTime** *(datetime) --* The time when prefetch retrievals can start for this break. Ad prefetching will be attempted for manifest requests that occur at or after this time. Defaults to the current time. If not specified, the prefetch retrieval starts as soon as possible. * **TrafficShapingType** *(string) --* Indicates if this configuration uses a retrieval window for traffic shaping and limiting the number of requests to the ADS at one time. * **TrafficShapingRetrievalWindow** *(dict) --* Configuration for spreading ADS traffic across a set window instead of sending ADS requests for all sessions at the same time. * **RetrievalWindowDurationSeconds** *(integer) --* The amount of time, in seconds, that MediaTailor spreads prefetch requests to the ADS. * **ScheduleType** *(string) --* The frequency that MediaTailor creates prefetch schedules. "SINGLE" indicates that this schedule applies to one ad break. "RECURRING" indicates that MediaTailor automatically creates a schedule for each ad avail in a live event. For more information about the prefetch types and when you might use each, see Prefetching ads in Elemental MediaTailor. * **RecurringPrefetchConfiguration** *(dict) --* The settings that determine how and when MediaTailor prefetches ads and inserts them into ad breaks. * **StartTime** *(datetime) --* The start time for the window that MediaTailor prefetches and inserts ads in a live event. * **EndTime** *(datetime) --* The end time for the window that MediaTailor prefetches and inserts ads in a live event. * **RecurringConsumption** *(dict) --* The settings that determine how and when MediaTailor places prefetched ads into upcoming ad breaks for recurring prefetch scedules. * **RetrievedAdExpirationSeconds** *(integer) --* The number of seconds that an ad is available for insertion after it was prefetched. * **AvailMatchingCriteria** *(list) --* The configuration for the dynamic variables that determine which ad breaks that MediaTailor inserts prefetched ads in. * *(dict) --* MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into. As an example, let's say that you set "DynamicVariable" to "scte.event_id" and "Operator" to "EQUALS", and your playback configuration has an ADS URL of "https://my.ad s.server.com/path?&podId=[scte.avail_num]&even t=[scte.event_id]&duration=[session.avail_dura tion_secs]". And the prefetch request to the ADS contains these values "https://my.ads.server.com/path?&podId=3&event =my-awesome-event&duration=30". MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of "my-awesome-event", since it must match the event id that MediaTailor uses to query the ADS. You can specify up to five "AvailMatchingCriteria". If you specify multiple "AvailMatchingCriteria", MediaTailor combines them to match using a logical "AND". You can model logical "OR" combinations by creating multiple prefetch schedules. * **DynamicVariable** *(string) --* The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the *MediaTailor User Guide*. You can include up to 100 dynamic variables. * **Operator** *(string) --* For the "DynamicVariable" specified in "AvailMatchingCriteria", the Operator that is used for the comparison. * **RecurringRetrieval** *(dict) --* The configuration for prefetch ad retrieval from the ADS. * **DynamicVariables** *(dict) --* The dynamic variables to use for substitution during prefetch requests to the ADS. * *(string) --* * *(string) --* * **DelayAfterAvailEndSeconds** *(integer) --* The number of seconds that MediaTailor waits after an ad avail before prefetching ads for the next avail. If not set, the default is 0 (no delay). * **TrafficShapingType** *(string) --* Indicates if this configuration uses a retrieval window for traffic shaping and limiting the number of requests to the ADS at one time. * **TrafficShapingRetrievalWindow** *(dict) --* Configuration for spreading ADS traffic across a set window instead of sending ADS requests for all sessions at the same time. * **RetrievalWindowDurationSeconds** *(integer) --* The amount of time, in seconds, that MediaTailor spreads prefetch requests to the ADS. * **StreamId** *(string) --* An optional stream identifier that you can specify in order to prefetch for multiple streams that use the same playback configuration. MediaTailor / Paginator / ListLiveSources ListLiveSources *************** class MediaTailor.Paginator.ListLiveSources paginator = client.get_paginator('list_live_sources') paginate(**kwargs) Creates an iterator that will paginate through responses from "MediaTailor.Client.list_live_sources()". See also: AWS API Documentation **Request Syntax** response_iterator = paginator.paginate( SourceLocationName='string', PaginationConfig={ 'MaxItems': 123, 'PageSize': 123, 'StartingToken': 'string' } ) Parameters: * **SourceLocationName** (*string*) -- **[REQUIRED]** The name of the source location associated with this Live Sources list. * **PaginationConfig** (*dict*) -- A dictionary that provides parameters to control pagination. * **MaxItems** *(integer) --* The total number of items to return. If the total number of items available is more than the value specified in max-items then a "NextToken" will be provided in the output that you can use to resume pagination. * **PageSize** *(integer) --* The size of each page. * **StartingToken** *(string) --* A token to specify where to start paginating. This is the "NextToken" from a previous response. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'HttpPackageConfigurations': [ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], 'LastModifiedTime': datetime(2015, 1, 1), 'LiveSourceName': 'string', 'SourceLocationName': 'string', 'Tags': { 'string': 'string' } }, ], } **Response Structure** * *(dict) --* * **Items** *(list) --* Lists the live sources. * *(dict) --* Live source configuration parameters. * **Arn** *(string) --* The ARN for the live source. * **CreationTime** *(datetime) --* The timestamp that indicates when the live source was created. * **HttpPackageConfigurations** *(list) --* The HTTP package configurations for the live source. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the live source was last modified. * **LiveSourceName** *(string) --* The name that's used to refer to a live source. * **SourceLocationName** *(string) --* The name of the source location. * **Tags** *(dict) --* The tags assigned to the live source. Tags are key- value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* MediaTailor / Client / delete_source_location delete_source_location ********************** MediaTailor.Client.delete_source_location(**kwargs) Deletes a source location. A source location is a container for sources. For more information about source locations, see Working with source locations in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.delete_source_location( SourceLocationName='string' ) Parameters: **SourceLocationName** (*string*) -- **[REQUIRED]** The name of the source location. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* MediaTailor / Client / get_paginator get_paginator ************* MediaTailor.Client.get_paginator(operation_name) Create a paginator for an operation. Parameters: **operation_name** (*string*) -- The operation name. This is the same name as the method name on the client. For example, if the method name is "create_foo", and you'd normally invoke the operation as "client.create_foo(**kwargs)", if the "create_foo" operation can be paginated, you can use the call "client.get_paginator("create_foo")". Raises: **OperationNotPageableError** -- Raised if the operation is not pageable. You can use the "client.can_paginate" method to check if an operation is pageable. Return type: "botocore.paginate.Paginator" Returns: A paginator object. MediaTailor / Client / create_prefetch_schedule create_prefetch_schedule ************************ MediaTailor.Client.create_prefetch_schedule(**kwargs) Creates a prefetch schedule for a playback configuration. A prefetch schedule allows you to tell MediaTailor to fetch and prepare certain ads before an ad break happens. For more information about ad prefetching, see Using ad prefetching in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.create_prefetch_schedule( Consumption={ 'AvailMatchingCriteria': [ { 'DynamicVariable': 'string', 'Operator': 'EQUALS' }, ], 'EndTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1) }, Name='string', PlaybackConfigurationName='string', Retrieval={ 'DynamicVariables': { 'string': 'string' }, 'EndTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1), 'TrafficShapingType': 'RETRIEVAL_WINDOW', 'TrafficShapingRetrievalWindow': { 'RetrievalWindowDurationSeconds': 123 } }, RecurringPrefetchConfiguration={ 'StartTime': datetime(2015, 1, 1), 'EndTime': datetime(2015, 1, 1), 'RecurringConsumption': { 'RetrievedAdExpirationSeconds': 123, 'AvailMatchingCriteria': [ { 'DynamicVariable': 'string', 'Operator': 'EQUALS' }, ] }, 'RecurringRetrieval': { 'DynamicVariables': { 'string': 'string' }, 'DelayAfterAvailEndSeconds': 123, 'TrafficShapingType': 'RETRIEVAL_WINDOW', 'TrafficShapingRetrievalWindow': { 'RetrievalWindowDurationSeconds': 123 } } }, ScheduleType='SINGLE'|'RECURRING', StreamId='string' ) Parameters: * **Consumption** (*dict*) -- The configuration settings for how and when MediaTailor consumes prefetched ads from the ad decision server for single prefetch schedules. Each consumption configuration contains an end time and an optional start time that define the *consumption window*. Prefetch schedules automatically expire no earlier than seven days after the end time. * **AvailMatchingCriteria** *(list) --* If you only want MediaTailor to insert prefetched ads into avails (ad breaks) that match specific dynamic variables, such as "scte.event_id", set the avail matching criteria. * *(dict) --* MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into. As an example, let's say that you set "DynamicVariable" to "scte.event_id" and "Operator" to "EQUALS", and your playback configuration has an ADS URL of "https://my.ads. server.com/path?&podId=[scte.avail_num]&event=[scte.event _id]&duration=[session.avail_duration_secs]". And the prefetch request to the ADS contains these values "https://my.ads.server.com/path?&podId=3&event=my-awesome- event&duration=30". MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of "my-awesome-event", since it must match the event id that MediaTailor uses to query the ADS. You can specify up to five "AvailMatchingCriteria". If you specify multiple "AvailMatchingCriteria", MediaTailor combines them to match using a logical "AND". You can model logical "OR" combinations by creating multiple prefetch schedules. * **DynamicVariable** *(string) --* **[REQUIRED]** The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the *MediaTailor User Guide*. You can include up to 100 dynamic variables. * **Operator** *(string) --* **[REQUIRED]** For the "DynamicVariable" specified in "AvailMatchingCriteria", the Operator that is used for the comparison. * **EndTime** *(datetime) --* **[REQUIRED]** The time when MediaTailor no longer considers the prefetched ads for use in an ad break. MediaTailor automatically deletes prefetch schedules no less than seven days after the end time. If you'd like to manually delete the prefetch schedule, you can call "DeletePrefetchSchedule". * **StartTime** *(datetime) --* The time when prefetched ads are considered for use in an ad break. If you don't specify "StartTime", the prefetched ads are available after MediaTailor retrieves them from the ad decision server. * **Name** (*string*) -- **[REQUIRED]** The name to assign to the schedule request. * **PlaybackConfigurationName** (*string*) -- **[REQUIRED]** The name to assign to the playback configuration. * **Retrieval** (*dict*) -- The configuration settings for retrieval of prefetched ads from the ad decision server. Only one set of prefetched ads will be retrieved and subsequently consumed for each ad break. * **DynamicVariables** *(dict) --* The dynamic variables to use for substitution during prefetch requests to the ad decision server (ADS). You initially configure dynamic variables for the ADS URL when you set up your playback configuration. When you specify "DynamicVariables" for prefetch retrieval, MediaTailor includes the dynamic variables in the request to the ADS. * *(string) --* * *(string) --* * **EndTime** *(datetime) --* **[REQUIRED]** The time when prefetch retrieval ends for the ad break. Prefetching will be attempted for manifest requests that occur at or before this time. * **StartTime** *(datetime) --* The time when prefetch retrievals can start for this break. Ad prefetching will be attempted for manifest requests that occur at or after this time. Defaults to the current time. If not specified, the prefetch retrieval starts as soon as possible. * **TrafficShapingType** *(string) --* Indicates if this configuration uses a retrieval window for traffic shaping and limiting the number of requests to the ADS at one time. * **TrafficShapingRetrievalWindow** *(dict) --* Configuration for spreading ADS traffic across a set window instead of sending ADS requests for all sessions at the same time. * **RetrievalWindowDurationSeconds** *(integer) --* The amount of time, in seconds, that MediaTailor spreads prefetch requests to the ADS. * **RecurringPrefetchConfiguration** (*dict*) -- The configuration that defines how and when MediaTailor performs ad prefetching in a live event. * **StartTime** *(datetime) --* The start time for the window that MediaTailor prefetches and inserts ads in a live event. * **EndTime** *(datetime) --* **[REQUIRED]** The end time for the window that MediaTailor prefetches and inserts ads in a live event. * **RecurringConsumption** *(dict) --* **[REQUIRED]** The settings that determine how and when MediaTailor places prefetched ads into upcoming ad breaks for recurring prefetch scedules. * **RetrievedAdExpirationSeconds** *(integer) --* The number of seconds that an ad is available for insertion after it was prefetched. * **AvailMatchingCriteria** *(list) --* The configuration for the dynamic variables that determine which ad breaks that MediaTailor inserts prefetched ads in. * *(dict) --* MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into. As an example, let's say that you set "DynamicVariable" to "scte.event_id" and "Operator" to "EQUALS", and your playback configuration has an ADS URL of "https://my.ad s.server.com/path?&podId=[scte.avail_num]&event=[scte.e vent_id]&duration=[session.avail_duration_secs]". And the prefetch request to the ADS contains these values "https://my.ads.server.com/path?&podId=3&event=my- awesome-event&duration=30". MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of "my-awesome-event", since it must match the event id that MediaTailor uses to query the ADS. You can specify up to five "AvailMatchingCriteria". If you specify multiple "AvailMatchingCriteria", MediaTailor combines them to match using a logical "AND". You can model logical "OR" combinations by creating multiple prefetch schedules. * **DynamicVariable** *(string) --* **[REQUIRED]** The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the *MediaTailor User Guide*. You can include up to 100 dynamic variables. * **Operator** *(string) --* **[REQUIRED]** For the "DynamicVariable" specified in "AvailMatchingCriteria", the Operator that is used for the comparison. * **RecurringRetrieval** *(dict) --* **[REQUIRED]** The configuration for prefetch ad retrieval from the ADS. * **DynamicVariables** *(dict) --* The dynamic variables to use for substitution during prefetch requests to the ADS. * *(string) --* * *(string) --* * **DelayAfterAvailEndSeconds** *(integer) --* The number of seconds that MediaTailor waits after an ad avail before prefetching ads for the next avail. If not set, the default is 0 (no delay). * **TrafficShapingType** *(string) --* Indicates if this configuration uses a retrieval window for traffic shaping and limiting the number of requests to the ADS at one time. * **TrafficShapingRetrievalWindow** *(dict) --* Configuration for spreading ADS traffic across a set window instead of sending ADS requests for all sessions at the same time. * **RetrievalWindowDurationSeconds** *(integer) --* The amount of time, in seconds, that MediaTailor spreads prefetch requests to the ADS. * **ScheduleType** (*string*) -- The frequency that MediaTailor creates prefetch schedules. "SINGLE" indicates that this schedule applies to one ad break. "RECURRING" indicates that MediaTailor automatically creates a schedule for each ad avail in a live event. For more information about the prefetch types and when you might use each, see Prefetching ads in Elemental MediaTailor. * **StreamId** (*string*) -- An optional stream identifier that MediaTailor uses to prefetch ads for multiple streams that use the same playback configuration. If "StreamId" is specified, MediaTailor returns all of the prefetch schedules with an exact match on "StreamId". If not specified, MediaTailor returns all of the prefetch schedules for the playback configuration, regardless of "StreamId". Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'Consumption': { 'AvailMatchingCriteria': [ { 'DynamicVariable': 'string', 'Operator': 'EQUALS' }, ], 'EndTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1) }, 'Name': 'string', 'PlaybackConfigurationName': 'string', 'Retrieval': { 'DynamicVariables': { 'string': 'string' }, 'EndTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1), 'TrafficShapingType': 'RETRIEVAL_WINDOW', 'TrafficShapingRetrievalWindow': { 'RetrievalWindowDurationSeconds': 123 } }, 'RecurringPrefetchConfiguration': { 'StartTime': datetime(2015, 1, 1), 'EndTime': datetime(2015, 1, 1), 'RecurringConsumption': { 'RetrievedAdExpirationSeconds': 123, 'AvailMatchingCriteria': [ { 'DynamicVariable': 'string', 'Operator': 'EQUALS' }, ] }, 'RecurringRetrieval': { 'DynamicVariables': { 'string': 'string' }, 'DelayAfterAvailEndSeconds': 123, 'TrafficShapingType': 'RETRIEVAL_WINDOW', 'TrafficShapingRetrievalWindow': { 'RetrievalWindowDurationSeconds': 123 } } }, 'ScheduleType': 'SINGLE'|'RECURRING', 'StreamId': 'string' } **Response Structure** * *(dict) --* * **Arn** *(string) --* The ARN to assign to the prefetch schedule. * **Consumption** *(dict) --* The configuration settings for how and when MediaTailor consumes prefetched ads from the ad decision server for single prefetch schedules. Each consumption configuration contains an end time and an optional start time that define the *consumption window*. Prefetch schedules automatically expire no earlier than seven days after the end time. * **AvailMatchingCriteria** *(list) --* If you only want MediaTailor to insert prefetched ads into avails (ad breaks) that match specific dynamic variables, such as "scte.event_id", set the avail matching criteria. * *(dict) --* MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into. As an example, let's say that you set "DynamicVariable" to "scte.event_id" and "Operator" to "EQUALS", and your playback configuration has an ADS URL of "https://my.ad s.server.com/path?&podId=[scte.avail_num]&event=[scte.e vent_id]&duration=[session.avail_duration_secs]". And the prefetch request to the ADS contains these values "https://my.ads.server.com/path?&podId=3&event=my- awesome-event&duration=30". MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of "my-awesome-event", since it must match the event id that MediaTailor uses to query the ADS. You can specify up to five "AvailMatchingCriteria". If you specify multiple "AvailMatchingCriteria", MediaTailor combines them to match using a logical "AND". You can model logical "OR" combinations by creating multiple prefetch schedules. * **DynamicVariable** *(string) --* The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the *MediaTailor User Guide*. You can include up to 100 dynamic variables. * **Operator** *(string) --* For the "DynamicVariable" specified in "AvailMatchingCriteria", the Operator that is used for the comparison. * **EndTime** *(datetime) --* The time when MediaTailor no longer considers the prefetched ads for use in an ad break. MediaTailor automatically deletes prefetch schedules no less than seven days after the end time. If you'd like to manually delete the prefetch schedule, you can call "DeletePrefetchSchedule". * **StartTime** *(datetime) --* The time when prefetched ads are considered for use in an ad break. If you don't specify "StartTime", the prefetched ads are available after MediaTailor retrieves them from the ad decision server. * **Name** *(string) --* The name to assign to the prefetch schedule. * **PlaybackConfigurationName** *(string) --* The name to assign to the playback configuration. * **Retrieval** *(dict) --* The configuration settings for retrieval of prefetched ads from the ad decision server. Only one set of prefetched ads will be retrieved and subsequently consumed for each ad break. * **DynamicVariables** *(dict) --* The dynamic variables to use for substitution during prefetch requests to the ad decision server (ADS). You initially configure dynamic variables for the ADS URL when you set up your playback configuration. When you specify "DynamicVariables" for prefetch retrieval, MediaTailor includes the dynamic variables in the request to the ADS. * *(string) --* * *(string) --* * **EndTime** *(datetime) --* The time when prefetch retrieval ends for the ad break. Prefetching will be attempted for manifest requests that occur at or before this time. * **StartTime** *(datetime) --* The time when prefetch retrievals can start for this break. Ad prefetching will be attempted for manifest requests that occur at or after this time. Defaults to the current time. If not specified, the prefetch retrieval starts as soon as possible. * **TrafficShapingType** *(string) --* Indicates if this configuration uses a retrieval window for traffic shaping and limiting the number of requests to the ADS at one time. * **TrafficShapingRetrievalWindow** *(dict) --* Configuration for spreading ADS traffic across a set window instead of sending ADS requests for all sessions at the same time. * **RetrievalWindowDurationSeconds** *(integer) --* The amount of time, in seconds, that MediaTailor spreads prefetch requests to the ADS. * **RecurringPrefetchConfiguration** *(dict) --* The configuration that defines how MediaTailor performs recurring prefetch. * **StartTime** *(datetime) --* The start time for the window that MediaTailor prefetches and inserts ads in a live event. * **EndTime** *(datetime) --* The end time for the window that MediaTailor prefetches and inserts ads in a live event. * **RecurringConsumption** *(dict) --* The settings that determine how and when MediaTailor places prefetched ads into upcoming ad breaks for recurring prefetch scedules. * **RetrievedAdExpirationSeconds** *(integer) --* The number of seconds that an ad is available for insertion after it was prefetched. * **AvailMatchingCriteria** *(list) --* The configuration for the dynamic variables that determine which ad breaks that MediaTailor inserts prefetched ads in. * *(dict) --* MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into. As an example, let's say that you set "DynamicVariable" to "scte.event_id" and "Operator" to "EQUALS", and your playback configuration has an ADS URL of "https://my.ads.server.com/path?&podId=[scte.a vail_num]&event=[scte.event_id]&duration=[session.ava il_duration_secs]". And the prefetch request to the ADS contains these values "https://my.ads.server.com/path?&podId=3&event=my- awesome-event&duration=30". MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of "my-awesome-event", since it must match the event id that MediaTailor uses to query the ADS. You can specify up to five "AvailMatchingCriteria". If you specify multiple "AvailMatchingCriteria", MediaTailor combines them to match using a logical "AND". You can model logical "OR" combinations by creating multiple prefetch schedules. * **DynamicVariable** *(string) --* The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the *MediaTailor User Guide*. You can include up to 100 dynamic variables. * **Operator** *(string) --* For the "DynamicVariable" specified in "AvailMatchingCriteria", the Operator that is used for the comparison. * **RecurringRetrieval** *(dict) --* The configuration for prefetch ad retrieval from the ADS. * **DynamicVariables** *(dict) --* The dynamic variables to use for substitution during prefetch requests to the ADS. * *(string) --* * *(string) --* * **DelayAfterAvailEndSeconds** *(integer) --* The number of seconds that MediaTailor waits after an ad avail before prefetching ads for the next avail. If not set, the default is 0 (no delay). * **TrafficShapingType** *(string) --* Indicates if this configuration uses a retrieval window for traffic shaping and limiting the number of requests to the ADS at one time. * **TrafficShapingRetrievalWindow** *(dict) --* Configuration for spreading ADS traffic across a set window instead of sending ADS requests for all sessions at the same time. * **RetrievalWindowDurationSeconds** *(integer) --* The amount of time, in seconds, that MediaTailor spreads prefetch requests to the ADS. * **ScheduleType** *(string) --* The frequency that MediaTailor creates prefetch schedules. "SINGLE" indicates that this schedule applies to one ad break. "RECURRING" indicates that MediaTailor automatically creates a schedule for each ad avail in a live event. * **StreamId** *(string) --* An optional stream identifier that MediaTailor uses to prefetch ads for multiple streams that use the same playback configuration. If "StreamId" is specified, MediaTailor returns all of the prefetch schedules with an exact match on "StreamId". If not specified, MediaTailor returns all of the prefetch schedules for the playback configuration, regardless of "StreamId". MediaTailor / Client / delete_channel_policy delete_channel_policy ********************* MediaTailor.Client.delete_channel_policy(**kwargs) The channel policy to delete. See also: AWS API Documentation **Request Syntax** response = client.delete_channel_policy( ChannelName='string' ) Parameters: **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel associated with this channel policy. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* MediaTailor / Client / delete_playback_configuration delete_playback_configuration ***************************** MediaTailor.Client.delete_playback_configuration(**kwargs) Deletes a playback configuration. For information about MediaTailor configurations, see Working with configurations in AWS Elemental MediaTailor. See also: AWS API Documentation **Request Syntax** response = client.delete_playback_configuration( Name='string' ) Parameters: **Name** (*string*) -- **[REQUIRED]** The name of the playback configuration. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* MediaTailor / Client / list_channels list_channels ************* MediaTailor.Client.list_channels(**kwargs) Retrieves information about the channels that are associated with the current AWS account. See also: AWS API Documentation **Request Syntax** response = client.list_channels( MaxResults=123, NextToken='string' ) Parameters: * **MaxResults** (*integer*) -- The maximum number of channels that you want MediaTailor to return in response to the current request. If there are more than "MaxResults" channels, use the value of "NextToken" in the response to get the next page of results. * **NextToken** (*string*) -- Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'ChannelName': 'string', 'ChannelState': 'string', 'CreationTime': datetime(2015, 1, 1), 'FillerSlate': { 'SourceLocationName': 'string', 'VodSourceName': 'string' }, 'LastModifiedTime': datetime(2015, 1, 1), 'Outputs': [ { 'DashPlaylistSettings': { 'ManifestWindowSeconds': 123, 'MinBufferTimeSeconds': 123, 'MinUpdatePeriodSeconds': 123, 'SuggestedPresentationDelaySeconds': 123 }, 'HlsPlaylistSettings': { 'ManifestWindowSeconds': 123, 'AdMarkupType': [ 'DATERANGE'|'SCTE35_ENHANCED', ] }, 'ManifestName': 'string', 'PlaybackUrl': 'string', 'SourceGroup': 'string' }, ], 'PlaybackMode': 'string', 'Tags': { 'string': 'string' }, 'Tier': 'string', 'LogConfiguration': { 'LogTypes': [ 'AS_RUN', ] }, 'Audiences': [ 'string', ] }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **Items** *(list) --* A list of channels that are associated with this account. * *(dict) --* The configuration parameters for a channel. For information about MediaTailor channels, see Working with channels in the *MediaTailor User Guide*. * **Arn** *(string) --* The ARN of the channel. * **ChannelName** *(string) --* The name of the channel. * **ChannelState** *(string) --* Returns the state whether the channel is running or not. * **CreationTime** *(datetime) --* The timestamp of when the channel was created. * **FillerSlate** *(dict) --* The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the "LINEAR" "PlaybackMode". MediaTailor doesn't support filler slate for channels using the "LOOP" "PlaybackMode". * **SourceLocationName** *(string) --* The name of the source location where the slate VOD source is stored. * **VodSourceName** *(string) --* The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate. * **LastModifiedTime** *(datetime) --* The timestamp of when the channel was last modified. * **Outputs** *(list) --* The channel's output properties. * *(dict) --* The output item response. * **DashPlaylistSettings** *(dict) --* DASH manifest configuration settings. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **MinBufferTimeSeconds** *(integer) --* Minimum amount of content (measured in seconds) that a player must keep available in the buffer. Minimum value: "2" seconds. Maximum value: "60" seconds. * **MinUpdatePeriodSeconds** *(integer) --* Minimum amount of time (in seconds) that the player should wait before requesting updates to the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **SuggestedPresentationDelaySeconds** *(integer) --* Amount of time (in seconds) that the player should be from the live point at the end of the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **HlsPlaylistSettings** *(dict) --* HLS manifest configuration settings. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **AdMarkupType** *(list) --* Determines the type of SCTE 35 tags to use in ad markup. Specify "DATERANGE" to use "DATERANGE" tags (for live or VOD content). Specify "SCTE35_ENHANCED" to use "EXT-X-CUE-OUT" and "EXT-X-CUE-IN" tags (for VOD content only). * *(string) --* * **ManifestName** *(string) --* The name of the manifest for the channel that will appear in the channel output's playback URL. * **PlaybackUrl** *(string) --* The URL used for playback by content players. * **SourceGroup** *(string) --* A string used to associate a package configuration source group with a channel output. * **PlaybackMode** *(string) --* The type of playback mode for this channel. "LINEAR" - Programs play back-to-back only once. "LOOP" - Programs play back-to-back in an endless loop. When the last program in the schedule plays, playback loops back to the first program in the schedule. * **Tags** *(dict) --* The tags to assign to the channel. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **Tier** *(string) --* The tier for this channel. STANDARD tier channels can contain live programs. * **LogConfiguration** *(dict) --* The log configuration. * **LogTypes** *(list) --* The log types. * *(string) --* * **Audiences** *(list) --* The list of audiences defined in channel. * *(string) --* * **NextToken** *(string) --* Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. MediaTailor / Client / list_alerts list_alerts *********** MediaTailor.Client.list_alerts(**kwargs) Lists the alerts that are associated with a MediaTailor channel assembly resource. See also: AWS API Documentation **Request Syntax** response = client.list_alerts( MaxResults=123, NextToken='string', ResourceArn='string' ) Parameters: * **MaxResults** (*integer*) -- The maximum number of alerts that you want MediaTailor to return in response to the current request. If there are more than "MaxResults" alerts, use the value of "NextToken" in the response to get the next page of results. * **NextToken** (*string*) -- Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. * **ResourceArn** (*string*) -- **[REQUIRED]** The Amazon Resource Name (ARN) of the resource. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'AlertCode': 'string', 'AlertMessage': 'string', 'LastModifiedTime': datetime(2015, 1, 1), 'RelatedResourceArns': [ 'string', ], 'ResourceArn': 'string', 'Category': 'SCHEDULING_ERROR'|'PLAYBACK_WARNING'|'INFO' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **Items** *(list) --* A list of alerts that are associated with this resource. * *(dict) --* Alert configuration parameters. * **AlertCode** *(string) --* The code for the alert. For example, "NOT_PROCESSED". * **AlertMessage** *(string) --* If an alert is generated for a resource, an explanation of the reason for the alert. * **LastModifiedTime** *(datetime) --* The timestamp when the alert was last modified. * **RelatedResourceArns** *(list) --* The Amazon Resource Names (ARNs) related to this alert. * *(string) --* * **ResourceArn** *(string) --* The Amazon Resource Name (ARN) of the resource. * **Category** *(string) --* The category that MediaTailor assigns to the alert. * **NextToken** *(string) --* Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. MediaTailor / Client / list_vod_sources list_vod_sources **************** MediaTailor.Client.list_vod_sources(**kwargs) Lists the VOD sources contained in a source location. A source represents a piece of content. See also: AWS API Documentation **Request Syntax** response = client.list_vod_sources( MaxResults=123, NextToken='string', SourceLocationName='string' ) Parameters: * **MaxResults** (*integer*) -- The maximum number of VOD sources that you want MediaTailor to return in response to the current request. If there are more than "MaxResults" VOD sources, use the value of "NextToken" in the response to get the next page of results. * **NextToken** (*string*) -- Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. * **SourceLocationName** (*string*) -- **[REQUIRED]** The name of the source location associated with this VOD Source list. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'HttpPackageConfigurations': [ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], 'LastModifiedTime': datetime(2015, 1, 1), 'SourceLocationName': 'string', 'Tags': { 'string': 'string' }, 'VodSourceName': 'string' }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **Items** *(list) --* Lists the VOD sources. * *(dict) --* VOD source configuration parameters. * **Arn** *(string) --* The ARN for the VOD source. * **CreationTime** *(datetime) --* The timestamp that indicates when the VOD source was created. * **HttpPackageConfigurations** *(list) --* The HTTP package configurations for the VOD source. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the VOD source was last modified. * **SourceLocationName** *(string) --* The name of the source location that the VOD source is associated with. * **Tags** *(dict) --* The tags assigned to the VOD source. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **VodSourceName** *(string) --* The name of the VOD source. * **NextToken** *(string) --* Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. MediaTailor / Client / can_paginate can_paginate ************ MediaTailor.Client.can_paginate(operation_name) Check if an operation can be paginated. Parameters: **operation_name** (*string*) -- The operation name. This is the same name as the method name on the client. For example, if the method name is "create_foo", and you'd normally invoke the operation as "client.create_foo(**kwargs)", if the "create_foo" operation can be paginated, you can use the call "client.get_paginator("create_foo")". Returns: "True" if the operation can be paginated, "False" otherwise. MediaTailor / Client / create_source_location create_source_location ********************** MediaTailor.Client.create_source_location(**kwargs) Creates a source location. A source location is a container for sources. For more information about source locations, see Working with source locations in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.create_source_location( AccessConfiguration={ 'AccessType': 'S3_SIGV4'|'SECRETS_MANAGER_ACCESS_TOKEN'|'AUTODETECT_SIGV4', 'SecretsManagerAccessTokenConfiguration': { 'HeaderName': 'string', 'SecretArn': 'string', 'SecretStringKey': 'string' } }, DefaultSegmentDeliveryConfiguration={ 'BaseUrl': 'string' }, HttpConfiguration={ 'BaseUrl': 'string' }, SegmentDeliveryConfigurations=[ { 'BaseUrl': 'string', 'Name': 'string' }, ], SourceLocationName='string', Tags={ 'string': 'string' } ) Parameters: * **AccessConfiguration** (*dict*) -- Access configuration parameters. Configures the type of authentication used to access content from your source location. * **AccessType** *(string) --* The type of authentication used to access content from "HttpConfiguration::BaseUrl" on your source location. "S3_SIGV4" - AWS Signature Version 4 authentication for Amazon S3 hosted virtual-style access. If your source location base URL is an Amazon S3 bucket, MediaTailor can use AWS Signature Version 4 (SigV4) authentication to access the bucket where your source content is stored. Your MediaTailor source location baseURL must follow the S3 virtual hosted-style request URL format. For example, https ://bucket-name.s3.Region.amazonaws.com/key-name. Before you can use "S3_SIGV4", you must meet these requirements: * You must allow MediaTailor to access your S3 bucket by granting mediatailor.amazonaws.com principal access in IAM. For information about configuring access in IAM, see Access management in the IAM User Guide. * The mediatailor.amazonaws.com service principal must have permissions to read all top level manifests referenced by the VodSource packaging configurations. * The caller of the API must have s3:GetObject IAM permissions to read all top level manifests referenced by your MediaTailor VodSource packaging configurations. "AUTODETECT_SIGV4" - AWS Signature Version 4 authentication for a set of supported services: MediaPackage Version 2 and Amazon S3 hosted virtual-style access. If your source location base URL is a MediaPackage Version 2 endpoint or an Amazon S3 bucket, MediaTailor can use AWS Signature Version 4 (SigV4) authentication to access the resource where your source content is stored. Before you can use "AUTODETECT_SIGV4" with a MediaPackage Version 2 endpoint, you must meet these requirements: * You must grant MediaTailor access to your MediaPackage endpoint by granting "mediatailor.amazonaws.com" principal access in an Origin Access policy on the endpoint. * Your MediaTailor source location base URL must be a MediaPackage V2 endpoint. * The caller of the API must have "mediapackagev2:GetObject" IAM permissions to read all top level manifests referenced by the MediaTailor source packaging configurations. Before you can use "AUTODETECT_SIGV4" with an Amazon S3 bucket, you must meet these requirements: * You must grant MediaTailor access to your S3 bucket by granting "mediatailor.amazonaws.com" principal access in IAM. For more information about configuring access in IAM, see Access management in the *IAM User Guide.*. * The "mediatailor.amazonaws.com" service principal must have permissions to read all top-level manifests referenced by the "VodSource" packaging configurations. * The caller of the API must have "s3:GetObject" IAM permissions to read all top level manifests referenced by your MediaTailor "VodSource" packaging configurations. * **SecretsManagerAccessTokenConfiguration** *(dict) --* AWS Secrets Manager access token configuration parameters. * **HeaderName** *(string) --* The name of the HTTP header used to supply the access token in requests to the source location. * **SecretArn** *(string) --* The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains the access token. * **SecretStringKey** *(string) --* The AWS Secrets Manager SecretString key associated with the access token. MediaTailor uses the key to look up SecretString key and value pair containing the access token. * **DefaultSegmentDeliveryConfiguration** (*dict*) -- The optional configuration for the server that serves segments. * **BaseUrl** *(string) --* The hostname of the server that will be used to serve segments. This string must include the protocol, such as **https://**. * **HttpConfiguration** (*dict*) -- **[REQUIRED]** The source's HTTP package configurations. * **BaseUrl** *(string) --* **[REQUIRED]** The base URL for the source location host server. This string must include the protocol, such as **https://**. * **SegmentDeliveryConfigurations** (*list*) -- A list of the segment delivery configurations associated with this resource. * *(dict) --* The segment delivery configuration settings. * **BaseUrl** *(string) --* The base URL of the host or path of the segment delivery server that you're using to serve segments. This is typically a content delivery network (CDN). The URL can be absolute or relative. To use an absolute URL include the protocol, such as "https://example.com/some/path". To use a relative URL specify the relative path, such as "/some/path*". * **Name** *(string) --* A unique identifier used to distinguish between multiple segment delivery configurations in a source location. * **SourceLocationName** (*string*) -- **[REQUIRED]** The name associated with the source location. * **Tags** (*dict*) -- The tags to assign to the source location. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* Return type: dict Returns: **Response Syntax** { 'AccessConfiguration': { 'AccessType': 'S3_SIGV4'|'SECRETS_MANAGER_ACCESS_TOKEN'|'AUTODETECT_SIGV4', 'SecretsManagerAccessTokenConfiguration': { 'HeaderName': 'string', 'SecretArn': 'string', 'SecretStringKey': 'string' } }, 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'DefaultSegmentDeliveryConfiguration': { 'BaseUrl': 'string' }, 'HttpConfiguration': { 'BaseUrl': 'string' }, 'LastModifiedTime': datetime(2015, 1, 1), 'SegmentDeliveryConfigurations': [ { 'BaseUrl': 'string', 'Name': 'string' }, ], 'SourceLocationName': 'string', 'Tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **AccessConfiguration** *(dict) --* Access configuration parameters. Configures the type of authentication used to access content from your source location. * **AccessType** *(string) --* The type of authentication used to access content from "HttpConfiguration::BaseUrl" on your source location. "S3_SIGV4" - AWS Signature Version 4 authentication for Amazon S3 hosted virtual-style access. If your source location base URL is an Amazon S3 bucket, MediaTailor can use AWS Signature Version 4 (SigV4) authentication to access the bucket where your source content is stored. Your MediaTailor source location baseURL must follow the S3 virtual hosted-style request URL format. For example, https://bucket-name.s3.Region.amazonaws.com/key-name. Before you can use "S3_SIGV4", you must meet these requirements: * You must allow MediaTailor to access your S3 bucket by granting mediatailor.amazonaws.com principal access in IAM. For information about configuring access in IAM, see Access management in the IAM User Guide. * The mediatailor.amazonaws.com service principal must have permissions to read all top level manifests referenced by the VodSource packaging configurations. * The caller of the API must have s3:GetObject IAM permissions to read all top level manifests referenced by your MediaTailor VodSource packaging configurations. "AUTODETECT_SIGV4" - AWS Signature Version 4 authentication for a set of supported services: MediaPackage Version 2 and Amazon S3 hosted virtual-style access. If your source location base URL is a MediaPackage Version 2 endpoint or an Amazon S3 bucket, MediaTailor can use AWS Signature Version 4 (SigV4) authentication to access the resource where your source content is stored. Before you can use "AUTODETECT_SIGV4" with a MediaPackage Version 2 endpoint, you must meet these requirements: * You must grant MediaTailor access to your MediaPackage endpoint by granting "mediatailor.amazonaws.com" principal access in an Origin Access policy on the endpoint. * Your MediaTailor source location base URL must be a MediaPackage V2 endpoint. * The caller of the API must have "mediapackagev2:GetObject" IAM permissions to read all top level manifests referenced by the MediaTailor source packaging configurations. Before you can use "AUTODETECT_SIGV4" with an Amazon S3 bucket, you must meet these requirements: * You must grant MediaTailor access to your S3 bucket by granting "mediatailor.amazonaws.com" principal access in IAM. For more information about configuring access in IAM, see Access management in the *IAM User Guide.*. * The "mediatailor.amazonaws.com" service principal must have permissions to read all top-level manifests referenced by the "VodSource" packaging configurations. * The caller of the API must have "s3:GetObject" IAM permissions to read all top level manifests referenced by your MediaTailor "VodSource" packaging configurations. * **SecretsManagerAccessTokenConfiguration** *(dict) --* AWS Secrets Manager access token configuration parameters. * **HeaderName** *(string) --* The name of the HTTP header used to supply the access token in requests to the source location. * **SecretArn** *(string) --* The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains the access token. * **SecretStringKey** *(string) --* The AWS Secrets Manager SecretString key associated with the access token. MediaTailor uses the key to look up SecretString key and value pair containing the access token. * **Arn** *(string) --* The ARN to assign to the source location. * **CreationTime** *(datetime) --* The time the source location was created. * **DefaultSegmentDeliveryConfiguration** *(dict) --* The optional configuration for the server that serves segments. * **BaseUrl** *(string) --* The hostname of the server that will be used to serve segments. This string must include the protocol, such as **https://**. * **HttpConfiguration** *(dict) --* The source's HTTP package configurations. * **BaseUrl** *(string) --* The base URL for the source location host server. This string must include the protocol, such as **https://**. * **LastModifiedTime** *(datetime) --* The time the source location was last modified. * **SegmentDeliveryConfigurations** *(list) --* The segment delivery configurations for the source location. For information about MediaTailor configurations, see Working with configurations in AWS Elemental MediaTailor. * *(dict) --* The segment delivery configuration settings. * **BaseUrl** *(string) --* The base URL of the host or path of the segment delivery server that you're using to serve segments. This is typically a content delivery network (CDN). The URL can be absolute or relative. To use an absolute URL include the protocol, such as "https://example.com/some/path". To use a relative URL specify the relative path, such as "/some/path*". * **Name** *(string) --* A unique identifier used to distinguish between multiple segment delivery configurations in a source location. * **SourceLocationName** *(string) --* The name to assign to the source location. * **Tags** *(dict) --* The tags to assign to the source location. Tags are key- value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* MediaTailor / Client / put_channel_policy put_channel_policy ****************** MediaTailor.Client.put_channel_policy(**kwargs) Creates an IAM policy for the channel. IAM policies are used to control access to your channel. See also: AWS API Documentation **Request Syntax** response = client.put_channel_policy( ChannelName='string', Policy='string' ) Parameters: * **ChannelName** (*string*) -- **[REQUIRED]** The channel name associated with this Channel Policy. * **Policy** (*string*) -- **[REQUIRED]** Adds an IAM role that determines the permissions of your channel. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* MediaTailor / Client / update_live_source update_live_source ****************** MediaTailor.Client.update_live_source(**kwargs) Updates a live source's configuration. See also: AWS API Documentation **Request Syntax** response = client.update_live_source( HttpPackageConfigurations=[ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], LiveSourceName='string', SourceLocationName='string' ) Parameters: * **HttpPackageConfigurations** (*list*) -- **[REQUIRED]** A list of HTTP package configurations for the live source on this account. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* **[REQUIRED]** The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* **[REQUIRED]** The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* **[REQUIRED]** The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **LiveSourceName** (*string*) -- **[REQUIRED]** The name of the live source. * **SourceLocationName** (*string*) -- **[REQUIRED]** The name of the source location associated with this Live Source. Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'HttpPackageConfigurations': [ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], 'LastModifiedTime': datetime(2015, 1, 1), 'LiveSourceName': 'string', 'SourceLocationName': 'string', 'Tags': { 'string': 'string' } } **Response Structure** * *(dict) --* * **Arn** *(string) --* The Amazon Resource Name (ARN) associated with this live source. * **CreationTime** *(datetime) --* The timestamp that indicates when the live source was created. * **HttpPackageConfigurations** *(list) --* A list of HTTP package configurations for the live source on this account. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the live source was last modified. * **LiveSourceName** *(string) --* The name of the live source. * **SourceLocationName** *(string) --* The name of the source location associated with the live source. * **Tags** *(dict) --* The tags to assign to the live source. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* MediaTailor / Client / describe_program describe_program **************** MediaTailor.Client.describe_program(**kwargs) Describes a program within a channel. For information about programs, see Working with programs in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.describe_program( ChannelName='string', ProgramName='string' ) Parameters: * **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel associated with this Program. * **ProgramName** (*string*) -- **[REQUIRED]** The name of the program. Return type: dict Returns: **Response Syntax** { 'AdBreaks': [ { 'MessageType': 'SPLICE_INSERT'|'TIME_SIGNAL', 'OffsetMillis': 123, 'Slate': { 'SourceLocationName': 'string', 'VodSourceName': 'string' }, 'SpliceInsertMessage': { 'AvailNum': 123, 'AvailsExpected': 123, 'SpliceEventId': 123, 'UniqueProgramId': 123 }, 'TimeSignalMessage': { 'SegmentationDescriptors': [ { 'SegmentationEventId': 123, 'SegmentationUpidType': 123, 'SegmentationUpid': 'string', 'SegmentationTypeId': 123, 'SegmentNum': 123, 'SegmentsExpected': 123, 'SubSegmentNum': 123, 'SubSegmentsExpected': 123 }, ] }, 'AdBreakMetadata': [ { 'Key': 'string', 'Value': 'string' }, ] }, ], 'Arn': 'string', 'ChannelName': 'string', 'CreationTime': datetime(2015, 1, 1), 'LiveSourceName': 'string', 'ProgramName': 'string', 'ScheduledStartTime': datetime(2015, 1, 1), 'SourceLocationName': 'string', 'VodSourceName': 'string', 'ClipRange': { 'EndOffsetMillis': 123, 'StartOffsetMillis': 123 }, 'DurationMillis': 123, 'AudienceMedia': [ { 'Audience': 'string', 'AlternateMedia': [ { 'SourceLocationName': 'string', 'LiveSourceName': 'string', 'VodSourceName': 'string', 'ClipRange': { 'EndOffsetMillis': 123, 'StartOffsetMillis': 123 }, 'ScheduledStartTimeMillis': 123, 'AdBreaks': [ { 'MessageType': 'SPLICE_INSERT'|'TIME_SIGNAL', 'OffsetMillis': 123, 'Slate': { 'SourceLocationName': 'string', 'VodSourceName': 'string' }, 'SpliceInsertMessage': { 'AvailNum': 123, 'AvailsExpected': 123, 'SpliceEventId': 123, 'UniqueProgramId': 123 }, 'TimeSignalMessage': { 'SegmentationDescriptors': [ { 'SegmentationEventId': 123, 'SegmentationUpidType': 123, 'SegmentationUpid': 'string', 'SegmentationTypeId': 123, 'SegmentNum': 123, 'SegmentsExpected': 123, 'SubSegmentNum': 123, 'SubSegmentsExpected': 123 }, ] }, 'AdBreakMetadata': [ { 'Key': 'string', 'Value': 'string' }, ] }, ], 'DurationMillis': 123 }, ] }, ] } **Response Structure** * *(dict) --* * **AdBreaks** *(list) --* The ad break configuration settings. * *(dict) --* Ad break configuration parameters. * **MessageType** *(string) --* The SCTE-35 ad insertion type. Accepted value: "SPLICE_INSERT", "TIME_SIGNAL". * **OffsetMillis** *(integer) --* How long (in milliseconds) after the beginning of the program that an ad starts. This value must fall within 100ms of a segment boundary, otherwise the ad break will be skipped. * **Slate** *(dict) --* Ad break slate configuration. * **SourceLocationName** *(string) --* The name of the source location where the slate VOD source is stored. * **VodSourceName** *(string) --* The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate. * **SpliceInsertMessage** *(dict) --* This defines the SCTE-35 "splice_insert()" message inserted around the ad. For information about using "splice_insert()", see the SCTE-35 specficiaiton, section 9.7.3.1. * **AvailNum** *(integer) --* This is written to "splice_insert.avail_num", as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is "0". Values must be between "0" and "256", inclusive. * **AvailsExpected** *(integer) --* This is written to "splice_insert.avails_expected", as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is "0". Values must be between "0" and "256", inclusive. * **SpliceEventId** *(integer) --* This is written to "splice_insert.splice_event_id", as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is "1". * **UniqueProgramId** *(integer) --* This is written to "splice_insert.unique_program_id", as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is "0". Values must be between "0" and "256", inclusive. * **TimeSignalMessage** *(dict) --* Defines the SCTE-35 "time_signal" message inserted around the ad. Programs on a channel's schedule can be configured with one or more ad breaks. You can attach a "splice_insert" SCTE-35 message to the ad break. This message provides basic metadata about the ad break. See section 9.7.4 of the 2022 SCTE-35 specification for more information. * **SegmentationDescriptors** *(list) --* The configurations for the SCTE-35 "segmentation_descriptor" message(s) sent with the "time_signal" message. * *(dict) --* The "segmentation_descriptor" message can contain advanced metadata fields, like content identifiers, to convey a wide range of information about the ad break. MediaTailor writes the ad metadata in the egress manifest as part of the "EXT-X-DATERANGE" or "EventStream" ad marker's SCTE-35 data. "segmentation_descriptor" messages must be sent with the "time_signal" message type. See the "segmentation_descriptor()" table of the 2022 SCTE-35 specification for more information. * **SegmentationEventId** *(integer) --* The Event Identifier to assign to the "segmentation_descriptor.segmentation_event_id" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. The default value is 1. * **SegmentationUpidType** *(integer) --* The Upid Type to assign to the "segmentation_descriptor.segmentation_upid_type" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is 14. * **SegmentationUpid** *(string) --* The Upid to assign to the "segmentation_descriptor.segmentation_upid" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a hexadecimal string containing only the characters 0 though 9 and A through F. The default value is "" (an empty string). * **SegmentationTypeId** *(integer) --* The Type Identifier to assign to the "segmentation_descriptor.segmentation_type_id" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is 48. * **SegmentNum** *(integer) --* The segment number to assign to the "segmentation_descriptor.segment_num" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, inclusive. The default value is 0. * **SegmentsExpected** *(integer) --* The number of segments expected, which is assigned to the "segmentation_descriptor.segments_expectedS" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, inclusive. The default value is 0. * **SubSegmentNum** *(integer) --* The sub-segment number to assign to the "segmentation_descriptor.sub_segment_num" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The defualt value is null. * **SubSegmentsExpected** *(integer) --* The number of sub-segments expected, which is assigned to the "segmentation_descriptor.sub_segments_expected" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is null. * **AdBreakMetadata** *(list) --* Defines a list of key/value pairs that MediaTailor generates within the "EXT-X-ASSET``tag for ``SCTE35_ENHANCED" output. * *(dict) --* For "SCTE35_ENHANCED" output, defines a key and corresponding value. MediaTailor generates these pairs within the >>``<>``<>``<>``<>``<>``< Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'HttpPackageConfigurations': [ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], 'LastModifiedTime': datetime(2015, 1, 1), 'SourceLocationName': 'string', 'Tags': { 'string': 'string' }, 'VodSourceName': 'string' } **Response Structure** * *(dict) --* * **Arn** *(string) --* The ARN to assign to this VOD source. * **CreationTime** *(datetime) --* The time the VOD source was created. * **HttpPackageConfigurations** *(list) --* A list of HTTP package configuration parameters for this VOD source. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **LastModifiedTime** *(datetime) --* The time the VOD source was last modified. * **SourceLocationName** *(string) --* The name to assign to the source location for this VOD source. * **Tags** *(dict) --* The tags to assign to the VOD source. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **VodSourceName** *(string) --* The name to assign to the VOD source. MediaTailor / Client / get_waiter get_waiter ********** MediaTailor.Client.get_waiter(waiter_name) Returns an object that can wait for some condition. Parameters: **waiter_name** (*str*) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters. Returns: The specified waiter object. Return type: "botocore.waiter.Waiter" MediaTailor / Client / put_playback_configuration put_playback_configuration ************************** MediaTailor.Client.put_playback_configuration(**kwargs) Creates a playback configuration. For information about MediaTailor configurations, see Working with configurations in AWS Elemental MediaTailor. See also: AWS API Documentation **Request Syntax** response = client.put_playback_configuration( AdDecisionServerUrl='string', AvailSuppression={ 'Mode': 'OFF'|'BEHIND_LIVE_EDGE'|'AFTER_LIVE_EDGE', 'Value': 'string', 'FillPolicy': 'FULL_AVAIL_ONLY'|'PARTIAL_AVAIL' }, Bumper={ 'EndUrl': 'string', 'StartUrl': 'string' }, CdnConfiguration={ 'AdSegmentUrlPrefix': 'string', 'ContentSegmentUrlPrefix': 'string' }, ConfigurationAliases={ 'string': { 'string': 'string' } }, DashConfiguration={ 'MpdLocation': 'string', 'OriginManifestType': 'SINGLE_PERIOD'|'MULTI_PERIOD' }, InsertionMode='STITCHED_ONLY'|'PLAYER_SELECT', LivePreRollConfiguration={ 'AdDecisionServerUrl': 'string', 'MaxDurationSeconds': 123 }, ManifestProcessingRules={ 'AdMarkerPassthrough': { 'Enabled': True|False } }, Name='string', PersonalizationThresholdSeconds=123, SlateAdUrl='string', Tags={ 'string': 'string' }, TranscodeProfileName='string', VideoContentSourceUrl='string', AdConditioningConfiguration={ 'StreamingMediaFileConditioning': 'TRANSCODE'|'NONE' } ) Parameters: * **AdDecisionServerUrl** (*string*) -- The URL for the ad decision server (ADS). This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player-specific and session- specific parameters as needed when calling the ADS. Alternately, for testing you can provide a static VAST URL. The maximum length is 25,000 characters. * **AvailSuppression** (*dict*) -- The configuration for avail suppression, also known as ad suppression. For more information about ad suppression, see Ad Suppression. * **Mode** *(string) --* Sets the ad suppression mode. By default, ad suppression is off and all ad breaks are filled with ads or slate. When Mode is set to "BEHIND_LIVE_EDGE", ad suppression is active and MediaTailor won't fill ad breaks on or behind the ad suppression Value time in the manifest lookback window. When Mode is set to "AFTER_LIVE_EDGE", ad suppression is active and MediaTailor won't fill ad breaks that are within the live edge plus the avail suppression value. * **Value** *(string) --* A live edge offset time in HH:MM:SS. MediaTailor won't fill ad breaks on or behind this time in the manifest lookback window. If Value is set to 00:00:00, it is in sync with the live edge, and MediaTailor won't fill any ad breaks on or behind the live edge. If you set a Value time, MediaTailor won't fill any ad breaks on or behind this time in the manifest lookback window. For example, if you set 00:45:00, then MediaTailor will fill ad breaks that occur within 45 minutes behind the live edge, but won't fill ad breaks on or behind 45 minutes behind the live edge. * **FillPolicy** *(string) --* Defines the policy to apply to the avail suppression mode. "BEHIND_LIVE_EDGE" will always use the full avail suppression policy. "AFTER_LIVE_EDGE" mode can be used to invoke partial ad break fills when a session starts mid- break. * **Bumper** (*dict*) -- The configuration for bumpers. Bumpers are short audio or video clips that play at the start or before the end of an ad break. To learn more about bumpers, see Bumpers. * **EndUrl** *(string) --* The URL for the end bumper asset. * **StartUrl** *(string) --* The URL for the start bumper asset. * **CdnConfiguration** (*dict*) -- The configuration for using a content delivery network (CDN), like Amazon CloudFront, for content and ad segment management. * **AdSegmentUrlPrefix** *(string) --* A non-default content delivery network (CDN) to serve ad segments. By default, AWS Elemental MediaTailor uses Amazon CloudFront with default cache settings as its CDN for ad segments. To set up an alternate CDN, create a rule in your CDN for the origin ads.mediatailor.**.amazonaws.com. Then specify the rule's name in this "AdSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for ad segments. * **ContentSegmentUrlPrefix** *(string) --* A content delivery network (CDN) to cache content segments, so that content requests don’t always have to go to the origin server. First, create a rule in your CDN for the content segment origin server. Then specify the rule's name in this "ContentSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for content segments. * **ConfigurationAliases** (*dict*) -- The player parameters and aliases used as dynamic variables during session initialization. For more information, see Domain Variables. * *(string) --* The dynamic variable that has aliases. * *(dict) --* Map of aliases to the value to be used at request time. * *(string) --* * *(string) --* * **DashConfiguration** (*dict*) -- The configuration for DASH content. * **MpdLocation** *(string) --* The setting that controls whether MediaTailor includes the Location tag in DASH manifests. MediaTailor populates the Location tag with the URL for manifest update requests, to be used by players that don't support sticky redirects. Disable this if you have CDN routing rules set up for accessing MediaTailor manifests, and you are either using client-side reporting or your players support sticky HTTP redirects. Valid values are "DISABLED" and "EMT_DEFAULT". The "EMT_DEFAULT" setting enables the inclusion of the tag and is the default value. * **OriginManifestType** *(string) --* The setting that controls whether MediaTailor handles manifests from the origin server as multi-period manifests or single-period manifests. If your origin server produces single-period manifests, set this to "SINGLE_PERIOD". The default setting is "MULTI_PERIOD". For multi-period manifests, omit this setting or set it to "MULTI_PERIOD". * **InsertionMode** (*string*) -- The setting that controls whether players can use stitched or guided ad insertion. The default, "STITCHED_ONLY", forces all player sessions to use stitched (server-side) ad insertion. Choosing "PLAYER_SELECT" allows players to select either stitched or guided ad insertion at session-initialization time. The default for players that do not specify an insertion mode is stitched. * **LivePreRollConfiguration** (*dict*) -- The configuration for pre-roll ad insertion. * **AdDecisionServerUrl** *(string) --* The URL for the ad decision server (ADS) for pre-roll ads. This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player-specific and session-specific parameters as needed when calling the ADS. Alternately, for testing, you can provide a static VAST URL. The maximum length is 25,000 characters. * **MaxDurationSeconds** *(integer) --* The maximum allowed duration for the pre-roll ad avail. AWS Elemental MediaTailor won't play pre-roll ads to exceed this duration, regardless of the total duration of ads that the ADS returns. * **ManifestProcessingRules** (*dict*) -- The configuration for manifest processing rules. Manifest processing rules enable customization of the personalized manifests created by MediaTailor. * **AdMarkerPassthrough** *(dict) --* For HLS, when set to "true", MediaTailor passes through "EXT-X-CUE-IN", "EXT-X-CUE-OUT", and "EXT-X-SPLICEPOINT- SCTE35" ad markers from the origin manifest to the MediaTailor personalized manifest. No logic is applied to these ad markers. For example, if "EXT-X-CUE-OUT" has a value of "60", but no ads are filled for that ad break, MediaTailor will not set the value to "0". * **Enabled** *(boolean) --* Enables ad marker passthrough for your configuration. * **Name** (*string*) -- **[REQUIRED]** The identifier for the playback configuration. * **PersonalizationThresholdSeconds** (*integer*) -- Defines the maximum duration of underfilled ad time (in seconds) allowed in an ad break. If the duration of underfilled ad time exceeds the personalization threshold, then the personalization of the ad break is abandoned and the underlying content is shown. This feature applies to *ad replacement* in live and VOD streams, rather than ad insertion, because it relies on an underlying content stream. For more information about ad break behavior, including ad replacement and insertion, see Ad Behavior in AWS Elemental MediaTailor. * **SlateAdUrl** (*string*) -- The URL for a high-quality video asset to transcode and use to fill in time that's not used by ads. AWS Elemental MediaTailor shows the slate to fill in gaps in media content. Configuring the slate is optional for non- VPAID configurations. For VPAID, the slate is required because MediaTailor provides it in the slots that are designated for dynamic ad content. The slate must be a high-quality asset that contains both audio and video. * **Tags** (*dict*) -- The tags to assign to the playback configuration. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **TranscodeProfileName** (*string*) -- The name that is used to associate this playback configuration with a custom transcode profile. This overrides the dynamic transcoding defaults of MediaTailor. Use this only if you have already set up custom profiles with the help of AWS Support. * **VideoContentSourceUrl** (*string*) -- The URL prefix for the parent manifest for the stream, minus the asset ID. The maximum length is 512 characters. * **AdConditioningConfiguration** (*dict*) -- The setting that indicates what conditioning MediaTailor will perform on ads that the ad decision server (ADS) returns, and what priority MediaTailor uses when inserting ads. * **StreamingMediaFileConditioning** *(string) --* **[REQUIRED]** For ads that have media files with streaming delivery and supported file extensions, indicates what transcoding action MediaTailor takes when it first receives these ads from the ADS. "TRANSCODE" indicates that MediaTailor must transcode the ads. "NONE" indicates that you have already transcoded the ads outside of MediaTailor and don't need them transcoded as part of the ad insertion workflow. For more information about ad conditioning see Using preconditioned ads in the Elemental MediaTailor user guide. Return type: dict Returns: **Response Syntax** { 'AdDecisionServerUrl': 'string', 'AvailSuppression': { 'Mode': 'OFF'|'BEHIND_LIVE_EDGE'|'AFTER_LIVE_EDGE', 'Value': 'string', 'FillPolicy': 'FULL_AVAIL_ONLY'|'PARTIAL_AVAIL' }, 'Bumper': { 'EndUrl': 'string', 'StartUrl': 'string' }, 'CdnConfiguration': { 'AdSegmentUrlPrefix': 'string', 'ContentSegmentUrlPrefix': 'string' }, 'ConfigurationAliases': { 'string': { 'string': 'string' } }, 'DashConfiguration': { 'ManifestEndpointPrefix': 'string', 'MpdLocation': 'string', 'OriginManifestType': 'SINGLE_PERIOD'|'MULTI_PERIOD' }, 'HlsConfiguration': { 'ManifestEndpointPrefix': 'string' }, 'InsertionMode': 'STITCHED_ONLY'|'PLAYER_SELECT', 'LivePreRollConfiguration': { 'AdDecisionServerUrl': 'string', 'MaxDurationSeconds': 123 }, 'LogConfiguration': { 'PercentEnabled': 123, 'EnabledLoggingStrategies': [ 'VENDED_LOGS'|'LEGACY_CLOUDWATCH', ], 'AdsInteractionLog': { 'PublishOptInEventTypes': [ 'RAW_ADS_RESPONSE', ], 'ExcludeEventTypes': [ 'AD_MARKER_FOUND'|'NON_AD_MARKER_FOUND'|'MAKING_ADS_REQUEST'|'MODIFIED_TARGET_URL'|'VAST_REDIRECT'|'EMPTY_VAST_RESPONSE'|'EMPTY_VMAP_RESPONSE'|'VAST_RESPONSE'|'REDIRECTED_VAST_RESPONSE'|'FILLED_AVAIL'|'FILLED_OVERLAY_AVAIL'|'BEACON_FIRED'|'WARNING_NO_ADVERTISEMENTS'|'WARNING_VPAID_AD_DROPPED'|'WARNING_URL_VARIABLE_SUBSTITUTION_FAILED'|'ERROR_UNKNOWN'|'ERROR_UNKNOWN_HOST'|'ERROR_DISALLOWED_HOST'|'ERROR_ADS_IO'|'ERROR_ADS_TIMEOUT'|'ERROR_ADS_RESPONSE_PARSE'|'ERROR_ADS_RESPONSE_UNKNOWN_ROOT_ELEMENT'|'ERROR_ADS_INVALID_RESPONSE'|'ERROR_VAST_REDIRECT_EMPTY_RESPONSE'|'ERROR_VAST_REDIRECT_MULTIPLE_VAST'|'ERROR_VAST_REDIRECT_FAILED'|'ERROR_VAST_MISSING_MEDIAFILES'|'ERROR_VAST_MISSING_CREATIVES'|'ERROR_VAST_MISSING_OVERLAYS'|'ERROR_VAST_MISSING_IMPRESSION'|'ERROR_VAST_INVALID_VAST_AD_TAG_URI'|'ERROR_VAST_MULTIPLE_TRACKING_EVENTS'|'ERROR_VAST_MULTIPLE_LINEAR'|'ERROR_VAST_INVALID_MEDIA_FILE'|'ERROR_FIRING_BEACON_FAILED'|'ERROR_PERSONALIZATION_DISABLED'|'VOD_TIME_BASED_AVAIL_PLAN_VAST_RESPONSE_FOR_OFFSET'|'VOD_TIME_BASED_AVAIL_PLAN_SUCCESS'|'VOD_TIME_BASED_AVAIL_PLAN_WARNING_NO_ADVERTISEMENTS'|'INTERSTITIAL_VOD_SUCCESS'|'INTERSTITIAL_VOD_FAILURE', ] }, 'ManifestServiceInteractionLog': { 'ExcludeEventTypes': [ 'GENERATED_MANIFEST'|'ORIGIN_MANIFEST'|'SESSION_INITIALIZED'|'TRACKING_RESPONSE'|'CONFIG_SYNTAX_ERROR'|'CONFIG_SECURITY_ERROR'|'UNKNOWN_HOST'|'TIMEOUT_ERROR'|'CONNECTION_ERROR'|'IO_ERROR'|'UNKNOWN_ERROR'|'HOST_DISALLOWED'|'PARSING_ERROR'|'MANIFEST_ERROR'|'NO_MASTER_OR_MEDIA_PLAYLIST'|'NO_MASTER_PLAYLIST'|'NO_MEDIA_PLAYLIST'|'INCOMPATIBLE_HLS_VERSION'|'SCTE35_PARSING_ERROR'|'INVALID_SINGLE_PERIOD_DASH_MANIFEST'|'UNSUPPORTED_SINGLE_PERIOD_DASH_MANIFEST'|'LAST_PERIOD_MISSING_AUDIO'|'LAST_PERIOD_MISSING_AUDIO_WARNING'|'ERROR_ORIGIN_PREFIX_INTERPOLATION'|'ERROR_ADS_INTERPOLATION'|'ERROR_LIVE_PRE_ROLL_ADS_INTERPOLATION'|'ERROR_CDN_AD_SEGMENT_INTERPOLATION'|'ERROR_CDN_CONTENT_SEGMENT_INTERPOLATION'|'ERROR_SLATE_AD_URL_INTERPOLATION'|'ERROR_PROFILE_NAME_INTERPOLATION'|'ERROR_BUMPER_START_INTERPOLATION'|'ERROR_BUMPER_END_INTERPOLATION', ] } }, 'ManifestProcessingRules': { 'AdMarkerPassthrough': { 'Enabled': True|False } }, 'Name': 'string', 'PersonalizationThresholdSeconds': 123, 'PlaybackConfigurationArn': 'string', 'PlaybackEndpointPrefix': 'string', 'SessionInitializationEndpointPrefix': 'string', 'SlateAdUrl': 'string', 'Tags': { 'string': 'string' }, 'TranscodeProfileName': 'string', 'VideoContentSourceUrl': 'string', 'AdConditioningConfiguration': { 'StreamingMediaFileConditioning': 'TRANSCODE'|'NONE' } } **Response Structure** * *(dict) --* * **AdDecisionServerUrl** *(string) --* The URL for the ad decision server (ADS). This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player-specific and session-specific parameters as needed when calling the ADS. Alternately, for testing you can provide a static VAST URL. The maximum length is 25,000 characters. * **AvailSuppression** *(dict) --* The configuration for avail suppression, also known as ad suppression. For more information about ad suppression, see Ad Suppression. * **Mode** *(string) --* Sets the ad suppression mode. By default, ad suppression is off and all ad breaks are filled with ads or slate. When Mode is set to "BEHIND_LIVE_EDGE", ad suppression is active and MediaTailor won't fill ad breaks on or behind the ad suppression Value time in the manifest lookback window. When Mode is set to "AFTER_LIVE_EDGE", ad suppression is active and MediaTailor won't fill ad breaks that are within the live edge plus the avail suppression value. * **Value** *(string) --* A live edge offset time in HH:MM:SS. MediaTailor won't fill ad breaks on or behind this time in the manifest lookback window. If Value is set to 00:00:00, it is in sync with the live edge, and MediaTailor won't fill any ad breaks on or behind the live edge. If you set a Value time, MediaTailor won't fill any ad breaks on or behind this time in the manifest lookback window. For example, if you set 00:45:00, then MediaTailor will fill ad breaks that occur within 45 minutes behind the live edge, but won't fill ad breaks on or behind 45 minutes behind the live edge. * **FillPolicy** *(string) --* Defines the policy to apply to the avail suppression mode. "BEHIND_LIVE_EDGE" will always use the full avail suppression policy. "AFTER_LIVE_EDGE" mode can be used to invoke partial ad break fills when a session starts mid- break. * **Bumper** *(dict) --* The configuration for bumpers. Bumpers are short audio or video clips that play at the start or before the end of an ad break. To learn more about bumpers, see Bumpers. * **EndUrl** *(string) --* The URL for the end bumper asset. * **StartUrl** *(string) --* The URL for the start bumper asset. * **CdnConfiguration** *(dict) --* The configuration for using a content delivery network (CDN), like Amazon CloudFront, for content and ad segment management. * **AdSegmentUrlPrefix** *(string) --* A non-default content delivery network (CDN) to serve ad segments. By default, AWS Elemental MediaTailor uses Amazon CloudFront with default cache settings as its CDN for ad segments. To set up an alternate CDN, create a rule in your CDN for the origin ads.mediatailor.**.amazonaws.com. Then specify the rule's name in this "AdSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for ad segments. * **ContentSegmentUrlPrefix** *(string) --* A content delivery network (CDN) to cache content segments, so that content requests don’t always have to go to the origin server. First, create a rule in your CDN for the content segment origin server. Then specify the rule's name in this "ContentSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for content segments. * **ConfigurationAliases** *(dict) --* The player parameters and aliases used as dynamic variables during session initialization. For more information, see Domain Variables. * *(string) --* The dynamic variable that has aliases. * *(dict) --* Map of aliases to the value to be used at request time. * *(string) --* * *(string) --* * **DashConfiguration** *(dict) --* The configuration for DASH content. * **ManifestEndpointPrefix** *(string) --* The URL generated by MediaTailor to initiate a playback session. The session uses server-side reporting. This setting is ignored in PUT operations. * **MpdLocation** *(string) --* The setting that controls whether MediaTailor includes the Location tag in DASH manifests. MediaTailor populates the Location tag with the URL for manifest update requests, to be used by players that don't support sticky redirects. Disable this if you have CDN routing rules set up for accessing MediaTailor manifests, and you are either using client-side reporting or your players support sticky HTTP redirects. Valid values are "DISABLED" and "EMT_DEFAULT". The "EMT_DEFAULT" setting enables the inclusion of the tag and is the default value. * **OriginManifestType** *(string) --* The setting that controls whether MediaTailor handles manifests from the origin server as multi-period manifests or single-period manifests. If your origin server produces single-period manifests, set this to "SINGLE_PERIOD". The default setting is "MULTI_PERIOD". For multi-period manifests, omit this setting or set it to "MULTI_PERIOD". * **HlsConfiguration** *(dict) --* The configuration for HLS content. * **ManifestEndpointPrefix** *(string) --* The URL that is used to initiate a playback session for devices that support Apple HLS. The session uses server- side reporting. * **InsertionMode** *(string) --* The setting that controls whether players can use stitched or guided ad insertion. The default, "STITCHED_ONLY", forces all player sessions to use stitched (server-side) ad insertion. Choosing "PLAYER_SELECT" allows players to select either stitched or guided ad insertion at session- initialization time. The default for players that do not specify an insertion mode is stitched. * **LivePreRollConfiguration** *(dict) --* The configuration for pre-roll ad insertion. * **AdDecisionServerUrl** *(string) --* The URL for the ad decision server (ADS) for pre-roll ads. This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player-specific and session- specific parameters as needed when calling the ADS. Alternately, for testing, you can provide a static VAST URL. The maximum length is 25,000 characters. * **MaxDurationSeconds** *(integer) --* The maximum allowed duration for the pre-roll ad avail. AWS Elemental MediaTailor won't play pre-roll ads to exceed this duration, regardless of the total duration of ads that the ADS returns. * **LogConfiguration** *(dict) --* The configuration that defines where AWS Elemental MediaTailor sends logs for the playback configuration. * **PercentEnabled** *(integer) --* The percentage of session logs that MediaTailor sends to your configured log destination. For example, if your playback configuration has 1000 sessions and "percentEnabled" is set to "60", MediaTailor sends logs for 600 of the sessions to CloudWatch Logs. MediaTailor decides at random which of the playback configuration sessions to send logs for. If you want to view logs for a specific session, you can use the debug log mode. Valid values: "0" - "100" * **EnabledLoggingStrategies** *(list) --* The method used for collecting logs from AWS Elemental MediaTailor. "LEGACY_CLOUDWATCH" indicates that MediaTailor is sending logs directly to Amazon CloudWatch Logs. "VENDED_LOGS" indicates that MediaTailor is sending logs to CloudWatch, which then vends the logs to your destination of choice. Supported destinations are CloudWatch Logs log group, Amazon S3 bucket, and Amazon Data Firehose stream. * *(string) --* * **AdsInteractionLog** *(dict) --* Settings for customizing what events are included in logs for interactions with the ad decision server (ADS). * **PublishOptInEventTypes** *(list) --* Indicates that MediaTailor emits "RAW_ADS_RESPONSE" logs for playback sessions that are initialized with this configuration. * *(string) --* * **ExcludeEventTypes** *(list) --* Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration. * *(string) --* * **ManifestServiceInteractionLog** *(dict) --* Settings for customizing what events are included in logs for interactions with the origin server. * **ExcludeEventTypes** *(list) --* Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration. * *(string) --* * **ManifestProcessingRules** *(dict) --* The configuration for manifest processing rules. Manifest processing rules enable customization of the personalized manifests created by MediaTailor. * **AdMarkerPassthrough** *(dict) --* For HLS, when set to "true", MediaTailor passes through "EXT-X-CUE-IN", "EXT-X-CUE-OUT", and "EXT-X-SPLICEPOINT- SCTE35" ad markers from the origin manifest to the MediaTailor personalized manifest. No logic is applied to these ad markers. For example, if "EXT-X-CUE-OUT" has a value of "60", but no ads are filled for that ad break, MediaTailor will not set the value to "0". * **Enabled** *(boolean) --* Enables ad marker passthrough for your configuration. * **Name** *(string) --* The identifier for the playback configuration. * **PersonalizationThresholdSeconds** *(integer) --* Defines the maximum duration of underfilled ad time (in seconds) allowed in an ad break. If the duration of underfilled ad time exceeds the personalization threshold, then the personalization of the ad break is abandoned and the underlying content is shown. This feature applies to *ad replacement* in live and VOD streams, rather than ad insertion, because it relies on an underlying content stream. For more information about ad break behavior, including ad replacement and insertion, see Ad Behavior in AWS Elemental MediaTailor. * **PlaybackConfigurationArn** *(string) --* The Amazon Resource Name (ARN) associated with the playback configuration. * **PlaybackEndpointPrefix** *(string) --* The playback endpoint prefix associated with the playback configuration. * **SessionInitializationEndpointPrefix** *(string) --* The session initialization endpoint prefix associated with the playback configuration. * **SlateAdUrl** *(string) --* The URL for a high-quality video asset to transcode and use to fill in time that's not used by ads. AWS Elemental MediaTailor shows the slate to fill in gaps in media content. Configuring the slate is optional for non-VPAID configurations. For VPAID, the slate is required because MediaTailor provides it in the slots that are designated for dynamic ad content. The slate must be a high-quality asset that contains both audio and video. * **Tags** *(dict) --* The tags to assign to the playback configuration. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **TranscodeProfileName** *(string) --* The name that is used to associate this playback configuration with a custom transcode profile. This overrides the dynamic transcoding defaults of MediaTailor. Use this only if you have already set up custom profiles with the help of AWS Support. * **VideoContentSourceUrl** *(string) --* The URL prefix for the parent manifest for the stream, minus the asset ID. The maximum length is 512 characters. * **AdConditioningConfiguration** *(dict) --* The setting that indicates what conditioning MediaTailor will perform on ads that the ad decision server (ADS) returns, and what priority MediaTailor uses when inserting ads. * **StreamingMediaFileConditioning** *(string) --* For ads that have media files with streaming delivery and supported file extensions, indicates what transcoding action MediaTailor takes when it first receives these ads from the ADS. "TRANSCODE" indicates that MediaTailor must transcode the ads. "NONE" indicates that you have already transcoded the ads outside of MediaTailor and don't need them transcoded as part of the ad insertion workflow. For more information about ad conditioning see Using preconditioned ads in the Elemental MediaTailor user guide. MediaTailor / Client / list_source_locations list_source_locations ********************* MediaTailor.Client.list_source_locations(**kwargs) Lists the source locations for a channel. A source location defines the host server URL, and contains a list of sources. See also: AWS API Documentation **Request Syntax** response = client.list_source_locations( MaxResults=123, NextToken='string' ) Parameters: * **MaxResults** (*integer*) -- The maximum number of source locations that you want MediaTailor to return in response to the current request. If there are more than "MaxResults" source locations, use the value of "NextToken" in the response to get the next page of results. * **NextToken** (*string*) -- Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'AccessConfiguration': { 'AccessType': 'S3_SIGV4'|'SECRETS_MANAGER_ACCESS_TOKEN'|'AUTODETECT_SIGV4', 'SecretsManagerAccessTokenConfiguration': { 'HeaderName': 'string', 'SecretArn': 'string', 'SecretStringKey': 'string' } }, 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'DefaultSegmentDeliveryConfiguration': { 'BaseUrl': 'string' }, 'HttpConfiguration': { 'BaseUrl': 'string' }, 'LastModifiedTime': datetime(2015, 1, 1), 'SegmentDeliveryConfigurations': [ { 'BaseUrl': 'string', 'Name': 'string' }, ], 'SourceLocationName': 'string', 'Tags': { 'string': 'string' } }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **Items** *(list) --* A list of source locations. * *(dict) --* A source location is a container for sources. For more information about source locations, see Working with source locations in the *MediaTailor User Guide*. * **AccessConfiguration** *(dict) --* The access configuration for the source location. * **AccessType** *(string) --* The type of authentication used to access content from "HttpConfiguration::BaseUrl" on your source location. "S3_SIGV4" - AWS Signature Version 4 authentication for Amazon S3 hosted virtual-style access. If your source location base URL is an Amazon S3 bucket, MediaTailor can use AWS Signature Version 4 (SigV4) authentication to access the bucket where your source content is stored. Your MediaTailor source location baseURL must follow the S3 virtual hosted-style request URL format. For example, https://bucket- name.s3.Region.amazonaws.com/key-name. Before you can use "S3_SIGV4", you must meet these requirements: * You must allow MediaTailor to access your S3 bucket by granting mediatailor.amazonaws.com principal access in IAM. For information about configuring access in IAM, see Access management in the IAM User Guide. * The mediatailor.amazonaws.com service principal must have permissions to read all top level manifests referenced by the VodSource packaging configurations. * The caller of the API must have s3:GetObject IAM permissions to read all top level manifests referenced by your MediaTailor VodSource packaging configurations. "AUTODETECT_SIGV4" - AWS Signature Version 4 authentication for a set of supported services: MediaPackage Version 2 and Amazon S3 hosted virtual- style access. If your source location base URL is a MediaPackage Version 2 endpoint or an Amazon S3 bucket, MediaTailor can use AWS Signature Version 4 (SigV4) authentication to access the resource where your source content is stored. Before you can use "AUTODETECT_SIGV4" with a MediaPackage Version 2 endpoint, you must meet these requirements: * You must grant MediaTailor access to your MediaPackage endpoint by granting "mediatailor.amazonaws.com" principal access in an Origin Access policy on the endpoint. * Your MediaTailor source location base URL must be a MediaPackage V2 endpoint. * The caller of the API must have "mediapackagev2:GetObject" IAM permissions to read all top level manifests referenced by the MediaTailor source packaging configurations. Before you can use "AUTODETECT_SIGV4" with an Amazon S3 bucket, you must meet these requirements: * You must grant MediaTailor access to your S3 bucket by granting "mediatailor.amazonaws.com" principal access in IAM. For more information about configuring access in IAM, see Access management in the *IAM User Guide.*. * The "mediatailor.amazonaws.com" service principal must have permissions to read all top-level manifests referenced by the "VodSource" packaging configurations. * The caller of the API must have "s3:GetObject" IAM permissions to read all top level manifests referenced by your MediaTailor "VodSource" packaging configurations. * **SecretsManagerAccessTokenConfiguration** *(dict) --* AWS Secrets Manager access token configuration parameters. * **HeaderName** *(string) --* The name of the HTTP header used to supply the access token in requests to the source location. * **SecretArn** *(string) --* The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that contains the access token. * **SecretStringKey** *(string) --* The AWS Secrets Manager SecretString key associated with the access token. MediaTailor uses the key to look up SecretString key and value pair containing the access token. * **Arn** *(string) --* The ARN of the SourceLocation. * **CreationTime** *(datetime) --* The timestamp that indicates when the source location was created. * **DefaultSegmentDeliveryConfiguration** *(dict) --* The default segment delivery configuration. * **BaseUrl** *(string) --* The hostname of the server that will be used to serve segments. This string must include the protocol, such as **https://**. * **HttpConfiguration** *(dict) --* The HTTP configuration for the source location. * **BaseUrl** *(string) --* The base URL for the source location host server. This string must include the protocol, such as **https://**. * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the source location was last modified. * **SegmentDeliveryConfigurations** *(list) --* The segment delivery configurations for the source location. * *(dict) --* The segment delivery configuration settings. * **BaseUrl** *(string) --* The base URL of the host or path of the segment delivery server that you're using to serve segments. This is typically a content delivery network (CDN). The URL can be absolute or relative. To use an absolute URL include the protocol, such as "https://example.com/some/path". To use a relative URL specify the relative path, such as "/some/path*". * **Name** *(string) --* A unique identifier used to distinguish between multiple segment delivery configurations in a source location. * **SourceLocationName** *(string) --* The name of the source location. * **Tags** *(dict) --* The tags assigned to the source location. Tags are key- value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **NextToken** *(string) --* Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. MediaTailor / Client / get_playback_configuration get_playback_configuration ************************** MediaTailor.Client.get_playback_configuration(**kwargs) Retrieves a playback configuration. For information about MediaTailor configurations, see Working with configurations in AWS Elemental MediaTailor. See also: AWS API Documentation **Request Syntax** response = client.get_playback_configuration( Name='string' ) Parameters: **Name** (*string*) -- **[REQUIRED]** The identifier for the playback configuration. Return type: dict Returns: **Response Syntax** { 'AdDecisionServerUrl': 'string', 'AvailSuppression': { 'Mode': 'OFF'|'BEHIND_LIVE_EDGE'|'AFTER_LIVE_EDGE', 'Value': 'string', 'FillPolicy': 'FULL_AVAIL_ONLY'|'PARTIAL_AVAIL' }, 'Bumper': { 'EndUrl': 'string', 'StartUrl': 'string' }, 'CdnConfiguration': { 'AdSegmentUrlPrefix': 'string', 'ContentSegmentUrlPrefix': 'string' }, 'ConfigurationAliases': { 'string': { 'string': 'string' } }, 'DashConfiguration': { 'ManifestEndpointPrefix': 'string', 'MpdLocation': 'string', 'OriginManifestType': 'SINGLE_PERIOD'|'MULTI_PERIOD' }, 'HlsConfiguration': { 'ManifestEndpointPrefix': 'string' }, 'InsertionMode': 'STITCHED_ONLY'|'PLAYER_SELECT', 'LivePreRollConfiguration': { 'AdDecisionServerUrl': 'string', 'MaxDurationSeconds': 123 }, 'LogConfiguration': { 'PercentEnabled': 123, 'EnabledLoggingStrategies': [ 'VENDED_LOGS'|'LEGACY_CLOUDWATCH', ], 'AdsInteractionLog': { 'PublishOptInEventTypes': [ 'RAW_ADS_RESPONSE', ], 'ExcludeEventTypes': [ 'AD_MARKER_FOUND'|'NON_AD_MARKER_FOUND'|'MAKING_ADS_REQUEST'|'MODIFIED_TARGET_URL'|'VAST_REDIRECT'|'EMPTY_VAST_RESPONSE'|'EMPTY_VMAP_RESPONSE'|'VAST_RESPONSE'|'REDIRECTED_VAST_RESPONSE'|'FILLED_AVAIL'|'FILLED_OVERLAY_AVAIL'|'BEACON_FIRED'|'WARNING_NO_ADVERTISEMENTS'|'WARNING_VPAID_AD_DROPPED'|'WARNING_URL_VARIABLE_SUBSTITUTION_FAILED'|'ERROR_UNKNOWN'|'ERROR_UNKNOWN_HOST'|'ERROR_DISALLOWED_HOST'|'ERROR_ADS_IO'|'ERROR_ADS_TIMEOUT'|'ERROR_ADS_RESPONSE_PARSE'|'ERROR_ADS_RESPONSE_UNKNOWN_ROOT_ELEMENT'|'ERROR_ADS_INVALID_RESPONSE'|'ERROR_VAST_REDIRECT_EMPTY_RESPONSE'|'ERROR_VAST_REDIRECT_MULTIPLE_VAST'|'ERROR_VAST_REDIRECT_FAILED'|'ERROR_VAST_MISSING_MEDIAFILES'|'ERROR_VAST_MISSING_CREATIVES'|'ERROR_VAST_MISSING_OVERLAYS'|'ERROR_VAST_MISSING_IMPRESSION'|'ERROR_VAST_INVALID_VAST_AD_TAG_URI'|'ERROR_VAST_MULTIPLE_TRACKING_EVENTS'|'ERROR_VAST_MULTIPLE_LINEAR'|'ERROR_VAST_INVALID_MEDIA_FILE'|'ERROR_FIRING_BEACON_FAILED'|'ERROR_PERSONALIZATION_DISABLED'|'VOD_TIME_BASED_AVAIL_PLAN_VAST_RESPONSE_FOR_OFFSET'|'VOD_TIME_BASED_AVAIL_PLAN_SUCCESS'|'VOD_TIME_BASED_AVAIL_PLAN_WARNING_NO_ADVERTISEMENTS'|'INTERSTITIAL_VOD_SUCCESS'|'INTERSTITIAL_VOD_FAILURE', ] }, 'ManifestServiceInteractionLog': { 'ExcludeEventTypes': [ 'GENERATED_MANIFEST'|'ORIGIN_MANIFEST'|'SESSION_INITIALIZED'|'TRACKING_RESPONSE'|'CONFIG_SYNTAX_ERROR'|'CONFIG_SECURITY_ERROR'|'UNKNOWN_HOST'|'TIMEOUT_ERROR'|'CONNECTION_ERROR'|'IO_ERROR'|'UNKNOWN_ERROR'|'HOST_DISALLOWED'|'PARSING_ERROR'|'MANIFEST_ERROR'|'NO_MASTER_OR_MEDIA_PLAYLIST'|'NO_MASTER_PLAYLIST'|'NO_MEDIA_PLAYLIST'|'INCOMPATIBLE_HLS_VERSION'|'SCTE35_PARSING_ERROR'|'INVALID_SINGLE_PERIOD_DASH_MANIFEST'|'UNSUPPORTED_SINGLE_PERIOD_DASH_MANIFEST'|'LAST_PERIOD_MISSING_AUDIO'|'LAST_PERIOD_MISSING_AUDIO_WARNING'|'ERROR_ORIGIN_PREFIX_INTERPOLATION'|'ERROR_ADS_INTERPOLATION'|'ERROR_LIVE_PRE_ROLL_ADS_INTERPOLATION'|'ERROR_CDN_AD_SEGMENT_INTERPOLATION'|'ERROR_CDN_CONTENT_SEGMENT_INTERPOLATION'|'ERROR_SLATE_AD_URL_INTERPOLATION'|'ERROR_PROFILE_NAME_INTERPOLATION'|'ERROR_BUMPER_START_INTERPOLATION'|'ERROR_BUMPER_END_INTERPOLATION', ] } }, 'ManifestProcessingRules': { 'AdMarkerPassthrough': { 'Enabled': True|False } }, 'Name': 'string', 'PersonalizationThresholdSeconds': 123, 'PlaybackConfigurationArn': 'string', 'PlaybackEndpointPrefix': 'string', 'SessionInitializationEndpointPrefix': 'string', 'SlateAdUrl': 'string', 'Tags': { 'string': 'string' }, 'TranscodeProfileName': 'string', 'VideoContentSourceUrl': 'string', 'AdConditioningConfiguration': { 'StreamingMediaFileConditioning': 'TRANSCODE'|'NONE' } } **Response Structure** * *(dict) --* * **AdDecisionServerUrl** *(string) --* The URL for the ad decision server (ADS). This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player-specific and session-specific parameters as needed when calling the ADS. Alternately, for testing, you can provide a static VAST URL. The maximum length is 25,000 characters. * **AvailSuppression** *(dict) --* The configuration for avail suppression, also known as ad suppression. For more information about ad suppression, see Ad Suppression. * **Mode** *(string) --* Sets the ad suppression mode. By default, ad suppression is off and all ad breaks are filled with ads or slate. When Mode is set to "BEHIND_LIVE_EDGE", ad suppression is active and MediaTailor won't fill ad breaks on or behind the ad suppression Value time in the manifest lookback window. When Mode is set to "AFTER_LIVE_EDGE", ad suppression is active and MediaTailor won't fill ad breaks that are within the live edge plus the avail suppression value. * **Value** *(string) --* A live edge offset time in HH:MM:SS. MediaTailor won't fill ad breaks on or behind this time in the manifest lookback window. If Value is set to 00:00:00, it is in sync with the live edge, and MediaTailor won't fill any ad breaks on or behind the live edge. If you set a Value time, MediaTailor won't fill any ad breaks on or behind this time in the manifest lookback window. For example, if you set 00:45:00, then MediaTailor will fill ad breaks that occur within 45 minutes behind the live edge, but won't fill ad breaks on or behind 45 minutes behind the live edge. * **FillPolicy** *(string) --* Defines the policy to apply to the avail suppression mode. "BEHIND_LIVE_EDGE" will always use the full avail suppression policy. "AFTER_LIVE_EDGE" mode can be used to invoke partial ad break fills when a session starts mid- break. * **Bumper** *(dict) --* The configuration for bumpers. Bumpers are short audio or video clips that play at the start or before the end of an ad break. To learn more about bumpers, see Bumpers. * **EndUrl** *(string) --* The URL for the end bumper asset. * **StartUrl** *(string) --* The URL for the start bumper asset. * **CdnConfiguration** *(dict) --* The configuration for using a content delivery network (CDN), like Amazon CloudFront, for content and ad segment management. * **AdSegmentUrlPrefix** *(string) --* A non-default content delivery network (CDN) to serve ad segments. By default, AWS Elemental MediaTailor uses Amazon CloudFront with default cache settings as its CDN for ad segments. To set up an alternate CDN, create a rule in your CDN for the origin ads.mediatailor.**.amazonaws.com. Then specify the rule's name in this "AdSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for ad segments. * **ContentSegmentUrlPrefix** *(string) --* A content delivery network (CDN) to cache content segments, so that content requests don’t always have to go to the origin server. First, create a rule in your CDN for the content segment origin server. Then specify the rule's name in this "ContentSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for content segments. * **ConfigurationAliases** *(dict) --* The player parameters and aliases used as dynamic variables during session initialization. For more information, see Domain Variables. * *(string) --* The dynamic variable that has aliases. * *(dict) --* Map of aliases to the value to be used at request time. * *(string) --* * *(string) --* * **DashConfiguration** *(dict) --* The configuration for DASH content. * **ManifestEndpointPrefix** *(string) --* The URL generated by MediaTailor to initiate a playback session. The session uses server-side reporting. This setting is ignored in PUT operations. * **MpdLocation** *(string) --* The setting that controls whether MediaTailor includes the Location tag in DASH manifests. MediaTailor populates the Location tag with the URL for manifest update requests, to be used by players that don't support sticky redirects. Disable this if you have CDN routing rules set up for accessing MediaTailor manifests, and you are either using client-side reporting or your players support sticky HTTP redirects. Valid values are "DISABLED" and "EMT_DEFAULT". The "EMT_DEFAULT" setting enables the inclusion of the tag and is the default value. * **OriginManifestType** *(string) --* The setting that controls whether MediaTailor handles manifests from the origin server as multi-period manifests or single-period manifests. If your origin server produces single-period manifests, set this to "SINGLE_PERIOD". The default setting is "MULTI_PERIOD". For multi-period manifests, omit this setting or set it to "MULTI_PERIOD". * **HlsConfiguration** *(dict) --* The configuration for HLS content. * **ManifestEndpointPrefix** *(string) --* The URL that is used to initiate a playback session for devices that support Apple HLS. The session uses server- side reporting. * **InsertionMode** *(string) --* The setting that controls whether players can use stitched or guided ad insertion. The default, "STITCHED_ONLY", forces all player sessions to use stitched (server-side) ad insertion. Choosing "PLAYER_SELECT" allows players to select either stitched or guided ad insertion at session- initialization time. The default for players that do not specify an insertion mode is stitched. * **LivePreRollConfiguration** *(dict) --* The configuration for pre-roll ad insertion. * **AdDecisionServerUrl** *(string) --* The URL for the ad decision server (ADS) for pre-roll ads. This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player-specific and session- specific parameters as needed when calling the ADS. Alternately, for testing, you can provide a static VAST URL. The maximum length is 25,000 characters. * **MaxDurationSeconds** *(integer) --* The maximum allowed duration for the pre-roll ad avail. AWS Elemental MediaTailor won't play pre-roll ads to exceed this duration, regardless of the total duration of ads that the ADS returns. * **LogConfiguration** *(dict) --* The configuration that defines where AWS Elemental MediaTailor sends logs for the playback configuration. * **PercentEnabled** *(integer) --* The percentage of session logs that MediaTailor sends to your configured log destination. For example, if your playback configuration has 1000 sessions and "percentEnabled" is set to "60", MediaTailor sends logs for 600 of the sessions to CloudWatch Logs. MediaTailor decides at random which of the playback configuration sessions to send logs for. If you want to view logs for a specific session, you can use the debug log mode. Valid values: "0" - "100" * **EnabledLoggingStrategies** *(list) --* The method used for collecting logs from AWS Elemental MediaTailor. "LEGACY_CLOUDWATCH" indicates that MediaTailor is sending logs directly to Amazon CloudWatch Logs. "VENDED_LOGS" indicates that MediaTailor is sending logs to CloudWatch, which then vends the logs to your destination of choice. Supported destinations are CloudWatch Logs log group, Amazon S3 bucket, and Amazon Data Firehose stream. * *(string) --* * **AdsInteractionLog** *(dict) --* Settings for customizing what events are included in logs for interactions with the ad decision server (ADS). * **PublishOptInEventTypes** *(list) --* Indicates that MediaTailor emits "RAW_ADS_RESPONSE" logs for playback sessions that are initialized with this configuration. * *(string) --* * **ExcludeEventTypes** *(list) --* Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration. * *(string) --* * **ManifestServiceInteractionLog** *(dict) --* Settings for customizing what events are included in logs for interactions with the origin server. * **ExcludeEventTypes** *(list) --* Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration. * *(string) --* * **ManifestProcessingRules** *(dict) --* The configuration for manifest processing rules. Manifest processing rules enable customization of the personalized manifests created by MediaTailor. * **AdMarkerPassthrough** *(dict) --* For HLS, when set to "true", MediaTailor passes through "EXT-X-CUE-IN", "EXT-X-CUE-OUT", and "EXT-X-SPLICEPOINT- SCTE35" ad markers from the origin manifest to the MediaTailor personalized manifest. No logic is applied to these ad markers. For example, if "EXT-X-CUE-OUT" has a value of "60", but no ads are filled for that ad break, MediaTailor will not set the value to "0". * **Enabled** *(boolean) --* Enables ad marker passthrough for your configuration. * **Name** *(string) --* The identifier for the playback configuration. * **PersonalizationThresholdSeconds** *(integer) --* Defines the maximum duration of underfilled ad time (in seconds) allowed in an ad break. If the duration of underfilled ad time exceeds the personalization threshold, then the personalization of the ad break is abandoned and the underlying content is shown. This feature applies to *ad replacement* in live and VOD streams, rather than ad insertion, because it relies on an underlying content stream. For more information about ad break behavior, including ad replacement and insertion, see Ad Behavior in AWS Elemental MediaTailor. * **PlaybackConfigurationArn** *(string) --* The Amazon Resource Name (ARN) for the playback configuration. * **PlaybackEndpointPrefix** *(string) --* The URL that the player accesses to get a manifest from AWS Elemental MediaTailor. This session will use server-side reporting. * **SessionInitializationEndpointPrefix** *(string) --* The URL that the player uses to initialize a session that uses client-side reporting. * **SlateAdUrl** *(string) --* The URL for a high-quality video asset to transcode and use to fill in time that's not used by ads. AWS Elemental MediaTailor shows the slate to fill in gaps in media content. Configuring the slate is optional for non-VPAID playback configurations. For VPAID, the slate is required because MediaTailor provides it in the slots designated for dynamic ad content. The slate must be a high-quality asset that contains both audio and video. * **Tags** *(dict) --* The tags assigned to the playback configuration. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **TranscodeProfileName** *(string) --* The name that is used to associate this playback configuration with a custom transcode profile. This overrides the dynamic transcoding defaults of MediaTailor. Use this only if you have already set up custom profiles with the help of AWS Support. * **VideoContentSourceUrl** *(string) --* The URL prefix for the parent manifest for the stream, minus the asset ID. The maximum length is 512 characters. * **AdConditioningConfiguration** *(dict) --* The setting that indicates what conditioning MediaTailor will perform on ads that the ad decision server (ADS) returns, and what priority MediaTailor uses when inserting ads. * **StreamingMediaFileConditioning** *(string) --* For ads that have media files with streaming delivery and supported file extensions, indicates what transcoding action MediaTailor takes when it first receives these ads from the ADS. "TRANSCODE" indicates that MediaTailor must transcode the ads. "NONE" indicates that you have already transcoded the ads outside of MediaTailor and don't need them transcoded as part of the ad insertion workflow. For more information about ad conditioning see Using preconditioned ads in the Elemental MediaTailor user guide. MediaTailor / Client / create_channel create_channel ************** MediaTailor.Client.create_channel(**kwargs) Creates a channel. For information about MediaTailor channels, see Working with channels in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.create_channel( ChannelName='string', FillerSlate={ 'SourceLocationName': 'string', 'VodSourceName': 'string' }, Outputs=[ { 'DashPlaylistSettings': { 'ManifestWindowSeconds': 123, 'MinBufferTimeSeconds': 123, 'MinUpdatePeriodSeconds': 123, 'SuggestedPresentationDelaySeconds': 123 }, 'HlsPlaylistSettings': { 'ManifestWindowSeconds': 123, 'AdMarkupType': [ 'DATERANGE'|'SCTE35_ENHANCED', ] }, 'ManifestName': 'string', 'SourceGroup': 'string' }, ], PlaybackMode='LOOP'|'LINEAR', Tags={ 'string': 'string' }, Tier='BASIC'|'STANDARD', TimeShiftConfiguration={ 'MaxTimeDelaySeconds': 123 }, Audiences=[ 'string', ] ) Parameters: * **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel. * **FillerSlate** (*dict*) -- The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the "LINEAR" "PlaybackMode". MediaTailor doesn't support filler slate for channels using the "LOOP" "PlaybackMode". * **SourceLocationName** *(string) --* The name of the source location where the slate VOD source is stored. * **VodSourceName** *(string) --* The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate. * **Outputs** (*list*) -- **[REQUIRED]** The channel's output properties. * *(dict) --* The output configuration for this channel. * **DashPlaylistSettings** *(dict) --* DASH manifest configuration parameters. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **MinBufferTimeSeconds** *(integer) --* Minimum amount of content (measured in seconds) that a player must keep available in the buffer. Minimum value: "2" seconds. Maximum value: "60" seconds. * **MinUpdatePeriodSeconds** *(integer) --* Minimum amount of time (in seconds) that the player should wait before requesting updates to the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **SuggestedPresentationDelaySeconds** *(integer) --* Amount of time (in seconds) that the player should be from the live point at the end of the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **HlsPlaylistSettings** *(dict) --* HLS playlist configuration parameters. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **AdMarkupType** *(list) --* Determines the type of SCTE 35 tags to use in ad markup. Specify "DATERANGE" to use "DATERANGE" tags (for live or VOD content). Specify "SCTE35_ENHANCED" to use "EXT-X -CUE-OUT" and "EXT-X-CUE-IN" tags (for VOD content only). * *(string) --* * **ManifestName** *(string) --* **[REQUIRED]** The name of the manifest for the channel. The name appears in the "PlaybackUrl". * **SourceGroup** *(string) --* **[REQUIRED]** A string used to match which "HttpPackageConfiguration" is used for each "VodSource". * **PlaybackMode** (*string*) -- **[REQUIRED]** The type of playback mode to use for this channel. "LINEAR" - The programs in the schedule play once back-to-back in the schedule. "LOOP" - The programs in the schedule play back-to-back in an endless loop. When the last program in the schedule stops playing, playback loops back to the first program in the schedule. * **Tags** (*dict*) -- The tags to assign to the channel. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **Tier** (*string*) -- The tier of the channel. * **TimeShiftConfiguration** (*dict*) -- The time-shifted viewing configuration you want to associate to the channel. * **MaxTimeDelaySeconds** *(integer) --* **[REQUIRED]** The maximum time delay for time-shifted viewing. The minimum allowed maximum time delay is 0 seconds, and the maximum allowed maximum time delay is 21600 seconds (6 hours). * **Audiences** (*list*) -- The list of audiences defined in channel. * *(string) --* Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'ChannelName': 'string', 'ChannelState': 'RUNNING'|'STOPPED', 'CreationTime': datetime(2015, 1, 1), 'FillerSlate': { 'SourceLocationName': 'string', 'VodSourceName': 'string' }, 'LastModifiedTime': datetime(2015, 1, 1), 'Outputs': [ { 'DashPlaylistSettings': { 'ManifestWindowSeconds': 123, 'MinBufferTimeSeconds': 123, 'MinUpdatePeriodSeconds': 123, 'SuggestedPresentationDelaySeconds': 123 }, 'HlsPlaylistSettings': { 'ManifestWindowSeconds': 123, 'AdMarkupType': [ 'DATERANGE'|'SCTE35_ENHANCED', ] }, 'ManifestName': 'string', 'PlaybackUrl': 'string', 'SourceGroup': 'string' }, ], 'PlaybackMode': 'string', 'Tags': { 'string': 'string' }, 'Tier': 'string', 'TimeShiftConfiguration': { 'MaxTimeDelaySeconds': 123 }, 'Audiences': [ 'string', ] } **Response Structure** * *(dict) --* * **Arn** *(string) --* The Amazon Resource Name (ARN) to assign to the channel. * **ChannelName** *(string) --* The name to assign to the channel. * **ChannelState** *(string) --* Indicates whether the channel is in a running state or not. * **CreationTime** *(datetime) --* The timestamp of when the channel was created. * **FillerSlate** *(dict) --* Contains information about the slate used to fill gaps between programs in the schedule. * **SourceLocationName** *(string) --* The name of the source location where the slate VOD source is stored. * **VodSourceName** *(string) --* The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate. * **LastModifiedTime** *(datetime) --* The timestamp of when the channel was last modified. * **Outputs** *(list) --* The output properties to assign to the channel. * *(dict) --* The output item response. * **DashPlaylistSettings** *(dict) --* DASH manifest configuration settings. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **MinBufferTimeSeconds** *(integer) --* Minimum amount of content (measured in seconds) that a player must keep available in the buffer. Minimum value: "2" seconds. Maximum value: "60" seconds. * **MinUpdatePeriodSeconds** *(integer) --* Minimum amount of time (in seconds) that the player should wait before requesting updates to the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **SuggestedPresentationDelaySeconds** *(integer) --* Amount of time (in seconds) that the player should be from the live point at the end of the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **HlsPlaylistSettings** *(dict) --* HLS manifest configuration settings. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **AdMarkupType** *(list) --* Determines the type of SCTE 35 tags to use in ad markup. Specify "DATERANGE" to use "DATERANGE" tags (for live or VOD content). Specify "SCTE35_ENHANCED" to use "EXT-X-CUE-OUT" and "EXT-X-CUE-IN" tags (for VOD content only). * *(string) --* * **ManifestName** *(string) --* The name of the manifest for the channel that will appear in the channel output's playback URL. * **PlaybackUrl** *(string) --* The URL used for playback by content players. * **SourceGroup** *(string) --* A string used to associate a package configuration source group with a channel output. * **PlaybackMode** *(string) --* The playback mode to assign to the channel. * **Tags** *(dict) --* The tags to assign to the channel. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **Tier** *(string) --* The tier of the channel. * **TimeShiftConfiguration** *(dict) --* The time-shifted viewing configuration assigned to the channel. * **MaxTimeDelaySeconds** *(integer) --* The maximum time delay for time-shifted viewing. The minimum allowed maximum time delay is 0 seconds, and the maximum allowed maximum time delay is 21600 seconds (6 hours). * **Audiences** *(list) --* The list of audiences defined in channel. * *(string) --* MediaTailor / Client / start_channel start_channel ************* MediaTailor.Client.start_channel(**kwargs) Starts a channel. For information about MediaTailor channels, see Working with channels in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.start_channel( ChannelName='string' ) Parameters: **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* MediaTailor / Client / delete_vod_source delete_vod_source ***************** MediaTailor.Client.delete_vod_source(**kwargs) The video on demand (VOD) source to delete. See also: AWS API Documentation **Request Syntax** response = client.delete_vod_source( SourceLocationName='string', VodSourceName='string' ) Parameters: * **SourceLocationName** (*string*) -- **[REQUIRED]** The name of the source location associated with this VOD Source. * **VodSourceName** (*string*) -- **[REQUIRED]** The name of the VOD source. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* MediaTailor / Client / configure_logs_for_channel configure_logs_for_channel ************************** MediaTailor.Client.configure_logs_for_channel(**kwargs) Configures Amazon CloudWatch log settings for a channel. See also: AWS API Documentation **Request Syntax** response = client.configure_logs_for_channel( ChannelName='string', LogTypes=[ 'AS_RUN', ] ) Parameters: * **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel. * **LogTypes** (*list*) -- **[REQUIRED]** The types of logs to collect. * *(string) --* Return type: dict Returns: **Response Syntax** { 'ChannelName': 'string', 'LogTypes': [ 'AS_RUN', ] } **Response Structure** * *(dict) --* * **ChannelName** *(string) --* The name of the channel. * **LogTypes** *(list) --* The types of logs collected. * *(string) --* MediaTailor / Client / delete_channel delete_channel ************** MediaTailor.Client.delete_channel(**kwargs) Deletes a channel. For information about MediaTailor channels, see Working with channels in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.delete_channel( ChannelName='string' ) Parameters: **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --* MediaTailor / Client / list_live_sources list_live_sources ***************** MediaTailor.Client.list_live_sources(**kwargs) Lists the live sources contained in a source location. A source represents a piece of content. See also: AWS API Documentation **Request Syntax** response = client.list_live_sources( MaxResults=123, NextToken='string', SourceLocationName='string' ) Parameters: * **MaxResults** (*integer*) -- The maximum number of live sources that you want MediaTailor to return in response to the current request. If there are more than "MaxResults" live sources, use the value of "NextToken" in the response to get the next page of results. * **NextToken** (*string*) -- Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. * **SourceLocationName** (*string*) -- **[REQUIRED]** The name of the source location associated with this Live Sources list. Return type: dict Returns: **Response Syntax** { 'Items': [ { 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'HttpPackageConfigurations': [ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], 'LastModifiedTime': datetime(2015, 1, 1), 'LiveSourceName': 'string', 'SourceLocationName': 'string', 'Tags': { 'string': 'string' } }, ], 'NextToken': 'string' } **Response Structure** * *(dict) --* * **Items** *(list) --* Lists the live sources. * *(dict) --* Live source configuration parameters. * **Arn** *(string) --* The ARN for the live source. * **CreationTime** *(datetime) --* The timestamp that indicates when the live source was created. * **HttpPackageConfigurations** *(list) --* The HTTP package configurations for the live source. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the live source was last modified. * **LiveSourceName** *(string) --* The name that's used to refer to a live source. * **SourceLocationName** *(string) --* The name of the source location. * **Tags** *(dict) --* The tags assigned to the live source. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **NextToken** *(string) --* Pagination token returned by the list request when results exceed the maximum allowed. Use the token to fetch the next page of results. MediaTailor / Client / update_vod_source update_vod_source ***************** MediaTailor.Client.update_vod_source(**kwargs) Updates a VOD source's configuration. See also: AWS API Documentation **Request Syntax** response = client.update_vod_source( HttpPackageConfigurations=[ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], SourceLocationName='string', VodSourceName='string' ) Parameters: * **HttpPackageConfigurations** (*list*) -- **[REQUIRED]** A list of HTTP package configurations for the VOD source on this account. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* **[REQUIRED]** The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* **[REQUIRED]** The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* **[REQUIRED]** The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **SourceLocationName** (*string*) -- **[REQUIRED]** The name of the source location associated with this VOD Source. * **VodSourceName** (*string*) -- **[REQUIRED]** The name of the VOD source. Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'CreationTime': datetime(2015, 1, 1), 'HttpPackageConfigurations': [ { 'Path': 'string', 'SourceGroup': 'string', 'Type': 'DASH'|'HLS' }, ], 'LastModifiedTime': datetime(2015, 1, 1), 'SourceLocationName': 'string', 'Tags': { 'string': 'string' }, 'VodSourceName': 'string' } **Response Structure** * *(dict) --* * **Arn** *(string) --* The Amazon Resource Name (ARN) associated with the VOD source. * **CreationTime** *(datetime) --* The timestamp that indicates when the VOD source was created. * **HttpPackageConfigurations** *(list) --* A list of HTTP package configurations for the VOD source on this account. * *(dict) --* The HTTP package configuration properties for the requested VOD source. * **Path** *(string) --* The relative path to the URL for this VOD source. This is combined with "SourceLocation::HttpConfiguration::BaseUrl" to form a valid URL. * **SourceGroup** *(string) --* The name of the source group. This has to match one of the "Channel::Outputs::SourceGroup". * **Type** *(string) --* The streaming protocol for this package configuration. Supported values are "HLS" and "DASH". * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the VOD source was last modified. * **SourceLocationName** *(string) --* The name of the source location associated with the VOD source. * **Tags** *(dict) --* The tags to assign to the VOD source. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **VodSourceName** *(string) --* The name of the VOD source. MediaTailor / Client / close close ***** MediaTailor.Client.close() Closes underlying endpoint connections. MediaTailor / Client / update_program update_program ************** MediaTailor.Client.update_program(**kwargs) Updates a program within a channel. See also: AWS API Documentation **Request Syntax** response = client.update_program( AdBreaks=[ { 'MessageType': 'SPLICE_INSERT'|'TIME_SIGNAL', 'OffsetMillis': 123, 'Slate': { 'SourceLocationName': 'string', 'VodSourceName': 'string' }, 'SpliceInsertMessage': { 'AvailNum': 123, 'AvailsExpected': 123, 'SpliceEventId': 123, 'UniqueProgramId': 123 }, 'TimeSignalMessage': { 'SegmentationDescriptors': [ { 'SegmentationEventId': 123, 'SegmentationUpidType': 123, 'SegmentationUpid': 'string', 'SegmentationTypeId': 123, 'SegmentNum': 123, 'SegmentsExpected': 123, 'SubSegmentNum': 123, 'SubSegmentsExpected': 123 }, ] }, 'AdBreakMetadata': [ { 'Key': 'string', 'Value': 'string' }, ] }, ], ChannelName='string', ProgramName='string', ScheduleConfiguration={ 'Transition': { 'ScheduledStartTimeMillis': 123, 'DurationMillis': 123 }, 'ClipRange': { 'EndOffsetMillis': 123, 'StartOffsetMillis': 123 } }, AudienceMedia=[ { 'Audience': 'string', 'AlternateMedia': [ { 'SourceLocationName': 'string', 'LiveSourceName': 'string', 'VodSourceName': 'string', 'ClipRange': { 'EndOffsetMillis': 123, 'StartOffsetMillis': 123 }, 'ScheduledStartTimeMillis': 123, 'AdBreaks': [ { 'MessageType': 'SPLICE_INSERT'|'TIME_SIGNAL', 'OffsetMillis': 123, 'Slate': { 'SourceLocationName': 'string', 'VodSourceName': 'string' }, 'SpliceInsertMessage': { 'AvailNum': 123, 'AvailsExpected': 123, 'SpliceEventId': 123, 'UniqueProgramId': 123 }, 'TimeSignalMessage': { 'SegmentationDescriptors': [ { 'SegmentationEventId': 123, 'SegmentationUpidType': 123, 'SegmentationUpid': 'string', 'SegmentationTypeId': 123, 'SegmentNum': 123, 'SegmentsExpected': 123, 'SubSegmentNum': 123, 'SubSegmentsExpected': 123 }, ] }, 'AdBreakMetadata': [ { 'Key': 'string', 'Value': 'string' }, ] }, ], 'DurationMillis': 123 }, ] }, ] ) Parameters: * **AdBreaks** (*list*) -- The ad break configuration settings. * *(dict) --* Ad break configuration parameters. * **MessageType** *(string) --* The SCTE-35 ad insertion type. Accepted value: "SPLICE_INSERT", "TIME_SIGNAL". * **OffsetMillis** *(integer) --* **[REQUIRED]** How long (in milliseconds) after the beginning of the program that an ad starts. This value must fall within 100ms of a segment boundary, otherwise the ad break will be skipped. * **Slate** *(dict) --* Ad break slate configuration. * **SourceLocationName** *(string) --* The name of the source location where the slate VOD source is stored. * **VodSourceName** *(string) --* The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate. * **SpliceInsertMessage** *(dict) --* This defines the SCTE-35 "splice_insert()" message inserted around the ad. For information about using "splice_insert()", see the SCTE-35 specficiaiton, section 9.7.3.1. * **AvailNum** *(integer) --* This is written to "splice_insert.avail_num", as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is "0". Values must be between "0" and "256", inclusive. * **AvailsExpected** *(integer) --* This is written to "splice_insert.avails_expected", as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is "0". Values must be between "0" and "256", inclusive. * **SpliceEventId** *(integer) --* This is written to "splice_insert.splice_event_id", as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is "1". * **UniqueProgramId** *(integer) --* This is written to "splice_insert.unique_program_id", as defined in section 9.7.3.1 of the SCTE-35 specification. The default value is "0". Values must be between "0" and "256", inclusive. * **TimeSignalMessage** *(dict) --* Defines the SCTE-35 "time_signal" message inserted around the ad. Programs on a channel's schedule can be configured with one or more ad breaks. You can attach a "splice_insert" SCTE-35 message to the ad break. This message provides basic metadata about the ad break. See section 9.7.4 of the 2022 SCTE-35 specification for more information. * **SegmentationDescriptors** *(list) --* The configurations for the SCTE-35 "segmentation_descriptor" message(s) sent with the "time_signal" message. * *(dict) --* The "segmentation_descriptor" message can contain advanced metadata fields, like content identifiers, to convey a wide range of information about the ad break. MediaTailor writes the ad metadata in the egress manifest as part of the "EXT-X-DATERANGE" or "EventStream" ad marker's SCTE-35 data. "segmentation_descriptor" messages must be sent with the "time_signal" message type. See the "segmentation_descriptor()" table of the 2022 SCTE-35 specification for more information. * **SegmentationEventId** *(integer) --* The Event Identifier to assign to the "segmentation_descriptor.segmentation_event_id" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. The default value is 1. * **SegmentationUpidType** *(integer) --* The Upid Type to assign to the "segmentation_descriptor.segmentation_upid_type" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is 14. * **SegmentationUpid** *(string) --* The Upid to assign to the "segmentation_descriptor.segmentation_upid" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. The value must be a hexadecimal string containing only the characters 0 though 9 and A through F. The default value is "" (an empty string). * **SegmentationTypeId** *(integer) --* The Type Identifier to assign to the "segmentation_descriptor.segmentation_type_id" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is 48. * **SegmentNum** *(integer) --* The segment number to assign to the "segmentation_descriptor.segment_num" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, inclusive. The default value is 0. * **SegmentsExpected** *(integer) --* The number of segments expected, which is assigned to the "segmentation_descriptor.segments_expectedS" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification Values must be between 0 and 256, inclusive. The default value is 0. * **SubSegmentNum** *(integer) --* The sub-segment number to assign to the "segmentation_descriptor.sub_segment_num" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The defualt value is null. * **SubSegmentsExpected** *(integer) --* The number of sub-segments expected, which is assigned to the "segmentation_descriptor.sub_segments_expected" message, as defined in section 10.3.3.1 of the 2022 SCTE-35 specification. Values must be between 0 and 256, inclusive. The default value is null. * **AdBreakMetadata** *(list) --* Defines a list of key/value pairs that MediaTailor generates within the "EXT-X-ASSET``tag for ``SCTE35_ENHANCED" output. * *(dict) --* For "SCTE35_ENHANCED" output, defines a key and corresponding value. MediaTailor generates these pairs within the >>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<>``<*.amazonaws.com. Then specify the rule's name in this "AdSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for ad segments. * **ContentSegmentUrlPrefix** *(string) --* A content delivery network (CDN) to cache content segments, so that content requests don’t always have to go to the origin server. First, create a rule in your CDN for the content segment origin server. Then specify the rule's name in this "ContentSegmentUrlPrefix". When AWS Elemental MediaTailor serves a manifest, it reports your CDN as the source for content segments. * **ConfigurationAliases** *(dict) --* The player parameters and aliases used as dynamic variables during session initialization. For more information, see Domain Variables. * *(string) --* The dynamic variable that has aliases. * *(dict) --* Map of aliases to the value to be used at request time. * *(string) --* * *(string) --* * **DashConfiguration** *(dict) --* The configuration for a DASH source. * **ManifestEndpointPrefix** *(string) --* The URL generated by MediaTailor to initiate a playback session. The session uses server-side reporting. This setting is ignored in PUT operations. * **MpdLocation** *(string) --* The setting that controls whether MediaTailor includes the Location tag in DASH manifests. MediaTailor populates the Location tag with the URL for manifest update requests, to be used by players that don't support sticky redirects. Disable this if you have CDN routing rules set up for accessing MediaTailor manifests, and you are either using client-side reporting or your players support sticky HTTP redirects. Valid values are "DISABLED" and "EMT_DEFAULT". The "EMT_DEFAULT" setting enables the inclusion of the tag and is the default value. * **OriginManifestType** *(string) --* The setting that controls whether MediaTailor handles manifests from the origin server as multi-period manifests or single-period manifests. If your origin server produces single-period manifests, set this to "SINGLE_PERIOD". The default setting is "MULTI_PERIOD". For multi-period manifests, omit this setting or set it to "MULTI_PERIOD". * **HlsConfiguration** *(dict) --* The configuration for HLS content. * **ManifestEndpointPrefix** *(string) --* The URL that is used to initiate a playback session for devices that support Apple HLS. The session uses server-side reporting. * **InsertionMode** *(string) --* The setting that controls whether players can use stitched or guided ad insertion. The default, "STITCHED_ONLY", forces all player sessions to use stitched (server-side) ad insertion. Choosing "PLAYER_SELECT" allows players to select either stitched or guided ad insertion at session-initialization time. The default for players that do not specify an insertion mode is stitched. * **LivePreRollConfiguration** *(dict) --* The configuration for pre-roll ad insertion. * **AdDecisionServerUrl** *(string) --* The URL for the ad decision server (ADS) for pre-roll ads. This includes the specification of static parameters and placeholders for dynamic parameters. AWS Elemental MediaTailor substitutes player-specific and session-specific parameters as needed when calling the ADS. Alternately, for testing, you can provide a static VAST URL. The maximum length is 25,000 characters. * **MaxDurationSeconds** *(integer) --* The maximum allowed duration for the pre-roll ad avail. AWS Elemental MediaTailor won't play pre-roll ads to exceed this duration, regardless of the total duration of ads that the ADS returns. * **LogConfiguration** *(dict) --* Defines where AWS Elemental MediaTailor sends logs for the playback configuration. * **PercentEnabled** *(integer) --* The percentage of session logs that MediaTailor sends to your configured log destination. For example, if your playback configuration has 1000 sessions and "percentEnabled" is set to "60", MediaTailor sends logs for 600 of the sessions to CloudWatch Logs. MediaTailor decides at random which of the playback configuration sessions to send logs for. If you want to view logs for a specific session, you can use the debug log mode. Valid values: "0" - "100" * **EnabledLoggingStrategies** *(list) --* The method used for collecting logs from AWS Elemental MediaTailor. "LEGACY_CLOUDWATCH" indicates that MediaTailor is sending logs directly to Amazon CloudWatch Logs. "VENDED_LOGS" indicates that MediaTailor is sending logs to CloudWatch, which then vends the logs to your destination of choice. Supported destinations are CloudWatch Logs log group, Amazon S3 bucket, and Amazon Data Firehose stream. * *(string) --* * **AdsInteractionLog** *(dict) --* Settings for customizing what events are included in logs for interactions with the ad decision server (ADS). * **PublishOptInEventTypes** *(list) --* Indicates that MediaTailor emits "RAW_ADS_RESPONSE" logs for playback sessions that are initialized with this configuration. * *(string) --* * **ExcludeEventTypes** *(list) --* Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration. * *(string) --* * **ManifestServiceInteractionLog** *(dict) --* Settings for customizing what events are included in logs for interactions with the origin server. * **ExcludeEventTypes** *(list) --* Indicates that MediaTailor won't emit the selected events in the logs for playback sessions that are initialized with this configuration. * *(string) --* * **ManifestProcessingRules** *(dict) --* The configuration for manifest processing rules. Manifest processing rules enable customization of the personalized manifests created by MediaTailor. * **AdMarkerPassthrough** *(dict) --* For HLS, when set to "true", MediaTailor passes through "EXT-X-CUE-IN", "EXT-X-CUE-OUT", and "EXT-X -SPLICEPOINT-SCTE35" ad markers from the origin manifest to the MediaTailor personalized manifest. No logic is applied to these ad markers. For example, if "EXT-X-CUE-OUT" has a value of "60", but no ads are filled for that ad break, MediaTailor will not set the value to "0". * **Enabled** *(boolean) --* Enables ad marker passthrough for your configuration. * **Name** *(string) --* The identifier for the playback configuration. * **PersonalizationThresholdSeconds** *(integer) --* Defines the maximum duration of underfilled ad time (in seconds) allowed in an ad break. If the duration of underfilled ad time exceeds the personalization threshold, then the personalization of the ad break is abandoned and the underlying content is shown. This feature applies to *ad replacement* in live and VOD streams, rather than ad insertion, because it relies on an underlying content stream. For more information about ad break behavior, including ad replacement and insertion, see Ad Behavior in AWS Elemental MediaTailor. * **PlaybackConfigurationArn** *(string) --* The Amazon Resource Name (ARN) for the playback configuration. * **PlaybackEndpointPrefix** *(string) --* The URL that the player accesses to get a manifest from AWS Elemental MediaTailor. * **SessionInitializationEndpointPrefix** *(string) --* The URL that the player uses to initialize a session that uses client-side reporting. * **SlateAdUrl** *(string) --* The URL for a video asset to transcode and use to fill in time that's not used by ads. AWS Elemental MediaTailor shows the slate to fill in gaps in media content. Configuring the slate is optional for non-VPAID playback configurations. For VPAID, the slate is required because MediaTailor provides it in the slots designated for dynamic ad content. The slate must be a high-quality asset that contains both audio and video. * **Tags** *(dict) --* The tags to assign to the playback configuration. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **TranscodeProfileName** *(string) --* The name that is used to associate this playback configuration with a custom transcode profile. This overrides the dynamic transcoding defaults of MediaTailor. Use this only if you have already set up custom profiles with the help of AWS Support. * **VideoContentSourceUrl** *(string) --* The URL prefix for the parent manifest for the stream, minus the asset ID. The maximum length is 512 characters. * **AdConditioningConfiguration** *(dict) --* The setting that indicates what conditioning MediaTailor will perform on ads that the ad decision server (ADS) returns, and what priority MediaTailor uses when inserting ads. * **StreamingMediaFileConditioning** *(string) --* For ads that have media files with streaming delivery and supported file extensions, indicates what transcoding action MediaTailor takes when it first receives these ads from the ADS. "TRANSCODE" indicates that MediaTailor must transcode the ads. "NONE" indicates that you have already transcoded the ads outside of MediaTailor and don't need them transcoded as part of the ad insertion workflow. For more information about ad conditioning see Using preconditioned ads in the Elemental MediaTailor user guide. * **NextToken** *(string) --* Pagination token returned by the GET list request when results exceed the maximum allowed. Use the token to fetch the next page of results. MediaTailor / Client / get_prefetch_schedule get_prefetch_schedule ********************* MediaTailor.Client.get_prefetch_schedule(**kwargs) Retrieves a prefetch schedule for a playback configuration. A prefetch schedule allows you to tell MediaTailor to fetch and prepare certain ads before an ad break happens. For more information about ad prefetching, see Using ad prefetching in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.get_prefetch_schedule( Name='string', PlaybackConfigurationName='string' ) Parameters: * **Name** (*string*) -- **[REQUIRED]** The name of the prefetch schedule. The name must be unique among all prefetch schedules that are associated with the specified playback configuration. * **PlaybackConfigurationName** (*string*) -- **[REQUIRED]** Returns information about the prefetch schedule for a specific playback configuration. If you call "GetPrefetchSchedule" on an expired prefetch schedule, MediaTailor returns an HTTP 404 status code. Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'Consumption': { 'AvailMatchingCriteria': [ { 'DynamicVariable': 'string', 'Operator': 'EQUALS' }, ], 'EndTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1) }, 'Name': 'string', 'PlaybackConfigurationName': 'string', 'Retrieval': { 'DynamicVariables': { 'string': 'string' }, 'EndTime': datetime(2015, 1, 1), 'StartTime': datetime(2015, 1, 1), 'TrafficShapingType': 'RETRIEVAL_WINDOW', 'TrafficShapingRetrievalWindow': { 'RetrievalWindowDurationSeconds': 123 } }, 'ScheduleType': 'SINGLE'|'RECURRING', 'RecurringPrefetchConfiguration': { 'StartTime': datetime(2015, 1, 1), 'EndTime': datetime(2015, 1, 1), 'RecurringConsumption': { 'RetrievedAdExpirationSeconds': 123, 'AvailMatchingCriteria': [ { 'DynamicVariable': 'string', 'Operator': 'EQUALS' }, ] }, 'RecurringRetrieval': { 'DynamicVariables': { 'string': 'string' }, 'DelayAfterAvailEndSeconds': 123, 'TrafficShapingType': 'RETRIEVAL_WINDOW', 'TrafficShapingRetrievalWindow': { 'RetrievalWindowDurationSeconds': 123 } } }, 'StreamId': 'string' } **Response Structure** * *(dict) --* * **Arn** *(string) --* The Amazon Resource Name (ARN) of the prefetch schedule. * **Consumption** *(dict) --* The configuration settings for how and when MediaTailor consumes prefetched ads from the ad decision server for single prefetch schedules. Each consumption configuration contains an end time and an optional start time that define the *consumption window*. Prefetch schedules automatically expire no earlier than seven days after the end time. * **AvailMatchingCriteria** *(list) --* If you only want MediaTailor to insert prefetched ads into avails (ad breaks) that match specific dynamic variables, such as "scte.event_id", set the avail matching criteria. * *(dict) --* MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into. As an example, let's say that you set "DynamicVariable" to "scte.event_id" and "Operator" to "EQUALS", and your playback configuration has an ADS URL of "https://my.ad s.server.com/path?&podId=[scte.avail_num]&event=[scte.e vent_id]&duration=[session.avail_duration_secs]". And the prefetch request to the ADS contains these values "https://my.ads.server.com/path?&podId=3&event=my- awesome-event&duration=30". MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of "my-awesome-event", since it must match the event id that MediaTailor uses to query the ADS. You can specify up to five "AvailMatchingCriteria". If you specify multiple "AvailMatchingCriteria", MediaTailor combines them to match using a logical "AND". You can model logical "OR" combinations by creating multiple prefetch schedules. * **DynamicVariable** *(string) --* The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the *MediaTailor User Guide*. You can include up to 100 dynamic variables. * **Operator** *(string) --* For the "DynamicVariable" specified in "AvailMatchingCriteria", the Operator that is used for the comparison. * **EndTime** *(datetime) --* The time when MediaTailor no longer considers the prefetched ads for use in an ad break. MediaTailor automatically deletes prefetch schedules no less than seven days after the end time. If you'd like to manually delete the prefetch schedule, you can call "DeletePrefetchSchedule". * **StartTime** *(datetime) --* The time when prefetched ads are considered for use in an ad break. If you don't specify "StartTime", the prefetched ads are available after MediaTailor retrieves them from the ad decision server. * **Name** *(string) --* The name of the prefetch schedule. The name must be unique among all prefetch schedules that are associated with the specified playback configuration. * **PlaybackConfigurationName** *(string) --* The name of the playback configuration to create the prefetch schedule for. * **Retrieval** *(dict) --* A complex type that contains settings for prefetch retrieval from the ad decision server (ADS). * **DynamicVariables** *(dict) --* The dynamic variables to use for substitution during prefetch requests to the ad decision server (ADS). You initially configure dynamic variables for the ADS URL when you set up your playback configuration. When you specify "DynamicVariables" for prefetch retrieval, MediaTailor includes the dynamic variables in the request to the ADS. * *(string) --* * *(string) --* * **EndTime** *(datetime) --* The time when prefetch retrieval ends for the ad break. Prefetching will be attempted for manifest requests that occur at or before this time. * **StartTime** *(datetime) --* The time when prefetch retrievals can start for this break. Ad prefetching will be attempted for manifest requests that occur at or after this time. Defaults to the current time. If not specified, the prefetch retrieval starts as soon as possible. * **TrafficShapingType** *(string) --* Indicates if this configuration uses a retrieval window for traffic shaping and limiting the number of requests to the ADS at one time. * **TrafficShapingRetrievalWindow** *(dict) --* Configuration for spreading ADS traffic across a set window instead of sending ADS requests for all sessions at the same time. * **RetrievalWindowDurationSeconds** *(integer) --* The amount of time, in seconds, that MediaTailor spreads prefetch requests to the ADS. * **ScheduleType** *(string) --* The frequency that MediaTailor creates prefetch schedules. "SINGLE" indicates that this schedule applies to one ad break. "RECURRING" indicates that MediaTailor automatically creates a schedule for each ad avail in a live event. * **RecurringPrefetchConfiguration** *(dict) --* The configuration that defines how and when MediaTailor performs ad prefetching in a live event. * **StartTime** *(datetime) --* The start time for the window that MediaTailor prefetches and inserts ads in a live event. * **EndTime** *(datetime) --* The end time for the window that MediaTailor prefetches and inserts ads in a live event. * **RecurringConsumption** *(dict) --* The settings that determine how and when MediaTailor places prefetched ads into upcoming ad breaks for recurring prefetch scedules. * **RetrievedAdExpirationSeconds** *(integer) --* The number of seconds that an ad is available for insertion after it was prefetched. * **AvailMatchingCriteria** *(list) --* The configuration for the dynamic variables that determine which ad breaks that MediaTailor inserts prefetched ads in. * *(dict) --* MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into. As an example, let's say that you set "DynamicVariable" to "scte.event_id" and "Operator" to "EQUALS", and your playback configuration has an ADS URL of "https://my.ads.server.com/path?&podId=[scte.a vail_num]&event=[scte.event_id]&duration=[session.ava il_duration_secs]". And the prefetch request to the ADS contains these values "https://my.ads.server.com/path?&podId=3&event=my- awesome-event&duration=30". MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of "my-awesome-event", since it must match the event id that MediaTailor uses to query the ADS. You can specify up to five "AvailMatchingCriteria". If you specify multiple "AvailMatchingCriteria", MediaTailor combines them to match using a logical "AND". You can model logical "OR" combinations by creating multiple prefetch schedules. * **DynamicVariable** *(string) --* The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the *MediaTailor User Guide*. You can include up to 100 dynamic variables. * **Operator** *(string) --* For the "DynamicVariable" specified in "AvailMatchingCriteria", the Operator that is used for the comparison. * **RecurringRetrieval** *(dict) --* The configuration for prefetch ad retrieval from the ADS. * **DynamicVariables** *(dict) --* The dynamic variables to use for substitution during prefetch requests to the ADS. * *(string) --* * *(string) --* * **DelayAfterAvailEndSeconds** *(integer) --* The number of seconds that MediaTailor waits after an ad avail before prefetching ads for the next avail. If not set, the default is 0 (no delay). * **TrafficShapingType** *(string) --* Indicates if this configuration uses a retrieval window for traffic shaping and limiting the number of requests to the ADS at one time. * **TrafficShapingRetrievalWindow** *(dict) --* Configuration for spreading ADS traffic across a set window instead of sending ADS requests for all sessions at the same time. * **RetrievalWindowDurationSeconds** *(integer) --* The amount of time, in seconds, that MediaTailor spreads prefetch requests to the ADS. * **StreamId** *(string) --* An optional stream identifier that you can specify in order to prefetch for multiple streams that use the same playback configuration. MediaTailor / Client / update_channel update_channel ************** MediaTailor.Client.update_channel(**kwargs) Updates a channel. For information about MediaTailor channels, see Working with channels in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.update_channel( ChannelName='string', FillerSlate={ 'SourceLocationName': 'string', 'VodSourceName': 'string' }, Outputs=[ { 'DashPlaylistSettings': { 'ManifestWindowSeconds': 123, 'MinBufferTimeSeconds': 123, 'MinUpdatePeriodSeconds': 123, 'SuggestedPresentationDelaySeconds': 123 }, 'HlsPlaylistSettings': { 'ManifestWindowSeconds': 123, 'AdMarkupType': [ 'DATERANGE'|'SCTE35_ENHANCED', ] }, 'ManifestName': 'string', 'SourceGroup': 'string' }, ], TimeShiftConfiguration={ 'MaxTimeDelaySeconds': 123 }, Audiences=[ 'string', ] ) Parameters: * **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel. * **FillerSlate** (*dict*) -- The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the "LINEAR" "PlaybackMode". MediaTailor doesn't support filler slate for channels using the "LOOP" "PlaybackMode". * **SourceLocationName** *(string) --* The name of the source location where the slate VOD source is stored. * **VodSourceName** *(string) --* The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate. * **Outputs** (*list*) -- **[REQUIRED]** The channel's output properties. * *(dict) --* The output configuration for this channel. * **DashPlaylistSettings** *(dict) --* DASH manifest configuration parameters. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **MinBufferTimeSeconds** *(integer) --* Minimum amount of content (measured in seconds) that a player must keep available in the buffer. Minimum value: "2" seconds. Maximum value: "60" seconds. * **MinUpdatePeriodSeconds** *(integer) --* Minimum amount of time (in seconds) that the player should wait before requesting updates to the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **SuggestedPresentationDelaySeconds** *(integer) --* Amount of time (in seconds) that the player should be from the live point at the end of the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **HlsPlaylistSettings** *(dict) --* HLS playlist configuration parameters. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **AdMarkupType** *(list) --* Determines the type of SCTE 35 tags to use in ad markup. Specify "DATERANGE" to use "DATERANGE" tags (for live or VOD content). Specify "SCTE35_ENHANCED" to use "EXT-X -CUE-OUT" and "EXT-X-CUE-IN" tags (for VOD content only). * *(string) --* * **ManifestName** *(string) --* **[REQUIRED]** The name of the manifest for the channel. The name appears in the "PlaybackUrl". * **SourceGroup** *(string) --* **[REQUIRED]** A string used to match which "HttpPackageConfiguration" is used for each "VodSource". * **TimeShiftConfiguration** (*dict*) -- The time-shifted viewing configuration you want to associate to the channel. * **MaxTimeDelaySeconds** *(integer) --* **[REQUIRED]** The maximum time delay for time-shifted viewing. The minimum allowed maximum time delay is 0 seconds, and the maximum allowed maximum time delay is 21600 seconds (6 hours). * **Audiences** (*list*) -- The list of audiences defined in channel. * *(string) --* Return type: dict Returns: **Response Syntax** { 'Arn': 'string', 'ChannelName': 'string', 'ChannelState': 'RUNNING'|'STOPPED', 'CreationTime': datetime(2015, 1, 1), 'FillerSlate': { 'SourceLocationName': 'string', 'VodSourceName': 'string' }, 'LastModifiedTime': datetime(2015, 1, 1), 'Outputs': [ { 'DashPlaylistSettings': { 'ManifestWindowSeconds': 123, 'MinBufferTimeSeconds': 123, 'MinUpdatePeriodSeconds': 123, 'SuggestedPresentationDelaySeconds': 123 }, 'HlsPlaylistSettings': { 'ManifestWindowSeconds': 123, 'AdMarkupType': [ 'DATERANGE'|'SCTE35_ENHANCED', ] }, 'ManifestName': 'string', 'PlaybackUrl': 'string', 'SourceGroup': 'string' }, ], 'PlaybackMode': 'string', 'Tags': { 'string': 'string' }, 'Tier': 'string', 'TimeShiftConfiguration': { 'MaxTimeDelaySeconds': 123 }, 'Audiences': [ 'string', ] } **Response Structure** * *(dict) --* * **Arn** *(string) --* The Amazon Resource Name (ARN) associated with the channel. * **ChannelName** *(string) --* The name of the channel. * **ChannelState** *(string) --* Returns the state whether the channel is running or not. * **CreationTime** *(datetime) --* The timestamp of when the channel was created. * **FillerSlate** *(dict) --* The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the "LINEAR" "PlaybackMode". MediaTailor doesn't support filler slate for channels using the "LOOP" "PlaybackMode". * **SourceLocationName** *(string) --* The name of the source location where the slate VOD source is stored. * **VodSourceName** *(string) --* The slate VOD source name. The VOD source must already exist in a source location before it can be used for slate. * **LastModifiedTime** *(datetime) --* The timestamp that indicates when the channel was last modified. * **Outputs** *(list) --* The channel's output properties. * *(dict) --* The output item response. * **DashPlaylistSettings** *(dict) --* DASH manifest configuration settings. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **MinBufferTimeSeconds** *(integer) --* Minimum amount of content (measured in seconds) that a player must keep available in the buffer. Minimum value: "2" seconds. Maximum value: "60" seconds. * **MinUpdatePeriodSeconds** *(integer) --* Minimum amount of time (in seconds) that the player should wait before requesting updates to the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **SuggestedPresentationDelaySeconds** *(integer) --* Amount of time (in seconds) that the player should be from the live point at the end of the manifest. Minimum value: "2" seconds. Maximum value: "60" seconds. * **HlsPlaylistSettings** *(dict) --* HLS manifest configuration settings. * **ManifestWindowSeconds** *(integer) --* The total duration (in seconds) of each manifest. Minimum value: "30" seconds. Maximum value: "3600" seconds. * **AdMarkupType** *(list) --* Determines the type of SCTE 35 tags to use in ad markup. Specify "DATERANGE" to use "DATERANGE" tags (for live or VOD content). Specify "SCTE35_ENHANCED" to use "EXT-X-CUE-OUT" and "EXT-X-CUE-IN" tags (for VOD content only). * *(string) --* * **ManifestName** *(string) --* The name of the manifest for the channel that will appear in the channel output's playback URL. * **PlaybackUrl** *(string) --* The URL used for playback by content players. * **SourceGroup** *(string) --* A string used to associate a package configuration source group with a channel output. * **PlaybackMode** *(string) --* The type of playback mode for this channel. "LINEAR" - Programs play back-to-back only once. "LOOP" - Programs play back-to-back in an endless loop. When the last program in the schedule plays, playback loops back to the first program in the schedule. * **Tags** *(dict) --* The tags to assign to the channel. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see Tagging AWS Elemental MediaTailor Resources. * *(string) --* * *(string) --* * **Tier** *(string) --* The tier associated with this Channel. * **TimeShiftConfiguration** *(dict) --* The time-shifted viewing configuration for the channel. * **MaxTimeDelaySeconds** *(integer) --* The maximum time delay for time-shifted viewing. The minimum allowed maximum time delay is 0 seconds, and the maximum allowed maximum time delay is 21600 seconds (6 hours). * **Audiences** *(list) --* The list of audiences defined in channel. * *(string) --* MediaTailor / Client / get_channel_policy get_channel_policy ****************** MediaTailor.Client.get_channel_policy(**kwargs) Returns the channel's IAM policy. IAM policies are used to control access to your channel. See also: AWS API Documentation **Request Syntax** response = client.get_channel_policy( ChannelName='string' ) Parameters: **ChannelName** (*string*) -- **[REQUIRED]** The name of the channel associated with this Channel Policy. Return type: dict Returns: **Response Syntax** { 'Policy': 'string' } **Response Structure** * *(dict) --* * **Policy** *(string) --* The IAM policy for the channel. IAM policies are used to control access to your channel. MediaTailor / Client / delete_prefetch_schedule delete_prefetch_schedule ************************ MediaTailor.Client.delete_prefetch_schedule(**kwargs) Deletes a prefetch schedule for a specific playback configuration. If you call "DeletePrefetchSchedule" on an expired prefetch schedule, MediaTailor returns an HTTP 404 status code. For more information about ad prefetching, see Using ad prefetching in the *MediaTailor User Guide*. See also: AWS API Documentation **Request Syntax** response = client.delete_prefetch_schedule( Name='string', PlaybackConfigurationName='string' ) Parameters: * **Name** (*string*) -- **[REQUIRED]** The name of the prefetch schedule. If the action is successful, the service sends back an HTTP 204 response with an empty HTTP body. * **PlaybackConfigurationName** (*string*) -- **[REQUIRED]** The name of the playback configuration for this prefetch schedule. Return type: dict Returns: **Response Syntax** {} **Response Structure** * *(dict) --*