mux_ruby 1.6.0 → 2.0.0.pre.rc.2

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.
Files changed (314) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -1
  3. data/Gemfile.lock +26 -37
  4. data/README.md +37 -13
  5. data/docs/AbridgedVideoView.md +33 -13
  6. data/docs/Asset.md +59 -23
  7. data/docs/AssetErrors.md +15 -4
  8. data/docs/AssetMaster.md +15 -4
  9. data/docs/AssetNonStandardInputReasons.md +34 -0
  10. data/docs/AssetRecordingTimes.md +20 -0
  11. data/docs/AssetResponse.md +13 -3
  12. data/docs/AssetStaticRenditions.md +15 -4
  13. data/docs/AssetStaticRenditionsFiles.md +23 -8
  14. data/docs/AssetsApi.md +396 -161
  15. data/docs/BreakdownValue.md +21 -7
  16. data/docs/CreateAssetRequest.md +27 -10
  17. data/docs/CreateLiveStreamRequest.md +27 -9
  18. data/docs/CreatePlaybackIDRequest.md +13 -3
  19. data/docs/CreatePlaybackIDResponse.md +13 -3
  20. data/docs/CreateSimulcastTargetRequest.md +17 -5
  21. data/docs/CreateTrackRequest.md +25 -9
  22. data/docs/CreateTrackResponse.md +13 -3
  23. data/docs/CreateUploadRequest.md +19 -6
  24. data/docs/DeliveryReport.md +27 -9
  25. data/docs/DeliveryUsageApi.md +41 -23
  26. data/docs/DimensionValue.md +20 -0
  27. data/docs/DimensionsApi.md +156 -0
  28. data/docs/DirectUploadsApi.md +131 -56
  29. data/docs/DisableLiveStreamResponse.md +18 -0
  30. data/docs/EnableLiveStreamResponse.md +18 -0
  31. data/docs/Error.md +27 -10
  32. data/docs/ErrorsApi.md +38 -20
  33. data/docs/ExportsApi.md +33 -14
  34. data/docs/FilterValue.md +15 -4
  35. data/docs/FiltersApi.md +73 -35
  36. data/docs/GetAssetInputInfoResponse.md +13 -3
  37. data/docs/GetAssetOrLiveStreamIdResponse.md +18 -0
  38. data/docs/GetAssetOrLiveStreamIdResponseData.md +22 -0
  39. data/docs/GetAssetOrLiveStreamIdResponseDataObject.md +20 -0
  40. data/docs/GetAssetPlaybackIDResponse.md +13 -3
  41. data/docs/GetMetricTimeseriesDataResponse.md +17 -5
  42. data/docs/GetOverallValuesResponse.md +17 -5
  43. data/docs/GetRealTimeBreakdownResponse.md +22 -0
  44. data/docs/GetRealTimeHistogramTimeseriesResponse.md +24 -0
  45. data/docs/GetRealTimeHistogramTimeseriesResponseMeta.md +18 -0
  46. data/docs/GetRealTimeTimeseriesResponse.md +22 -0
  47. data/docs/Incident.md +58 -0
  48. data/docs/IncidentBreakdown.md +22 -0
  49. data/docs/IncidentNotification.md +22 -0
  50. data/docs/IncidentNotificationRule.md +26 -0
  51. data/docs/IncidentResponse.md +20 -0
  52. data/docs/IncidentsApi.md +242 -0
  53. data/docs/InputFile.md +15 -4
  54. data/docs/InputInfo.md +15 -4
  55. data/docs/InputSettings.md +31 -10
  56. data/docs/InputSettingsOverlaySettings.md +25 -9
  57. data/docs/InputTrack.md +29 -11
  58. data/docs/Insight.md +23 -8
  59. data/docs/ListAllMetricValuesResponse.md +17 -5
  60. data/docs/ListAssetsResponse.md +13 -3
  61. data/docs/ListBreakdownValuesResponse.md +17 -5
  62. data/docs/ListDeliveryUsageResponse.md +19 -6
  63. data/docs/ListDimensionValuesResponse.md +22 -0
  64. data/docs/ListDimensionsResponse.md +22 -0
  65. data/docs/ListErrorsResponse.md +17 -5
  66. data/docs/ListExportsResponse.md +17 -5
  67. data/docs/ListFilterValuesResponse.md +17 -5
  68. data/docs/ListFiltersResponse.md +17 -5
  69. data/docs/ListFiltersResponseData.md +15 -4
  70. data/docs/ListIncidentsResponse.md +22 -0
  71. data/docs/ListInsightsResponse.md +17 -5
  72. data/docs/ListLiveStreamsResponse.md +13 -3
  73. data/docs/ListRealTimeDimensionsResponse.md +22 -0
  74. data/docs/ListRealTimeDimensionsResponseData.md +20 -0
  75. data/docs/ListRealTimeMetricsResponse.md +22 -0
  76. data/docs/ListRelatedIncidentsResponse.md +22 -0
  77. data/docs/ListSigningKeysResponse.md +13 -3
  78. data/docs/ListUploadsResponse.md +13 -3
  79. data/docs/ListVideoViewsResponse.md +17 -5
  80. data/docs/LiveStream.md +39 -15
  81. data/docs/LiveStreamResponse.md +13 -3
  82. data/docs/LiveStreamsApi.md +497 -145
  83. data/docs/Metric.md +21 -7
  84. data/docs/MetricsApi.md +211 -117
  85. data/docs/NotificationRule.md +22 -0
  86. data/docs/OverallValues.md +19 -6
  87. data/docs/PlaybackID.md +15 -4
  88. data/docs/PlaybackIDApi.md +78 -0
  89. data/docs/PlaybackPolicy.md +10 -2
  90. data/docs/RealTimeApi.md +376 -0
  91. data/docs/RealTimeBreakdownValue.md +26 -0
  92. data/docs/RealTimeHistogramTimeseriesBucket.md +20 -0
  93. data/docs/RealTimeHistogramTimeseriesBucketValues.md +20 -0
  94. data/docs/RealTimeHistogramTimeseriesDatapoint.md +30 -0
  95. data/docs/RealTimeTimeseriesDatapoint.md +22 -0
  96. data/docs/Score.md +23 -8
  97. data/docs/SignalLiveStreamCompleteResponse.md +13 -3
  98. data/docs/SigningKey.md +17 -5
  99. data/docs/SigningKeyResponse.md +13 -3
  100. data/docs/SimulcastTarget.md +21 -7
  101. data/docs/SimulcastTargetResponse.md +13 -3
  102. data/docs/Track.md +37 -15
  103. data/docs/URLSigningKeysApi.md +130 -54
  104. data/docs/UpdateAssetMP4SupportRequest.md +13 -3
  105. data/docs/UpdateAssetMasterAccessRequest.md +13 -3
  106. data/docs/Upload.md +29 -11
  107. data/docs/UploadError.md +15 -4
  108. data/docs/UploadResponse.md +13 -3
  109. data/docs/VideoView.md +251 -114
  110. data/docs/VideoViewEvent.md +19 -6
  111. data/docs/VideoViewResponse.md +15 -4
  112. data/docs/VideoViewsApi.md +78 -41
  113. data/examples/data/exercise-dimensions.rb +29 -0
  114. data/examples/data/exercise-incidents.rb +29 -0
  115. data/examples/data/exercise-realtime.rb +60 -0
  116. data/examples/video/exercise-assets.rb +21 -0
  117. data/examples/video/exercise-live-streams.rb +30 -0
  118. data/gen/.gitignore +7 -0
  119. data/gen/Makefile +31 -0
  120. data/gen/generator-config.json +11 -0
  121. data/gen/openapitools.json +7 -0
  122. data/gen/package.json +17 -0
  123. data/gen/templates/Gemfile.mustache +11 -0
  124. data/gen/templates/README.mustache +158 -0
  125. data/gen/templates/Rakefile.mustache +10 -0
  126. data/gen/templates/api.mustache +206 -0
  127. data/gen/templates/api_client.mustache +264 -0
  128. data/gen/templates/api_client_faraday_partial.mustache +138 -0
  129. data/gen/templates/api_client_spec.mustache +220 -0
  130. data/gen/templates/api_client_typhoeus_partial.mustache +183 -0
  131. data/gen/templates/api_doc.mustache +118 -0
  132. data/gen/templates/api_error.mustache +67 -0
  133. data/gen/templates/api_info.mustache +12 -0
  134. data/gen/templates/api_test.mustache +47 -0
  135. data/gen/templates/base_object.mustache +120 -0
  136. data/gen/templates/configuration.mustache +349 -0
  137. data/gen/templates/configuration_spec.mustache +34 -0
  138. data/gen/templates/configuration_tls_faraday_partial.mustache +29 -0
  139. data/gen/templates/configuration_tls_typhoeus_partial.mustache +34 -0
  140. data/gen/templates/gem.mustache +40 -0
  141. data/gen/templates/gemspec.mustache +35 -0
  142. data/gen/templates/gitignore.mustache +39 -0
  143. data/gen/templates/model.mustache +26 -0
  144. data/gen/templates/model_doc.mustache +12 -0
  145. data/gen/templates/model_test.mustache +77 -0
  146. data/gen/templates/partial_model_enum_class.mustache +20 -0
  147. data/gen/templates/partial_model_generic.mustache +371 -0
  148. data/gen/templates/partial_model_generic_doc.mustache +28 -0
  149. data/gen/templates/partial_oneof_module.mustache +137 -0
  150. data/gen/templates/partial_oneof_module_doc.mustache +92 -0
  151. data/gen/templates/rspec.mustache +2 -0
  152. data/gen/templates/rubocop.mustache +148 -0
  153. data/gen/templates/spec_helper.mustache +103 -0
  154. data/gen/templates/version.mustache +7 -0
  155. data/gen/yarn.lock +1878 -0
  156. data/lib/mux_ruby.rb +43 -2
  157. data/lib/mux_ruby/api/assets_api.rb +291 -152
  158. data/lib/mux_ruby/api/delivery_usage_api.rb +32 -16
  159. data/lib/mux_ruby/api/dimensions_api.rb +154 -0
  160. data/lib/mux_ruby/api/direct_uploads_api.rb +90 -44
  161. data/lib/mux_ruby/api/errors_api.rb +34 -18
  162. data/lib/mux_ruby/api/exports_api.rb +30 -14
  163. data/lib/mux_ruby/api/filters_api.rb +57 -31
  164. data/lib/mux_ruby/api/incidents_api.rb +259 -0
  165. data/lib/mux_ruby/api/live_streams_api.rb +381 -133
  166. data/lib/mux_ruby/api/metrics_api.rb +185 -114
  167. data/lib/mux_ruby/api/playback_id_api.rb +85 -0
  168. data/lib/mux_ruby/api/real_time_api.rb +373 -0
  169. data/lib/mux_ruby/api/url_signing_keys_api.rb +95 -48
  170. data/lib/mux_ruby/api/video_views_api.rb +60 -33
  171. data/lib/mux_ruby/api_client.rb +106 -91
  172. data/lib/mux_ruby/api_error.rb +35 -7
  173. data/lib/mux_ruby/configuration.rb +50 -14
  174. data/lib/mux_ruby/models/abridged_video_view.rb +58 -24
  175. data/lib/mux_ruby/models/asset.rb +157 -53
  176. data/lib/mux_ruby/models/asset_errors.rb +52 -15
  177. data/lib/mux_ruby/models/asset_master.rb +85 -15
  178. data/lib/mux_ruby/models/asset_non_standard_input_reasons.rb +370 -0
  179. data/lib/mux_ruby/models/asset_recording_times.rb +229 -0
  180. data/lib/mux_ruby/models/asset_response.rb +48 -14
  181. data/lib/mux_ruby/models/asset_static_renditions.rb +55 -19
  182. data/lib/mux_ruby/models/asset_static_renditions_files.rb +60 -25
  183. data/lib/mux_ruby/models/breakdown_value.rb +52 -18
  184. data/lib/mux_ruby/models/create_asset_request.rb +70 -30
  185. data/lib/mux_ruby/models/create_live_stream_request.rb +68 -23
  186. data/lib/mux_ruby/models/create_playback_id_request.rb +48 -14
  187. data/lib/mux_ruby/models/create_playback_id_response.rb +48 -14
  188. data/lib/mux_ruby/models/create_simulcast_target_request.rb +50 -16
  189. data/lib/mux_ruby/models/create_track_request.rb +65 -27
  190. data/lib/mux_ruby/models/create_track_response.rb +48 -14
  191. data/lib/mux_ruby/models/create_upload_request.rb +52 -18
  192. data/lib/mux_ruby/models/delivery_report.rb +106 -21
  193. data/lib/mux_ruby/models/dimension_value.rb +227 -0
  194. data/lib/mux_ruby/models/disable_live_stream_response.rb +218 -0
  195. data/lib/mux_ruby/models/enable_live_stream_response.rb +218 -0
  196. data/lib/mux_ruby/models/error.rb +63 -21
  197. data/lib/mux_ruby/models/filter_value.rb +49 -15
  198. data/lib/mux_ruby/models/get_asset_input_info_response.rb +48 -14
  199. data/lib/mux_ruby/models/get_asset_or_live_stream_id_response.rb +218 -0
  200. data/lib/mux_ruby/models/get_asset_or_live_stream_id_response_data.rb +237 -0
  201. data/lib/mux_ruby/models/get_asset_or_live_stream_id_response_data_object.rb +264 -0
  202. data/lib/mux_ruby/models/get_asset_playback_id_response.rb +48 -14
  203. data/lib/mux_ruby/models/get_metric_timeseries_data_response.rb +50 -16
  204. data/lib/mux_ruby/models/get_overall_values_response.rb +50 -16
  205. data/lib/mux_ruby/models/get_real_time_breakdown_response.rb +240 -0
  206. data/lib/mux_ruby/models/get_real_time_histogram_timeseries_response.rb +249 -0
  207. data/lib/mux_ruby/models/get_real_time_histogram_timeseries_response_meta.rb +220 -0
  208. data/lib/mux_ruby/models/get_real_time_timeseries_response.rb +240 -0
  209. data/lib/mux_ruby/models/incident.rb +404 -0
  210. data/lib/mux_ruby/models/incident_breakdown.rb +236 -0
  211. data/lib/mux_ruby/models/incident_notification.rb +236 -0
  212. data/lib/mux_ruby/models/incident_notification_rule.rb +256 -0
  213. data/lib/mux_ruby/models/incident_response.rb +229 -0
  214. data/lib/mux_ruby/models/input_file.rb +49 -15
  215. data/lib/mux_ruby/models/input_info.rb +49 -15
  216. data/lib/mux_ruby/models/input_settings.rb +91 -30
  217. data/lib/mux_ruby/models/input_settings_overlay_settings.rb +68 -26
  218. data/lib/mux_ruby/models/input_track.rb +56 -22
  219. data/lib/mux_ruby/models/insight.rb +53 -19
  220. data/lib/mux_ruby/models/list_all_metric_values_response.rb +50 -16
  221. data/lib/mux_ruby/models/list_assets_response.rb +48 -14
  222. data/lib/mux_ruby/models/list_breakdown_values_response.rb +50 -16
  223. data/lib/mux_ruby/models/list_delivery_usage_response.rb +51 -17
  224. data/lib/mux_ruby/models/list_dimension_values_response.rb +240 -0
  225. data/lib/mux_ruby/models/list_dimensions_response.rb +238 -0
  226. data/lib/mux_ruby/models/list_errors_response.rb +50 -16
  227. data/lib/mux_ruby/models/list_exports_response.rb +50 -16
  228. data/lib/mux_ruby/models/list_filter_values_response.rb +50 -16
  229. data/lib/mux_ruby/models/list_filters_response.rb +50 -16
  230. data/lib/mux_ruby/models/list_filters_response_data.rb +49 -15
  231. data/lib/mux_ruby/models/list_incidents_response.rb +240 -0
  232. data/lib/mux_ruby/models/list_insights_response.rb +50 -16
  233. data/lib/mux_ruby/models/list_live_streams_response.rb +48 -14
  234. data/lib/mux_ruby/models/list_real_time_dimensions_response.rb +240 -0
  235. data/lib/mux_ruby/models/list_real_time_dimensions_response_data.rb +227 -0
  236. data/lib/mux_ruby/models/list_real_time_metrics_response.rb +240 -0
  237. data/lib/mux_ruby/models/list_related_incidents_response.rb +240 -0
  238. data/lib/mux_ruby/models/list_signing_keys_response.rb +48 -14
  239. data/lib/mux_ruby/models/list_uploads_response.rb +48 -14
  240. data/lib/mux_ruby/models/list_video_views_response.rb +50 -16
  241. data/lib/mux_ruby/models/live_stream.rb +121 -29
  242. data/lib/mux_ruby/models/live_stream_response.rb +48 -14
  243. data/lib/mux_ruby/models/metric.rb +52 -18
  244. data/lib/mux_ruby/models/notification_rule.rb +236 -0
  245. data/lib/mux_ruby/models/overall_values.rb +51 -17
  246. data/lib/mux_ruby/models/playback_id.rb +50 -15
  247. data/lib/mux_ruby/models/playback_policy.rb +12 -6
  248. data/lib/mux_ruby/models/real_time_breakdown_value.rb +254 -0
  249. data/lib/mux_ruby/models/real_time_histogram_timeseries_bucket.rb +227 -0
  250. data/lib/mux_ruby/models/real_time_histogram_timeseries_bucket_values.rb +227 -0
  251. data/lib/mux_ruby/models/real_time_histogram_timeseries_datapoint.rb +274 -0
  252. data/lib/mux_ruby/models/real_time_timeseries_datapoint.rb +236 -0
  253. data/lib/mux_ruby/models/score.rb +53 -19
  254. data/lib/mux_ruby/models/signal_live_stream_complete_response.rb +48 -14
  255. data/lib/mux_ruby/models/signing_key.rb +53 -16
  256. data/lib/mux_ruby/models/signing_key_response.rb +48 -14
  257. data/lib/mux_ruby/models/simulcast_target.rb +55 -21
  258. data/lib/mux_ruby/models/simulcast_target_response.rb +48 -14
  259. data/lib/mux_ruby/models/track.rb +92 -33
  260. data/lib/mux_ruby/models/update_asset_master_access_request.rb +51 -17
  261. data/lib/mux_ruby/models/update_asset_mp4_support_request.rb +51 -17
  262. data/lib/mux_ruby/models/upload.rb +62 -26
  263. data/lib/mux_ruby/models/upload_error.rb +51 -15
  264. data/lib/mux_ruby/models/upload_response.rb +48 -14
  265. data/lib/mux_ruby/models/video_view.rb +242 -136
  266. data/lib/mux_ruby/models/video_view_event.rb +51 -17
  267. data/lib/mux_ruby/models/video_view_response.rb +49 -15
  268. data/lib/mux_ruby/version.rb +10 -3
  269. data/mux_ruby.gemspec +15 -15
  270. data/spec/api/assets_api_spec.rb +2 -0
  271. data/spec/api/dimensions_api_spec.rb +55 -0
  272. data/spec/api/filters_api_spec.rb +2 -2
  273. data/spec/api/incidents_api_spec.rb +73 -0
  274. data/spec/api/live_streams_api_spec.rb +24 -0
  275. data/spec/api/playback_id_api_spec.rb +40 -0
  276. data/spec/api/real_time_api_spec.rb +93 -0
  277. data/spec/api_client_spec.rb +10 -3
  278. data/spec/configuration_spec.rb +9 -2
  279. data/spec/models/asset_master_spec.rb +4 -0
  280. data/spec/models/asset_non_standard_input_reasons_spec.rb +98 -0
  281. data/spec/models/asset_recording_times_spec.rb +40 -0
  282. data/spec/models/asset_spec.rb +26 -0
  283. data/spec/models/dimension_value_spec.rb +40 -0
  284. data/spec/models/disable_live_stream_response_spec.rb +34 -0
  285. data/spec/models/enable_live_stream_response_spec.rb +34 -0
  286. data/spec/models/get_asset_or_live_stream_id_response_data_object_spec.rb +44 -0
  287. data/spec/models/get_asset_or_live_stream_id_response_data_spec.rb +46 -0
  288. data/spec/models/get_asset_or_live_stream_id_response_spec.rb +34 -0
  289. data/spec/models/get_real_time_breakdown_response_spec.rb +46 -0
  290. data/spec/models/get_real_time_histogram_timeseries_response_meta_spec.rb +34 -0
  291. data/spec/models/get_real_time_histogram_timeseries_response_spec.rb +52 -0
  292. data/spec/models/get_real_time_timeseries_response_spec.rb +46 -0
  293. data/spec/models/incident_breakdown_spec.rb +46 -0
  294. data/spec/models/incident_notification_rule_spec.rb +58 -0
  295. data/spec/models/incident_notification_spec.rb +46 -0
  296. data/spec/models/incident_response_spec.rb +40 -0
  297. data/spec/models/incident_spec.rb +154 -0
  298. data/spec/models/input_settings_spec.rb +12 -0
  299. data/spec/models/list_dimension_values_response_spec.rb +46 -0
  300. data/spec/models/list_dimensions_response_spec.rb +46 -0
  301. data/spec/models/list_incidents_response_spec.rb +46 -0
  302. data/spec/models/list_real_time_dimensions_response_data_spec.rb +40 -0
  303. data/spec/models/list_real_time_dimensions_response_spec.rb +46 -0
  304. data/spec/models/list_real_time_metrics_response_spec.rb +46 -0
  305. data/spec/models/list_related_incidents_response_spec.rb +46 -0
  306. data/spec/models/notification_rule_spec.rb +46 -0
  307. data/spec/models/real_time_breakdown_value_spec.rb +58 -0
  308. data/spec/models/real_time_histogram_timeseries_bucket_spec.rb +40 -0
  309. data/spec/models/real_time_histogram_timeseries_bucket_values_spec.rb +40 -0
  310. data/spec/models/real_time_histogram_timeseries_datapoint_spec.rb +70 -0
  311. data/spec/models/real_time_timeseries_datapoint_spec.rb +46 -0
  312. data/spec/models/track_spec.rb +4 -0
  313. data/spec/spec_helper.rb +9 -2
  314. metadata +246 -209
