mux_ruby 3.3.1 → 3.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +4 -4
  4. data/docs/AssetNonStandardInputReasons.md +2 -2
  5. data/docs/AssetResponse.md +1 -1
  6. data/docs/AssetsApi.md +8 -0
  7. data/docs/CreateLiveStreamRequest.md +3 -1
  8. data/docs/CreatePlaybackIDResponse.md +1 -1
  9. data/docs/CreatePlaybackRestrictionRequest.md +1 -1
  10. data/docs/CreateTrackResponse.md +1 -1
  11. data/docs/DirectUploadsApi.md +6 -0
  12. data/docs/GetAssetPlaybackIDResponse.md +1 -1
  13. data/docs/GetLiveStreamPlaybackIDResponse.md +1 -1
  14. data/docs/IncidentResponse.md +1 -1
  15. data/docs/InputSettings.md +3 -3
  16. data/docs/LiveStream.md +3 -1
  17. data/docs/LiveStreamResponse.md +1 -1
  18. data/docs/LiveStreamsApi.md +16 -4
  19. data/docs/MetricsApi.md +2 -2
  20. data/docs/PlaybackRestrictionResponse.md +1 -1
  21. data/docs/PlaybackRestrictionsApi.md +6 -6
  22. data/docs/SigningKeyResponse.md +1 -1
  23. data/docs/SimulcastTargetResponse.md +1 -1
  24. data/docs/Track.md +9 -7
  25. data/docs/UpdateLiveStreamRequest.md +3 -1
  26. data/docs/UpdateReferrerDomainRestrictionRequest.md +37 -5
  27. data/docs/UploadResponse.md +1 -1
  28. data/docs/VideoViewResponse.md +1 -1
  29. data/gen/generator-config.json +1 -1
  30. data/lib/mux_ruby/api/assets_api.rb +8 -0
  31. data/lib/mux_ruby/api/direct_uploads_api.rb +6 -0
  32. data/lib/mux_ruby/api/live_streams_api.rb +14 -2
  33. data/lib/mux_ruby/api/metrics_api.rb +3 -3
  34. data/lib/mux_ruby/api/playback_restrictions_api.rb +9 -9
  35. data/lib/mux_ruby/models/abridged_video_view.rb +7 -0
  36. data/lib/mux_ruby/models/asset_non_standard_input_reasons.rb +2 -2
  37. data/lib/mux_ruby/models/create_live_stream_request.rb +40 -4
  38. data/lib/mux_ruby/models/input_settings.rb +3 -3
  39. data/lib/mux_ruby/models/live_stream.rb +40 -4
  40. data/lib/mux_ruby/models/track.rb +32 -10
  41. data/lib/mux_ruby/models/update_live_stream_request.rb +40 -4
  42. data/lib/mux_ruby/models/update_referrer_domain_restriction_request.rb +74 -179
  43. data/lib/mux_ruby/models/video_view.rb +103 -0
  44. data/lib/mux_ruby/version.rb +1 -1
  45. metadata +102 -102
@@ -85,6 +85,7 @@ module MuxRuby
85
85
  end
86
86
 
87
87
  # Create a playback ID
88
+ # Creates a playback ID that can be used to stream the asset to a viewer.
88
89
  # @param asset_id [String] The asset ID.
89
90
  # @param create_playback_id_request [CreatePlaybackIDRequest]
90
91
  # @param [Hash] opts the optional parameters
@@ -95,6 +96,7 @@ module MuxRuby
95
96
  end
96
97
 
97
98
  # Create a playback ID
99
+ # Creates a playback ID that can be used to stream the asset to a viewer.
98
100
  # @param asset_id [String] The asset ID.
99
101
  # @param create_playback_id_request [CreatePlaybackIDRequest]
100
102
  # @param [Hash] opts the optional parameters
@@ -154,6 +156,7 @@ module MuxRuby
154
156
  end
155
157
 
156
158
  # Create an asset track
159
+ # Adds an asset track (for example, subtitles) to an asset.
157
160
  # @param asset_id [String] The asset ID.
158
161
  # @param create_track_request [CreateTrackRequest]
159
162
  # @param [Hash] opts the optional parameters
@@ -164,6 +167,7 @@ module MuxRuby
164
167
  end
165
168
 
166
169
  # Create an asset track
170
+ # Adds an asset track (for example, subtitles) to an asset.
167
171
  # @param asset_id [String] The asset ID.
168
172
  # @param create_track_request [CreateTrackRequest]
169
173
  # @param [Hash] opts the optional parameters
@@ -284,6 +288,7 @@ module MuxRuby
284
288
  end
285
289
 
286
290
  # Delete a playback ID
