mux_ruby 3.13.0 → 3.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +4 -4
- data/docs/Asset.md +3 -1
- data/docs/AssetsApi.md +80 -5
- data/docs/CreateAssetRequest.md +1 -1
- data/docs/CreateSimulcastTargetRequest.md +2 -2
- data/docs/Error.md +3 -1
- data/docs/GenerateTrackSubtitlesRequest.md +18 -0
- data/docs/GenerateTrackSubtitlesResponse.md +18 -0
- data/docs/InputSettings.md +1 -1
- data/docs/LiveStream.md +3 -1
- data/docs/LiveStreamsApi.md +8 -8
- data/docs/MonitoringBreakdownTimeseriesDatapoint.md +3 -1
- data/docs/PlaybackIDApi.md +4 -4
- data/docs/SimulcastTarget.md +6 -4
- data/docs/UpdateAssetMP4SupportRequest.md +1 -1
- data/docs/VideoView.md +7 -1
- data/gen/generator-config.json +1 -1
- data/lib/mux_ruby/api/assets_api.rb +81 -4
- data/lib/mux_ruby/api/live_streams_api.rb +4 -4
- data/lib/mux_ruby/api/metrics_api.rb +6 -6
- data/lib/mux_ruby/api/playback_id_api.rb +2 -2
- data/lib/mux_ruby/models/asset.rb +28 -6
- data/lib/mux_ruby/models/asset_static_renditions_files.rb +2 -2
- data/lib/mux_ruby/models/create_asset_request.rb +3 -3
- data/lib/mux_ruby/models/create_simulcast_target_request.rb +2 -2
- data/lib/mux_ruby/models/error.rb +16 -5
- data/lib/mux_ruby/models/generate_track_subtitles_request.rb +221 -0
- data/lib/mux_ruby/models/generate_track_subtitles_response.rb +218 -0
- data/lib/mux_ruby/models/input_settings.rb +1 -1
- data/lib/mux_ruby/models/live_stream.rb +26 -4
- data/lib/mux_ruby/models/monitoring_breakdown_timeseries_datapoint.rb +13 -4
- data/lib/mux_ruby/models/simulcast_target.rb +29 -7
- data/lib/mux_ruby/models/update_asset_mp4_support_request.rb +3 -3
- data/lib/mux_ruby/models/video_view.rb +31 -4
- data/lib/mux_ruby/version.rb +1 -1
- data/lib/mux_ruby.rb +2 -0
- data/spec/models/generate_track_subtitles_request_spec.rb +34 -0
- data/spec/models/generate_track_subtitles_response_spec.rb +34 -0
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-11.1.3/byebug/byebug.so +0 -0
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/byebug-11.1.3/gem_make.out +6 -6
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/ffi-1.16.3/ffi_c.so +0 -0
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/ffi-1.16.3/gem_make.out +6 -6
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/ffi-1.16.3/mkmf.log +16 -16
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.4/gem_make.out +14 -14
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/jaro_winkler-1.5.4/jaro_winkler/jaro_winkler_ext.so +0 -0
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-4.0.4/gem_make.out +6 -6
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-4.0.4/mkmf.log +4 -4
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-4.0.4/psych.so +0 -0
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.0.2/gem_make.out +6 -6
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.0.2/mkmf.log +2 -2
- data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.0.2/stringio.so +0 -0
- data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/ext/byebug/Makefile +6 -6
- data/vendor/bundle/ruby/3.2.0/gems/byebug-11.1.3/lib/byebug/byebug.so +0 -0
- data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/ext/ffi_c/Makefile +6 -6
- data/vendor/bundle/ruby/3.2.0/gems/ffi-1.16.3/lib/ffi_c.so +0 -0
- data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.4/ext/jaro_winkler/Makefile +6 -6
- data/vendor/bundle/ruby/3.2.0/gems/jaro_winkler-1.5.4/lib/jaro_winkler/jaro_winkler_ext.so +0 -0
- data/vendor/bundle/ruby/3.2.0/gems/psych-4.0.4/ext/psych/Makefile +6 -6
- data/vendor/bundle/ruby/3.2.0/gems/psych-4.0.4/lib/psych.so +0 -0
- data/vendor/bundle/ruby/3.2.0/gems/stringio-3.0.2/ext/stringio/Makefile +6 -6
- data/vendor/bundle/ruby/3.2.0/gems/stringio-3.0.2/lib/stringio.so +0 -0
- data/vendor/bundle/ruby/3.2.0/specifications/ast-2.4.2.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/byebug-11.1.3.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/coderay-1.1.3.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/diff-lcs-1.5.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/ethon-0.16.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/ffi-1.16.3.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/jaro_winkler-1.5.4.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/method_source-1.0.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/parallel-1.22.1.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/parser-3.1.2.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/pry-0.13.1.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/pry-byebug-3.9.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/psych-4.0.4.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/rainbow-3.1.1.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/rake-13.0.6.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/rspec-3.11.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/rspec-core-3.11.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/rspec-expectations-3.11.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/rspec-mocks-3.11.1.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/rspec-support-3.11.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/rubocop-0.66.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/ruby-progressbar-1.11.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/solid_assert-1.1.0.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/stringio-3.0.2.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/typhoeus-1.4.1.gemspec +2 -2
- data/vendor/bundle/ruby/3.2.0/specifications/unicode-display_width-1.5.0.gemspec +2 -2
- metadata +158 -150
|
@@ -354,7 +354,7 @@ module MuxRuby
|
|
|
354
354
|
return data, status_code, headers
|
|
355
355
|
end
|
|
356
356
|
|
|
357
|
-
# Delete a
|
|
357
|
+
# Delete a live stream simulcast target
|
|
358
358
|
# Delete the simulcast target using the simulcast target ID returned when creating the simulcast target. Simulcast Target can only be deleted when the parent live stream is in idle state.
|
|
359
359
|
# @param live_stream_id [String] The live stream ID
|
|
360
360
|
# @param simulcast_target_id [String] The ID of the simulcast target.
|
|
@@ -365,7 +365,7 @@ module MuxRuby
|
|
|
365
365
|
nil
|
|
366
366
|
end
|
|
367
367
|
|
|
368
|
-
# Delete a
|
|
368
|
+
# Delete a live stream simulcast target
|
|
369
369
|
# Delete the simulcast target using the simulcast target ID returned when creating the simulcast target. Simulcast Target can only be deleted when the parent live stream is in idle state.
|
|
370
370
|
# @param live_stream_id [String] The live stream ID
|
|
371
371
|
# @param simulcast_target_id [String] The ID of the simulcast target.
|
|
@@ -679,7 +679,7 @@ module MuxRuby
|
|
|
679
679
|
return data, status_code, headers
|
|
680
680
|
end
|
|
681
681
|
|
|
682
|
-
# Retrieve a
|
|
682
|
+
# Retrieve a live stream simulcast target
|
|
683
683
|
# Retrieves the details of the simulcast target created for the parent live stream. Supply the unique live stream ID and simulcast target ID that was returned in the response of create simulcast target request, and Mux will return the corresponding information.
|
|
684
684
|
# @param live_stream_id [String] The live stream ID
|
|
685
685
|
# @param simulcast_target_id [String] The ID of the simulcast target.
|
|
@@ -690,7 +690,7 @@ module MuxRuby
|
|
|
690
690
|
data
|
|
691
691
|
end
|
|
692
692
|
|
|
693
|
-
# Retrieve a
|
|
693
|
+
# Retrieve a live stream simulcast target
|
|
694
694
|
# Retrieves the details of the simulcast target created for the parent live stream. Supply the unique live stream ID and simulcast target ID that was returned in the response of create simulcast target request, and Mux will return the corresponding information.
|
|
695
695
|
# @param live_stream_id [String] The live stream ID
|
|
696
696
|
# @param simulcast_target_id [String] The ID of the simulcast target.
|
|
@@ -55,7 +55,7 @@ module MuxRuby
|
|
|
55
55
|
fail ArgumentError, "Missing the required parameter 'metric_id' when calling MetricsApi.get_metric_timeseries_data"
|
|
56
56
|
end
|
|
57
57
|
# verify enum value
|
|
58
|
-
allowable_values = ["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"]
|
|
58
|
+
allowable_values = ["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"]
|
|
59
59
|
if @api_client.config.client_side_validation && !allowable_values.include?(metric_id)
|
|
60
60
|
fail ArgumentError, "invalid value for \"metric_id\", must be one of #{allowable_values}"
|
|
61
61
|
end
|
|
@@ -149,7 +149,7 @@ module MuxRuby
|
|
|
149
149
|
fail ArgumentError, "Missing the required parameter 'metric_id' when calling MetricsApi.get_overall_values"
|
|
150
150
|
end
|
|
151
151
|
# verify enum value
|
|
152
|
-
allowable_values = ["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"]
|
|
152
|
+
allowable_values = ["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"]
|
|
153
153
|
if @api_client.config.client_side_validation && !allowable_values.include?(metric_id)
|
|
154
154
|
fail ArgumentError, "invalid value for \"metric_id\", must be one of #{allowable_values}"
|
|
155
155
|
end
|
|
@@ -228,7 +228,7 @@ module MuxRuby
|
|
|
228
228
|
if @api_client.config.debugging
|
|
229
229
|
@api_client.config.logger.debug 'Calling API: MetricsApi.list_all_metric_values ...'
|
|
230
230
|
end
|
|
231
|
-
allowable_values = ["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_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_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"]
|
|
231
|
+
allowable_values = ["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"]
|
|
232
232
|
if @api_client.config.client_side_validation && opts[:'dimension'] && !allowable_values.include?(opts[:'dimension'])
|
|
233
233
|
fail ArgumentError, "invalid value for \"dimension\", must be one of #{allowable_values}"
|
|
234
234
|
end
|
|
@@ -319,11 +319,11 @@ module MuxRuby
|
|
|
319
319
|
fail ArgumentError, "Missing the required parameter 'metric_id' when calling MetricsApi.list_breakdown_values"
|
|
320
320
|
end
|
|
321
321
|
# verify enum value
|
|
322
|
-
allowable_values = ["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"]
|
|
322
|
+
allowable_values = ["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"]
|
|
323
323
|
if @api_client.config.client_side_validation && !allowable_values.include?(metric_id)
|
|
324
324
|
fail ArgumentError, "invalid value for \"metric_id\", must be one of #{allowable_values}"
|
|
325
325
|
end
|
|
326
|
-
allowable_values = ["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_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_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"]
|
|
326
|
+
allowable_values = ["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"]
|
|
327
327
|
if @api_client.config.client_side_validation && opts[:'group_by'] && !allowable_values.include?(opts[:'group_by'])
|
|
328
328
|
fail ArgumentError, "invalid value for \"group_by\", must be one of #{allowable_values}"
|
|
329
329
|
end
|
|
@@ -422,7 +422,7 @@ module MuxRuby
|
|
|
422
422
|
fail ArgumentError, "Missing the required parameter 'metric_id' when calling MetricsApi.list_insights"
|
|
423
423
|
end
|
|
424
424
|
# verify enum value
|
|
425
|
-
allowable_values = ["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"]
|
|
425
|
+
allowable_values = ["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"]
|
|
426
426
|
if @api_client.config.client_side_validation && !allowable_values.include?(metric_id)
|
|
427
427
|
fail ArgumentError, "invalid value for \"metric_id\", must be one of #{allowable_values}"
|
|
428
428
|
end
|
|
@@ -19,7 +19,7 @@ module MuxRuby
|
|
|
19
19
|
def initialize(api_client = ApiClient.default)
|
|
20
20
|
@api_client = api_client
|
|
21
21
|
end
|
|
22
|
-
# Retrieve an
|
|
22
|
+
# Retrieve an asset or live stream ID
|
|
23
23
|
# Retrieves the Identifier of the Asset or Live Stream associated with the Playback ID.
|
|
24
24
|
# @param playback_id [String] The live stream's playback ID.
|
|
25
25
|
# @param [Hash] opts the optional parameters
|
|
@@ -29,7 +29,7 @@ module MuxRuby
|
|
|
29
29
|
data
|
|
30
30
|
end
|
|
31
31
|
|
|
32
|
-
# Retrieve an
|
|
32
|
+
# Retrieve an asset or live stream ID
|
|
33
33
|
# Retrieves the Identifier of the Asset or Live Stream associated with the Playback ID.
|
|
34
34
|
# @param playback_id [String] The live stream's playback ID.
|
|
35
35
|
# @param [Hash] opts the optional parameters
|
|
@@ -89,6 +89,9 @@ module MuxRuby
|
|
|
89
89
|
# True means this live stream is a test asset. A test asset can help evaluate the Mux Video APIs without incurring any cost. There is no limit on number of test assets created. Test assets are watermarked with the Mux logo, limited to 10 seconds, and deleted after 24 hrs.
|
|
90
90
|
attr_accessor :test
|
|
91
91
|
|
|
92
|
+
# The type of ingest used to create the asset.
|
|
93
|
+
attr_accessor :ingest_type
|
|
94
|
+
|
|
92
95
|
class EnumAttributeValidator
|
|
93
96
|
attr_reader :datatype
|
|
94
97
|
attr_reader :allowable_values
|
|
@@ -140,7 +143,8 @@ module MuxRuby
|
|
|
140
143
|
:'static_renditions' => :'static_renditions',
|
|
141
144
|
:'recording_times' => :'recording_times',
|
|
142
145
|
:'non_standard_input_reasons' => :'non_standard_input_reasons',
|
|
143
|
-
:'test' => :'test'
|
|
146
|
+
:'test' => :'test',
|
|
147
|
+
:'ingest_type' => :'ingest_type'
|
|
144
148
|
}
|
|
145
149
|
end
|
|
146
150
|
|
|
@@ -178,7 +182,8 @@ module MuxRuby
|
|
|
178
182
|
:'static_renditions' => :'AssetStaticRenditions',
|
|
179
183
|
:'recording_times' => :'Array<AssetRecordingTimes>',
|
|
180
184
|
:'non_standard_input_reasons' => :'AssetNonStandardInputReasons',
|
|
181
|
-
:'test' => :'Boolean'
|
|
185
|
+
:'test' => :'Boolean',
|
|
186
|
+
:'ingest_type' => :'String'
|
|
182
187
|
}
|
|
183
188
|
end
|
|
184
189
|
|
|
@@ -322,6 +327,10 @@ module MuxRuby
|
|
|
322
327
|
if attributes.key?(:'test')
|
|
323
328
|
self.test = attributes[:'test']
|
|
324
329
|
end
|
|
330
|
+
|
|
331
|
+
if attributes.key?(:'ingest_type')
|
|
332
|
+
self.ingest_type = attributes[:'ingest_type']
|
|
333
|
+
end
|
|
325
334
|
end
|
|
326
335
|
|
|
327
336
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -346,8 +355,10 @@ module MuxRuby
|
|
|
346
355
|
return false unless encoding_tier_validator.valid?(@encoding_tier)
|
|
347
356
|
master_access_validator = EnumAttributeValidator.new('String', ["temporary", "none"])
|
|
348
357
|
return false unless master_access_validator.valid?(@master_access)
|
|
349
|
-
mp4_support_validator = EnumAttributeValidator.new('String', ["standard", "none"])
|
|
358
|
+
mp4_support_validator = EnumAttributeValidator.new('String', ["standard", "none", "capped-1080p", "audio-only", "audio-only,capped-1080p"])
|
|
350
359
|
return false unless mp4_support_validator.valid?(@mp4_support)
|
|
360
|
+
ingest_type_validator = EnumAttributeValidator.new('String', ["on_demand_url", "on_demand_direct_upload", "on_demand_clip", "live_rtmp", "live_srt"])
|
|
361
|
+
return false unless ingest_type_validator.valid?(@ingest_type)
|
|
351
362
|
true
|
|
352
363
|
end
|
|
353
364
|
|
|
@@ -414,13 +425,23 @@ module MuxRuby
|
|
|
414
425
|
# Custom attribute writer method checking allowed values (enum).
|
|
415
426
|
# @param [Object] mp4_support Object to be assigned
|
|
416
427
|
def mp4_support=(mp4_support)
|
|
417
|
-
validator = EnumAttributeValidator.new('String', ["standard", "none"])
|
|
428
|
+
validator = EnumAttributeValidator.new('String', ["standard", "none", "capped-1080p", "audio-only", "audio-only,capped-1080p"])
|
|
418
429
|
unless validator.valid?(mp4_support)
|
|
419
430
|
fail ArgumentError, "invalid value for \"mp4_support\", must be one of #{validator.allowable_values}."
|
|
420
431
|
end
|
|
421
432
|
@mp4_support = mp4_support
|
|
422
433
|
end
|
|
423
434
|
|
|
435
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
436
|
+
# @param [Object] ingest_type Object to be assigned
|
|
437
|
+
def ingest_type=(ingest_type)
|
|
438
|
+
validator = EnumAttributeValidator.new('String', ["on_demand_url", "on_demand_direct_upload", "on_demand_clip", "live_rtmp", "live_srt"])
|
|
439
|
+
unless validator.valid?(ingest_type)
|
|
440
|
+
fail ArgumentError, "invalid value for \"ingest_type\", must be one of #{validator.allowable_values}."
|
|
441
|
+
end
|
|
442
|
+
@ingest_type = ingest_type
|
|
443
|
+
end
|
|
444
|
+
|
|
424
445
|
# Checks equality by comparing each attribute.
|
|
425
446
|
# @param [Object] Object to be compared
|
|
426
447
|
def ==(o)
|
|
@@ -452,7 +473,8 @@ module MuxRuby
|
|
|
452
473
|
static_renditions == o.static_renditions &&
|
|
453
474
|
recording_times == o.recording_times &&
|
|
454
475
|
non_standard_input_reasons == o.non_standard_input_reasons &&
|
|
455
|
-
test == o.test
|
|
476
|
+
test == o.test &&
|
|
477
|
+
ingest_type == o.ingest_type
|
|
456
478
|
end
|
|
457
479
|
|
|
458
480
|
# @see the `==` method
|
|
@@ -464,7 +486,7 @@ module MuxRuby
|
|
|
464
486
|
# Calculates hash code according to all attributes.
|
|
465
487
|
# @return [Integer] Hash code
|
|
466
488
|
def hash
|
|
467
|
-
[id, created_at, status, duration, max_stored_resolution, resolution_tier, max_resolution_tier, encoding_tier, max_stored_frame_rate, aspect_ratio, playback_ids, tracks, errors, per_title_encode, upload_id, is_live, passthrough, live_stream_id, master, master_access, mp4_support, source_asset_id, normalize_audio, static_renditions, recording_times, non_standard_input_reasons, test].hash
|
|
489
|
+
[id, created_at, status, duration, max_stored_resolution, resolution_tier, max_resolution_tier, encoding_tier, max_stored_frame_rate, aspect_ratio, playback_ids, tracks, errors, per_title_encode, upload_id, is_live, passthrough, live_stream_id, master, master_access, mp4_support, source_asset_id, normalize_audio, static_renditions, recording_times, non_standard_input_reasons, test, ingest_type].hash
|
|
468
490
|
end
|
|
469
491
|
|
|
470
492
|
# Builds the object from hash
|
|
@@ -139,7 +139,7 @@ module MuxRuby
|
|
|
139
139
|
# Check to see if the all the properties in the model are valid
|
|
140
140
|
# @return true if the model is valid
|
|
141
141
|
def valid?
|
|
142
|
-
name_validator = EnumAttributeValidator.new('String', ["low.mp4", "medium.mp4", "high.mp4", "audio.m4a"])
|
|
142
|
+
name_validator = EnumAttributeValidator.new('String', ["low.mp4", "medium.mp4", "high.mp4", "audio.m4a", "capped-1080p.mp4"])
|
|
143
143
|
return false unless name_validator.valid?(@name)
|
|
144
144
|
ext_validator = EnumAttributeValidator.new('String', ["mp4", "m4a"])
|
|
145
145
|
return false unless ext_validator.valid?(@ext)
|
|
@@ -149,7 +149,7 @@ module MuxRuby
|
|
|
149
149
|
# Custom attribute writer method checking allowed values (enum).
|
|
150
150
|
# @param [Object] name Object to be assigned
|
|
151
151
|
def name=(name)
|
|
152
|
-
validator = EnumAttributeValidator.new('String', ["low.mp4", "medium.mp4", "high.mp4", "audio.m4a"])
|
|
152
|
+
validator = EnumAttributeValidator.new('String', ["low.mp4", "medium.mp4", "high.mp4", "audio.m4a", "capped-1080p.mp4"])
|
|
153
153
|
unless validator.valid?(name)
|
|
154
154
|
fail ArgumentError, "invalid value for \"name\", must be one of #{validator.allowable_values}."
|
|
155
155
|
end
|
|
@@ -26,7 +26,7 @@ module MuxRuby
|
|
|
26
26
|
# Arbitrary user-supplied metadata that will be included in the asset details and related webhooks. Can be used to store your own ID for a video along with the asset. **Max: 255 characters**.
|
|
27
27
|
attr_accessor :passthrough
|
|
28
28
|
|
|
29
|
-
# Specify what level
|
|
29
|
+
# Specify what level of support for mp4 playback. * 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). MP4 files are not produced for `none` (default). In most cases you should use our default HLS-based streaming playback (`{playback_id}.m3u8`) which can automatically adjust to viewers' connection speeds, but an mp4 can be useful for some legacy devices or downloading for offline playback. See the [Download your videos guide](https://docs.mux.com/guides/enable-static-mp4-renditions) for more information.
|
|
30
30
|
attr_accessor :mp4_support
|
|
31
31
|
|
|
32
32
|
# Normalize the audio track loudness level. This parameter is only applicable to on-demand (not live) assets.
|
|
@@ -181,7 +181,7 @@ module MuxRuby
|
|
|
181
181
|
# Check to see if the all the properties in the model are valid
|
|
182
182
|
# @return true if the model is valid
|
|
183
183
|
def valid?
|
|
184
|
-
mp4_support_validator = EnumAttributeValidator.new('String', ["none", "standard"])
|
|
184
|
+
mp4_support_validator = EnumAttributeValidator.new('String', ["none", "standard", "capped-1080p", "audio-only", "audio-only,capped-1080p"])
|
|
185
185
|
return false unless mp4_support_validator.valid?(@mp4_support)
|
|
186
186
|
master_access_validator = EnumAttributeValidator.new('String', ["none", "temporary"])
|
|
187
187
|
return false unless master_access_validator.valid?(@master_access)
|
|
@@ -195,7 +195,7 @@ module MuxRuby
|
|
|
195
195
|
# Custom attribute writer method checking allowed values (enum).
|
|
196
196
|
# @param [Object] mp4_support Object to be assigned
|
|
197
197
|
def mp4_support=(mp4_support)
|
|
198
|
-
validator = EnumAttributeValidator.new('String', ["none", "standard"])
|
|
198
|
+
validator = EnumAttributeValidator.new('String', ["none", "standard", "capped-1080p", "audio-only", "audio-only,capped-1080p"])
|
|
199
199
|
unless validator.valid?(mp4_support)
|
|
200
200
|
fail ArgumentError, "invalid value for \"mp4_support\", must be one of #{validator.allowable_values}."
|
|
201
201
|
end
|
|
@@ -18,10 +18,10 @@ module MuxRuby
|
|
|
18
18
|
# Arbitrary user-supplied metadata set by you when creating a simulcast target.
|
|
19
19
|
attr_accessor :passthrough
|
|
20
20
|
|
|
21
|
-
# Stream Key represents a stream identifier on the third party live streaming service to send the parent live stream to.
|
|
21
|
+
# Stream Key represents a stream identifier on the third party live streaming service to send the parent live stream to. Only used for RTMP(s) simulcast destinations.
|
|
22
22
|
attr_accessor :stream_key
|
|
23
23
|
|
|
24
|
-
# RTMP
|
|
24
|
+
# The RTMP(s) or SRT endpoint for a simulcast destination. * For RTMP(s) destinations, this should include the application name for the third party live streaming service, for example: `rtmp://live.example.com/app`. * For SRT destinations, this should be a fully formed SRT connection string, for example: `srt://srt-live.example.com:1234?streamid={stream_key}&passphrase={srt_passphrase}`. Note: SRT simulcast targets can only be used when an source is connected over SRT.
|
|
25
25
|
attr_accessor :url
|
|
26
26
|
|
|
27
27
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
@@ -39,6 +39,9 @@ module MuxRuby
|
|
|
39
39
|
# The error code
|
|
40
40
|
attr_accessor :code
|
|
41
41
|
|
|
42
|
+
# The string version of the error code
|
|
43
|
+
attr_accessor :player_error_code
|
|
44
|
+
|
|
42
45
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
43
46
|
def self.attribute_map
|
|
44
47
|
{
|
|
@@ -49,7 +52,8 @@ module MuxRuby
|
|
|
49
52
|
:'last_seen' => :'last_seen',
|
|
50
53
|
:'description' => :'description',
|
|
51
54
|
:'count' => :'count',
|
|
52
|
-
:'code' => :'code'
|
|
55
|
+
:'code' => :'code',
|
|
56
|
+
:'player_error_code' => :'player_error_code'
|
|
53
57
|
}
|
|
54
58
|
end
|
|
55
59
|
|
|
@@ -68,7 +72,8 @@ module MuxRuby
|
|
|
68
72
|
:'last_seen' => :'String',
|
|
69
73
|
:'description' => :'String',
|
|
70
74
|
:'count' => :'Integer',
|
|
71
|
-
:'code' => :'Integer'
|
|
75
|
+
:'code' => :'Integer',
|
|
76
|
+
:'player_error_code' => :'String'
|
|
72
77
|
}
|
|
73
78
|
end
|
|
74
79
|
|
|
@@ -78,7 +83,8 @@ module MuxRuby
|
|
|
78
83
|
:'notes',
|
|
79
84
|
:'message',
|
|
80
85
|
:'description',
|
|
81
|
-
:'code'
|
|
86
|
+
:'code',
|
|
87
|
+
:'player_error_code'
|
|
82
88
|
])
|
|
83
89
|
end
|
|
84
90
|
|
|
@@ -128,6 +134,10 @@ module MuxRuby
|
|
|
128
134
|
if attributes.key?(:'code')
|
|
129
135
|
self.code = attributes[:'code']
|
|
130
136
|
end
|
|
137
|
+
|
|
138
|
+
if attributes.key?(:'player_error_code')
|
|
139
|
+
self.player_error_code = attributes[:'player_error_code']
|
|
140
|
+
end
|
|
131
141
|
end
|
|
132
142
|
|
|
133
143
|
# Show invalid properties with the reasons. Usually used together with valid?
|
|
@@ -155,7 +165,8 @@ module MuxRuby
|
|
|
155
165
|
last_seen == o.last_seen &&
|
|
156
166
|
description == o.description &&
|
|
157
167
|
count == o.count &&
|
|
158
|
-
code == o.code
|
|
168
|
+
code == o.code &&
|
|
169
|
+
player_error_code == o.player_error_code
|
|
159
170
|
end
|
|
160
171
|
|
|
161
172
|
# @see the `==` method
|
|
@@ -167,7 +178,7 @@ module MuxRuby
|
|
|
167
178
|
# Calculates hash code according to all attributes.
|
|
168
179
|
# @return [Integer] Hash code
|
|
169
180
|
def hash
|
|
170
|
-
[id, percentage, notes, message, last_seen, description, count, code].hash
|
|
181
|
+
[id, percentage, notes, message, last_seen, description, count, code, player_error_code].hash
|
|
171
182
|
end
|
|
172
183
|
|
|
173
184
|
# Builds the object from hash
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Mux API
|
|
3
|
+
|
|
4
|
+
#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.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: v1
|
|
7
|
+
Contact: devex@mux.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 5.0.1
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'date'
|
|
14
|
+
require 'time'
|
|
15
|
+
|
|
16
|
+
module MuxRuby
|
|
17
|
+
class GenerateTrackSubtitlesRequest
|
|
18
|
+
# Generate subtitle tracks using automatic speech recognition with this configuration.
|
|
19
|
+
attr_accessor :generated_subtitles
|
|
20
|
+
|
|
21
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
22
|
+
def self.attribute_map
|
|
23
|
+
{
|
|
24
|
+
:'generated_subtitles' => :'generated_subtitles'
|
|
25
|
+
}
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# Returns all the JSON keys this model knows about
|
|
29
|
+
def self.acceptable_attributes
|
|
30
|
+
attribute_map.values
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# Attribute type mapping.
|
|
34
|
+
def self.openapi_types
|
|
35
|
+
{
|
|
36
|
+
:'generated_subtitles' => :'Array<AssetGeneratedSubtitleSettings>'
|
|
37
|
+
}
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# List of attributes with nullable: true
|
|
41
|
+
def self.openapi_nullable
|
|
42
|
+
Set.new([
|
|
43
|
+
])
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
# Initializes the object
|
|
47
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
48
|
+
def initialize(attributes = {})
|
|
49
|
+
if (!attributes.is_a?(Hash))
|
|
50
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `MuxRuby::GenerateTrackSubtitlesRequest` initialize method"
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
|
54
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
|
55
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
|
56
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `MuxRuby::GenerateTrackSubtitlesRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
|
57
|
+
end
|
|
58
|
+
h[k.to_sym] = v
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if attributes.key?(:'generated_subtitles')
|
|
62
|
+
if (value = attributes[:'generated_subtitles']).is_a?(Array)
|
|
63
|
+
self.generated_subtitles = value
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
|
69
|
+
# @return Array for valid properties with the reasons
|
|
70
|
+
def list_invalid_properties
|
|
71
|
+
invalid_properties = Array.new
|
|
72
|
+
invalid_properties
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
# Check to see if the all the properties in the model are valid
|
|
76
|
+
# @return true if the model is valid
|
|
77
|
+
def valid?
|
|
78
|
+
true
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
# Checks equality by comparing each attribute.
|
|
82
|
+
# @param [Object] Object to be compared
|
|
83
|
+
def ==(o)
|
|
84
|
+
return true if self.equal?(o)
|
|
85
|
+
self.class == o.class &&
|
|
86
|
+
generated_subtitles == o.generated_subtitles
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
# @see the `==` method
|
|
90
|
+
# @param [Object] Object to be compared
|
|
91
|
+
def eql?(o)
|
|
92
|
+
self == o
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# Calculates hash code according to all attributes.
|
|
96
|
+
# @return [Integer] Hash code
|
|
97
|
+
def hash
|
|
98
|
+
[generated_subtitles].hash
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
# Builds the object from hash
|
|
102
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
103
|
+
# @return [Object] Returns the model itself
|
|
104
|
+
def self.build_from_hash(attributes)
|
|
105
|
+
new.build_from_hash(attributes)
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
# Builds the object from hash
|
|
109
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
110
|
+
# @return [Object] Returns the model itself
|
|
111
|
+
def build_from_hash(attributes)
|
|
112
|
+
return nil unless attributes.is_a?(Hash)
|
|
113
|
+
self.class.openapi_types.each_pair do |key, type|
|
|
114
|
+
if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
|
|
115
|
+
self.send("#{key}=", nil)
|
|
116
|
+
elsif type =~ /\AArray<(.*)>/i
|
|
117
|
+
# check to ensure the input is an array given that the attribute
|
|
118
|
+
# is documented as an array but the input is not
|
|
119
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
120
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
|
121
|
+
end
|
|
122
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
123
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
self
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
# Deserializes the data based on type
|
|
131
|
+
# @param string type Data type
|
|
132
|
+
# @param string value Value to be deserialized
|
|
133
|
+
# @return [Object] Deserialized data
|
|
134
|
+
def _deserialize(type, value)
|
|
135
|
+
case type.to_sym
|
|
136
|
+
when :Time
|
|
137
|
+
Time.parse(value)
|
|
138
|
+
when :Date
|
|
139
|
+
Date.parse(value)
|
|
140
|
+
when :String
|
|
141
|
+
value.to_s
|
|
142
|
+
when :Integer
|
|
143
|
+
value.to_i
|
|
144
|
+
when :Float
|
|
145
|
+
value.to_f
|
|
146
|
+
when :Boolean
|
|
147
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
148
|
+
true
|
|
149
|
+
else
|
|
150
|
+
false
|
|
151
|
+
end
|
|
152
|
+
when :Object
|
|
153
|
+
# generic object (usually a Hash), return directly
|
|
154
|
+
value
|
|
155
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
|
156
|
+
inner_type = Regexp.last_match[:inner_type]
|
|
157
|
+
value.map { |v| _deserialize(inner_type, v) }
|
|
158
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
159
|
+
k_type = Regexp.last_match[:k_type]
|
|
160
|
+
v_type = Regexp.last_match[:v_type]
|
|
161
|
+
{}.tap do |hash|
|
|
162
|
+
value.each do |k, v|
|
|
163
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
164
|
+
end
|
|
165
|
+
end
|
|
166
|
+
else # model
|
|
167
|
+
# models (e.g. Pet) or oneOf
|
|
168
|
+
klass = MuxRuby.const_get(type)
|
|
169
|
+
klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
# Returns the string representation of the object
|
|
174
|
+
# @return [String] String presentation of the object
|
|
175
|
+
def to_s
|
|
176
|
+
to_hash.to_s
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
# to_body is an alias to to_hash (backward compatibility)
|
|
180
|
+
# @return [Hash] Returns the object in the form of hash
|
|
181
|
+
def to_body
|
|
182
|
+
to_hash
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
# Returns the object in the form of hash
|
|
186
|
+
# @return [Hash] Returns the object in the form of hash
|
|
187
|
+
def to_hash
|
|
188
|
+
hash = {}
|
|
189
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
190
|
+
value = self.send(attr)
|
|
191
|
+
if value.nil?
|
|
192
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
|
193
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
hash[param] = _to_hash(value)
|
|
197
|
+
end
|
|
198
|
+
hash
|
|
199
|
+
end
|
|
200
|
+
|
|
201
|
+
# Outputs non-array value in the form of hash
|
|
202
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
203
|
+
# @param [Object] value Any valid value
|
|
204
|
+
# @return [Hash] Returns the value in the form of hash
|
|
205
|
+
def _to_hash(value)
|
|
206
|
+
if value.is_a?(Array)
|
|
207
|
+
value.compact.map { |v| _to_hash(v) }
|
|
208
|
+
elsif value.is_a?(Hash)
|
|
209
|
+
{}.tap do |hash|
|
|
210
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
211
|
+
end
|
|
212
|
+
elsif value.respond_to? :to_hash
|
|
213
|
+
value.to_hash
|
|
214
|
+
else
|
|
215
|
+
value
|
|
216
|
+
end
|
|
217
|
+
end
|
|
218
|
+
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
end
|