diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index 83779fb..57276b2 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -163,14 +163,18 @@ docs/UpdateAssetMasterAccessRequest.md docs/UpdateAssetRequest.md docs/UpdateLiveStreamEmbeddedSubtitlesRequest.md docs/UpdateLiveStreamGeneratedSubtitlesRequest.md +docs/UpdateLiveStreamNewAssetSettings.md docs/UpdateLiveStreamRequest.md docs/UpdateReferrerDomainRestrictionRequest.md docs/UpdateTranscriptionVocabularyRequest.md +docs/UpdateUserAgentRestrictionRequest.md docs/UpdateWebInputUrlRequest.md docs/Upload.md docs/UploadError.md docs/UploadResponse.md docs/UrlSigningKeysApi.md +docs/UserAgentRestrictionRequest.md +docs/UserAgentRestrictionSettings.md docs/VideoView.md docs/VideoViewEvent.md docs/VideoViewResponse.md @@ -366,13 +370,17 @@ src/main/java/com/mux/sdk/models/UpdateAssetMasterAccessRequest.java src/main/java/com/mux/sdk/models/UpdateAssetRequest.java src/main/java/com/mux/sdk/models/UpdateLiveStreamEmbeddedSubtitlesRequest.java src/main/java/com/mux/sdk/models/UpdateLiveStreamGeneratedSubtitlesRequest.java +src/main/java/com/mux/sdk/models/UpdateLiveStreamNewAssetSettings.java src/main/java/com/mux/sdk/models/UpdateLiveStreamRequest.java src/main/java/com/mux/sdk/models/UpdateReferrerDomainRestrictionRequest.java src/main/java/com/mux/sdk/models/UpdateTranscriptionVocabularyRequest.java +src/main/java/com/mux/sdk/models/UpdateUserAgentRestrictionRequest.java src/main/java/com/mux/sdk/models/UpdateWebInputUrlRequest.java src/main/java/com/mux/sdk/models/Upload.java src/main/java/com/mux/sdk/models/UploadError.java src/main/java/com/mux/sdk/models/UploadResponse.java +src/main/java/com/mux/sdk/models/UserAgentRestrictionRequest.java +src/main/java/com/mux/sdk/models/UserAgentRestrictionSettings.java src/main/java/com/mux/sdk/models/VideoView.java src/main/java/com/mux/sdk/models/VideoViewEvent.java src/main/java/com/mux/sdk/models/VideoViewResponse.java diff --git a/README.md b/README.md index e83763e..8fe4673 100644 --- a/README.md +++ b/README.md @@ -185,6 +185,7 @@ Class | Method | HTTP request | Description *PlaybackRestrictionsApi* | [**getPlaybackRestriction**](docs/PlaybackRestrictionsApi.md#getPlaybackRestriction) | **GET** /video/v1/playback-restrictions/{PLAYBACK_RESTRICTION_ID} | Retrieve a Playback Restriction *PlaybackRestrictionsApi* | [**listPlaybackRestrictions**](docs/PlaybackRestrictionsApi.md#listPlaybackRestrictions) | **GET** /video/v1/playback-restrictions | List Playback Restrictions *PlaybackRestrictionsApi* | [**updateReferrerDomainRestriction**](docs/PlaybackRestrictionsApi.md#updateReferrerDomainRestriction) | **PUT** /video/v1/playback-restrictions/{PLAYBACK_RESTRICTION_ID}/referrer | Update the Referrer Playback Restriction +*PlaybackRestrictionsApi* | [**updateUserAgentRestriction**](docs/PlaybackRestrictionsApi.md#updateUserAgentRestriction) | **PUT** /video/v1/playback-restrictions/{PLAYBACK_RESTRICTION_ID}/user_agent | Update the User Agent Restriction *RealTimeApi* | [**getRealtimeBreakdown**](docs/RealTimeApi.md#getRealtimeBreakdown) | **GET** /data/v1/realtime/metrics/{REALTIME_METRIC_ID}/breakdown | Get Real-Time Breakdown *RealTimeApi* | [**getRealtimeHistogramTimeseries**](docs/RealTimeApi.md#getRealtimeHistogramTimeseries) | **GET** /data/v1/realtime/metrics/{REALTIME_HISTOGRAM_METRIC_ID}/histogram-timeseries | Get Real-Time Histogram Timeseries *RealTimeApi* | [**getRealtimeTimeseries**](docs/RealTimeApi.md#getRealtimeTimeseries) | **GET** /data/v1/realtime/metrics/{REALTIME_METRIC_ID}/timeseries | Get Real-Time Timeseries @@ -371,13 +372,17 @@ Class | Method | HTTP request | Description - [UpdateAssetRequest](docs/UpdateAssetRequest.md) - [UpdateLiveStreamEmbeddedSubtitlesRequest](docs/UpdateLiveStreamEmbeddedSubtitlesRequest.md) - [UpdateLiveStreamGeneratedSubtitlesRequest](docs/UpdateLiveStreamGeneratedSubtitlesRequest.md) + - [UpdateLiveStreamNewAssetSettings](docs/UpdateLiveStreamNewAssetSettings.md) - [UpdateLiveStreamRequest](docs/UpdateLiveStreamRequest.md) - [UpdateReferrerDomainRestrictionRequest](docs/UpdateReferrerDomainRestrictionRequest.md) - [UpdateTranscriptionVocabularyRequest](docs/UpdateTranscriptionVocabularyRequest.md) + - [UpdateUserAgentRestrictionRequest](docs/UpdateUserAgentRestrictionRequest.md) - [UpdateWebInputUrlRequest](docs/UpdateWebInputUrlRequest.md) - [Upload](docs/Upload.md) - [UploadError](docs/UploadError.md) - [UploadResponse](docs/UploadResponse.md) + - [UserAgentRestrictionRequest](docs/UserAgentRestrictionRequest.md) + - [UserAgentRestrictionSettings](docs/UserAgentRestrictionSettings.md) - [VideoView](docs/VideoView.md) - [VideoViewEvent](docs/VideoViewEvent.md) - [VideoViewResponse](docs/VideoViewResponse.md) diff --git a/docs/AbridgedVideoView.md b/docs/AbridgedVideoView.md index ad5409a..9b6e2ae 100644 --- a/docs/AbridgedVideoView.md +++ b/docs/AbridgedVideoView.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **viewEnd** | **String** | | [optional] **viewerExperienceScore** | **Float** | | [optional] **watchTime** | **Integer** | | [optional] +**playbackFailure** | **Boolean** | | [optional] diff --git a/docs/CreatePlaybackRestrictionRequest.md b/docs/CreatePlaybackRestrictionRequest.md index 66caaf6..1832eb9 100644 --- a/docs/CreatePlaybackRestrictionRequest.md +++ b/docs/CreatePlaybackRestrictionRequest.md @@ -7,6 +7,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **referrer** | [**ReferrerDomainRestriction**](ReferrerDomainRestriction.md) | | [optional] +**userAgent** | [**UserAgentRestrictionRequest**](UserAgentRestrictionRequest.md) | | [optional] diff --git a/docs/DeliveryReport.md b/docs/DeliveryReport.md index 99ba244..7b66434 100644 --- a/docs/DeliveryReport.md +++ b/docs/DeliveryReport.md @@ -14,6 +14,7 @@ Name | Type | Description | Notes **assetState** | [**AssetStateEnum**](#AssetStateEnum) | The state of the asset. | [optional] **assetDuration** | **Double** | The duration of the asset in seconds. | [optional] **assetResolutionTier** | [**AssetResolutionTierEnum**](#AssetResolutionTierEnum) | The resolution tier that the asset was ingested at, affecting billing for ingest & storage | [optional] +**assetEncodingTier** | [**AssetEncodingTierEnum**](#AssetEncodingTierEnum) | The encoding tier that the asset was ingested at. [See the encoding tiers guide for more details.](https://docs.mux.com/guides/use-encoding-tiers) | [optional] **deliveredSeconds** | **Double** | Total number of delivered seconds during this time window. | [optional] **deliveredSecondsByResolution** | [**DeliveryReportDeliveredSecondsByResolution**](DeliveryReportDeliveredSecondsByResolution.md) | | [optional] @@ -41,3 +42,12 @@ _2160P | "2160p" +## Enum: AssetEncodingTierEnum + +Name | Value +---- | ----- +SMART | "smart" +BASELINE | "baseline" + + + diff --git a/docs/GenerateTrackSubtitlesResponse.md b/docs/GenerateTrackSubtitlesResponse.md index 858cb8c..31c1748 100644 --- a/docs/GenerateTrackSubtitlesResponse.md +++ b/docs/GenerateTrackSubtitlesResponse.md @@ -6,7 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**data** | [**Track**](Track.md) | | [optional] +**data** | [**java.util.List<Track>**](Track.md) | | [optional] diff --git a/docs/MetricsApi.md b/docs/MetricsApi.md index e83068f..b719018 100644 --- a/docs/MetricsApi.md +++ b/docs/MetricsApi.md @@ -72,7 +72,7 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **METRIC_ID** | **String**| ID of the Metric | [enum: aggregate_startup_time, downscale_percentage, exits_before_video_start, live_stream_latency, max_downscale_percentage, max_request_latency, max_upscale_percentage, page_load_time, playback_failure_percentage, playback_success_score, player_startup_time, playing_time, rebuffer_count, rebuffer_duration, rebuffer_frequency, rebuffer_percentage, request_latency, request_throughput, rebuffer_score, requests_for_first_preroll, seek_latency, startup_time_score, unique_viewers, upscale_percentage, video_quality_score, video_startup_preroll_load_time, video_startup_preroll_request_time, video_startup_time, viewer_experience_score, views, weighted_average_bitrate, video_startup_failure_percentage, ad_attempt_count, ad_break_count, ad_break_error_count, ad_break_error_percentage, ad_error_count, ad_error_percentage, ad_exit_before_start_count, ad_exit_before_start_percentage, ad_impression_count, ad_startup_error_count, ad_startup_error_percentage, playback_business_exception_percentage, video_startup_business_exception_percentage] + **METRIC_ID** | **String**| ID of the Metric | [enum: aggregate_startup_time, downscale_percentage, exits_before_video_start, live_stream_latency, max_downscale_percentage, max_request_latency, max_upscale_percentage, page_load_time, playback_failure_percentage, playback_success_score, player_startup_time, playing_time, rebuffer_count, rebuffer_duration, rebuffer_frequency, rebuffer_percentage, request_latency, request_throughput, rebuffer_score, requests_for_first_preroll, seek_latency, startup_time_score, unique_viewers, upscale_percentage, video_quality_score, video_startup_preroll_load_time, video_startup_preroll_request_time, video_startup_time, viewer_experience_score, views, weighted_average_bitrate, video_startup_failure_percentage, ad_attempt_count, ad_break_count, ad_break_error_count, ad_break_error_percentage, ad_error_count, ad_error_percentage, ad_exit_before_start_count, ad_exit_before_start_percentage, ad_impression_count, ad_startup_error_count, ad_startup_error_percentage, playback_business_exception_percentage, video_startup_business_exception_percentage, view_content_startup_time, ad_preroll_startup_time, ad_watch_time, view_content_watch_time] **timeframe** | [**java.util.List<String>**](String.md)| Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=). Accepted formats are... * array of epoch timestamps e.g. `timeframe[]=1498867200&timeframe[]=1498953600` * duration string e.g. `timeframe[]=24:hours or timeframe[]=7:days` | [optional] **filters** | [**java.util.List<String>**](String.md)| Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter. To exclude rows that match a certain condition, prepend a `!` character to the dimension. Possible filter names are the same as returned by the List Filters endpoint. Example: * `filters[]=operating_system:windows&filters[]=!country:US` | [optional] **metricFilters** | [**java.util.List<String>**](String.md)| Limit the results to rows that match inequality conditions from provided metric comparison clauses. Must be provided as an array query string parameter. Possible filterable metrics are the same as the set of metric ids, with the exceptions of `exits_before_video_start`, `unique_viewers`, `video_startup_failure_percentage`, and `views`. Example: * `metric_filters[]=aggregate_startup_time>=1000` | [optional] @@ -155,7 +155,7 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **METRIC_ID** | **String**| ID of the Metric | [enum: aggregate_startup_time, downscale_percentage, exits_before_video_start, live_stream_latency, max_downscale_percentage, max_request_latency, max_upscale_percentage, page_load_time, playback_failure_percentage, playback_success_score, player_startup_time, playing_time, rebuffer_count, rebuffer_duration, rebuffer_frequency, rebuffer_percentage, request_latency, request_throughput, rebuffer_score, requests_for_first_preroll, seek_latency, startup_time_score, unique_viewers, upscale_percentage, video_quality_score, video_startup_preroll_load_time, video_startup_preroll_request_time, video_startup_time, viewer_experience_score, views, weighted_average_bitrate, video_startup_failure_percentage, ad_attempt_count, ad_break_count, ad_break_error_count, ad_break_error_percentage, ad_error_count, ad_error_percentage, ad_exit_before_start_count, ad_exit_before_start_percentage, ad_impression_count, ad_startup_error_count, ad_startup_error_percentage, playback_business_exception_percentage, video_startup_business_exception_percentage] + **METRIC_ID** | **String**| ID of the Metric | [enum: aggregate_startup_time, downscale_percentage, exits_before_video_start, live_stream_latency, max_downscale_percentage, max_request_latency, max_upscale_percentage, page_load_time, playback_failure_percentage, playback_success_score, player_startup_time, playing_time, rebuffer_count, rebuffer_duration, rebuffer_frequency, rebuffer_percentage, request_latency, request_throughput, rebuffer_score, requests_for_first_preroll, seek_latency, startup_time_score, unique_viewers, upscale_percentage, video_quality_score, video_startup_preroll_load_time, video_startup_preroll_request_time, video_startup_time, viewer_experience_score, views, weighted_average_bitrate, video_startup_failure_percentage, ad_attempt_count, ad_break_count, ad_break_error_count, ad_break_error_percentage, ad_error_count, ad_error_percentage, ad_exit_before_start_count, ad_exit_before_start_percentage, ad_impression_count, ad_startup_error_count, ad_startup_error_percentage, playback_business_exception_percentage, video_startup_business_exception_percentage, view_content_startup_time, ad_preroll_startup_time, ad_watch_time, view_content_watch_time] **timeframe** | [**java.util.List<String>**](String.md)| Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=). Accepted formats are... * array of epoch timestamps e.g. `timeframe[]=1498867200&timeframe[]=1498953600` * duration string e.g. `timeframe[]=24:hours or timeframe[]=7:days` | [optional] **filters** | [**java.util.List<String>**](String.md)| Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter. To exclude rows that match a certain condition, prepend a `!` character to the dimension. Possible filter names are the same as returned by the List Filters endpoint. Example: * `filters[]=operating_system:windows&filters[]=!country:US` | [optional] **metricFilters** | [**java.util.List<String>**](String.md)| Limit the results to rows that match inequality conditions from provided metric comparison clauses. Must be provided as an array query string parameter. Possible filterable metrics are the same as the set of metric ids, with the exceptions of `exits_before_video_start`, `unique_viewers`, `video_startup_failure_percentage`, and `views`. Example: * `metric_filters[]=aggregate_startup_time>=1000` | [optional] @@ -240,7 +240,7 @@ Name | Type | Description | Notes **timeframe** | [**java.util.List<String>**](String.md)| Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=). Accepted formats are... * array of epoch timestamps e.g. `timeframe[]=1498867200&timeframe[]=1498953600` * duration string e.g. `timeframe[]=24:hours or timeframe[]=7:days` | [optional] **filters** | [**java.util.List<String>**](String.md)| Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter. To exclude rows that match a certain condition, prepend a `!` character to the dimension. Possible filter names are the same as returned by the List Filters endpoint. Example: * `filters[]=operating_system:windows&filters[]=!country:US` | [optional] **metricFilters** | [**java.util.List<String>**](String.md)| Limit the results to rows that match inequality conditions from provided metric comparison clauses. Must be provided as an array query string parameter. Possible filterable metrics are the same as the set of metric ids, with the exceptions of `exits_before_video_start`, `unique_viewers`, `video_startup_failure_percentage`, and `views`. Example: * `metric_filters[]=aggregate_startup_time>=1000` | [optional] - **dimension** | **String**| Dimension the specified value belongs to | [optional] [enum: asn, asset_id, browser, browser_version, cdn, continent_code, country, custom_1, custom_2, custom_3, custom_4, custom_5, custom_6, custom_7, custom_8, custom_9, custom_10, exit_before_video_start, experiment_name, live_stream_id, operating_system, operating_system_version, page_type, playback_failure, playback_business_exception, playback_id, player_autoplay, player_error_code, player_mux_plugin_name, player_mux_plugin_version, player_name, player_preload, player_remote_played, player_software, player_software_version, player_version, preroll_ad_asset_hostname, preroll_ad_tag_hostname, preroll_played, preroll_requested, region, source_hostname, source_type, stream_type, sub_property_id, video_content_type, video_encoding_variant, video_id, video_series, video_startup_failure, video_startup_business_exception, video_title, view_drm_type, view_has_ad, view_session_id, viewer_connection_type, viewer_device_category, viewer_device_manufacturer, viewer_device_model, viewer_device_name, viewer_user_id] + **dimension** | **String**| Dimension the specified value belongs to | [optional] [enum: asn, asset_id, browser, browser_version, cdn, continent_code, country, custom_1, custom_2, custom_3, custom_4, custom_5, custom_6, custom_7, custom_8, custom_9, custom_10, exit_before_video_start, experiment_name, live_stream_id, operating_system, operating_system_version, page_type, playback_failure, playback_business_exception, playback_id, player_autoplay, player_error_code, player_mux_plugin_name, player_mux_plugin_version, player_name, player_preload, player_remote_played, player_software, player_software_version, player_version, preroll_ad_asset_hostname, preroll_ad_tag_hostname, preroll_played, preroll_requested, region, source_hostname, source_type, stream_type, sub_property_id, video_content_type, video_encoding_variant, video_id, video_series, video_startup_failure, video_startup_business_exception, video_title, view_drm_type, view_has_ad, view_session_id, viewer_connection_type, viewer_device_category, viewer_device_manufacturer, viewer_device_model, viewer_device_name, viewer_user_id, ad_playback_failure, content_playback_failure] **value** | **String**| Value to show all available metrics for | [optional] ### Return type @@ -328,8 +328,8 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **METRIC_ID** | **String**| ID of the Metric | [enum: aggregate_startup_time, downscale_percentage, exits_before_video_start, live_stream_latency, max_downscale_percentage, max_request_latency, max_upscale_percentage, page_load_time, playback_failure_percentage, playback_success_score, player_startup_time, playing_time, rebuffer_count, rebuffer_duration, rebuffer_frequency, rebuffer_percentage, request_latency, request_throughput, rebuffer_score, requests_for_first_preroll, seek_latency, startup_time_score, unique_viewers, upscale_percentage, video_quality_score, video_startup_preroll_load_time, video_startup_preroll_request_time, video_startup_time, viewer_experience_score, views, weighted_average_bitrate, video_startup_failure_percentage, ad_attempt_count, ad_break_count, ad_break_error_count, ad_break_error_percentage, ad_error_count, ad_error_percentage, ad_exit_before_start_count, ad_exit_before_start_percentage, ad_impression_count, ad_startup_error_count, ad_startup_error_percentage, playback_business_exception_percentage, video_startup_business_exception_percentage] - **groupBy** | **String**| Breakdown value to group the results by | [optional] [enum: asn, asset_id, browser, browser_version, cdn, continent_code, country, custom_1, custom_2, custom_3, custom_4, custom_5, custom_6, custom_7, custom_8, custom_9, custom_10, exit_before_video_start, experiment_name, live_stream_id, operating_system, operating_system_version, page_type, playback_failure, playback_business_exception, playback_id, player_autoplay, player_error_code, player_mux_plugin_name, player_mux_plugin_version, player_name, player_preload, player_remote_played, player_software, player_software_version, player_version, preroll_ad_asset_hostname, preroll_ad_tag_hostname, preroll_played, preroll_requested, region, source_hostname, source_type, stream_type, sub_property_id, video_content_type, video_encoding_variant, video_id, video_series, video_startup_business_exception, video_startup_failure, video_title, view_drm_type, view_has_ad, view_session_id, viewer_connection_type, viewer_device_category, viewer_device_manufacturer, viewer_device_model, viewer_device_name, viewer_user_id] + **METRIC_ID** | **String**| ID of the Metric | [enum: aggregate_startup_time, downscale_percentage, exits_before_video_start, live_stream_latency, max_downscale_percentage, max_request_latency, max_upscale_percentage, page_load_time, playback_failure_percentage, playback_success_score, player_startup_time, playing_time, rebuffer_count, rebuffer_duration, rebuffer_frequency, rebuffer_percentage, request_latency, request_throughput, rebuffer_score, requests_for_first_preroll, seek_latency, startup_time_score, unique_viewers, upscale_percentage, video_quality_score, video_startup_preroll_load_time, video_startup_preroll_request_time, video_startup_time, viewer_experience_score, views, weighted_average_bitrate, video_startup_failure_percentage, ad_attempt_count, ad_break_count, ad_break_error_count, ad_break_error_percentage, ad_error_count, ad_error_percentage, ad_exit_before_start_count, ad_exit_before_start_percentage, ad_impression_count, ad_startup_error_count, ad_startup_error_percentage, playback_business_exception_percentage, video_startup_business_exception_percentage, view_content_startup_time, ad_preroll_startup_time, ad_watch_time, view_content_watch_time] + **groupBy** | **String**| Breakdown value to group the results by | [optional] [enum: asn, asset_id, browser, browser_version, cdn, continent_code, country, custom_1, custom_2, custom_3, custom_4, custom_5, custom_6, custom_7, custom_8, custom_9, custom_10, exit_before_video_start, experiment_name, live_stream_id, operating_system, operating_system_version, page_type, playback_failure, playback_business_exception, playback_id, player_autoplay, player_error_code, player_mux_plugin_name, player_mux_plugin_version, player_name, player_preload, player_remote_played, player_software, player_software_version, player_version, preroll_ad_asset_hostname, preroll_ad_tag_hostname, preroll_played, preroll_requested, region, source_hostname, source_type, stream_type, sub_property_id, video_content_type, video_encoding_variant, video_id, video_series, video_startup_business_exception, video_startup_failure, video_title, view_drm_type, view_has_ad, view_session_id, viewer_connection_type, viewer_device_category, viewer_device_manufacturer, viewer_device_model, viewer_device_name, viewer_user_id, ad_playback_failure, content_playback_failure] **measurement** | **String**| Measurement for the provided metric. If omitted, the default for the metric will be used. | [optional] [enum: 95th, median, avg, count, sum] **filters** | [**java.util.List<String>**](String.md)| Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter. To exclude rows that match a certain condition, prepend a `!` character to the dimension. Possible filter names are the same as returned by the List Filters endpoint. Example: * `filters[]=operating_system:windows&filters[]=!country:US` | [optional] **metricFilters** | [**java.util.List<String>**](String.md)| Limit the results to rows that match inequality conditions from provided metric comparison clauses. Must be provided as an array query string parameter. Possible filterable metrics are the same as the set of metric ids, with the exceptions of `exits_before_video_start`, `unique_viewers`, `video_startup_failure_percentage`, and `views`. Example: * `metric_filters[]=aggregate_startup_time>=1000` | [optional] @@ -416,7 +416,7 @@ public class Example { Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **METRIC_ID** | **String**| ID of the Metric | [enum: aggregate_startup_time, downscale_percentage, exits_before_video_start, live_stream_latency, max_downscale_percentage, max_request_latency, max_upscale_percentage, page_load_time, playback_failure_percentage, playback_success_score, player_startup_time, playing_time, rebuffer_count, rebuffer_duration, rebuffer_frequency, rebuffer_percentage, request_latency, request_throughput, rebuffer_score, requests_for_first_preroll, seek_latency, startup_time_score, unique_viewers, upscale_percentage, video_quality_score, video_startup_preroll_load_time, video_startup_preroll_request_time, video_startup_time, viewer_experience_score, views, weighted_average_bitrate, video_startup_failure_percentage, ad_attempt_count, ad_break_count, ad_break_error_count, ad_break_error_percentage, ad_error_count, ad_error_percentage, ad_exit_before_start_count, ad_exit_before_start_percentage, ad_impression_count, ad_startup_error_count, ad_startup_error_percentage, playback_business_exception_percentage, video_startup_business_exception_percentage] + **METRIC_ID** | **String**| ID of the Metric | [enum: aggregate_startup_time, downscale_percentage, exits_before_video_start, live_stream_latency, max_downscale_percentage, max_request_latency, max_upscale_percentage, page_load_time, playback_failure_percentage, playback_success_score, player_startup_time, playing_time, rebuffer_count, rebuffer_duration, rebuffer_frequency, rebuffer_percentage, request_latency, request_throughput, rebuffer_score, requests_for_first_preroll, seek_latency, startup_time_score, unique_viewers, upscale_percentage, video_quality_score, video_startup_preroll_load_time, video_startup_preroll_request_time, video_startup_time, viewer_experience_score, views, weighted_average_bitrate, video_startup_failure_percentage, ad_attempt_count, ad_break_count, ad_break_error_count, ad_break_error_percentage, ad_error_count, ad_error_percentage, ad_exit_before_start_count, ad_exit_before_start_percentage, ad_impression_count, ad_startup_error_count, ad_startup_error_percentage, playback_business_exception_percentage, video_startup_business_exception_percentage, view_content_startup_time, ad_preroll_startup_time, ad_watch_time, view_content_watch_time] **measurement** | **String**| Measurement for the provided metric. If omitted, the default for the metric will be used. | [optional] [enum: 95th, median, avg, count, sum] **orderDirection** | **String**| Sort order. | [optional] [enum: asc, desc] **timeframe** | [**java.util.List<String>**](String.md)| Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]=). Accepted formats are... * array of epoch timestamps e.g. `timeframe[]=1498867200&timeframe[]=1498953600` * duration string e.g. `timeframe[]=24:hours or timeframe[]=7:days` | [optional] diff --git a/docs/PlaybackRestriction.md b/docs/PlaybackRestriction.md index 20eddc4..e5e98fa 100644 --- a/docs/PlaybackRestriction.md +++ b/docs/PlaybackRestriction.md @@ -10,6 +10,7 @@ Name | Type | Description | Notes **createdAt** | **String** | Time the Playback Restriction was created, defined as a Unix timestamp (seconds since epoch). | [optional] **updatedAt** | **String** | Time the Playback Restriction was last updated, defined as a Unix timestamp (seconds since epoch). | [optional] **referrer** | [**ReferrerDomainRestriction**](ReferrerDomainRestriction.md) | | [optional] +**userAgent** | [**UserAgentRestrictionSettings**](UserAgentRestrictionSettings.md) | | [optional] diff --git a/docs/PlaybackRestrictionsApi.md b/docs/PlaybackRestrictionsApi.md index 6380220..c738fc6 100644 --- a/docs/PlaybackRestrictionsApi.md +++ b/docs/PlaybackRestrictionsApi.md @@ -9,6 +9,7 @@ Method | HTTP request | Description [**getPlaybackRestriction**](PlaybackRestrictionsApi.md#getPlaybackRestriction) | **GET** /video/v1/playback-restrictions/{PLAYBACK_RESTRICTION_ID} | Retrieve a Playback Restriction [**listPlaybackRestrictions**](PlaybackRestrictionsApi.md#listPlaybackRestrictions) | **GET** /video/v1/playback-restrictions | List Playback Restrictions [**updateReferrerDomainRestriction**](PlaybackRestrictionsApi.md#updateReferrerDomainRestriction) | **PUT** /video/v1/playback-restrictions/{PLAYBACK_RESTRICTION_ID}/referrer | Update the Referrer Playback Restriction +[**updateUserAgentRestriction**](PlaybackRestrictionsApi.md#updateUserAgentRestriction) | **PUT** /video/v1/playback-restrictions/{PLAYBACK_RESTRICTION_ID}/user_agent | Update the User Agent Restriction @@ -40,7 +41,7 @@ public class Example { accessToken.setPassword("YOUR PASSWORD"); PlaybackRestrictionsApi apiInstance = new PlaybackRestrictionsApi(defaultClient); - CreatePlaybackRestrictionRequest createPlaybackRestrictionRequest = {"referrer":{"allowed_domains":["*.example.com"],"allow_no_referrer":true}}; // CreatePlaybackRestrictionRequest | + CreatePlaybackRestrictionRequest createPlaybackRestrictionRequest = {"referrer":{"allowed_domains":["*.example.com"],"allow_no_referrer":true},"user_agent":{"allow_no_user_agent":false,"allow_high_risk_user_agent":false}}; // CreatePlaybackRestrictionRequest | try { PlaybackRestrictionResponse result = apiInstance.createPlaybackRestriction(createPlaybackRestrictionRequest) .execute(); @@ -361,3 +362,74 @@ Name | Type | Description | Notes |-------------|-------------|------------------| **200** | OK | - | + +# **updateUserAgentRestriction** +> PlaybackRestrictionResponse updateUserAgentRestriction(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest).execute(); + +Update the User Agent Restriction + +Allows you to modify how Mux validates playback requests with different user agents. Please see [Using User-Agent HTTP header for validation](https://docs.mux.com/guides/secure-video-playback#using-user-agent-http-header-for-validation) for more details on this feature. + +### Example +```java +// Import classes: +import com.mux.ApiClient; +import com.mux.ApiException; +import com.mux.Configuration; +import com.mux.auth.*; +import com.mux.models.*; +import com.mux.sdk.PlaybackRestrictionsApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = Configuration.getDefaultApiClient(); + defaultClient.setBasePath("https://api.mux.com"); + + // Configure HTTP basic authorization: accessToken + HttpBasicAuth accessToken = (HttpBasicAuth) defaultClient.getAuthentication("accessToken"); + accessToken.setUsername("YOUR USERNAME"); + accessToken.setPassword("YOUR PASSWORD"); + + PlaybackRestrictionsApi apiInstance = new PlaybackRestrictionsApi(defaultClient); + String PLAYBACK_RESTRICTION_ID = "PLAYBACK_RESTRICTION_ID_example"; // String | ID of the Playback Restriction. + UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest = {"allow_no_user_agent":false,"allow_high_risk_user_agent":false}; // UpdateUserAgentRestrictionRequest | + try { + PlaybackRestrictionResponse result = apiInstance.updateUserAgentRestriction(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest) + .execute(); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling PlaybackRestrictionsApi#updateUserAgentRestriction"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **PLAYBACK_RESTRICTION_ID** | **String**| ID of the Playback Restriction. | + **updateUserAgentRestrictionRequest** | [**UpdateUserAgentRestrictionRequest**](UpdateUserAgentRestrictionRequest.md)| | + +### Return type + +[**PlaybackRestrictionResponse**](PlaybackRestrictionResponse.md) + +### Authorization + +[accessToken](../README.md#accessToken) + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | OK | - | + diff --git a/docs/UpdateLiveStreamNewAssetSettings.md b/docs/UpdateLiveStreamNewAssetSettings.md new file mode 100644 index 0000000..cdeb83d --- /dev/null +++ b/docs/UpdateLiveStreamNewAssetSettings.md @@ -0,0 +1,25 @@ + + +# UpdateLiveStreamNewAssetSettings + +Updates the new asset settings to use to generate a new asset for this live stream. Only the `mp4_support` setting may be updated. +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**mp4Support** | [**Mp4SupportEnum**](#Mp4SupportEnum) | Specify what level of support for mp4 playback should be added to new assets generated from this live stream. * The `none` option disables MP4 support for new assets. MP4 files will not be produced for an asset generated from this live stream. * The `capped-1080p` option produces a single MP4 file, called `capped-1080p.mp4`, with the video resolution capped at 1080p. This option produces an `audio.m4a` file for an audio-only asset. * The `audio-only` option produces a single M4A file, called `audio.m4a` for a video or an audio-only asset. MP4 generation will error when this option is specified for a video-only asset. * The `audio-only,capped-1080p` option produces both the `audio.m4a` and `capped-1080p.mp4` files. Only the `capped-1080p.mp4` file is produced for a video-only asset, while only the `audio.m4a` file is produced for an audio-only asset. * The `standard`(deprecated) option produces up to three MP4 files with different levels of resolution (`high.mp4`, `medium.mp4`, `low.mp4`, or `audio.m4a` for an audio-only asset). | [optional] + + + +## Enum: Mp4SupportEnum + +Name | Value +---- | ----- +NONE | "none" +STANDARD | "standard" +CAPPED_1080P | "capped-1080p" +AUDIO_ONLY | "audio-only" +AUDIO_ONLY_CAPPED_1080P | "audio-only,capped-1080p" + + + diff --git a/docs/UpdateLiveStreamRequest.md b/docs/UpdateLiveStreamRequest.md index 959f637..307ecd2 100644 --- a/docs/UpdateLiveStreamRequest.md +++ b/docs/UpdateLiveStreamRequest.md @@ -12,6 +12,7 @@ Name | Type | Description | Notes **useSlateForStandardLatency** | **Boolean** | By default, Standard Latency live streams do not have slate media inserted while waiting for live streaming software to reconnect to Mux. Setting this to true enables slate insertion on a Standard Latency stream. | [optional] **reconnectSlateUrl** | **String** | The URL of the image file that Mux should download and use as slate media during interruptions of the live stream media. This file will be downloaded each time a new recorded asset is created from the live stream. Set this to a blank string to clear the value so that the default slate media will be used. | [optional] **maxContinuousDuration** | **Integer** | The time in seconds a live stream may be continuously active before being disconnected. Defaults to 12 hours. | [optional] +**newAssetSettings** | [**UpdateLiveStreamNewAssetSettings**](UpdateLiveStreamNewAssetSettings.md) | | [optional] diff --git a/docs/UpdateUserAgentRestrictionRequest.md b/docs/UpdateUserAgentRestrictionRequest.md new file mode 100644 index 0000000..d5b91ce --- /dev/null +++ b/docs/UpdateUserAgentRestrictionRequest.md @@ -0,0 +1,13 @@ + + +# UpdateUserAgentRestrictionRequest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**allowNoUserAgent** | **Boolean** | Whether or not to allow views without a `User-Agent` HTTP request header. | [optional] +**allowHighRiskUserAgent** | **Boolean** | Whether or not to allow high risk user agents. The high risk user agents are defined by Mux. | [optional] + + + diff --git a/docs/UserAgentRestrictionRequest.md b/docs/UserAgentRestrictionRequest.md new file mode 100644 index 0000000..2b71f9b --- /dev/null +++ b/docs/UserAgentRestrictionRequest.md @@ -0,0 +1,14 @@ + + +# UserAgentRestrictionRequest + +Rules that control what user agents are allowed to play your videos. Please see [Using User-Agent HTTP header for validation](https://docs.mux.com/guides/secure-video-playback#using-user-agent-http-header-for-validation) for more details on this feature. +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**allowNoUserAgent** | **Boolean** | Whether or not to allow views without a `User-Agent` HTTP request header. | [optional] +**allowHighRiskUserAgent** | **Boolean** | Whether or not to allow high risk user agents. The high risk user agents are defined by Mux. | [optional] + + + diff --git a/docs/UserAgentRestrictionSettings.md b/docs/UserAgentRestrictionSettings.md new file mode 100644 index 0000000..a050c37 --- /dev/null +++ b/docs/UserAgentRestrictionSettings.md @@ -0,0 +1,14 @@ + + +# UserAgentRestrictionSettings + +Rules that control what user agents are allowed to play your videos. Please see [Using User-Agent HTTP header for validation](https://docs.mux.com/guides/secure-video-playback#using-user-agent-http-header-for-validation) for more details on this feature. +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**allowNoUserAgent** | **Boolean** | Whether or not to allow views without a `User-Agent` HTTP request header. | [optional] +**allowHighRiskUserAgent** | **Boolean** | Whether or not to allow high risk user agents. The high risk user agents are defined by Mux. | [optional] + + + diff --git a/docs/VideoView.md b/docs/VideoView.md index d0e65dc..afed84b 100644 --- a/docs/VideoView.md +++ b/docs/VideoView.md @@ -163,6 +163,12 @@ Name | Type | Description | Notes **playbackFailureErrorTypeId** | **Integer** | | [optional] **playbackBusinessExceptionErrorTypeId** | **Integer** | | [optional] **videoStartupBusinessExceptionErrorTypeId** | **Integer** | | [optional] +**playbackFailure** | **Boolean** | | [optional] +**adPlaybackFailureErrorTypeId** | **Integer** | | [optional] +**viewContentStartupTime** | **Integer** | | [optional] +**adPrerollStartupTime** | **Integer** | | [optional] +**adWatchTime** | **Integer** | | [optional] +**viewContentWatchTime** | **Integer** | | [optional] diff --git a/src/main/java/com/mux/sdk/PlaybackRestrictionsApi.java b/src/main/java/com/mux/sdk/PlaybackRestrictionsApi.java index fb555b3..2f02a18 100644 --- a/src/main/java/com/mux/sdk/PlaybackRestrictionsApi.java +++ b/src/main/java/com/mux/sdk/PlaybackRestrictionsApi.java @@ -31,6 +31,7 @@ import com.mux.sdk.models.ListPlaybackRestrictionsResponse; import com.mux.sdk.models.PlaybackRestrictionResponse; import com.mux.sdk.models.UpdateReferrerDomainRestrictionRequest; +import com.mux.sdk.models.UpdateUserAgentRestrictionRequest; // TODO: due to import parsing issues for the RDR type; fix in spec in future import com.mux.sdk.models.ReferrerDomainRestriction; @@ -809,4 +810,158 @@ public okhttp3.Call executeAsync(final ApiCallback public APIupdateReferrerDomainRestrictionRequest updateReferrerDomainRestriction(String PLAYBACK_RESTRICTION_ID, UpdateReferrerDomainRestrictionRequest updateReferrerDomainRestrictionRequest) { return new APIupdateReferrerDomainRestrictionRequest(PLAYBACK_RESTRICTION_ID, updateReferrerDomainRestrictionRequest); } + private okhttp3.Call updateUserAgentRestrictionCall(String PLAYBACK_RESTRICTION_ID, UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest, final ApiCallback _callback) throws ApiException { + Object localVarPostBody = updateUserAgentRestrictionRequest; + + // create path and map variables + String localVarPath = "/video/v1/playback-restrictions/{PLAYBACK_RESTRICTION_ID}/user_agent" + .replaceAll("\\{" + "PLAYBACK_RESTRICTION_ID" + "\\}", localVarApiClient.escapeString(PLAYBACK_RESTRICTION_ID.toString())); + + java.util.List localVarQueryParams = new java.util.ArrayList(); + java.util.List localVarCollectionQueryParams = new java.util.ArrayList(); + java.util.Map localVarHeaderParams = new java.util.HashMap(); + java.util.Map localVarCookieParams = new java.util.HashMap(); + java.util.Map localVarFormParams = new java.util.HashMap(); + + final String[] localVarAccepts = { + "application/json" + }; + final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts); + if (localVarAccept != null) { + localVarHeaderParams.put("Accept", localVarAccept); + } + + final String[] localVarContentTypes = { + "application/json" + }; + final String localVarContentType = localVarApiClient.selectHeaderContentType(localVarContentTypes); + localVarHeaderParams.put("Content-Type", localVarContentType); + + String[] localVarAuthNames = new String[] { "accessToken" }; + return localVarApiClient.buildCall(localVarPath, "PUT", localVarQueryParams, localVarCollectionQueryParams, localVarPostBody, localVarHeaderParams, localVarCookieParams, localVarFormParams, localVarAuthNames, _callback); + } + + @SuppressWarnings("rawtypes") + private okhttp3.Call updateUserAgentRestrictionValidateBeforeCall(String PLAYBACK_RESTRICTION_ID, UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest, final ApiCallback _callback) throws ApiException { + + // verify the required parameter 'PLAYBACK_RESTRICTION_ID' is set + if (PLAYBACK_RESTRICTION_ID == null) { + throw new ApiException("Missing the required parameter 'PLAYBACK_RESTRICTION_ID' when calling updateUserAgentRestriction(Async)"); + } + + // verify the required parameter 'updateUserAgentRestrictionRequest' is set + if (updateUserAgentRestrictionRequest == null) { + throw new ApiException("Missing the required parameter 'updateUserAgentRestrictionRequest' when calling updateUserAgentRestriction(Async)"); + } + + + okhttp3.Call localVarCall = updateUserAgentRestrictionCall(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest, _callback); + return localVarCall; + + } + + + private ApiResponse updateUserAgentRestrictionWithHttpInfo(String PLAYBACK_RESTRICTION_ID, UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest) throws ApiException { + okhttp3.Call localVarCall = updateUserAgentRestrictionValidateBeforeCall(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest, null); + Type localVarReturnType = new TypeToken(){}.getType(); + return localVarApiClient.execute(localVarCall, localVarReturnType); + } + + private okhttp3.Call updateUserAgentRestrictionAsync(String PLAYBACK_RESTRICTION_ID, UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest, final ApiCallback _callback) throws ApiException { + + okhttp3.Call localVarCall = updateUserAgentRestrictionValidateBeforeCall(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest, _callback); + Type localVarReturnType = new TypeToken(){}.getType(); + localVarApiClient.executeAsync(localVarCall, localVarReturnType, _callback); + return localVarCall; + } + + public class APIupdateUserAgentRestrictionRequest { + private final String PLAYBACK_RESTRICTION_ID; + private final UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest; + + private APIupdateUserAgentRestrictionRequest(String PLAYBACK_RESTRICTION_ID, UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest) { + this.PLAYBACK_RESTRICTION_ID = PLAYBACK_RESTRICTION_ID; + this.updateUserAgentRestrictionRequest = updateUserAgentRestrictionRequest; + } + + /** + * Build call for updateUserAgentRestriction + * @param _callback ApiCallback API callback + * @return Call to execute + * @throws ApiException If fail to serialize the request body object + * @http.response.details + + + + +
Response Summary
Status Code Description Response Headers
200 OK -
+ */ + public okhttp3.Call buildCall(final ApiCallback _callback) throws ApiException { + return updateUserAgentRestrictionCall(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest, _callback); + } + + /** + * Execute updateUserAgentRestriction request + * @return PlaybackRestrictionResponse + * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body + * @http.response.details + + + + +
Response Summary
Status Code Description Response Headers
200 OK -
+ */ + public PlaybackRestrictionResponse execute() throws ApiException { + ApiResponse localVarResp = updateUserAgentRestrictionWithHttpInfo(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest); + return localVarResp.getData(); + } + + /** + * Execute updateUserAgentRestriction request with HTTP info returned + * @return ApiResponse<PlaybackRestrictionResponse> + * @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body + * @http.response.details + + + + +
Response Summary
Status Code Description Response Headers
200 OK -
+ */ + public ApiResponse executeWithHttpInfo() throws ApiException { + return updateUserAgentRestrictionWithHttpInfo(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest); + } + + /** + * Execute updateUserAgentRestriction request (asynchronously) + * @param _callback The callback to be executed when the API call finishes + * @return The request call + * @throws ApiException If fail to process the API call, e.g. serializing the request body object + * @http.response.details + + + + +
Response Summary
Status Code Description Response Headers
200 OK -
+ */ + public okhttp3.Call executeAsync(final ApiCallback _callback) throws ApiException { + return updateUserAgentRestrictionAsync(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest, _callback); + } + } + + /** + * Update the User Agent Restriction + * Allows you to modify how Mux validates playback requests with different user agents. Please see [Using User-Agent HTTP header for validation](https://docs.mux.com/guides/secure-video-playback#using-user-agent-http-header-for-validation) for more details on this feature. + * @param PLAYBACK_RESTRICTION_ID ID of the Playback Restriction. (required) + * @param updateUserAgentRestrictionRequest (required) + * @return APIupdateUserAgentRestrictionRequest + * @http.response.details + + + + +
Response Summary
Status Code Description Response Headers
200 OK -
+ */ + public APIupdateUserAgentRestrictionRequest updateUserAgentRestriction(String PLAYBACK_RESTRICTION_ID, UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest) { + return new APIupdateUserAgentRestrictionRequest(PLAYBACK_RESTRICTION_ID, updateUserAgentRestrictionRequest); + } } diff --git a/src/main/java/com/mux/sdk/models/AbridgedVideoView.java b/src/main/java/com/mux/sdk/models/AbridgedVideoView.java index 42572ef..9b98cc4 100644 --- a/src/main/java/com/mux/sdk/models/AbridgedVideoView.java +++ b/src/main/java/com/mux/sdk/models/AbridgedVideoView.java @@ -81,6 +81,10 @@ public class AbridgedVideoView { @SerializedName(SERIALIZED_NAME_WATCH_TIME) private Integer watchTime; + public static final String SERIALIZED_NAME_PLAYBACK_FAILURE = "playback_failure"; + @SerializedName(SERIALIZED_NAME_PLAYBACK_FAILURE) + private Boolean playbackFailure; + public AbridgedVideoView id(String id) { @@ -381,6 +385,29 @@ public void setWatchTime(Integer watchTime) { } + public AbridgedVideoView playbackFailure(Boolean playbackFailure) { + + this.playbackFailure = playbackFailure; + return this; + } + + /** + * Get playbackFailure + * @return playbackFailure + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public Boolean getPlaybackFailure() { + return playbackFailure; + } + + + public void setPlaybackFailure(Boolean playbackFailure) { + this.playbackFailure = playbackFailure; + } + + @Override public boolean equals(Object o) { if (this == o) { @@ -402,12 +429,13 @@ public boolean equals(Object o) { Objects.equals(this.viewStart, abridgedVideoView.viewStart) && Objects.equals(this.viewEnd, abridgedVideoView.viewEnd) && Objects.equals(this.viewerExperienceScore, abridgedVideoView.viewerExperienceScore) && - Objects.equals(this.watchTime, abridgedVideoView.watchTime); + Objects.equals(this.watchTime, abridgedVideoView.watchTime) && + Objects.equals(this.playbackFailure, abridgedVideoView.playbackFailure); } @Override public int hashCode() { - return Objects.hash(id, viewerOsFamily, viewerApplicationName, videoTitle, totalRowCount, playerErrorMessage, playerErrorCode, errorTypeId, countryCode, viewStart, viewEnd, viewerExperienceScore, watchTime); + return Objects.hash(id, viewerOsFamily, viewerApplicationName, videoTitle, totalRowCount, playerErrorMessage, playerErrorCode, errorTypeId, countryCode, viewStart, viewEnd, viewerExperienceScore, watchTime, playbackFailure); } @Override @@ -427,6 +455,7 @@ public String toString() { sb.append(" viewEnd: ").append(toIndentedString(viewEnd)).append("\n"); sb.append(" viewerExperienceScore: ").append(toIndentedString(viewerExperienceScore)).append("\n"); sb.append(" watchTime: ").append(toIndentedString(watchTime)).append("\n"); + sb.append(" playbackFailure: ").append(toIndentedString(playbackFailure)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/src/main/java/com/mux/sdk/models/CreatePlaybackRestrictionRequest.java b/src/main/java/com/mux/sdk/models/CreatePlaybackRestrictionRequest.java index 3834d91..f4cfc21 100644 --- a/src/main/java/com/mux/sdk/models/CreatePlaybackRestrictionRequest.java +++ b/src/main/java/com/mux/sdk/models/CreatePlaybackRestrictionRequest.java @@ -21,6 +21,7 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import com.mux.sdk.models.ReferrerDomainRestriction; +import com.mux.sdk.models.UserAgentRestrictionRequest; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; @@ -34,6 +35,10 @@ public class CreatePlaybackRestrictionRequest { @SerializedName(SERIALIZED_NAME_REFERRER) private ReferrerDomainRestriction referrer; + public static final String SERIALIZED_NAME_USER_AGENT = "user_agent"; + @SerializedName(SERIALIZED_NAME_USER_AGENT) + private UserAgentRestrictionRequest userAgent; + public CreatePlaybackRestrictionRequest referrer(ReferrerDomainRestriction referrer) { @@ -58,6 +63,29 @@ public void setReferrer(ReferrerDomainRestriction referrer) { } + public CreatePlaybackRestrictionRequest userAgent(UserAgentRestrictionRequest userAgent) { + + this.userAgent = userAgent; + return this; + } + + /** + * Get userAgent + * @return userAgent + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public UserAgentRestrictionRequest getUserAgent() { + return userAgent; + } + + + public void setUserAgent(UserAgentRestrictionRequest userAgent) { + this.userAgent = userAgent; + } + + @Override public boolean equals(Object o) { if (this == o) { @@ -67,12 +95,13 @@ public boolean equals(Object o) { return false; } CreatePlaybackRestrictionRequest createPlaybackRestrictionRequest = (CreatePlaybackRestrictionRequest) o; - return Objects.equals(this.referrer, createPlaybackRestrictionRequest.referrer); + return Objects.equals(this.referrer, createPlaybackRestrictionRequest.referrer) && + Objects.equals(this.userAgent, createPlaybackRestrictionRequest.userAgent); } @Override public int hashCode() { - return Objects.hash(referrer); + return Objects.hash(referrer, userAgent); } @Override @@ -80,6 +109,7 @@ public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class CreatePlaybackRestrictionRequest {\n"); sb.append(" referrer: ").append(toIndentedString(referrer)).append("\n"); + sb.append(" userAgent: ").append(toIndentedString(userAgent)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/src/main/java/com/mux/sdk/models/DeliveryReport.java b/src/main/java/com/mux/sdk/models/DeliveryReport.java index 127c7c0..22d85c7 100644 --- a/src/main/java/com/mux/sdk/models/DeliveryReport.java +++ b/src/main/java/com/mux/sdk/models/DeliveryReport.java @@ -164,6 +164,57 @@ public AssetResolutionTierEnum read(final JsonReader jsonReader) throws IOExcept @SerializedName(SERIALIZED_NAME_ASSET_RESOLUTION_TIER) private AssetResolutionTierEnum assetResolutionTier; + /** + * The encoding tier that the asset was ingested at. [See the encoding tiers guide for more details.](https://docs.mux.com/guides/use-encoding-tiers) + */ + @JsonAdapter(AssetEncodingTierEnum.Adapter.class) + public enum AssetEncodingTierEnum { + SMART("smart"), + + BASELINE("baseline"); + + private String value; + + AssetEncodingTierEnum(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static AssetEncodingTierEnum fromValue(String value) { + for (AssetEncodingTierEnum b : AssetEncodingTierEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final AssetEncodingTierEnum enumeration) throws IOException { + jsonWriter.value(enumeration.getValue()); + } + + @Override + public AssetEncodingTierEnum read(final JsonReader jsonReader) throws IOException { + String value = jsonReader.nextString(); + return AssetEncodingTierEnum.fromValue(value); + } + } + } + + public static final String SERIALIZED_NAME_ASSET_ENCODING_TIER = "asset_encoding_tier"; + @SerializedName(SERIALIZED_NAME_ASSET_ENCODING_TIER) + private AssetEncodingTierEnum assetEncodingTier; + public static final String SERIALIZED_NAME_DELIVERED_SECONDS = "delivered_seconds"; @SerializedName(SERIALIZED_NAME_DELIVERED_SECONDS) private Double deliveredSeconds; @@ -357,6 +408,29 @@ public void setAssetResolutionTier(AssetResolutionTierEnum assetResolutionTier) } + public DeliveryReport assetEncodingTier(AssetEncodingTierEnum assetEncodingTier) { + + this.assetEncodingTier = assetEncodingTier; + return this; + } + + /** + * The encoding tier that the asset was ingested at. [See the encoding tiers guide for more details.](https://docs.mux.com/guides/use-encoding-tiers) + * @return assetEncodingTier + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "The encoding tier that the asset was ingested at. [See the encoding tiers guide for more details.](https://docs.mux.com/guides/use-encoding-tiers)") + + public AssetEncodingTierEnum getAssetEncodingTier() { + return assetEncodingTier; + } + + + public void setAssetEncodingTier(AssetEncodingTierEnum assetEncodingTier) { + this.assetEncodingTier = assetEncodingTier; + } + + public DeliveryReport deliveredSeconds(Double deliveredSeconds) { this.deliveredSeconds = deliveredSeconds; @@ -420,13 +494,14 @@ public boolean equals(Object o) { Objects.equals(this.assetState, deliveryReport.assetState) && Objects.equals(this.assetDuration, deliveryReport.assetDuration) && Objects.equals(this.assetResolutionTier, deliveryReport.assetResolutionTier) && + Objects.equals(this.assetEncodingTier, deliveryReport.assetEncodingTier) && Objects.equals(this.deliveredSeconds, deliveryReport.deliveredSeconds) && Objects.equals(this.deliveredSecondsByResolution, deliveryReport.deliveredSecondsByResolution); } @Override public int hashCode() { - return Objects.hash(liveStreamId, assetId, passthrough, createdAt, deletedAt, assetState, assetDuration, assetResolutionTier, deliveredSeconds, deliveredSecondsByResolution); + return Objects.hash(liveStreamId, assetId, passthrough, createdAt, deletedAt, assetState, assetDuration, assetResolutionTier, assetEncodingTier, deliveredSeconds, deliveredSecondsByResolution); } @Override @@ -441,6 +516,7 @@ public String toString() { sb.append(" assetState: ").append(toIndentedString(assetState)).append("\n"); sb.append(" assetDuration: ").append(toIndentedString(assetDuration)).append("\n"); sb.append(" assetResolutionTier: ").append(toIndentedString(assetResolutionTier)).append("\n"); + sb.append(" assetEncodingTier: ").append(toIndentedString(assetEncodingTier)).append("\n"); sb.append(" deliveredSeconds: ").append(toIndentedString(deliveredSeconds)).append("\n"); sb.append(" deliveredSecondsByResolution: ").append(toIndentedString(deliveredSecondsByResolution)).append("\n"); sb.append("}"); diff --git a/src/main/java/com/mux/sdk/models/GenerateTrackSubtitlesResponse.java b/src/main/java/com/mux/sdk/models/GenerateTrackSubtitlesResponse.java index 4b46ff0..7ba1830 100644 --- a/src/main/java/com/mux/sdk/models/GenerateTrackSubtitlesResponse.java +++ b/src/main/java/com/mux/sdk/models/GenerateTrackSubtitlesResponse.java @@ -32,15 +32,23 @@ public class GenerateTrackSubtitlesResponse { public static final String SERIALIZED_NAME_DATA = "data"; @SerializedName(SERIALIZED_NAME_DATA) - private Track data; + private java.util.List data = null; - public GenerateTrackSubtitlesResponse data(Track data) { + public GenerateTrackSubtitlesResponse data(java.util.List data) { this.data = data; return this; } + public GenerateTrackSubtitlesResponse addDataItem(Track dataItem) { + if (this.data == null) { + this.data = new java.util.ArrayList<>(); + } + this.data.add(dataItem); + return this; + } + /** * Get data * @return data @@ -48,12 +56,12 @@ public GenerateTrackSubtitlesResponse data(Track data) { @javax.annotation.Nullable @ApiModelProperty(value = "") - public Track getData() { + public java.util.List getData() { return data; } - public void setData(Track data) { + public void setData(java.util.List data) { this.data = data; } diff --git a/src/main/java/com/mux/sdk/models/PlaybackRestriction.java b/src/main/java/com/mux/sdk/models/PlaybackRestriction.java index eca8190..397f84e 100644 --- a/src/main/java/com/mux/sdk/models/PlaybackRestriction.java +++ b/src/main/java/com/mux/sdk/models/PlaybackRestriction.java @@ -21,6 +21,7 @@ import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; import com.mux.sdk.models.ReferrerDomainRestriction; +import com.mux.sdk.models.UserAgentRestrictionSettings; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; @@ -46,6 +47,10 @@ public class PlaybackRestriction { @SerializedName(SERIALIZED_NAME_REFERRER) private ReferrerDomainRestriction referrer; + public static final String SERIALIZED_NAME_USER_AGENT = "user_agent"; + @SerializedName(SERIALIZED_NAME_USER_AGENT) + private UserAgentRestrictionSettings userAgent; + public PlaybackRestriction id(String id) { @@ -139,6 +144,29 @@ public void setReferrer(ReferrerDomainRestriction referrer) { } + public PlaybackRestriction userAgent(UserAgentRestrictionSettings userAgent) { + + this.userAgent = userAgent; + return this; + } + + /** + * Get userAgent + * @return userAgent + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public UserAgentRestrictionSettings getUserAgent() { + return userAgent; + } + + + public void setUserAgent(UserAgentRestrictionSettings userAgent) { + this.userAgent = userAgent; + } + + @Override public boolean equals(Object o) { if (this == o) { @@ -151,12 +179,13 @@ public boolean equals(Object o) { return Objects.equals(this.id, playbackRestriction.id) && Objects.equals(this.createdAt, playbackRestriction.createdAt) && Objects.equals(this.updatedAt, playbackRestriction.updatedAt) && - Objects.equals(this.referrer, playbackRestriction.referrer); + Objects.equals(this.referrer, playbackRestriction.referrer) && + Objects.equals(this.userAgent, playbackRestriction.userAgent); } @Override public int hashCode() { - return Objects.hash(id, createdAt, updatedAt, referrer); + return Objects.hash(id, createdAt, updatedAt, referrer, userAgent); } @Override @@ -167,6 +196,7 @@ public String toString() { sb.append(" createdAt: ").append(toIndentedString(createdAt)).append("\n"); sb.append(" updatedAt: ").append(toIndentedString(updatedAt)).append("\n"); sb.append(" referrer: ").append(toIndentedString(referrer)).append("\n"); + sb.append(" userAgent: ").append(toIndentedString(userAgent)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/src/main/java/com/mux/sdk/models/UpdateLiveStreamNewAssetSettings.java b/src/main/java/com/mux/sdk/models/UpdateLiveStreamNewAssetSettings.java new file mode 100644 index 0000000..11b3f2c --- /dev/null +++ b/src/main/java/com/mux/sdk/models/UpdateLiveStreamNewAssetSettings.java @@ -0,0 +1,152 @@ +/* + * Mux API + * Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before. + * + * The version of the OpenAPI document: v1 + * Contact: devex@mux.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.mux.sdk.models; + +import java.util.Objects; +import java.util.Arrays; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.IOException; + +/** + * Updates the new asset settings to use to generate a new asset for this live stream. Only the `mp4_support` setting may be updated. + */ +@ApiModel(description = "Updates the new asset settings to use to generate a new asset for this live stream. Only the `mp4_support` setting may be updated. ") +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class UpdateLiveStreamNewAssetSettings { + /** + * Specify what level of support for mp4 playback should be added to new assets generated from this live stream. * The `none` option disables MP4 support for new assets. MP4 files will not be produced for an asset generated from this live stream. * The `capped-1080p` option produces a single MP4 file, called `capped-1080p.mp4`, with the video resolution capped at 1080p. This option produces an `audio.m4a` file for an audio-only asset. * The `audio-only` option produces a single M4A file, called `audio.m4a` for a video or an audio-only asset. MP4 generation will error when this option is specified for a video-only asset. * The `audio-only,capped-1080p` option produces both the `audio.m4a` and `capped-1080p.mp4` files. Only the `capped-1080p.mp4` file is produced for a video-only asset, while only the `audio.m4a` file is produced for an audio-only asset. * The `standard`(deprecated) option produces up to three MP4 files with different levels of resolution (`high.mp4`, `medium.mp4`, `low.mp4`, or `audio.m4a` for an audio-only asset). + */ + @JsonAdapter(Mp4SupportEnum.Adapter.class) + public enum Mp4SupportEnum { + NONE("none"), + + STANDARD("standard"), + + CAPPED_1080P("capped-1080p"), + + AUDIO_ONLY("audio-only"), + + AUDIO_ONLY_CAPPED_1080P("audio-only,capped-1080p"); + + private String value; + + Mp4SupportEnum(String value) { + this.value = value; + } + + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + public static Mp4SupportEnum fromValue(String value) { + for (Mp4SupportEnum b : Mp4SupportEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + public static class Adapter extends TypeAdapter { + @Override + public void write(final JsonWriter jsonWriter, final Mp4SupportEnum enumeration) throws IOException { + jsonWriter.value(enumeration.getValue()); + } + + @Override + public Mp4SupportEnum read(final JsonReader jsonReader) throws IOException { + String value = jsonReader.nextString(); + return Mp4SupportEnum.fromValue(value); + } + } + } + + public static final String SERIALIZED_NAME_MP4_SUPPORT = "mp4_support"; + @SerializedName(SERIALIZED_NAME_MP4_SUPPORT) + private Mp4SupportEnum mp4Support; + + + public UpdateLiveStreamNewAssetSettings mp4Support(Mp4SupportEnum mp4Support) { + + this.mp4Support = mp4Support; + return this; + } + + /** + * Specify what level of support for mp4 playback should be added to new assets generated from this live stream. * The `none` option disables MP4 support for new assets. MP4 files will not be produced for an asset generated from this live stream. * The `capped-1080p` option produces a single MP4 file, called `capped-1080p.mp4`, with the video resolution capped at 1080p. This option produces an `audio.m4a` file for an audio-only asset. * The `audio-only` option produces a single M4A file, called `audio.m4a` for a video or an audio-only asset. MP4 generation will error when this option is specified for a video-only asset. * The `audio-only,capped-1080p` option produces both the `audio.m4a` and `capped-1080p.mp4` files. Only the `capped-1080p.mp4` file is produced for a video-only asset, while only the `audio.m4a` file is produced for an audio-only asset. * The `standard`(deprecated) option produces up to three MP4 files with different levels of resolution (`high.mp4`, `medium.mp4`, `low.mp4`, or `audio.m4a` for an audio-only asset). + * @return mp4Support + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "Specify what level of support for mp4 playback should be added to new assets generated from this live stream. * The `none` option disables MP4 support for new assets. MP4 files will not be produced for an asset generated from this live stream. * The `capped-1080p` option produces a single MP4 file, called `capped-1080p.mp4`, with the video resolution capped at 1080p. This option produces an `audio.m4a` file for an audio-only asset. * The `audio-only` option produces a single M4A file, called `audio.m4a` for a video or an audio-only asset. MP4 generation will error when this option is specified for a video-only asset. * The `audio-only,capped-1080p` option produces both the `audio.m4a` and `capped-1080p.mp4` files. Only the `capped-1080p.mp4` file is produced for a video-only asset, while only the `audio.m4a` file is produced for an audio-only asset. * The `standard`(deprecated) option produces up to three MP4 files with different levels of resolution (`high.mp4`, `medium.mp4`, `low.mp4`, or `audio.m4a` for an audio-only asset). ") + + public Mp4SupportEnum getMp4Support() { + return mp4Support; + } + + + public void setMp4Support(Mp4SupportEnum mp4Support) { + this.mp4Support = mp4Support; + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + UpdateLiveStreamNewAssetSettings updateLiveStreamNewAssetSettings = (UpdateLiveStreamNewAssetSettings) o; + return Objects.equals(this.mp4Support, updateLiveStreamNewAssetSettings.mp4Support); + } + + @Override + public int hashCode() { + return Objects.hash(mp4Support); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class UpdateLiveStreamNewAssetSettings {\n"); + sb.append(" mp4Support: ").append(toIndentedString(mp4Support)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + +} + diff --git a/src/main/java/com/mux/sdk/models/UpdateLiveStreamRequest.java b/src/main/java/com/mux/sdk/models/UpdateLiveStreamRequest.java index 6aba319..d438964 100644 --- a/src/main/java/com/mux/sdk/models/UpdateLiveStreamRequest.java +++ b/src/main/java/com/mux/sdk/models/UpdateLiveStreamRequest.java @@ -20,6 +20,7 @@ import com.google.gson.annotations.SerializedName; import com.google.gson.stream.JsonReader; import com.google.gson.stream.JsonWriter; +import com.mux.sdk.models.UpdateLiveStreamNewAssetSettings; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import java.io.IOException; @@ -102,6 +103,10 @@ public LatencyModeEnum read(final JsonReader jsonReader) throws IOException { @SerializedName(SERIALIZED_NAME_MAX_CONTINUOUS_DURATION) private Integer maxContinuousDuration = 43200; + public static final String SERIALIZED_NAME_NEW_ASSET_SETTINGS = "new_asset_settings"; + @SerializedName(SERIALIZED_NAME_NEW_ASSET_SETTINGS) + private UpdateLiveStreamNewAssetSettings newAssetSettings; + public UpdateLiveStreamRequest passthrough(String passthrough) { @@ -245,6 +250,29 @@ public void setMaxContinuousDuration(Integer maxContinuousDuration) { } + public UpdateLiveStreamRequest newAssetSettings(UpdateLiveStreamNewAssetSettings newAssetSettings) { + + this.newAssetSettings = newAssetSettings; + return this; + } + + /** + * Get newAssetSettings + * @return newAssetSettings + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public UpdateLiveStreamNewAssetSettings getNewAssetSettings() { + return newAssetSettings; + } + + + public void setNewAssetSettings(UpdateLiveStreamNewAssetSettings newAssetSettings) { + this.newAssetSettings = newAssetSettings; + } + + @Override public boolean equals(Object o) { if (this == o) { @@ -259,12 +287,13 @@ public boolean equals(Object o) { Objects.equals(this.reconnectWindow, updateLiveStreamRequest.reconnectWindow) && Objects.equals(this.useSlateForStandardLatency, updateLiveStreamRequest.useSlateForStandardLatency) && Objects.equals(this.reconnectSlateUrl, updateLiveStreamRequest.reconnectSlateUrl) && - Objects.equals(this.maxContinuousDuration, updateLiveStreamRequest.maxContinuousDuration); + Objects.equals(this.maxContinuousDuration, updateLiveStreamRequest.maxContinuousDuration) && + Objects.equals(this.newAssetSettings, updateLiveStreamRequest.newAssetSettings); } @Override public int hashCode() { - return Objects.hash(passthrough, latencyMode, reconnectWindow, useSlateForStandardLatency, reconnectSlateUrl, maxContinuousDuration); + return Objects.hash(passthrough, latencyMode, reconnectWindow, useSlateForStandardLatency, reconnectSlateUrl, maxContinuousDuration, newAssetSettings); } @Override @@ -277,6 +306,7 @@ public String toString() { sb.append(" useSlateForStandardLatency: ").append(toIndentedString(useSlateForStandardLatency)).append("\n"); sb.append(" reconnectSlateUrl: ").append(toIndentedString(reconnectSlateUrl)).append("\n"); sb.append(" maxContinuousDuration: ").append(toIndentedString(maxContinuousDuration)).append("\n"); + sb.append(" newAssetSettings: ").append(toIndentedString(newAssetSettings)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/src/main/java/com/mux/sdk/models/UpdateUserAgentRestrictionRequest.java b/src/main/java/com/mux/sdk/models/UpdateUserAgentRestrictionRequest.java new file mode 100644 index 0000000..c949636 --- /dev/null +++ b/src/main/java/com/mux/sdk/models/UpdateUserAgentRestrictionRequest.java @@ -0,0 +1,127 @@ +/* + * Mux API + * Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before. + * + * The version of the OpenAPI document: v1 + * Contact: devex@mux.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.mux.sdk.models; + +import java.util.Objects; +import java.util.Arrays; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.IOException; + +/** + * UpdateUserAgentRestrictionRequest + */ +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class UpdateUserAgentRestrictionRequest { + public static final String SERIALIZED_NAME_ALLOW_NO_USER_AGENT = "allow_no_user_agent"; + @SerializedName(SERIALIZED_NAME_ALLOW_NO_USER_AGENT) + private Boolean allowNoUserAgent = true; + + public static final String SERIALIZED_NAME_ALLOW_HIGH_RISK_USER_AGENT = "allow_high_risk_user_agent"; + @SerializedName(SERIALIZED_NAME_ALLOW_HIGH_RISK_USER_AGENT) + private Boolean allowHighRiskUserAgent = true; + + + public UpdateUserAgentRestrictionRequest allowNoUserAgent(Boolean allowNoUserAgent) { + + this.allowNoUserAgent = allowNoUserAgent; + return this; + } + + /** + * Whether or not to allow views without a `User-Agent` HTTP request header. + * @return allowNoUserAgent + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "Whether or not to allow views without a `User-Agent` HTTP request header.") + + public Boolean getAllowNoUserAgent() { + return allowNoUserAgent; + } + + + public void setAllowNoUserAgent(Boolean allowNoUserAgent) { + this.allowNoUserAgent = allowNoUserAgent; + } + + + public UpdateUserAgentRestrictionRequest allowHighRiskUserAgent(Boolean allowHighRiskUserAgent) { + + this.allowHighRiskUserAgent = allowHighRiskUserAgent; + return this; + } + + /** + * Whether or not to allow high risk user agents. The high risk user agents are defined by Mux. + * @return allowHighRiskUserAgent + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "Whether or not to allow high risk user agents. The high risk user agents are defined by Mux.") + + public Boolean getAllowHighRiskUserAgent() { + return allowHighRiskUserAgent; + } + + + public void setAllowHighRiskUserAgent(Boolean allowHighRiskUserAgent) { + this.allowHighRiskUserAgent = allowHighRiskUserAgent; + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + UpdateUserAgentRestrictionRequest updateUserAgentRestrictionRequest = (UpdateUserAgentRestrictionRequest) o; + return Objects.equals(this.allowNoUserAgent, updateUserAgentRestrictionRequest.allowNoUserAgent) && + Objects.equals(this.allowHighRiskUserAgent, updateUserAgentRestrictionRequest.allowHighRiskUserAgent); + } + + @Override + public int hashCode() { + return Objects.hash(allowNoUserAgent, allowHighRiskUserAgent); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class UpdateUserAgentRestrictionRequest {\n"); + sb.append(" allowNoUserAgent: ").append(toIndentedString(allowNoUserAgent)).append("\n"); + sb.append(" allowHighRiskUserAgent: ").append(toIndentedString(allowHighRiskUserAgent)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + +} + diff --git a/src/main/java/com/mux/sdk/models/UserAgentRestrictionRequest.java b/src/main/java/com/mux/sdk/models/UserAgentRestrictionRequest.java new file mode 100644 index 0000000..cec0ffd --- /dev/null +++ b/src/main/java/com/mux/sdk/models/UserAgentRestrictionRequest.java @@ -0,0 +1,128 @@ +/* + * Mux API + * Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before. + * + * The version of the OpenAPI document: v1 + * Contact: devex@mux.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.mux.sdk.models; + +import java.util.Objects; +import java.util.Arrays; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.IOException; + +/** + * Rules that control what user agents are allowed to play your videos. Please see [Using User-Agent HTTP header for validation](https://docs.mux.com/guides/secure-video-playback#using-user-agent-http-header-for-validation) for more details on this feature. + */ +@ApiModel(description = "Rules that control what user agents are allowed to play your videos. Please see [Using User-Agent HTTP header for validation](https://docs.mux.com/guides/secure-video-playback#using-user-agent-http-header-for-validation) for more details on this feature.") +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class UserAgentRestrictionRequest { + public static final String SERIALIZED_NAME_ALLOW_NO_USER_AGENT = "allow_no_user_agent"; + @SerializedName(SERIALIZED_NAME_ALLOW_NO_USER_AGENT) + private Boolean allowNoUserAgent = true; + + public static final String SERIALIZED_NAME_ALLOW_HIGH_RISK_USER_AGENT = "allow_high_risk_user_agent"; + @SerializedName(SERIALIZED_NAME_ALLOW_HIGH_RISK_USER_AGENT) + private Boolean allowHighRiskUserAgent = true; + + + public UserAgentRestrictionRequest allowNoUserAgent(Boolean allowNoUserAgent) { + + this.allowNoUserAgent = allowNoUserAgent; + return this; + } + + /** + * Whether or not to allow views without a `User-Agent` HTTP request header. + * @return allowNoUserAgent + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "Whether or not to allow views without a `User-Agent` HTTP request header.") + + public Boolean getAllowNoUserAgent() { + return allowNoUserAgent; + } + + + public void setAllowNoUserAgent(Boolean allowNoUserAgent) { + this.allowNoUserAgent = allowNoUserAgent; + } + + + public UserAgentRestrictionRequest allowHighRiskUserAgent(Boolean allowHighRiskUserAgent) { + + this.allowHighRiskUserAgent = allowHighRiskUserAgent; + return this; + } + + /** + * Whether or not to allow high risk user agents. The high risk user agents are defined by Mux. + * @return allowHighRiskUserAgent + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "Whether or not to allow high risk user agents. The high risk user agents are defined by Mux.") + + public Boolean getAllowHighRiskUserAgent() { + return allowHighRiskUserAgent; + } + + + public void setAllowHighRiskUserAgent(Boolean allowHighRiskUserAgent) { + this.allowHighRiskUserAgent = allowHighRiskUserAgent; + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + UserAgentRestrictionRequest userAgentRestrictionRequest = (UserAgentRestrictionRequest) o; + return Objects.equals(this.allowNoUserAgent, userAgentRestrictionRequest.allowNoUserAgent) && + Objects.equals(this.allowHighRiskUserAgent, userAgentRestrictionRequest.allowHighRiskUserAgent); + } + + @Override + public int hashCode() { + return Objects.hash(allowNoUserAgent, allowHighRiskUserAgent); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class UserAgentRestrictionRequest {\n"); + sb.append(" allowNoUserAgent: ").append(toIndentedString(allowNoUserAgent)).append("\n"); + sb.append(" allowHighRiskUserAgent: ").append(toIndentedString(allowHighRiskUserAgent)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + +} + diff --git a/src/main/java/com/mux/sdk/models/UserAgentRestrictionSettings.java b/src/main/java/com/mux/sdk/models/UserAgentRestrictionSettings.java new file mode 100644 index 0000000..e9c97aa --- /dev/null +++ b/src/main/java/com/mux/sdk/models/UserAgentRestrictionSettings.java @@ -0,0 +1,128 @@ +/* + * Mux API + * Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before. + * + * The version of the OpenAPI document: v1 + * Contact: devex@mux.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +package com.mux.sdk.models; + +import java.util.Objects; +import java.util.Arrays; +import com.google.gson.TypeAdapter; +import com.google.gson.annotations.JsonAdapter; +import com.google.gson.annotations.SerializedName; +import com.google.gson.stream.JsonReader; +import com.google.gson.stream.JsonWriter; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.IOException; + +/** + * Rules that control what user agents are allowed to play your videos. Please see [Using User-Agent HTTP header for validation](https://docs.mux.com/guides/secure-video-playback#using-user-agent-http-header-for-validation) for more details on this feature. + */ +@ApiModel(description = "Rules that control what user agents are allowed to play your videos. Please see [Using User-Agent HTTP header for validation](https://docs.mux.com/guides/secure-video-playback#using-user-agent-http-header-for-validation) for more details on this feature.") +@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen") +public class UserAgentRestrictionSettings { + public static final String SERIALIZED_NAME_ALLOW_NO_USER_AGENT = "allow_no_user_agent"; + @SerializedName(SERIALIZED_NAME_ALLOW_NO_USER_AGENT) + private Boolean allowNoUserAgent = true; + + public static final String SERIALIZED_NAME_ALLOW_HIGH_RISK_USER_AGENT = "allow_high_risk_user_agent"; + @SerializedName(SERIALIZED_NAME_ALLOW_HIGH_RISK_USER_AGENT) + private Boolean allowHighRiskUserAgent = true; + + + public UserAgentRestrictionSettings allowNoUserAgent(Boolean allowNoUserAgent) { + + this.allowNoUserAgent = allowNoUserAgent; + return this; + } + + /** + * Whether or not to allow views without a `User-Agent` HTTP request header. + * @return allowNoUserAgent + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "Whether or not to allow views without a `User-Agent` HTTP request header.") + + public Boolean getAllowNoUserAgent() { + return allowNoUserAgent; + } + + + public void setAllowNoUserAgent(Boolean allowNoUserAgent) { + this.allowNoUserAgent = allowNoUserAgent; + } + + + public UserAgentRestrictionSettings allowHighRiskUserAgent(Boolean allowHighRiskUserAgent) { + + this.allowHighRiskUserAgent = allowHighRiskUserAgent; + return this; + } + + /** + * Whether or not to allow high risk user agents. The high risk user agents are defined by Mux. + * @return allowHighRiskUserAgent + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "Whether or not to allow high risk user agents. The high risk user agents are defined by Mux.") + + public Boolean getAllowHighRiskUserAgent() { + return allowHighRiskUserAgent; + } + + + public void setAllowHighRiskUserAgent(Boolean allowHighRiskUserAgent) { + this.allowHighRiskUserAgent = allowHighRiskUserAgent; + } + + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + UserAgentRestrictionSettings userAgentRestrictionSettings = (UserAgentRestrictionSettings) o; + return Objects.equals(this.allowNoUserAgent, userAgentRestrictionSettings.allowNoUserAgent) && + Objects.equals(this.allowHighRiskUserAgent, userAgentRestrictionSettings.allowHighRiskUserAgent); + } + + @Override + public int hashCode() { + return Objects.hash(allowNoUserAgent, allowHighRiskUserAgent); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class UserAgentRestrictionSettings {\n"); + sb.append(" allowNoUserAgent: ").append(toIndentedString(allowNoUserAgent)).append("\n"); + sb.append(" allowHighRiskUserAgent: ").append(toIndentedString(allowHighRiskUserAgent)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces + * (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + +} + diff --git a/src/main/java/com/mux/sdk/models/VideoView.java b/src/main/java/com/mux/sdk/models/VideoView.java index bcffc53..eb18708 100644 --- a/src/main/java/com/mux/sdk/models/VideoView.java +++ b/src/main/java/com/mux/sdk/models/VideoView.java @@ -658,6 +658,30 @@ public class VideoView { @SerializedName(SERIALIZED_NAME_VIDEO_STARTUP_BUSINESS_EXCEPTION_ERROR_TYPE_ID) private Integer videoStartupBusinessExceptionErrorTypeId; + public static final String SERIALIZED_NAME_PLAYBACK_FAILURE = "playback_failure"; + @SerializedName(SERIALIZED_NAME_PLAYBACK_FAILURE) + private Boolean playbackFailure; + + public static final String SERIALIZED_NAME_AD_PLAYBACK_FAILURE_ERROR_TYPE_ID = "ad_playback_failure_error_type_id"; + @SerializedName(SERIALIZED_NAME_AD_PLAYBACK_FAILURE_ERROR_TYPE_ID) + private Integer adPlaybackFailureErrorTypeId; + + public static final String SERIALIZED_NAME_VIEW_CONTENT_STARTUP_TIME = "view_content_startup_time"; + @SerializedName(SERIALIZED_NAME_VIEW_CONTENT_STARTUP_TIME) + private Integer viewContentStartupTime; + + public static final String SERIALIZED_NAME_AD_PREROLL_STARTUP_TIME = "ad_preroll_startup_time"; + @SerializedName(SERIALIZED_NAME_AD_PREROLL_STARTUP_TIME) + private Integer adPrerollStartupTime; + + public static final String SERIALIZED_NAME_AD_WATCH_TIME = "ad_watch_time"; + @SerializedName(SERIALIZED_NAME_AD_WATCH_TIME) + private Integer adWatchTime; + + public static final String SERIALIZED_NAME_VIEW_CONTENT_WATCH_TIME = "view_content_watch_time"; + @SerializedName(SERIALIZED_NAME_VIEW_CONTENT_WATCH_TIME) + private Integer viewContentWatchTime; + public VideoView viewTotalUpscaling(String viewTotalUpscaling) { @@ -4278,6 +4302,144 @@ public void setVideoStartupBusinessExceptionErrorTypeId(Integer videoStartupBusi } + public VideoView playbackFailure(Boolean playbackFailure) { + + this.playbackFailure = playbackFailure; + return this; + } + + /** + * Get playbackFailure + * @return playbackFailure + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public Boolean getPlaybackFailure() { + return playbackFailure; + } + + + public void setPlaybackFailure(Boolean playbackFailure) { + this.playbackFailure = playbackFailure; + } + + + public VideoView adPlaybackFailureErrorTypeId(Integer adPlaybackFailureErrorTypeId) { + + this.adPlaybackFailureErrorTypeId = adPlaybackFailureErrorTypeId; + return this; + } + + /** + * Get adPlaybackFailureErrorTypeId + * @return adPlaybackFailureErrorTypeId + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public Integer getAdPlaybackFailureErrorTypeId() { + return adPlaybackFailureErrorTypeId; + } + + + public void setAdPlaybackFailureErrorTypeId(Integer adPlaybackFailureErrorTypeId) { + this.adPlaybackFailureErrorTypeId = adPlaybackFailureErrorTypeId; + } + + + public VideoView viewContentStartupTime(Integer viewContentStartupTime) { + + this.viewContentStartupTime = viewContentStartupTime; + return this; + } + + /** + * Get viewContentStartupTime + * @return viewContentStartupTime + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public Integer getViewContentStartupTime() { + return viewContentStartupTime; + } + + + public void setViewContentStartupTime(Integer viewContentStartupTime) { + this.viewContentStartupTime = viewContentStartupTime; + } + + + public VideoView adPrerollStartupTime(Integer adPrerollStartupTime) { + + this.adPrerollStartupTime = adPrerollStartupTime; + return this; + } + + /** + * Get adPrerollStartupTime + * @return adPrerollStartupTime + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public Integer getAdPrerollStartupTime() { + return adPrerollStartupTime; + } + + + public void setAdPrerollStartupTime(Integer adPrerollStartupTime) { + this.adPrerollStartupTime = adPrerollStartupTime; + } + + + public VideoView adWatchTime(Integer adWatchTime) { + + this.adWatchTime = adWatchTime; + return this; + } + + /** + * Get adWatchTime + * @return adWatchTime + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public Integer getAdWatchTime() { + return adWatchTime; + } + + + public void setAdWatchTime(Integer adWatchTime) { + this.adWatchTime = adWatchTime; + } + + + public VideoView viewContentWatchTime(Integer viewContentWatchTime) { + + this.viewContentWatchTime = viewContentWatchTime; + return this; + } + + /** + * Get viewContentWatchTime + * @return viewContentWatchTime + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public Integer getViewContentWatchTime() { + return viewContentWatchTime; + } + + + public void setViewContentWatchTime(Integer viewContentWatchTime) { + this.viewContentWatchTime = viewContentWatchTime; + } + + @Override public boolean equals(Object o) { if (this == o) { @@ -4443,12 +4605,18 @@ public boolean equals(Object o) { Objects.equals(this.longRebuffering, videoView.longRebuffering) && Objects.equals(this.playbackFailureErrorTypeId, videoView.playbackFailureErrorTypeId) && Objects.equals(this.playbackBusinessExceptionErrorTypeId, videoView.playbackBusinessExceptionErrorTypeId) && - Objects.equals(this.videoStartupBusinessExceptionErrorTypeId, videoView.videoStartupBusinessExceptionErrorTypeId); + Objects.equals(this.videoStartupBusinessExceptionErrorTypeId, videoView.videoStartupBusinessExceptionErrorTypeId) && + Objects.equals(this.playbackFailure, videoView.playbackFailure) && + Objects.equals(this.adPlaybackFailureErrorTypeId, videoView.adPlaybackFailureErrorTypeId) && + Objects.equals(this.viewContentStartupTime, videoView.viewContentStartupTime) && + Objects.equals(this.adPrerollStartupTime, videoView.adPrerollStartupTime) && + Objects.equals(this.adWatchTime, videoView.adWatchTime) && + Objects.equals(this.viewContentWatchTime, videoView.viewContentWatchTime); } @Override public int hashCode() { - return Objects.hash(viewTotalUpscaling, prerollAdAssetHostname, playerSourceDomain, region, viewerUserAgent, prerollRequested, pageType, startupScore, viewSeekDuration, countryName, playerSourceHeight, longitude, bufferingCount, videoDuration, playerSourceType, city, viewId, platformDescription, videoStartupPrerollRequestTime, viewerDeviceName, videoSeries, viewerApplicationName, updatedAt, viewTotalContentPlaybackTime, cdn, playerInstanceId, videoLanguage, playerSourceWidth, playerErrorMessage, playerMuxPluginVersion, watched, playbackScore, pageUrl, metro, viewMaxRequestLatency, requestsForFirstPreroll, viewTotalDownscaling, latitude, playerSourceHostName, insertedAt, viewEnd, muxEmbedVersion, playerLanguage, pageLoadTime, viewerDeviceCategory, videoStartupPrerollLoadTime, playerVersion, watchTime, playerSourceStreamType, prerollAdTagHostname, viewerDeviceManufacturer, rebufferingScore, experimentName, viewerOsVersion, playerPreload, bufferingDuration, playerViewCount, playerSoftware, playerLoadTime, platformSummary, videoEncodingVariant, playerWidth, viewSeekCount, viewerExperienceScore, viewErrorId, videoVariantName, prerollPlayed, viewerApplicationEngine, viewerOsArchitecture, playerErrorCode, bufferingRate, events, playerName, viewStart, viewAverageRequestThroughput, videoProducer, errorTypeId, muxViewerId, videoId, continentCode, sessionId, exitBeforeVideoStart, videoContentType, viewerOsFamily, playerPoster, viewAverageRequestLatency, videoVariantId, playerSourceDuration, playerSourceUrl, muxApiVersion, videoTitle, id, shortTime, rebufferPercentage, timeToFirstFrame, viewerUserId, videoStreamType, playerStartupTime, viewerApplicationVersion, viewMaxDownscalePercentage, viewMaxUpscalePercentage, countryCode, usedFullscreen, isp, propertyId, playerAutoplay, playerHeight, asn, asnName, qualityScore, playerSoftwareVersion, playerMuxPluginName, subPropertyId, playerRemotePlayed, viewMaxPlayheadPosition, viewPlayingTime, viewSessionId, viewerConnectionType, viewerDeviceModel, weightedAverageBitrate, custom1, custom2, custom3, custom4, custom5, custom6, custom7, custom8, custom9, custom10, liveStreamLatency, assetId, environmentId, liveStreamId, muxEmbed, playbackId, playerErrorContext, viewDrmType, viewDroppedFrameCount, viewHasAd, videoStartupFailure, adAttemptCount, adBreakCount, adBreakErrorCount, adBreakErrorPercentage, adErrorCount, adErrorPercentage, adImpressionCount, adStartupErrorCount, adStartupErrorPercentage, adExitBeforeStartCount, adExitBeforeStartPercentage, longResume, longRebuffering, playbackFailureErrorTypeId, playbackBusinessExceptionErrorTypeId, videoStartupBusinessExceptionErrorTypeId); + return Objects.hash(viewTotalUpscaling, prerollAdAssetHostname, playerSourceDomain, region, viewerUserAgent, prerollRequested, pageType, startupScore, viewSeekDuration, countryName, playerSourceHeight, longitude, bufferingCount, videoDuration, playerSourceType, city, viewId, platformDescription, videoStartupPrerollRequestTime, viewerDeviceName, videoSeries, viewerApplicationName, updatedAt, viewTotalContentPlaybackTime, cdn, playerInstanceId, videoLanguage, playerSourceWidth, playerErrorMessage, playerMuxPluginVersion, watched, playbackScore, pageUrl, metro, viewMaxRequestLatency, requestsForFirstPreroll, viewTotalDownscaling, latitude, playerSourceHostName, insertedAt, viewEnd, muxEmbedVersion, playerLanguage, pageLoadTime, viewerDeviceCategory, videoStartupPrerollLoadTime, playerVersion, watchTime, playerSourceStreamType, prerollAdTagHostname, viewerDeviceManufacturer, rebufferingScore, experimentName, viewerOsVersion, playerPreload, bufferingDuration, playerViewCount, playerSoftware, playerLoadTime, platformSummary, videoEncodingVariant, playerWidth, viewSeekCount, viewerExperienceScore, viewErrorId, videoVariantName, prerollPlayed, viewerApplicationEngine, viewerOsArchitecture, playerErrorCode, bufferingRate, events, playerName, viewStart, viewAverageRequestThroughput, videoProducer, errorTypeId, muxViewerId, videoId, continentCode, sessionId, exitBeforeVideoStart, videoContentType, viewerOsFamily, playerPoster, viewAverageRequestLatency, videoVariantId, playerSourceDuration, playerSourceUrl, muxApiVersion, videoTitle, id, shortTime, rebufferPercentage, timeToFirstFrame, viewerUserId, videoStreamType, playerStartupTime, viewerApplicationVersion, viewMaxDownscalePercentage, viewMaxUpscalePercentage, countryCode, usedFullscreen, isp, propertyId, playerAutoplay, playerHeight, asn, asnName, qualityScore, playerSoftwareVersion, playerMuxPluginName, subPropertyId, playerRemotePlayed, viewMaxPlayheadPosition, viewPlayingTime, viewSessionId, viewerConnectionType, viewerDeviceModel, weightedAverageBitrate, custom1, custom2, custom3, custom4, custom5, custom6, custom7, custom8, custom9, custom10, liveStreamLatency, assetId, environmentId, liveStreamId, muxEmbed, playbackId, playerErrorContext, viewDrmType, viewDroppedFrameCount, viewHasAd, videoStartupFailure, adAttemptCount, adBreakCount, adBreakErrorCount, adBreakErrorPercentage, adErrorCount, adErrorPercentage, adImpressionCount, adStartupErrorCount, adStartupErrorPercentage, adExitBeforeStartCount, adExitBeforeStartPercentage, longResume, longRebuffering, playbackFailureErrorTypeId, playbackBusinessExceptionErrorTypeId, videoStartupBusinessExceptionErrorTypeId, playbackFailure, adPlaybackFailureErrorTypeId, viewContentStartupTime, adPrerollStartupTime, adWatchTime, viewContentWatchTime); } @Override @@ -4612,6 +4780,12 @@ public String toString() { sb.append(" playbackFailureErrorTypeId: ").append(toIndentedString(playbackFailureErrorTypeId)).append("\n"); sb.append(" playbackBusinessExceptionErrorTypeId: ").append(toIndentedString(playbackBusinessExceptionErrorTypeId)).append("\n"); sb.append(" videoStartupBusinessExceptionErrorTypeId: ").append(toIndentedString(videoStartupBusinessExceptionErrorTypeId)).append("\n"); + sb.append(" playbackFailure: ").append(toIndentedString(playbackFailure)).append("\n"); + sb.append(" adPlaybackFailureErrorTypeId: ").append(toIndentedString(adPlaybackFailureErrorTypeId)).append("\n"); + sb.append(" viewContentStartupTime: ").append(toIndentedString(viewContentStartupTime)).append("\n"); + sb.append(" adPrerollStartupTime: ").append(toIndentedString(adPrerollStartupTime)).append("\n"); + sb.append(" adWatchTime: ").append(toIndentedString(adWatchTime)).append("\n"); + sb.append(" viewContentWatchTime: ").append(toIndentedString(viewContentWatchTime)).append("\n"); sb.append("}"); return sb.toString(); }