291
+ # Deletes a playback ID, rendering it nonfunctional for viewing an asset's video content. Please note that deleting the playback ID removes access to the underlying asset; a viewer who started playback before the playback ID was deleted may be able to watch the entire video for a limited duration.
287
292
  # @param asset_id [String] The asset ID.
288
293
  # @param playback_id [String] The live stream's playback ID.
289
294
  # @param [Hash] opts the optional parameters
@@ -294,6 +299,7 @@ module MuxRuby
294
299
  end
295
300
 
296
301
  # Delete a playback ID
302
+ # Deletes a playback ID, rendering it nonfunctional for viewing an asset's video content. Please note that deleting the playback ID removes access to the underlying asset; a viewer who started playback before the playback ID was deleted may be able to watch the entire video for a limited duration.
297
303
  # @param asset_id [String] The asset ID.
298
304
  # @param playback_id [String] The live stream's playback ID.
299
305
  # @param [Hash] opts the optional parameters
@@ -542,6 +548,7 @@ module MuxRuby
542
548
  end
543
549
 
544
550
  # Retrieve a playback ID
551
+ # Retrieves information about the specified playback ID.
545
552
  # @param asset_id [String] The asset ID.
546
553
  # @param playback_id [String] The live stream's playback ID.
547
554
  # @param [Hash] opts the optional parameters
@@ -552,6 +559,7 @@ module MuxRuby
552
559
  end
553
560
 
554
561
  # Retrieve a playback ID
562
+ # Retrieves information about the specified playback ID.
555
563
  # @param asset_id [String] The asset ID.
556
564
  # @param playback_id [String] The live stream's playback ID.
557
565
  # @param [Hash] opts the optional parameters
@@ -83,6 +83,7 @@ module MuxRuby
83
83
  end
84
84
 
85
85
  # Create a new direct upload URL
86
+ # Creates a new direct upload, through which video content can be uploaded for ingest to Mux.
86
87
  # @param create_upload_request [CreateUploadRequest]
87
88
  # @param [Hash] opts the optional parameters
88
89
  # @return [UploadResponse]
@@ -92,6 +93,7 @@ module MuxRuby
92
93
  end
93
94
 
94
95
  # Create a new direct upload URL
96
+ # Creates a new direct upload, through which video content can be uploaded for ingest to Mux.
95
97
  # @param create_upload_request [CreateUploadRequest]
96
98
  # @param [Hash] opts the optional parameters
97
99
  # @return [Array<(UploadResponse, Integer, Hash)>] UploadResponse data, response status code and response headers
@@ -146,6 +148,7 @@ module MuxRuby
146
148
  end
147
149
 
148
150
  # Retrieve a single direct upload's info
151
+ # Fetches information about a single direct upload in the current environment.
149
152
  # @param upload_id [String] ID of the Upload
150
153
  # @param [Hash] opts the optional parameters
151
154
  # @return [UploadResponse]
@@ -155,6 +158,7 @@ module MuxRuby
155
158
  end
156
159
 
157
160
  # Retrieve a single direct upload&#39;s info
161
+ # Fetches information about a single direct upload in the current environment.
158
162
  # @param upload_id [String] ID of the Upload
159
163
  # @param [Hash] opts the optional parameters
160
164
  # @return [Array<(UploadResponse, Integer, Hash)>] UploadResponse data, response status code and response headers
@@ -207,6 +211,7 @@ module MuxRuby
207
211
  end
208
212
 
209
213
  # List direct uploads
214
+ # Lists currently extant direct uploads in the current environment.
210
215
  # @param [Hash] opts the optional parameters
211
216
  # @option opts [Integer] :limit Number of items to include in the response (default to 25)
212
217
  # @option opts [Integer] :page Offset by this many pages, of the size of &#x60;limit&#x60; (default to 1)
@@ -217,6 +222,7 @@ module MuxRuby
217
222
  end
218
223
 
219
224
  # List direct uploads
225
+ # Lists currently extant direct uploads in the current environment.
220
226
  # @param [Hash] opts the optional parameters
221
227
  # @option opts [Integer] :limit Number of items to include in the response
222
228
  # @option opts [Integer] :page Offset by this many pages, of the size of &#x60;limit&#x60;
@@ -20,6 +20,7 @@ module MuxRuby
20
20
  @api_client = api_client
21
21
  end
22
22
  # Create a live stream
23
+ # Creates a new live stream. Once created, an encoder can connect to Mux via the specified stream key and begin streaming to an audience.
23
24
  # @param create_live_stream_request [CreateLiveStreamRequest]
24
25
  # @param [Hash] opts the optional parameters
25
26
  # @return [LiveStreamResponse]
@@ -29,6 +30,7 @@ module MuxRuby
29
30
  end
30
31
 
31
32
  # Create a live stream