@@ -0,0 +1,85 @@
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 'cgi'
14
+
15
+ module MuxRuby
16
+ class PlaybackIDApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Retrieve an Asset or Live Stream ID
23
+ # Retrieves the Identifier of the Asset or Live Stream associated with the Playback ID.
24
+ # @param playback_id [String] The live stream's playback ID.
25
+ # @param [Hash] opts the optional parameters
26
+ # @return [GetAssetOrLiveStreamIdResponse]
27
+ def get_asset_or_livestream_id(playback_id, opts = {})
28
+ data, _status_code, _headers = get_asset_or_livestream_id_with_http_info(playback_id, opts)
29
+ data
30
+ end
31
+
32
+ # Retrieve an Asset or Live Stream ID
33
+ # Retrieves the Identifier of the Asset or Live Stream associated with the Playback ID.
34
+ # @param playback_id [String] The live stream's playback ID.
35
+ # @param [Hash] opts the optional parameters
36
+ # @return [Array<(GetAssetOrLiveStreamIdResponse, Integer, Hash)>] GetAssetOrLiveStreamIdResponse data, response status code and response headers
37
+ def get_asset_or_livestream_id_with_http_info(playback_id, opts = {})
38
+ if @api_client.config.debugging
39
+ @api_client.config.logger.debug 'Calling API: PlaybackIDApi.get_asset_or_livestream_id ...'
40
+ end
41
+ # verify the required parameter 'playback_id' is set
42
+ if @api_client.config.client_side_validation && playback_id.nil?
43
+ fail ArgumentError, "Missing the required parameter 'playback_id' when calling PlaybackIDApi.get_asset_or_livestream_id"
44
+ end
45
+ # resource path
46
+ local_var_path = '/video/v1/playback-ids/{PLAYBACK_ID}'.sub('{' + 'PLAYBACK_ID' + '}', CGI.escape(playback_id.to_s))
47
+
48
+ # query parameters
49
+ query_params = opts[:query_params] || {}
50
+
51
+ # header parameters
52
+ header_params = opts[:header_params] || {}
53
+ # HTTP header 'Accept' (if needed)
54
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
55
+
56
+ # form parameters
57
+ form_params = opts[:form_params] || {}
58
+
59
+ # http body (model)
60
+ post_body = opts[:debug_body]
61
+
62
+ # return_type
63
+ return_type = opts[:debug_return_type] || 'GetAssetOrLiveStreamIdResponse'
64
+
65
+ # auth_names
66
+ auth_names = opts[:debug_auth_names] || ['accessToken']
67
+
68
+ new_options = opts.merge(
69
+ :operation => :"PlaybackIDApi.get_asset_or_livestream_id",
70
+ :header_params => header_params,
71
+ :query_params => query_params,
72
+ :form_params => form_params,
73
+ :body => post_body,
74
+ :auth_names => auth_names,
75
+ :return_type => return_type
76
+ )
77
+
78
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
79
+ if @api_client.config.debugging
80
+ @api_client.config.logger.debug "API called: PlaybackIDApi#get_asset_or_livestream_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
81
+ end
82
+ return data, status_code, headers
83
+ end
84
+ end
85
+ end
@@ -0,0 +1,373 @@
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 'cgi'
14
+
15
+ module MuxRuby
16
+ class RealTimeApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Get Real-Time Breakdown
23
+ # Gets breakdown information for a specific dimension and metric along with the number of concurrent viewers and negative impact score.
24
+ # @param realtime_metric_id [String] ID of the Realtime Metric
25
+ # @param [Hash] opts the optional parameters
26
+ # @option opts [String] :dimension Dimension the specified value belongs to
27
+ # @option opts [Float] :timestamp Timestamp to limit results by. This value must be provided as a unix timestamp. Defaults to the current unix timestamp.
28
+ # @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]&#x3D;operating_system:windows&amp;filters[]&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint.
29
+ # @option opts [String] :order_by Value to order the results by
30
+ # @option opts [String] :order_direction Sort order.
31
+ # @return [GetRealTimeBreakdownResponse]
32
+ def get_realtime_breakdown(realtime_metric_id, opts = {})
33
+ data, _status_code, _headers = get_realtime_breakdown_with_http_info(realtime_metric_id, opts)
34
+ data
35
+ end
36
+
37
+ # Get Real-Time Breakdown
38
+ # Gets breakdown information for a specific dimension and metric along with the number of concurrent viewers and negative impact score.
39
+ # @param realtime_metric_id [String] ID of the Realtime Metric
40
+ # @param [Hash] opts the optional parameters
41
+ # @option opts [String] :dimension Dimension the specified value belongs to
42
+ # @option opts [Float] :timestamp Timestamp to limit results by. This value must be provided as a unix timestamp. Defaults to the current unix timestamp.
43
+ # @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]&#x3D;operating_system:windows&amp;filters[]&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint.
44
+ # @option opts [String] :order_by Value to order the results by
45
+ # @option opts [String] :order_direction Sort order.
46
+ # @return [Array<(GetRealTimeBreakdownResponse, Integer, Hash)>] GetRealTimeBreakdownResponse data, response status code and response headers
47
+ def get_realtime_breakdown_with_http_info(realtime_metric_id, opts = {})
48
+ if @api_client.config.debugging
49
+ @api_client.config.logger.debug 'Calling API: RealTimeApi.get_realtime_breakdown ...'
50
+ end
51
+ # verify the required parameter 'realtime_metric_id' is set
52
+ if @api_client.config.client_side_validation && realtime_metric_id.nil?
53
+ fail ArgumentError, "Missing the required parameter 'realtime_metric_id' when calling RealTimeApi.get_realtime_breakdown"
54
+ end
55
+ # verify enum value
56
+ allowable_values = ["current-concurrent-viewers", "current-rebuffering-percentage", "exits-before-video-start", "playback-failure-percentage", "current-average-bitrate"]
57
+ if @api_client.config.client_side_validation && !allowable_values.include?(realtime_metric_id)
58
+ fail ArgumentError, "invalid value for \"realtime_metric_id\", must be one of #{allowable_values}"
59
+ end
60
+ allowable_values = ["asn", "cdn", "country", "operating_system", "player_name", "region", "stream_type", "sub_property_id", "video_series", "video_title"]
61
+ if @api_client.config.client_side_validation && opts[:'dimension'] && !allowable_values.include?(opts[:'dimension'])
62
+ fail ArgumentError, "invalid value for \"dimension\", must be one of #{allowable_values}"
63
+ end
64
+ allowable_values = ["negative_impact", "value", "views", "field"]
65
+ if @api_client.config.client_side_validation && opts[:'order_by'] && !allowable_values.include?(opts[:'order_by'])
66
+ fail ArgumentError, "invalid value for \"order_by\", must be one of #{allowable_values}"
67
+ end
68
+ allowable_values = ["asc", "desc"]
69
+ if @api_client.config.client_side_validation && opts[:'order_direction'] && !allowable_values.include?(opts[:'order_direction'])
70
+ fail ArgumentError, "invalid value for \"order_direction\", must be one of #{allowable_values}"
71
+ end
72
+ # resource path
73
+ local_var_path = '/data/v1/realtime/metrics/{REALTIME_METRIC_ID}/breakdown'.sub('{' + 'REALTIME_METRIC_ID' + '}', CGI.escape(realtime_metric_id.to_s))
74
+
75
+ # query parameters
76
+ query_params = opts[:query_params] || {}
77
+ query_params[:'dimension'] = opts[:'dimension'] if !opts[:'dimension'].nil?
78
+ query_params[:'timestamp'] = opts[:'timestamp'] if !opts[:'timestamp'].nil?
79
+ query_params[:'filters[]'] = @api_client.build_collection_param(opts[:'filters'], :multi) if !opts[:'filters'].nil?
80
+ query_params[:'order_by'] = opts[:'order_by'] if !opts[:'order_by'].nil?
81
+ query_params[:'order_direction'] = opts[:'order_direction'] if !opts[:'order_direction'].nil?
82
+
83
+ # header parameters
84
+ header_params = opts[:header_params] || {}
85
+ # HTTP header 'Accept' (if needed)
86
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
87
+
88
+ # form parameters
89
+ form_params = opts[:form_params] || {}
90
+
91
+ # http body (model)
92
+ post_body = opts[:debug_body]
93
+
94
+ # return_type
95
+ return_type = opts[:debug_return_type] || 'GetRealTimeBreakdownResponse'
96
+
97
+ # auth_names
98
+ auth_names = opts[:debug_auth_names] || ['accessToken']
99
+
100
+ new_options = opts.merge(
101
+ :operation => :"RealTimeApi.get_realtime_breakdown",
102
+ :header_params => header_params,
103
+ :query_params => query_params,
104
+ :form_params => form_params,
105
+ :body => post_body,
106
+ :auth_names => auth_names,
107
+ :return_type => return_type
108
+ )
109
+
110
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
111
+ if @api_client.config.debugging
112
+ @api_client.config.logger.debug "API called: RealTimeApi#get_realtime_breakdown\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
113
+ end
114
+ return data, status_code, headers
115
+ end
116
+
117
+ # Get Real-Time Histogram Timeseries
118
+ # Gets histogram timeseries information for a specific metric.
119
+ # @param realtime_histogram_metric_id [String] ID of the Realtime Histogram Metric
120
+ # @param [Hash] opts the optional parameters
121
+ # @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]&#x3D;operating_system:windows&amp;filters[]&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint.
122
+ # @return [GetRealTimeHistogramTimeseriesResponse]
123
+ def get_realtime_histogram_timeseries(realtime_histogram_metric_id, opts = {})
124
+ data, _status_code, _headers = get_realtime_histogram_timeseries_with_http_info(realtime_histogram_metric_id, opts)
125
+ data
126
+ end
127
+
128
+ # Get Real-Time Histogram Timeseries
129
+ # Gets histogram timeseries information for a specific metric.
130
+ # @param realtime_histogram_metric_id [String] ID of the Realtime Histogram Metric
131
+ # @param [Hash] opts the optional parameters
132
+ # @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]&#x3D;operating_system:windows&amp;filters[]&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint.
133
+ # @return [Array<(GetRealTimeHistogramTimeseriesResponse, Integer, Hash)>] GetRealTimeHistogramTimeseriesResponse data, response status code and response headers
134
+ def get_realtime_histogram_timeseries_with_http_info(realtime_histogram_metric_id, opts = {})
135
+ if @api_client.config.debugging
136
+ @api_client.config.logger.debug 'Calling API: RealTimeApi.get_realtime_histogram_timeseries ...'
137
+ end
138
+ # verify the required parameter 'realtime_histogram_metric_id' is set
139
+ if @api_client.config.client_side_validation && realtime_histogram_metric_id.nil?
140
+ fail ArgumentError, "Missing the required parameter 'realtime_histogram_metric_id' when calling RealTimeApi.get_realtime_histogram_timeseries"
141
+ end
142
+ # verify enum value
143
+ allowable_values = ["video-startup-time"]
144
+ if @api_client.config.client_side_validation && !allowable_values.include?(realtime_histogram_metric_id)
145
+ fail ArgumentError, "invalid value for \"realtime_histogram_metric_id\", must be one of #{allowable_values}"
146
+ end
147
+ # resource path
148
+ local_var_path = '/data/v1/realtime/metrics/{REALTIME_HISTOGRAM_METRIC_ID}/histogram-timeseries'.sub('{' + 'REALTIME_HISTOGRAM_METRIC_ID' + '}', CGI.escape(realtime_histogram_metric_id.to_s))
149
+
150
+ # query parameters
151
+ query_params = opts[:query_params] || {}
152
+ query_params[:'filters[]'] = @api_client.build_collection_param(opts[:'filters'], :multi) if !opts[:'filters'].nil?
153
+
154
+ # header parameters
155
+ header_params = opts[:header_params] || {}
156
+ # HTTP header 'Accept' (if needed)
157
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
158
+
159
+ # form parameters
160
+ form_params = opts[:form_params] || {}
161
+
162
+ # http body (model)
163
+ post_body = opts[:debug_body]
164
+
165
+ # return_type
166
+ return_type = opts[:debug_return_type] || 'GetRealTimeHistogramTimeseriesResponse'
167
+
168
+ # auth_names
169
+ auth_names = opts[:debug_auth_names] || ['accessToken']
170
+
171
+ new_options = opts.merge(
172
+ :operation => :"RealTimeApi.get_realtime_histogram_timeseries",
173
+ :header_params => header_params,
174
+ :query_params => query_params,
175
+ :form_params => form_params,
176
+ :body => post_body,
177
+ :auth_names => auth_names,
178
+ :return_type => return_type
179
+ )
180
+
181
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
182
+ if @api_client.config.debugging
183
+ @api_client.config.logger.debug "API called: RealTimeApi#get_realtime_histogram_timeseries\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
184
+ end
185
+ return data, status_code, headers
186
+ end
187
+
188
+ # Get Real-Time Timeseries
189
+ # Gets Time series information for a specific metric along with the number of concurrent viewers.
190
+ # @param realtime_metric_id [String] ID of the Realtime Metric
191
+ # @param [Hash] opts the optional parameters
192
+ # @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]&#x3D;operating_system:windows&amp;filters[]&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint.
193
+ # @return [GetRealTimeTimeseriesResponse]
194
+ def get_realtime_timeseries(realtime_metric_id, opts = {})
195
+ data, _status_code, _headers = get_realtime_timeseries_with_http_info(realtime_metric_id, opts)
196
+ data
197
+ end
198
+
199
+ # Get Real-Time Timeseries
200
+ # Gets Time series information for a specific metric along with the number of concurrent viewers.
201
+ # @param realtime_metric_id [String] ID of the Realtime Metric
202
+ # @param [Hash] opts the optional parameters
203
+ # @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]&#x3D;operating_system:windows&amp;filters[]&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint.
204
+ # @return [Array<(GetRealTimeTimeseriesResponse, Integer, Hash)>] GetRealTimeTimeseriesResponse data, response status code and response headers
205
+ def get_realtime_timeseries_with_http_info(realtime_metric_id, opts = {})
206
+ if @api_client.config.debugging
207
+ @api_client.config.logger.debug 'Calling API: RealTimeApi.get_realtime_timeseries ...'
208
+ end
209
+ # verify the required parameter 'realtime_metric_id' is set
210
+ if @api_client.config.client_side_validation && realtime_metric_id.nil?
211
+ fail ArgumentError, "Missing the required parameter 'realtime_metric_id' when calling RealTimeApi.get_realtime_timeseries"
212
+ end
213
+ # verify enum value
214
+ allowable_values = ["current-concurrent-viewers", "current-rebuffering-percentage", "exits-before-video-start", "playback-failure-percentage", "current-average-bitrate"]
215
+ if @api_client.config.client_side_validation && !allowable_values.include?(realtime_metric_id)
216
+ fail ArgumentError, "invalid value for \"realtime_metric_id\", must be one of #{allowable_values}"
217
+ end
218
+ # resource path
219
+ local_var_path = '/data/v1/realtime/metrics/{REALTIME_METRIC_ID}/timeseries'.sub('{' + 'REALTIME_METRIC_ID' + '}', CGI.escape(realtime_metric_id.to_s))
220
+
221
+ # query parameters
222
+ query_params = opts[:query_params] || {}
223
+ query_params[:'filters[]'] = @api_client.build_collection_param(opts[:'filters'], :multi) if !opts[:'filters'].nil?
224
+
225
+ # header parameters
226
+ header_params = opts[:header_params] || {}
227
+ # HTTP header 'Accept' (if needed)
228
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
229
+
230
+ # form parameters
231
+ form_params = opts[:form_params] || {}
232
+
233
+ # http body (model)
234
+ post_body = opts[:debug_body]
235
+
236
+ # return_type
237
+ return_type = opts[:debug_return_type] || 'GetRealTimeTimeseriesResponse'
238
+
239
+ # auth_names
240
+ auth_names = opts[:debug_auth_names] || ['accessToken']
241
+
242
+ new_options = opts.merge(
243
+ :operation => :"RealTimeApi.get_realtime_timeseries",
244
+ :header_params => header_params,
245
+ :query_params => query_params,
246
+ :form_params => form_params,
247
+ :body => post_body,
248
+ :auth_names => auth_names,
249
+ :return_type => return_type
250
+ )
251
+
252
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
253
+ if @api_client.config.debugging
254
+ @api_client.config.logger.debug "API called: RealTimeApi#get_realtime_timeseries\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
255
+ end
256
+ return data, status_code, headers
257
+ end
258
+
259
+ # List Real-Time Dimensions
260
+ # Lists availiable real-time dimensions.
261
+ # @param [Hash] opts the optional parameters
262
+ # @return [ListRealTimeDimensionsResponse]
263
+ def list_realtime_dimensions(opts = {})
264
+ data, _status_code, _headers = list_realtime_dimensions_with_http_info(opts)
265
+ data
266
+ end
267
+
268
+ # List Real-Time Dimensions
269
+ # Lists availiable real-time dimensions.
270
+ # @param [Hash] opts the optional parameters
271
+ # @return [Array<(ListRealTimeDimensionsResponse, Integer, Hash)>] ListRealTimeDimensionsResponse data, response status code and response headers
272
+ def list_realtime_dimensions_with_http_info(opts = {})
273
+ if @api_client.config.debugging
274
+ @api_client.config.logger.debug 'Calling API: RealTimeApi.list_realtime_dimensions ...'
275
+ end
276
+ # resource path
277
+ local_var_path = '/data/v1/realtime/dimensions'
278
+
279
+ # query parameters
280
+ query_params = opts[:query_params] || {}
281
+
282
+ # header parameters
283
+ header_params = opts[:header_params] || {}
284
+ # HTTP header 'Accept' (if needed)
285
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
286
+
287
+ # form parameters
288
+ form_params = opts[:form_params] || {}
289
+
290
+ # http body (model)
291
+ post_body = opts[:debug_body]
292
+
293
+ # return_type
294
+ return_type = opts[:debug_return_type] || 'ListRealTimeDimensionsResponse'
295
+
296
+ # auth_names
297
+ auth_names = opts[:debug_auth_names] || ['accessToken']
298
+
299
+ new_options = opts.merge(
300
+ :operation => :"RealTimeApi.list_realtime_dimensions",
301
+ :header_params => header_params,
302
+ :query_params => query_params,
303
+ :form_params => form_params,
304
+ :body => post_body,
305
+ :auth_names => auth_names,
306
+ :return_type => return_type
307
+ )
308
+
309
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
310
+ if @api_client.config.debugging
311
+ @api_client.config.logger.debug "API called: RealTimeApi#list_realtime_dimensions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
312
+ end
313
+ return data, status_code, headers
314
+ end
315
+
316
+ # List Real-Time Metrics
317
+ # Lists availiable real-time metrics.
318
+ # @param [Hash] opts the optional parameters
319
+ # @return [ListRealTimeMetricsResponse]
320
+ def list_realtime_metrics(opts = {})
321
+ data, _status_code, _headers = list_realtime_metrics_with_http_info(opts)
322
+ data
323
+ end
324
+
325
+ # List Real-Time Metrics
326
+ # Lists availiable real-time metrics.
327
+ # @param [Hash] opts the optional parameters
328
+ # @return [Array<(ListRealTimeMetricsResponse, Integer, Hash)>] ListRealTimeMetricsResponse data, response status code and response headers
329
+ def list_realtime_metrics_with_http_info(opts = {})
330
+ if @api_client.config.debugging
331
+ @api_client.config.logger.debug 'Calling API: RealTimeApi.list_realtime_metrics ...'
332
+ end
333
+ # resource path
334
+ local_var_path = '/data/v1/realtime/metrics'
335
+
336
+ # query parameters
337
+ query_params = opts[:query_params] || {}
338
+
339
+ # header parameters
340
+ header_params = opts[:header_params] || {}
341
+ # HTTP header 'Accept' (if needed)
342
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
343
+
344
+ # form parameters
345
+ form_params = opts[:form_params] || {}
346
+
347
+ # http body (model)
348
+ post_body = opts[:debug_body]
349
+
350
+ # return_type
351
+ return_type = opts[:debug_return_type] || 'ListRealTimeMetricsResponse'
352
+
353
+ # auth_names
354
+ auth_names = opts[:debug_auth_names] || ['accessToken']
355
+
356
+ new_options = opts.merge(
357
+ :operation => :"RealTimeApi.list_realtime_metrics",
358
+ :header_params => header_params,
359
+ :query_params => query_params,
360
+ :form_params => form_params,
361
+ :body => post_body,
362
+ :auth_names => auth_names,
363
+ :return_type => return_type
364
+ )
365
+
366
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
367
+ if @api_client.config.debugging
368
+ @api_client.config.logger.debug "API called: RealTimeApi#list_realtime_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
369
+ end
370
+ return data, status_code, headers
371
+ end
372
+ end
373
+ end