mux_ruby 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (224) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +8 -0
  3. data/Gemfile.lock +79 -0
  4. data/LICENSE +7 -0
  5. data/README.md +121 -0
  6. data/Rakefile +10 -0
  7. data/docs/AbridgedVideoView.md +18 -0
  8. data/docs/Asset.md +27 -0
  9. data/docs/AssetErrors.md +9 -0
  10. data/docs/AssetMaster.md +9 -0
  11. data/docs/AssetResponse.md +8 -0
  12. data/docs/AssetStaticRenditions.md +9 -0
  13. data/docs/AssetStaticRenditionsFiles.md +13 -0
  14. data/docs/AssetsApi.md +476 -0
  15. data/docs/BreakdownValue.md +12 -0
  16. data/docs/CreateAssetRequest.md +13 -0
  17. data/docs/CreateLiveStreamRequest.md +9 -0
  18. data/docs/CreatePlaybackIDRequest.md +8 -0
  19. data/docs/CreatePlaybackIDResponse.md +8 -0
  20. data/docs/CreateUploadRequest.md +10 -0
  21. data/docs/DirectUploadsApi.md +214 -0
  22. data/docs/Error.md +15 -0
  23. data/docs/ErrorsApi.md +64 -0
  24. data/docs/ExportsApi.md +56 -0
  25. data/docs/FilterValue.md +9 -0
  26. data/docs/FiltersApi.md +118 -0
  27. data/docs/GetAssetInputInfoResponse.md +8 -0
  28. data/docs/GetAssetPlaybackIDResponse.md +8 -0
  29. data/docs/GetMetricTimeseriesDataResponse.md +10 -0
  30. data/docs/GetOverallValuesResponse.md +10 -0
  31. data/docs/InputFile.md +9 -0
  32. data/docs/InputInfo.md +9 -0
  33. data/docs/InputSettings.md +10 -0
  34. data/docs/InputSettingsOverlaySettings.md +14 -0
  35. data/docs/InputTrack.md +18 -0
  36. data/docs/Insight.md +13 -0
  37. data/docs/ListAllMetricValuesResponse.md +10 -0
  38. data/docs/ListAssetsResponse.md +8 -0
  39. data/docs/ListBreakdownValuesResponse.md +10 -0
  40. data/docs/ListErrorsResponse.md +10 -0
  41. data/docs/ListExportsResponse.md +10 -0
  42. data/docs/ListFilterValuesResponse.md +10 -0
  43. data/docs/ListFiltersResponse.md +10 -0
  44. data/docs/ListFiltersResponseData.md +9 -0
  45. data/docs/ListInsightsResponse.md +10 -0
  46. data/docs/ListLiveStreamsResponse.md +8 -0
  47. data/docs/ListSigningKeysResponse.md +8 -0
  48. data/docs/ListUploadsResponse.md +8 -0
  49. data/docs/ListVideoViewsResponse.md +10 -0
  50. data/docs/LiveStream.md +17 -0
  51. data/docs/LiveStreamResponse.md +8 -0
  52. data/docs/LiveStreamsApi.md +420 -0
  53. data/docs/Metric.md +12 -0
  54. data/docs/MetricsApi.md +322 -0
  55. data/docs/OverallValues.md +11 -0
  56. data/docs/PlaybackID.md +9 -0
  57. data/docs/PlaybackPolicy.md +7 -0
  58. data/docs/Score.md +13 -0
  59. data/docs/SignalLiveStreamCompleteResponse.md +8 -0
  60. data/docs/SigningKey.md +10 -0
  61. data/docs/SigningKeyResponse.md +8 -0
  62. data/docs/Track.md +17 -0
  63. data/docs/URLSigningKeysApi.md +215 -0
  64. data/docs/UpdateAssetMP4SupportRequest.md +8 -0
  65. data/docs/Upload.md +15 -0
  66. data/docs/UploadError.md +9 -0
  67. data/docs/UploadResponse.md +8 -0
  68. data/docs/VideoView.md +117 -0
  69. data/docs/VideoViewEvent.md +11 -0
  70. data/docs/VideoViewResponse.md +9 -0
  71. data/docs/VideoViewsApi.md +126 -0
  72. data/examples/data/exercise-errors.rb +23 -0
  73. data/examples/data/exercise-exports.rb +22 -0
  74. data/examples/data/exercise-filters.rb +29 -0
  75. data/examples/data/exercise-metrics.rb +52 -0
  76. data/examples/data/exercise-video-views.rb +30 -0
  77. data/examples/video/create-live-stream.rb +25 -0
  78. data/examples/video/exercise-assets.rb +95 -0
  79. data/examples/video/exercise-live-streams.rb +89 -0
  80. data/examples/video/exercise-signing-keys.rb +46 -0
  81. data/examples/video/exercise-uploads.rb +49 -0
  82. data/examples/video/ingest.rb +37 -0
  83. data/examples/video/list-everything.rb +48 -0
  84. data/github-ruby-sdk.png +0 -0
  85. data/lib/mux_ruby/api/assets_api.rb +507 -0
  86. data/lib/mux_ruby/api/direct_uploads_api.rb +224 -0
  87. data/lib/mux_ruby/api/errors_api.rb +69 -0
  88. data/lib/mux_ruby/api/exports_api.rb +63 -0
  89. data/lib/mux_ruby/api/filters_api.rb +128 -0
  90. data/lib/mux_ruby/api/live_streams_api.rb +440 -0
  91. data/lib/mux_ruby/api/metrics_api.rb +393 -0
  92. data/lib/mux_ruby/api/url_signing_keys_api.rb +219 -0
  93. data/lib/mux_ruby/api/video_views_api.rb +140 -0
  94. data/lib/mux_ruby/api_client.rb +400 -0
  95. data/lib/mux_ruby/api_error.rb +44 -0
  96. data/lib/mux_ruby/configuration.rb +244 -0
  97. data/lib/mux_ruby/models/abridged_video_view.rb +274 -0
  98. data/lib/mux_ruby/models/asset.rb +409 -0
  99. data/lib/mux_ruby/models/asset_errors.rb +195 -0
  100. data/lib/mux_ruby/models/asset_master.rb +193 -0
  101. data/lib/mux_ruby/models/asset_response.rb +184 -0
  102. data/lib/mux_ruby/models/asset_static_renditions.rb +232 -0
  103. data/lib/mux_ruby/models/asset_static_renditions_files.rb +279 -0
  104. data/lib/mux_ruby/models/breakdown_value.rb +220 -0
  105. data/lib/mux_ruby/models/create_asset_request.rb +267 -0
  106. data/lib/mux_ruby/models/create_live_stream_request.rb +195 -0
  107. data/lib/mux_ruby/models/create_playback_id_request.rb +184 -0
  108. data/lib/mux_ruby/models/create_playback_id_response.rb +184 -0
  109. data/lib/mux_ruby/models/create_upload_request.rb +235 -0
  110. data/lib/mux_ruby/models/error.rb +247 -0
  111. data/lib/mux_ruby/models/filter_value.rb +193 -0
  112. data/lib/mux_ruby/models/get_asset_input_info_response.rb +186 -0
  113. data/lib/mux_ruby/models/get_asset_playback_id_response.rb +184 -0
  114. data/lib/mux_ruby/models/get_metric_timeseries_data_response.rb +206 -0
  115. data/lib/mux_ruby/models/get_overall_values_response.rb +204 -0
  116. data/lib/mux_ruby/models/input_file.rb +195 -0
  117. data/lib/mux_ruby/models/input_info.rb +193 -0
  118. data/lib/mux_ruby/models/input_settings.rb +203 -0
  119. data/lib/mux_ruby/models/input_settings_overlay_settings.rb +238 -0
  120. data/lib/mux_ruby/models/input_track.rb +274 -0
  121. data/lib/mux_ruby/models/insight.rb +229 -0
  122. data/lib/mux_ruby/models/list_all_metric_values_response.rb +206 -0
  123. data/lib/mux_ruby/models/list_assets_response.rb +186 -0
  124. data/lib/mux_ruby/models/list_breakdown_values_response.rb +206 -0
  125. data/lib/mux_ruby/models/list_errors_response.rb +206 -0
  126. data/lib/mux_ruby/models/list_exports_response.rb +206 -0
  127. data/lib/mux_ruby/models/list_filter_values_response.rb +206 -0
  128. data/lib/mux_ruby/models/list_filters_response.rb +204 -0
  129. data/lib/mux_ruby/models/list_filters_response_data.rb +197 -0
  130. data/lib/mux_ruby/models/list_insights_response.rb +206 -0
  131. data/lib/mux_ruby/models/list_live_streams_response.rb +186 -0
  132. data/lib/mux_ruby/models/list_signing_keys_response.rb +186 -0
  133. data/lib/mux_ruby/models/list_uploads_response.rb +186 -0
  134. data/lib/mux_ruby/models/list_video_views_response.rb +206 -0
  135. data/lib/mux_ruby/models/live_stream.rb +269 -0
  136. data/lib/mux_ruby/models/live_stream_response.rb +184 -0
  137. data/lib/mux_ruby/models/metric.rb +220 -0
  138. data/lib/mux_ruby/models/overall_values.rb +211 -0
  139. data/lib/mux_ruby/models/playback_id.rb +193 -0
  140. data/lib/mux_ruby/models/playback_policy.rb +31 -0
  141. data/lib/mux_ruby/models/score.rb +231 -0
  142. data/lib/mux_ruby/models/signal_live_stream_complete_response.rb +184 -0
  143. data/lib/mux_ruby/models/signing_key.rb +202 -0
  144. data/lib/mux_ruby/models/signing_key_response.rb +184 -0
  145. data/lib/mux_ruby/models/track.rb +265 -0
  146. data/lib/mux_ruby/models/update_asset_mp4_support_request.rb +219 -0
  147. data/lib/mux_ruby/models/upload.rb +311 -0
  148. data/lib/mux_ruby/models/upload_error.rb +194 -0
  149. data/lib/mux_ruby/models/upload_response.rb +184 -0
  150. data/lib/mux_ruby/models/video_view.rb +1167 -0
  151. data/lib/mux_ruby/models/video_view_event.rb +211 -0
  152. data/lib/mux_ruby/models/video_view_response.rb +195 -0
  153. data/lib/mux_ruby/version.rb +8 -0
  154. data/lib/mux_ruby.rb +97 -0
  155. data/mux_ruby.gemspec +38 -0
  156. data/spec/api/assets_api_spec.rb +136 -0
  157. data/spec/api/direct_uploads_api_spec.rb +74 -0
  158. data/spec/api/errors_api_spec.rb +41 -0
  159. data/spec/api/exports_api_spec.rb +39 -0
  160. data/spec/api/filters_api_spec.rb +55 -0
  161. data/spec/api/live_streams_api_spec.rb +122 -0
  162. data/spec/api/metrics_api_spec.rb +110 -0
  163. data/spec/api/url_signing_keys_api_spec.rb +76 -0
  164. data/spec/api/video_views_api_spec.rb +58 -0
  165. data/spec/api_client_spec.rb +219 -0
  166. data/spec/configuration_spec.rb +35 -0
  167. data/spec/models/abridged_video_view_spec.rb +94 -0
  168. data/spec/models/asset_errors_spec.rb +40 -0
  169. data/spec/models/asset_master_spec.rb +40 -0
  170. data/spec/models/asset_response_spec.rb +34 -0
  171. data/spec/models/asset_spec.rb +156 -0
  172. data/spec/models/asset_static_renditions_files_spec.rb +72 -0
  173. data/spec/models/asset_static_renditions_spec.rb +44 -0
  174. data/spec/models/breakdown_value_spec.rb +58 -0
  175. data/spec/models/create_asset_request_spec.rb +68 -0
  176. data/spec/models/create_live_stream_request_spec.rb +40 -0
  177. data/spec/models/create_playback_id_request_spec.rb +34 -0
  178. data/spec/models/create_playback_id_response_spec.rb +34 -0
  179. data/spec/models/create_upload_request_spec.rb +46 -0
  180. data/spec/models/error_spec.rb +76 -0
  181. data/spec/models/filter_value_spec.rb +40 -0
  182. data/spec/models/get_asset_input_info_response_spec.rb +34 -0
  183. data/spec/models/get_asset_playback_id_response_spec.rb +34 -0
  184. data/spec/models/get_metric_timeseries_data_response_spec.rb +46 -0
  185. data/spec/models/get_overall_values_response_spec.rb +46 -0
  186. data/spec/models/input_file_spec.rb +40 -0
  187. data/spec/models/input_info_spec.rb +40 -0
  188. data/spec/models/input_settings_overlay_settings_spec.rb +70 -0
  189. data/spec/models/input_settings_spec.rb +46 -0
  190. data/spec/models/input_track_spec.rb +94 -0
  191. data/spec/models/insight_spec.rb +64 -0
  192. data/spec/models/list_all_metric_values_response_spec.rb +46 -0
  193. data/spec/models/list_assets_response_spec.rb +34 -0
  194. data/spec/models/list_breakdown_values_response_spec.rb +46 -0
  195. data/spec/models/list_errors_response_spec.rb +46 -0
  196. data/spec/models/list_exports_response_spec.rb +46 -0
  197. data/spec/models/list_filter_values_response_spec.rb +46 -0
  198. data/spec/models/list_filters_response_data_spec.rb +40 -0
  199. data/spec/models/list_filters_response_spec.rb +46 -0
  200. data/spec/models/list_insights_response_spec.rb +46 -0
  201. data/spec/models/list_live_streams_response_spec.rb +34 -0
  202. data/spec/models/list_signing_keys_response_spec.rb +34 -0
  203. data/spec/models/list_uploads_response_spec.rb +34 -0
  204. data/spec/models/list_video_views_response_spec.rb +46 -0
  205. data/spec/models/live_stream_response_spec.rb +34 -0
  206. data/spec/models/live_stream_spec.rb +88 -0
  207. data/spec/models/metric_spec.rb +58 -0
  208. data/spec/models/overall_values_spec.rb +52 -0
  209. data/spec/models/playback_id_spec.rb +40 -0
  210. data/spec/models/playback_policy_spec.rb +28 -0
  211. data/spec/models/score_spec.rb +64 -0
  212. data/spec/models/signal_live_stream_complete_response_spec.rb +34 -0
  213. data/spec/models/signing_key_response_spec.rb +34 -0
  214. data/spec/models/signing_key_spec.rb +46 -0
  215. data/spec/models/track_spec.rb +88 -0
  216. data/spec/models/update_asset_mp4_support_request_spec.rb +38 -0
  217. data/spec/models/upload_error_spec.rb +40 -0
  218. data/spec/models/upload_response_spec.rb +34 -0
  219. data/spec/models/upload_spec.rb +80 -0
  220. data/spec/models/video_view_event_spec.rb +52 -0
  221. data/spec/models/video_view_response_spec.rb +40 -0
  222. data/spec/models/video_view_spec.rb +688 -0
  223. data/spec/spec_helper.rb +104 -0
  224. metadata +514 -0