33
+ # Creates a new live stream. Once created, an encoder can connect to Mux via the specified stream key and begin streaming to an audience.
32
34
  # @param create_live_stream_request [CreateLiveStreamRequest]
33
35
  # @param [Hash] opts the optional parameters
34
36
  # @return [Array<(LiveStreamResponse, Integer, Hash)>] LiveStreamResponse data, response status code and response headers
@@ -83,6 +85,7 @@ module MuxRuby
83
85
  end
84
86
 
85
87
  # Create a live stream playback ID
88
+ # Create a new playback ID for this live stream, through which a viewer can watch the streamed content of the live stream.
86
89
  # @param live_stream_id [String] The live stream ID
87
90
  # @param create_playback_id_request [CreatePlaybackIDRequest]
88
91
  # @param [Hash] opts the optional parameters
@@ -93,6 +96,7 @@ module MuxRuby
93
96
  end
94
97
 
95
98
  # Create a live stream playback ID
99
+ # Create a new playback ID for this live stream, through which a viewer can watch the streamed content of the live stream.
96
100
  # @param live_stream_id [String] The live stream ID
97
101
  # @param create_playback_id_request [CreatePlaybackIDRequest]
98
102
  # @param [Hash] opts the optional parameters
@@ -223,6 +227,7 @@ module MuxRuby
223
227
  end
224
228
 
225
229
  # Delete a live stream
230
+ # Deletes a live stream from the current environment. If the live stream is currently active and being streamed to, ingest will be terminated and the encoder will be disconnected.
226
231
  # @param live_stream_id [String] The live stream ID
227
232
  # @param [Hash] opts the optional parameters
228
233
  # @return [nil]
@@ -232,6 +237,7 @@ module MuxRuby
232
237
  end
233
238
 
234
239
  # Delete a live stream
240
+ # Deletes a live stream from the current environment. If the live stream is currently active and being streamed to, ingest will be terminated and the encoder will be disconnected.
235
241
  # @param live_stream_id [String] The live stream ID
236
242
  # @param [Hash] opts the optional parameters
237
243
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
@@ -282,6 +288,7 @@ module MuxRuby
282
288
  end
283
289
 
284
290
  # Delete a live stream playback ID
291
+ # Deletes the playback ID for the live stream. This will not disable ingest (as the live stream still exists). New attempts to play back the live stream will fail immediately. However, current viewers will be able to continue watching the stream for some period of time.
285
292
  # @param live_stream_id [String] The live stream ID
286
293
  # @param playback_id [String] The live stream&#39;s playback ID.
287
294
  # @param [Hash] opts the optional parameters
@@ -292,6 +299,7 @@ module MuxRuby
292
299
  end
293
300
 
294
301
  # Delete a live stream playback ID
302
+ # Deletes the playback ID for the live stream. This will not disable ingest (as the live stream still exists). New attempts to play back the live stream will fail immediately. However, current viewers will be able to continue watching the stream for some period of time.
295
303
  # @param live_stream_id [String] The live stream ID
296
304
  # @param playback_id [String] The live stream&#39;s playback ID.
297
305
  # @param [Hash] opts the optional parameters
@@ -603,6 +611,7 @@ module MuxRuby
603
611
  end
604
612
 
605
613
  # Retrieve a live stream playback ID
614
+ # Fetches information about a live stream's playback ID, through which a viewer can watch the streamed content from this live stream.
606
615
  # @param live_stream_id [String] The live stream ID
607
616
  # @param playback_id [String] The live stream&#39;s playback ID.
608
617
  # @param [Hash] opts the optional parameters
@@ -613,6 +622,7 @@ module MuxRuby
613
622
  end
614
623
 
615
624
  # Retrieve a live stream playback ID
625
+ # Fetches information about a live stream&#39;s playback ID, through which a viewer can watch the streamed content from this live stream.
616
626
  # @param live_stream_id [String] The live stream ID
617
627
  # @param playback_id [String] The live stream&#39;s playback ID.
618
628
  # @param [Hash] opts the optional parameters
@@ -739,6 +749,7 @@ module MuxRuby
739
749
  end
740
750
 
741
751
  # List live streams
752
+ # Lists the live streams that currently exist in the current environment.
742
753
  # @param [Hash] opts the optional parameters
743
754
  # @option opts [Integer] :limit Number of items to include in the response (default to 25)
744
755
  # @option opts [Integer] :page Offset by this many pages, of the size of &#x60;limit&#x60; (default to 1)
@@ -751,6 +762,7 @@ module MuxRuby
751
762
  end
752
763
 
753
764
  # List live streams
765
+ # Lists the live streams that currently exist in the current environment.
754
766
  # @param [Hash] opts the optional parameters
755
767
  # @option opts [Integer] :limit Number of items to include in the response
756
768
  # @option opts [Integer] :page Offset by this many pages, of the size of &#x60;limit&#x60;
@@ -805,7 +817,7 @@ module MuxRuby
805
817
  return data, status_code, headers
806
818
  end
807
819
 
808
- # Reset a live streams stream key
820
+ # Reset a live stream's stream key
809
821
  # Reset a live stream key if you want to immediately stop the current stream key from working and create a new stream key that can be used for future broadcasts.
810
822
  # @param live_stream_id [String] The live stream ID
811
823
  # @param [Hash] opts the optional parameters
@@ -815,7 +827,7 @@ module MuxRuby
815
827
  data
816
828
  end
817
829
 
818
- # Reset a live streams stream key
830
+ # Reset a live stream&#39;s stream key
819
831
  # Reset a live stream key if you want to immediately stop the current stream key from working and create a new stream key that can be used for future broadcasts.
820
832
  # @param live_stream_id [String] The live stream ID
821
833
  # @param [Hash] opts the optional parameters
@@ -27,7 +27,7 @@ module MuxRuby
27
27
  # @option opts [Array<String>] :filters Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter. To exclude rows that match a certain condition, prepend a &#x60;!&#x60; character to the dimension. Possible filter names are the same as returned by the List Filters endpoint. Example: * &#x60;filters[]&#x3D;operating_system:windows&amp;filters[]&#x3D;!country:US&#x60;
28
28
  # @option opts [String] :measurement Measurement for the provided metric. If omitted, the default for the metric will be used.
29
29
  # @option opts [String] :order_direction Sort order.
30
- # @option opts [String] :group_by Time granularity to group results by. If this value is omitted, a default granularity is chosen based on the timeframe. For timeframes of 6 hours or less, the default granularity is &#x60;ten_minutes&#x60;. Between 6 hours and 15 hours inclusive, the default granularity is &#x60;hour&#x60;. The granularity of timeframes that exceed 15 hours is &#x60;day&#x60;. This default behaviour is subject to change; it is strongly suggested that you explicitly specify the granularity.
30
+ # @option opts [String] :group_by Time granularity to group results by. If this value is omitted, a default granularity is chosen based on the timeframe. For timeframes of 6 hours or less, the default granularity is &#x60;ten_minutes&#x60;. Between 6 hours and 15 days inclusive, the default granularity is &#x60;hour&#x60;. The granularity of timeframes that exceed 15 days is &#x60;day&#x60;. This default behavior is subject to change; it is strongly suggested that you explicitly specify the granularity.
31
31
  # @return [GetMetricTimeseriesDataResponse]
32
32
  def get_metric_timeseries_data(metric_id, opts = {})
33
33
  data, _status_code, _headers = get_metric_timeseries_data_with_http_info(metric_id, opts)
@@ -42,7 +42,7 @@ module MuxRuby
42
42
  # @option opts [Array<String>] :filters Limit the results to rows that match conditions from provided key:value pairs. Must be provided as an array query string parameter. To exclude rows that match a certain condition, prepend a &#x60;!&#x60; character to the dimension. Possible filter names are the same as returned by the List Filters endpoint. Example: * &#x60;filters[]&#x3D;operating_system:windows&amp;filters[]&#x3D;!country:US&#x60;
43
43
  # @option opts [String] :measurement Measurement for the provided metric. If omitted, the default for the metric will be used.
44
44
  # @option opts [String] :order_direction Sort order.
45
- # @option opts [String] :group_by Time granularity to group results by. If this value is omitted, a default granularity is chosen based on the timeframe. For timeframes of 6 hours or less, the default granularity is &#x60;ten_minutes&#x60;. Between 6 hours and 15 hours inclusive, the default granularity is &#x60;hour&#x60;. The granularity of timeframes that exceed 15 hours is &#x60;day&#x60;. This default behaviour is subject to change; it is strongly suggested that you explicitly specify the granularity.
45
+ # @option opts [String] :group_by Time granularity to group results by. If this value is omitted, a default granularity is chosen based on the timeframe. For timeframes of 6 hours or less, the default granularity is &#x60;ten_minutes&#x60;. Between 6 hours and 15 days inclusive, the default granularity is &#x60;hour&#x60;. The granularity of timeframes that exceed 15 days is &#x60;day&#x60;. This default behavior is subject to change; it is strongly suggested that you explicitly specify the granularity.
46
46
  # @return [Array<(GetMetricTimeseriesDataResponse, Integer, Hash)>] GetMetricTimeseriesDataResponse data, response status code and response headers
47
47
  def get_metric_timeseries_data_with_http_info(metric_id, opts = {})
48
48
  if @api_client.config.debugging