data/docs/VideoView.md ADDED
@@ -0,0 +1,117 @@
1
+ # MuxRuby::VideoView
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **view_total_upscaling** | **String** | | [optional]
7
+ **preroll_ad_asset_hostname** | **String** | | [optional]
8
+ **player_source_domain** | **String** | | [optional]
9
+ **region** | **String** | | [optional]
10
+ **viewer_user_agent** | **String** | | [optional]
11
+ **preroll_requested** | **BOOLEAN** | | [optional]
12
+ **page_type** | **String** | | [optional]
13
+ **startup_score** | **String** | | [optional]
14
+ **view_seek_duration** | **String** | | [optional]
15
+ **country_name** | **String** | | [optional]
16
+ **player_source_height** | **Integer** | | [optional]
17
+ **longitude** | **String** | | [optional]
18
+ **buffering_count** | **String** | | [optional]
19
+ **video_duration** | **String** | | [optional]
20
+ **player_source_type** | **String** | | [optional]
21
+ **city** | **String** | | [optional]
22
+ **view_id** | **String** | | [optional]
23
+ **platform_description** | **String** | | [optional]
24
+ **video_startup_preroll_request_time** | **String** | | [optional]
25
+ **viewer_device_name** | **String** | | [optional]
26
+ **video_series** | **String** | | [optional]
27
+ **viewer_application_name** | **String** | | [optional]
28
+ **updated_at** | **String** | | [optional]
29
+ **view_total_content_playback_time** | **String** | | [optional]
30
+ **cdn** | **String** | | [optional]
31
+ **player_instance_id** | **String** | | [optional]
32
+ **video_language** | **String** | | [optional]
33
+ **player_source_width** | **Integer** | | [optional]
34
+ **player_error_message** | **String** | | [optional]
35
+ **player_mux_plugin_version** | **String** | | [optional]
36
+ **watched** | **BOOLEAN** | | [optional]
37
+ **playback_score** | **String** | | [optional]
38
+ **page_url** | **String** | | [optional]
39
+ **metro** | **String** | | [optional]
40
+ **view_max_request_latency** | **String** | | [optional]
41
+ **requests_for_first_preroll** | **String** | | [optional]
42
+ **view_total_downscaling** | **String** | | [optional]
43
+ **latitude** | **String** | | [optional]
44
+ **player_source_host_name** | **String** | | [optional]
45
+ **inserted_at** | **String** | | [optional]
46
+ **view_end** | **String** | | [optional]
47
+ **mux_embed_version** | **String** | | [optional]
48
+ **player_language** | **String** | | [optional]
49
+ **page_load_time** | **Integer** | | [optional]
50
+ **viewer_device_category** | **String** | | [optional]
51
+ **video_startup_preroll_load_time** | **String** | | [optional]
52
+ **player_version** | **String** | | [optional]
53
+ **watch_time** | **Integer** | | [optional]
54
+ **player_source_stream_type** | **String** | | [optional]
55
+ **preroll_ad_tag_hostname** | **String** | | [optional]
56
+ **viewer_device_manufacturer** | **String** | | [optional]
57
+ **rebuffering_score** | **String** | | [optional]
58
+ **experiment_name** | **String** | | [optional]
59
+ **viewer_os_version** | **String** | | [optional]
60
+ **player_preload** | **BOOLEAN** | | [optional]
61
+ **buffering_duration** | **String** | | [optional]
62
+ **player_view_count** | **Integer** | | [optional]
63
+ **player_software** | **String** | | [optional]
64
+ **player_load_time** | **String** | | [optional]
65
+ **platform_summary** | **String** | | [optional]
66
+ **video_encoding_variant** | **String** | | [optional]
67
+ **player_width** | **Integer** | | [optional]
68
+ **view_seek_count** | **String** | | [optional]
69
+ **viewer_experience_score** | **String** | | [optional]
70
+ **view_error_id** | **Integer** | | [optional]
71
+ **video_variant_name** | **String** | | [optional]
72
+ **preroll_played** | **BOOLEAN** | | [optional]
73
+ **viewer_application_engine** | **String** | | [optional]
74
+ **viewer_os_architecture** | **String** | | [optional]
75
+ **player_error_code** | **String** | | [optional]
76
+ **buffering_rate** | **String** | | [optional]
77
+ **events** | [**Array<VideoViewEvent>**](VideoViewEvent.md) | | [optional]
78
+ **player_name** | **String** | | [optional]
79
+ **view_start** | **String** | | [optional]
80
+ **view_average_request_throughput** | **String** | | [optional]
81
+ **video_producer** | **String** | | [optional]
82
+ **error_type_id** | **Integer** | | [optional]
83
+ **mux_viewer_id** | **String** | | [optional]
84
+ **video_id** | **String** | | [optional]
85
+ **continent_code** | **String** | | [optional]
86
+ **session_id** | **String** | | [optional]
87
+ **exit_before_video_start** | **BOOLEAN** | | [optional]
88
+ **video_content_type** | **String** | | [optional]
89
+ **viewer_os_family** | **String** | | [optional]
90
+ **player_poster** | **String** | | [optional]
91
+ **view_average_request_latency** | **String** | | [optional]
92
+ **video_variant_id** | **String** | | [optional]
93
+ **player_source_duration** | **Integer** | | [optional]
94
+ **player_source_url** | **String** | | [optional]
95
+ **mux_api_version** | **String** | | [optional]
96
+ **video_title** | **String** | | [optional]
97
+ **id** | **String** | | [optional]
98
+ **short_time** | **String** | | [optional]
99
+ **rebuffer_percentage** | **String** | | [optional]
100
+ **time_to_first_frame** | **String** | | [optional]
101
+ **viewer_user_id** | **String** | | [optional]
102
+ **video_stream_type** | **String** | | [optional]
103
+ **player_startup_time** | **Integer** | | [optional]
104
+ **viewer_application_version** | **String** | | [optional]
105
+ **view_max_downscale_percentage** | **String** | | [optional]
106
+ **view_max_upscale_percentage** | **String** | | [optional]
107
+ **country_code** | **String** | | [optional]
108
+ **used_fullscreen** | **BOOLEAN** | | [optional]
109
+ **isp** | **String** | | [optional]
110
+ **property_id** | **Integer** | | [optional]
111
+ **player_autoplay** | **BOOLEAN** | | [optional]
112
+ **player_height** | **Integer** | | [optional]
113
+ **asn** | **Integer** | | [optional]
114
+ **quality_score** | **String** | | [optional]
115
+ **player_software_version** | **String** | | [optional]
116
+
117
+
@@ -0,0 +1,11 @@
1
+ # MuxRuby::VideoViewEvent
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **viewer_time** | **Integer** | | [optional]
7
+ **playback_time** | **Integer** | | [optional]
8
+ **name** | **String** | | [optional]
9
+ **event_time** | **Integer** | | [optional]
10
+
11
+
@@ -0,0 +1,9 @@
1
+ # MuxRuby::VideoViewResponse
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **data** | [**VideoView**](.md) | | [optional]
7
+ **timeframe** | **Array<String>** | | [optional]
8
+
9
+
@@ -0,0 +1,126 @@
1
+ # MuxRuby::VideoViewsApi
2
+
3
+ All URIs are relative to *https://api.mux.com*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**get_video_view**](VideoViewsApi.md#get_video_view) | **GET** /data/v1/video-views/{VIDEO_VIEW_ID} | Get a Video View
8
+ [**list_video_views**](VideoViewsApi.md#list_video_views) | **GET** /data/v1/video-views | List Video Views
9
+
10
+
11
+ # **get_video_view**
12
+ > VideoViewResponse get_video_view(video_view_id)
13
+
14
+ Get a Video View
15
+
16
+ Returns the details of a video view
17
+
18
+ ### Example
19
+ ```ruby
20
+ # load the gem
21
+ require 'mux_ruby'
22
+ # setup authorization
23
+ MuxRuby.configure do |config|
24
+ # Configure HTTP basic authorization: accessToken
25
+ config.username = 'YOUR USERNAME'
26
+ config.password = 'YOUR PASSWORD'
27
+ end
28
+
29
+ api_instance = MuxRuby::VideoViewsApi.new
30
+ video_view_id = 'abcd1234' # String | ID of the Video View
31
+
32
+ begin
33
+ #Get a Video View
34
+ result = api_instance.get_video_view(video_view_id)
35
+ p result
36
+ rescue MuxRuby::ApiError => e
37
+ puts "Exception when calling VideoViewsApi->get_video_view: #{e}"
38
+ end
39
+ ```
40
+
41
+ ### Parameters
42
+
43
+ Name | Type | Description | Notes
44
+ ------------- | ------------- | ------------- | -------------
45
+ **video_view_id** | **String**| ID of the Video View |
46
+
47
+ ### Return type
48
+
49
+ [**VideoViewResponse**](VideoViewResponse.md)
50
+
51
+ ### Authorization
52
+
53
+ [accessToken](../README.md#accessToken)
54
+
55
+ ### HTTP request headers
56
+
57
+ - **Content-Type**: Not defined
58
+ - **Accept**: application/json
59
+
60
+
61
+
62
+ # **list_video_views**
63
+ > ListVideoViewsResponse list_video_views(opts)
64
+
65
+ List Video Views
66
+
67
+ Returns a list of video views
68
+
69
+ ### Example
70
+ ```ruby
71
+ # load the gem
72
+ require 'mux_ruby'
73
+ # setup authorization
74
+ MuxRuby.configure do |config|
75
+ # Configure HTTP basic authorization: accessToken
76
+ config.username = 'YOUR USERNAME'
77
+ config.password = 'YOUR PASSWORD'
78
+ end
79
+
80
+ api_instance = MuxRuby::VideoViewsApi.new
81
+ opts = {
82
+ limit: 25, # Integer | Number of items to include in the response
83
+ page: 1, # Integer | Offset by this many pages, of the size of `limit`
84
+ viewer_id: 'viewer_id_example', # String | Viewer ID to filter results by. This value may be provided by the integration, or may be created by Mux.
85
+ error_id: 56, # Integer | Filter video views by the provided error ID (as returned in the error_type_id field in the list video views endpoint). If you provide any as the error ID, this will filter the results to those with any error.
86
+ order_direction: 'order_direction_example', # String | Sort order.
87
+ filters: ['filters_example'], # Array<String> | Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]=operating_system:windows&filters[]=country:US). Possible filter names are the same as returned by the List Filters endpoint.
88
+ timeframe: ['timeframe_example'] # Array<String> | 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.
89
+ }
90
+
91
+ begin
92
+ #List Video Views
93
+ result = api_instance.list_video_views(opts)
94
+ p result
95
+ rescue MuxRuby::ApiError => e
96
+ puts "Exception when calling VideoViewsApi->list_video_views: #{e}"
97
+ end
98
+ ```
99
+
100
+ ### Parameters
101
+
102
+ Name | Type | Description | Notes
103
+ ------------- | ------------- | ------------- | -------------
104
+ **limit** | **Integer**| Number of items to include in the response | [optional] [default to 25]
105
+ **page** | **Integer**| Offset by this many pages, of the size of &#x60;limit&#x60; | [optional] [default to 1]
106
+ **viewer_id** | **String**| Viewer ID to filter results by. This value may be provided by the integration, or may be created by Mux. | [optional]
107
+ **error_id** | **Integer**| Filter video views by the provided error ID (as returned in the error_type_id field in the list video views endpoint). If you provide any as the error ID, this will filter the results to those with any error. | [optional]
108
+ **order_direction** | **String**| Sort order. | [optional]
109
+ **filters** | [**Array&lt;String&gt;**](String.md)| 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. | [optional]
110
+ **timeframe** | [**Array&lt;String&gt;**](String.md)| Timeframe window to limit results by. Must be provided as an array query string parameter (e.g. timeframe[]&#x3D;). Accepted formats are... * array of epoch timestamps e.g. timeframe[]&#x3D;1498867200&amp;timeframe[]&#x3D;1498953600 * duration string e.g. timeframe[]&#x3D;24:hours or timeframe[]&#x3D;7:days. | [optional]
111
+
112
+ ### Return type
113
+
114
+ [**ListVideoViewsResponse**](ListVideoViewsResponse.md)
115
+
116
+ ### Authorization
117
+
118
+ [accessToken](../README.md#accessToken)
119
+
120
+ ### HTTP request headers
121
+
122
+ - **Content-Type**: Not defined
123
+ - **Accept**: application/json
124
+
125
+
126
+
@@ -0,0 +1,23 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ errors_api = MuxRuby::ErrorsApi.new
16
+
17
+ # ========== list-errors ==========
18
+ errors = errors_api.list_errors(:filters => ['browser:Firefox'], :timeframe => ['7:days'])
19
+ assert errors != nil
20
+ assert errors.data != nil
21
+ assert errors.data.length > 0
22
+ assert errors.data.first.id != nil
23
+ puts "list-errors OK ✅"
@@ -0,0 +1,22 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ exports_api = MuxRuby::ExportsApi.new
16
+
17
+ # ========== list-errors ==========
18
+ exports = exports_api.list_exports()
19
+ assert exports != nil
20
+ assert exports.data != nil
21
+ assert exports.data.length > 0
22
+ puts "list-exports OK ✅"
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ filters_api = MuxRuby::FiltersApi.new
16
+
17
+ # ========== list-filters ==========
18
+ filters = filters_api.list_filters()
19
+ assert filters != nil
20
+ assert filters.data != nil
21
+ assert filters.data.basic != nil
22
+ assert filters.data.advanced != nil
23
+ puts "list-filters OK ✅"
24
+
25
+ # ========== list-filter-values ==========
26
+ filter_values = filters_api.list_filter_values("browser", {:timeframe => ['7:days']})
27
+ assert filter_values != nil
28
+ assert filter_values.data != nil
29
+ puts "list-filter-values OK ✅"
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Exercises all asset operations:
9
+ # list-breakdown-values
10
+ # get-overall-values
11
+ # list-insights
12
+ # get-metric-timeseries-data
13
+ # list-all-metric-values
14
+
15
+ # Authentication Setup
16
+ openapi = MuxRuby.configure do |config|
17
+ config.username = ENV['MUX_TOKEN_ID']
18
+ config.password = ENV['MUX_TOKEN_SECRET']
19
+ end
20
+
21
+ # API Client Initialization
22
+ metrics_api = MuxRuby::MetricsApi.new
23
+
24
+ # ========== list-breakdown-values ==========
25
+ breakdown = metrics_api.list_breakdown_values('video_startup_time', {:group_by => 'browser', :timeframe => ['7:days']})
26
+ assert breakdown != nil
27
+ assert breakdown.data != nil
28
+ puts "list-breakdown-values OK ✅"
29
+
30
+ # ========== get-overall-values ==========
31
+ overall = metrics_api.get_overall_values('video_startup_time', {:timeframe => ['7:days']})
32
+ assert overall != nil
33
+ assert overall.data != nil
34
+ puts "get-overall-values OK ✅"
35
+
36
+ # ========== list-insights ==========
37
+ insights = metrics_api.list_insights('video_startup_time', {:timeframe => ['7:days']})
38
+ assert insights != nil
39
+ assert insights.data != nil
40
+ puts "list-insights OK ✅"
41
+
42
+ # ========== get-metric-timeseries-data ==========
43
+ timeseries = metrics_api.get_metric_timeseries_data('video_startup_time', {:timeframe => ['7:days']})
44
+ assert timeseries != nil
45
+ assert timeseries.data != nil
46
+ puts "get-metric-timeseries-data OK ✅"
47
+
48
+ # ========== list-all-metric-values ==========
49
+ values = metrics_api.list_all_metric_values()
50
+ assert values != nil
51
+ assert values.data != nil
52
+ puts "list-all-metric-values OK ✅"
@@ -0,0 +1,30 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ views_api = MuxRuby::VideoViewsApi.new
16
+
17
+ # ========== list-video-views ==========
18
+ video_views = views_api.list_video_views()
19
+ assert video_views != nil
20
+ assert video_views.data != nil
21
+ assert video_views.data.first != nil
22
+ assert video_views.data.first.id != nil
23
+ puts "list-video_views OK ✅"
24
+
25
+ # ========== get-video-view ==========
26
+ view = views_api.get_video_view(video_views.data.first.id)
27
+ assert view != nil
28
+ assert view.data != nil
29
+ assert view.data.id != video_views.data.first.id
30
+ puts "get-video-view OK ✅"
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+
5
+ # Auth Setup
6
+ openapi = MuxRuby.configure do |config|
7
+ config.username = ENV['MUX_TOKEN_ID']
8
+ config.password = ENV['MUX_TOKEN_SECRET']
9
+ end
10
+
11
+ # API Client Init
12
+ live_api = MuxRuby::LiveStreamsApi.new
13
+
14
+ # Create the Live Stream
15
+ create_asset_request = MuxRuby::CreateAssetRequest.new
16
+ create_asset_request.playback_policy = [MuxRuby::PlaybackPolicy::PUBLIC]
17
+ create_live_stream_request = MuxRuby::CreateLiveStreamRequest.new
18
+ create_live_stream_request.new_asset_settings = create_asset_request
19
+ create_live_stream_request.playback_policy = [MuxRuby::PlaybackPolicy::PUBLIC]
20
+ stream = live_api.create_live_stream(create_live_stream_request)
21
+
22
+ # Give back the RTMP entry point playback endpoint
23
+ puts "New Live Stream created!"
24
+ puts "RTMP Endpoint: rtmp://live.mux.com/app"
25
+ puts "Stream Key: #{stream.data.stream_key}"
@@ -0,0 +1,95 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ assets_api = MuxRuby::AssetsApi.new
16
+
17
+ # ========== create-asset ==========
18
+ car = MuxRuby::CreateAssetRequest.new
19
+ car.input = 'https://storage.googleapis.com/muxdemofiles/mux-video-intro.mp4'
20
+ create_response = assets_api.create_asset(car)
21
+ assert create_response != nil
22
+ assert create_response.data.id != nil
23
+ puts "create-asset OK ✅"
24
+
25
+ # ========== list-assets ==========
26
+ assets = assets_api.list_assets()
27
+ assert assets != nil
28
+ assert assets.data.first.id == create_response.data.id
29
+ puts "list-assets OK ✅"
30
+
31
+ # Wait for the asset to become ready...
32
+ if create_response.data.status != 'ready'
33
+ puts " waiting for asset to become ready..."
34
+ while true do
35
+ # ========== get-asset ==========
36
+ asset = assets_api.get_asset(create_response.data.id)
37
+ assert asset != nil
38
+ assert asset.data.id == create_response.data.id
39
+ if asset.data.status != 'ready'
40
+ puts "Asset not ready yet, sleeping..."
41
+ sleep(1)
42
+ else
43
+ puts "Asset ready checking input info."
44
+ # ========== get-asset-input-info ==========
45
+ input_info = assets_api.get_asset_input_info(asset.data.id)
46
+ assert input_info != nil
47
+ assert input_info.data != nil
48
+ break
49
+ end
50
+ end
51
+ end
52
+ puts "get-asset OK ✅"
53
+ puts "get-asset-input-info OK ✅"
54
+
55
+ # ========== create-asset-playback-id ==========
56
+ cpbr = MuxRuby::CreatePlaybackIDRequest.new
57
+ cpbr.policy = MuxRuby::PlaybackPolicy::PUBLIC
58
+ pb_id_c = assets_api.create_asset_playback_id(create_response.data.id, cpbr)
59
+ assert pb_id_c != nil
60
+ assert pb_id_c.data != nil
61
+ puts "create-asset-playback-id OK ✅"
62
+
63
+ # ========== get-asset-playback-id ==========
64
+ pb_id = assets_api.get_asset_playback_id(create_response.data.id, pb_id_c.data.id)
65
+ assert pb_id != nil
66
+ assert pb_id.data != nil
67
+ assert pb_id.data.id == pb_id_c.data.id
68
+ puts "get-asset-playback-id OK ✅"
69
+
70
+ # ========== update-asset-mp4-support ==========
71
+ mp4_req = MuxRuby::UpdateAssetMP4SupportRequest.new
72
+ mp4_req.mp4_support = 'standard'
73
+ mp4_asset = assets_api.update_asset_mp4_support(create_response.data.id, mp4_req)
74
+ assert mp4_asset != nil
75
+ assert mp4_asset.data != nil
76
+ assert mp4_asset.data.id == create_response.data.id
77
+ assert mp4_asset.data.mp4_support == 'standard'
78
+ puts "update-asset-mp4-support OK ✅"
79
+
80
+ # ========== delete-asset-playback-id ==========
81
+ assets_api.delete_asset_playback_id(create_response.data.id, pb_id_c.data.id)
82
+ deleted_playback_id_asset = assets_api.get_asset(create_response.data.id)
83
+ assert deleted_playback_id_asset.data.playback_ids == nil
84
+ puts "delete-asset-playback-id OK ✅"
85
+
86
+ # ========== delete-asset ==========
87
+ assets_api.delete_asset(create_response.data.id)
88
+ begin
89
+ assets_api.get_asset(create_response.data.id)
90
+ puts 'Should have errored here.'
91
+ exit 255
92
+ rescue MuxRuby::NotFoundError => e
93
+ assert e != nil
94
+ end
95
+ puts "delete-asset OK ✅"
@@ -0,0 +1,89 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ live_api = MuxRuby::LiveStreamsApi.new
16
+
17
+ # ========== create-live-stream ==========
18
+ create_asset_request = MuxRuby::CreateAssetRequest.new
19
+ create_asset_request.playback_policy = [MuxRuby::PlaybackPolicy::PUBLIC]
20
+ create_live_stream_request = MuxRuby::CreateLiveStreamRequest.new
21
+ create_live_stream_request.new_asset_settings = create_asset_request
22
+ create_live_stream_request.playback_policy = [MuxRuby::PlaybackPolicy::PUBLIC]
23
+ stream = live_api.create_live_stream(create_live_stream_request)
24
+ assert stream != nil
25
+ assert stream.data != nil
26
+ assert stream.data.id != nil
27
+ puts "create-live-stream OK ✅"
28
+
29
+ # ========== list-live-streams ==========
30
+ streams = live_api.list_live_streams()
31
+ assert streams != nil
32
+ assert streams.data != nil
33
+ assert streams.data.first.id == stream.data.id
34
+ puts "list-live-streams OK ✅"
35
+
36
+ # ========== get-live-stream ==========
37
+ stream_get = live_api.get_live_stream(stream.data.id)
38
+ assert stream_get != nil
39
+ assert stream_get.data != nil
40
+ assert stream_get.data.id == stream.data.id
41
+ puts "get-live-stream OK ✅"
42
+
43
+ # ========== create-live-stream-playback-id ==========
44
+ create_playback_id_request = MuxRuby::CreatePlaybackIDRequest.new
45
+ create_playback_id_request.policy = MuxRuby::PlaybackPolicy::SIGNED
46
+ playback_id = live_api.create_live_stream_playback_id(stream.data.id, create_playback_id_request)
47
+ assert playback_id != nil
48
+ assert playback_id.data != nil
49
+ assert playback_id.data.id != nil
50
+ assert playback_id.data.policy == "signed"
51
+ puts "create-live-stream-playback-id OK ✅"
52
+
53
+ # ========== delete-live-stream-playback-id ==========
54
+ live_api.delete_live_stream_playback_id(stream.data.id, playback_id.data.id)
55
+ stream_after_delete = live_api.get_live_stream(stream.data.id)
56
+ assert stream_after_delete != nil
57
+ assert stream_after_delete.data != nil
58
+ assert stream_after_delete.data.id == stream.data.id
59
+ assert stream_after_delete.data.playback_ids.length == 1
60
+ assert stream_after_delete.data.playback_ids.first.policy == "public"
61
+ puts "delete-live-stream-playback-id OK ✅"
62
+
63
+ # ========== reset-stream-key ==========
64
+ reset_key = live_api.reset_stream_key(stream.data.id)
65
+ assert reset_key != nil
66
+ assert reset_key.data != nil
67
+ assert reset_key.data.id == stream.data.id
68
+ assert reset_key.data.stream_key != stream.data.stream_key
69
+ puts "delete-live-stream-playback-id OK ✅"
70
+
71
+ # ========== signal-live-stream-complete ==========
72
+ begin
73
+ live_api.signal_live_stream_complete(stream.data.id)
74
+ rescue MuxRuby::ApiError => e
75
+ puts "Should not have errored when marking stream complete"
76
+ exit 1
77
+ end
78
+ puts "signal-live-stream-complete OK ✅"
79
+
80
+ # ========== delete-live-stream ==========
81
+ live_api.delete_live_stream(stream.data.id)
82
+ begin
83
+ live_api.get_live_stream(stream.data.id)
84
+ puts 'Should have errored here.'
85
+ exit 255
86
+ rescue MuxRuby::NotFoundError => e
87
+ assert e != nil
88
+ end
89
+ puts "delete-live-stream OK ✅"
@@ -0,0 +1,46 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'mux_ruby'
4
+ require 'solid_assert'
5
+
6
+ SolidAssert.enable_assertions
7
+
8
+ # Authentication Setup
9
+ openapi = MuxRuby.configure do |config|
10
+ config.username = ENV['MUX_TOKEN_ID']
11
+ config.password = ENV['MUX_TOKEN_SECRET']
12
+ end
13
+
14
+ # API Client Initialization
15
+ keys_api = MuxRuby::URLSigningKeysApi.new
16
+
17
+ # ========== create-url-signing-key ==========
18
+ key = keys_api.create_url_signing_key()
19
+ assert key != nil
20
+ assert key.data.id != nil
21
+ assert key.data.private_key != nil
22
+ puts "create-url-signing-key OK ✅"
23
+
24
+ # ========== list-url-signing-keys ==========
25
+ keys = keys_api.list_url_signing_keys()
26
+ assert keys != nil
27
+ assert keys.data.first != nil
28
+ assert keys.data.first.id = key.data.id
29
+ assert keys.data.first.private_key == nil
30
+ puts "list-url-signing-keys OK ✅"
31
+
32
+ # ========== get-url-signing-key ==========
33
+ key_get = keys_api.get_url_signing_key(key.data.id)
34
+ assert key_get.data != nil
35
+ puts "get-url-signing-key OK ✅"
36
+
37
+ # ========== delete-url-signing-key ==========
38
+ keys_api.delete_url_signing_key(key.data.id)
39
+ begin
40
+ deleted_key = keys_api.get_url_signing_key(key.data.id)
41
+ puts 'Should have errored here.'
42
+ exit 255
43
+ rescue MuxRuby::NotFoundError => e
44
+ assert e != nil
45
+ end
46
+ puts "delete-url-signing-key OK ✅"