@@ -65,7 +65,7 @@ module MuxRuby
65
65
  if @api_client.config.client_side_validation && opts[:'order_direction'] && !allowable_values.include?(opts[:'order_direction'])
66
66
  fail ArgumentError, "invalid value for \"order_direction\", must be one of #{allowable_values}"
67
67
  end
68
- allowable_values = ["hour", "day"]
68
+ allowable_values = ["ten_minutes", "hour", "day"]
69
69
  if @api_client.config.client_side_validation && opts[:'group_by'] && !allowable_values.include?(opts[:'group_by'])
70
70
  fail ArgumentError, "invalid value for \"group_by\", must be one of #{allowable_values}"
71
71
  end
@@ -274,21 +274,21 @@ module MuxRuby
274
274
  # Update the Referrer Playback Restriction
275
275
  # Allows you to modify the list of domains or change how Mux validates playback requests without the `Referer` HTTP header. The Referrer restriction fully replaces the old list with this new list of domains.
276
276
  # @param playback_restriction_id [String] ID of the Playback Restriction.
277
- # @param body [ReferrerDomainRestriction]
277
+ # @param update_referrer_domain_restriction_request [UpdateReferrerDomainRestrictionRequest]
278
278
  # @param [Hash] opts the optional parameters
279
279
  # @return [PlaybackRestrictionResponse]
280
- def update_referrer_domain_restriction(playback_restriction_id, body, opts = {})
281
- data, _status_code, _headers = update_referrer_domain_restriction_with_http_info(playback_restriction_id, body, opts)
280
+ def update_referrer_domain_restriction(playback_restriction_id, update_referrer_domain_restriction_request, opts = {})
281
+ data, _status_code, _headers = update_referrer_domain_restriction_with_http_info(playback_restriction_id, update_referrer_domain_restriction_request, opts)
282
282
  data
283
283
  end
284
284
 
285
285
  # Update the Referrer Playback Restriction
286
286
  # Allows you to modify the list of domains or change how Mux validates playback requests without the &#x60;Referer&#x60; HTTP header. The Referrer restriction fully replaces the old list with this new list of domains.
287
287
  # @param playback_restriction_id [String] ID of the Playback Restriction.
288
- # @param body [ReferrerDomainRestriction]
288
+ # @param update_referrer_domain_restriction_request [UpdateReferrerDomainRestrictionRequest]
289
289
  # @param [Hash] opts the optional parameters
290
290
  # @return [Array<(PlaybackRestrictionResponse, Integer, Hash)>] PlaybackRestrictionResponse data, response status code and response headers
291
- def update_referrer_domain_restriction_with_http_info(playback_restriction_id, body, opts = {})
291
+ def update_referrer_domain_restriction_with_http_info(playback_restriction_id, update_referrer_domain_restriction_request, opts = {})
292
292
  if @api_client.config.debugging
293
293
  @api_client.config.logger.debug 'Calling API: PlaybackRestrictionsApi.update_referrer_domain_restriction ...'
294
294
  end
@@ -296,9 +296,9 @@ module MuxRuby
296
296
  if @api_client.config.client_side_validation && playback_restriction_id.nil?
297
297
  fail ArgumentError, "Missing the required parameter 'playback_restriction_id' when calling PlaybackRestrictionsApi.update_referrer_domain_restriction"
298
298
  end
299
- # verify the required parameter 'body' is set
300
- if @api_client.config.client_side_validation && body.nil?
301
- fail ArgumentError, "Missing the required parameter 'body' when calling PlaybackRestrictionsApi.update_referrer_domain_restriction"
299
+ # verify the required parameter 'update_referrer_domain_restriction_request' is set
300
+ if @api_client.config.client_side_validation && update_referrer_domain_restriction_request.nil?
301
+ fail ArgumentError, "Missing the required parameter 'update_referrer_domain_restriction_request' when calling PlaybackRestrictionsApi.update_referrer_domain_restriction"
302
302
  end
303
303
  # resource path
304
304
  local_var_path = '/video/v1/playback-restrictions/{PLAYBACK_RESTRICTION_ID}/referrer'.sub('{' + 'PLAYBACK_RESTRICTION_ID' + '}', CGI.escape(playback_restriction_id.to_s))
@@ -317,7 +317,7 @@ module MuxRuby
317
317
  form_params = opts[:form_params] || {}
318
318
 
319
319
  # http body (model)
320
- post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
320
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(update_referrer_domain_restriction_request)
321
321
 
322
322
  # return_type
323
323
  return_type = opts[:debug_return_type] || 'PlaybackRestrictionResponse'
@@ -79,6 +79,13 @@ module MuxRuby
79
79
  # List of attributes with nullable: true
80
80
  def self.openapi_nullable
81
81
  Set.new([
82
+ :'viewer_os_family',
83
+ :'viewer_application_name',
84
+ :'video_title',
85
+ :'player_error_message',
86
+ :'player_error_code',
87
+ :'error_type_id',
88
+ :'country_code',
82
89
  ])
83
90
  end
84
91
 
@@ -22,10 +22,10 @@ module MuxRuby
22
22
  # The audio codec used on the input file. Non-AAC audio codecs are non-standard.
23
23
  attr_accessor :audio_codec
24
24
 
25
- # The video key frame Interval (also called as Group of Picture or GOP) of the input file is `high`. This parameter is present when the gop is greater than 10 seconds.
25
+ # The video key frame Interval (also called as Group of Picture or GOP) of the input file is `high`. This parameter is present when the gop is greater than 20 seconds.
26
26
  attr_accessor :video_gop_size
27
27
 
28
- # The video frame rate of the input file. Video with average frames per second (fps) less than 10 or greater than 120 is non-standard. A `-1` frame rate value indicates Mux could not determine the frame rate of the video track.
28
+ # The video frame rate of the input file. Video with average frames per second (fps) less than 5 or greater than 120 is non-standard. A `-1` frame rate value indicates Mux could not determine the frame rate of the video track.
29
29
  attr_accessor :video_frame_rate
30
30
 
31
31
  # The video resolution of the input file. Video resolution higher than 2048 pixels on any one dimension (height or width) is considered non-standard, The resolution value is presented as `width` x `height` in pixels.
@@ -44,6 +44,9 @@ module MuxRuby
44
44
 
45
45
  attr_accessor :simulcast_targets
46
46
 
47
+ # The time in seconds a live stream may be continuously active before being disconnected. Defaults to 12 hours.
48
+ attr_accessor :max_continuous_duration
49
+
47
50
  class EnumAttributeValidator
48
51
  attr_reader :datatype
49
52
  attr_reader :allowable_values
@@ -79,7 +82,8 @@ module MuxRuby
79
82
  :'low_latency' => :'low_latency',
80
83
  :'latency_mode' => :'latency_mode',
81
84
  :'test' => :'test',
82
- :'simulcast_targets' => :'simulcast_targets'
85
+ :'simulcast_targets' => :'simulcast_targets',
86
+ :'max_continuous_duration' => :'max_continuous_duration'
83
87
  }
84
88
  end
85
89
 
@@ -101,7 +105,8 @@ module MuxRuby
101
105
  :'low_latency' => :'Boolean',
102
106
  :'latency_mode' => :'String',
103
107
  :'test' => :'Boolean',
104
- :'simulcast_targets' => :'Array<CreateSimulcastTargetRequest>'
108
+ :'simulcast_targets' => :'Array<CreateSimulcastTargetRequest>',
109
+ :'max_continuous_duration' => :'Integer'
105
110
  }
106
111
  end
107
112
 
@@ -175,6 +180,12 @@ module MuxRuby
175
180
  self.simulcast_targets = value
176
181
  end
177
182
  end
183
+
184
+ if attributes.key?(:'max_continuous_duration')
185
+ self.max_continuous_duration = attributes[:'max_continuous_duration']
186
+ else
187
+ self.max_continuous_duration = 43200
188
+ end
178
189
  end
179
190
 
180
191
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -189,6 +200,14 @@ module MuxRuby
189
200
  invalid_properties.push('invalid value for "reconnect_window", must be greater than or equal to 0.1.')
190
201
  end
191
202
 
203
+ if !@max_continuous_duration.nil? && @max_continuous_duration > 43200
204
+ invalid_properties.push('invalid value for "max_continuous_duration", must be smaller than or equal to 43200.')
205
+ end
206
+
207
+ if !@max_continuous_duration.nil? && @max_continuous_duration < 60
208
+ invalid_properties.push('invalid value for "max_continuous_duration", must be greater than or equal to 60.')
209
+ end
210
+
192
211
  invalid_properties
193
212
  end
194
213
 
@@ -199,6 +218,8 @@ module MuxRuby
199
218
  return false if !@reconnect_window.nil? && @reconnect_window < 0.1
200
219
  latency_mode_validator = EnumAttributeValidator.new('String', ["low", "reduced", "standard"])
201
220
  return false unless latency_mode_validator.valid?(@latency_mode)
221
+ return false if !@max_continuous_duration.nil? && @max_continuous_duration > 43200
222
+ return false if !@max_continuous_duration.nil? && @max_continuous_duration < 60
202
223
  true
203
224
  end
204
225
 
@@ -226,6 +247,20 @@ module MuxRuby
226
247
  @latency_mode = latency_mode
227
248
  end
228
249
 
250
+ # Custom attribute writer method with validation
251
+ # @param [Object] max_continuous_duration Value to be assigned
252
+ def max_continuous_duration=(max_continuous_duration)
253
+ if !max_continuous_duration.nil? && max_continuous_duration > 43200
254
+ fail ArgumentError, 'invalid value for "max_continuous_duration", must be smaller than or equal to 43200.'
255
+ end
256
+
257
+ if !max_continuous_duration.nil? && max_continuous_duration < 60
258
+ fail ArgumentError, 'invalid value for "max_continuous_duration", must be greater than or equal to 60.'
259
+ end
260
+
261
+ @max_continuous_duration = max_continuous_duration
262
+ end
263
+
229
264
  # Checks equality by comparing each attribute.
230
265
  # @param [Object] Object to be compared
231
266
  def ==(o)
@@ -241,7 +276,8 @@ module MuxRuby
241
276
  low_latency == o.low_latency &&
242
277
  latency_mode == o.latency_mode &&
243
278
  test == o.test &&
244
- simulcast_targets == o.simulcast_targets
279
+ simulcast_targets == o.simulcast_targets &&
280
+ max_continuous_duration == o.max_continuous_duration
245
281
  end
246
282
 
247
283
  # @see the `==` method
@@ -253,7 +289,7 @@ module MuxRuby
253
289
  # Calculates hash code according to all attributes.
254
290
  # @return [Integer] Hash code
255
291
  def hash
256
- [playback_policy, new_asset_settings, reconnect_window, passthrough, audio_only, embedded_subtitles, reduced_latency, low_latency, latency_mode, test, simulcast_targets].hash
292
+ [playback_policy, new_asset_settings, reconnect_window, passthrough, audio_only, embedded_subtitles, reduced_latency, low_latency, latency_mode, test, simulcast_targets, max_continuous_duration].hash
257
293
  end
258
294
 
259
295
  # Builds the object from hash
@@ -27,16 +27,16 @@ module MuxRuby
27
27
  # The time offset in seconds from the beginning of the video, indicating the clip's ending marker. The default value is the duration of the video when not included. This parameter is only applicable for creating clips when `input.url` has `mux://assets/{asset_id}` format.
28
28
  attr_accessor :end_time
29
29
 
30
- # This parameter is required for the `text` track type.
30
+ # This parameter is required for `text` type tracks.
31
31
  attr_accessor :type
32
32
 
33
- # Type of text track. This parameter only supports subtitles value. For more information on Subtitles / Closed Captions, [see this blog post](https://mux.com/blog/subtitles-captions-webvtt-hls-and-those-magic-flags/). This parameter is required for `text` track type.
33
+ # Type of text track. This parameter only supports subtitles value. For more information on Subtitles / Closed Captions, [see this blog post](https://mux.com/blog/subtitles-captions-webvtt-hls-and-those-magic-flags/). This parameter is required for `text` type tracks.
34
34
  attr_accessor :text_type
35
35
 
36
36
  # The language code value must be a valid [BCP 47](https://tools.ietf.org/html/bcp47) specification compliant value. For example, en for English or en-US for the US version of English. This parameter is required for text type and subtitles text type track.
37
37
  attr_accessor :language_code
38
38
 
39
- # The name of the track containing a human-readable description. This value must be unique across all text type and subtitles `text` type tracks. The hls manifest will associate a subtitle text track with this value. For example, the value should be \"English\" for subtitles text track with language_code as en. This optional parameter should be used only for `text` type and subtitles `text` type track. If this parameter is not included, Mux will auto-populate based on the `input[].language_code` value.
39
+ # The name of the track containing a human-readable description. This value must be unique across all text type and subtitles `text` type tracks. The hls manifest will associate a subtitle text track with this value. For example, the value should be \"English\" for subtitles text track with language_code as en. This optional parameter should be used only for `text` type and subtitles `text` type tracks. If this parameter is not included, Mux will auto-populate based on the `input[].language_code` value.
40
40
  attr_accessor :name
41
41
 
42
42
  # Indicates the track provides Subtitles for the Deaf or Hard-of-hearing (SDH). This optional parameter should be used for `text` type and subtitles `text` type tracks.
@@ -64,6 +64,9 @@ module MuxRuby
64
64
  # True means this live stream is a test live stream. Test live streams can be used to help evaluate the Mux Video APIs for free. There is no limit on the number of test live streams, but they are watermarked with the Mux logo, and limited to 5 minutes. The test live stream is disabled after the stream is active for 5 mins and the recorded asset also deleted after 24 hours.
65
65
  attr_accessor :test
66
66
 
67
+ # The time in seconds a live stream may be continuously active before being disconnected. Defaults to 12 hours.
68
+ attr_accessor :max_continuous_duration
69
+
67
70
  class EnumAttributeValidator
68
71
  attr_reader :datatype
69
72
  attr_reader :allowable_values
@@ -105,7 +108,8 @@ module MuxRuby
105
108
  :'low_latency' => :'low_latency',
106
109
  :'simulcast_targets' => :'simulcast_targets',
107
110
  :'latency_mode' => :'latency_mode',
108
- :'test' => :'test'
111
+ :'test' => :'test',
112
+ :'max_continuous_duration' => :'max_continuous_duration'
109
113
  }
110
114
  end
111
115
 
@@ -133,7 +137,8 @@ module MuxRuby
133
137
  :'low_latency' => :'Boolean',
134
138
  :'simulcast_targets' => :'Array<SimulcastTarget>',
135
139
  :'latency_mode' => :'String',
136
- :'test' => :'Boolean'
140
+ :'test' => :'Boolean',
141
+ :'max_continuous_duration' => :'Integer'
137
142
  }
138
143
  end
139
144
 
@@ -235,12 +240,26 @@ module MuxRuby
235
240
  if attributes.key?(:'test')
236
241
  self.test = attributes[:'test']
237
242
  end
243
+
244
+ if attributes.key?(:'max_continuous_duration')
245
+ self.max_continuous_duration = attributes[:'max_continuous_duration']
246
+ else
247
+ self.max_continuous_duration = 43200
248
+ end
238
249
  end
239
250
 
240
251
  # Show invalid properties with the reasons. Usually used together with valid?
241
252
  # @return Array for valid properties with the reasons
242
253
  def list_invalid_properties
243
254
  invalid_properties = Array.new
255
+ if !@max_continuous_duration.nil? && @max_continuous_duration > 43200
256
+ invalid_properties.push('invalid value for "max_continuous_duration", must be smaller than or equal to 43200.')
257
+ end
258
+
259
+ if !@max_continuous_duration.nil? && @max_continuous_duration < 60
260
+ invalid_properties.push('invalid value for "max_continuous_duration", must be greater than or equal to 60.')
261
+ end
262
+
244
263
  invalid_properties
245
264
  end
246
265
 
@@ -249,6 +268,8 @@ module MuxRuby
249
268
  def valid?
250
269
  latency_mode_validator = EnumAttributeValidator.new('String', ["low", "reduced", "standard"])
251
270
  return false unless latency_mode_validator.valid?(@latency_mode)
271
+ return false if !@max_continuous_duration.nil? && @max_continuous_duration > 43200
272
+ return false if !@max_continuous_duration.nil? && @max_continuous_duration < 60
252
273
  true
253
274
  end
254
275
 
@@ -262,6 +283,20 @@ module MuxRuby
262
283
  @latency_mode = latency_mode
263
284
  end
264
285
 
286
+ # Custom attribute writer method with validation
287
+ # @param [Object] max_continuous_duration Value to be assigned
288
+ def max_continuous_duration=(max_continuous_duration)
289
+ if !max_continuous_duration.nil? && max_continuous_duration > 43200
290
+ fail ArgumentError, 'invalid value for "max_continuous_duration", must be smaller than or equal to 43200.'
291
+ end
292
+
293
+ if !max_continuous_duration.nil? && max_continuous_duration < 60
294
+ fail ArgumentError, 'invalid value for "max_continuous_duration", must be greater than or equal to 60.'
295
+ end
296
+
297
+ @max_continuous_duration = max_continuous_duration
298
+ end
299
+
265
300
  # Checks equality by comparing each attribute.
266
301
  # @param [Object] Object to be compared
267
302
  def ==(o)
@@ -283,7 +318,8 @@ module MuxRuby
283
318
  low_latency == o.low_latency &&
284
319
  simulcast_targets == o.simulcast_targets &&
285
320
  latency_mode == o.latency_mode &&
286
- test == o.test
321
+ test == o.test &&
322
+ max_continuous_duration == o.max_continuous_duration
287
323
  end
288
324
 
289
325
  # @see the `==` method
@@ -295,7 +331,7 @@ module MuxRuby
295
331
  # Calculates hash code according to all attributes.
296
332
  # @return [Integer] Hash code
297
333
  def hash
298
- [id, created_at, stream_key, active_asset_id, recent_asset_ids, status, playback_ids, new_asset_settings, passthrough, audio_only, embedded_subtitles, reconnect_window, reduced_latency, low_latency, simulcast_targets, latency_mode, test].hash
334
+ [id, created_at, stream_key, active_asset_id, recent_asset_ids, status, playback_ids, new_asset_settings, passthrough, audio_only, embedded_subtitles, reconnect_window, reduced_latency, low_latency, simulcast_targets, latency_mode, test, max_continuous_duration].hash
299
335
  end
300
336
 
301
337
  # Builds the object from hash