class MuxRuby::RealTimeApi

Attributes

api_client[RW]

Public Class Methods

new(api_client = ApiClient.default) click to toggle source
# File lib/mux_ruby/api/real_time_api.rb, line 19
def initialize(api_client = ApiClient.default)
  @api_client = api_client
end

Public Instance Methods

get_realtime_breakdown(realtime_metric_id, opts = {}) click to toggle source

Get Real-Time Breakdown Gets breakdown information for a specific dimension and metric along with the number of concurrent viewers and negative impact score. @param realtime_metric_id [String] ID of the Realtime Metric @param [Hash] opts the optional parameters @option opts [String] :dimension Dimension the specified value belongs to @option opts [Float] :timestamp Timestamp to limit results by. This value must be provided as a unix timestamp. Defaults to the current unix timestamp. @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]=operating_system:windows&filters&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint. @option opts [String] :order_by Value to order the results by @option opts [String] :order_direction Sort order. @return [GetRealTimeBreakdownResponse]

# File lib/mux_ruby/api/real_time_api.rb, line 32
def get_realtime_breakdown(realtime_metric_id, opts = {})
  data, _status_code, _headers = get_realtime_breakdown_with_http_info(realtime_metric_id, opts)
  data
end
get_realtime_breakdown_with_http_info(realtime_metric_id, opts = {}) click to toggle source

Get Real-Time Breakdown Gets breakdown information for a specific dimension and metric along with the number of concurrent viewers and negative impact score. @param realtime_metric_id [String] ID of the Realtime Metric @param [Hash] opts the optional parameters @option opts [String] :dimension Dimension the specified value belongs to @option opts [Float] :timestamp Timestamp to limit results by. This value must be provided as a unix timestamp. Defaults to the current unix timestamp. @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]=operating_system:windows&filters&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint. @option opts [String] :order_by Value to order the results by @option opts [String] :order_direction Sort order. @return [Array<(GetRealTimeBreakdownResponse, Integer, Hash)>] GetRealTimeBreakdownResponse data, response status code and response headers

# File lib/mux_ruby/api/real_time_api.rb, line 47
def get_realtime_breakdown_with_http_info(realtime_metric_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: RealTimeApi.get_realtime_breakdown ...'
  end
  # verify the required parameter 'realtime_metric_id' is set
  if @api_client.config.client_side_validation && realtime_metric_id.nil?
    fail ArgumentError, "Missing the required parameter 'realtime_metric_id' when calling RealTimeApi.get_realtime_breakdown"
  end
  # verify enum value
  allowable_values = ["current-concurrent-viewers", "current-rebuffering-percentage", "exits-before-video-start", "playback-failure-percentage", "current-average-bitrate"]
  if @api_client.config.client_side_validation && !allowable_values.include?(realtime_metric_id)
    fail ArgumentError, "invalid value for \"realtime_metric_id\", must be one of #{allowable_values}"
  end
  allowable_values = ["asn", "cdn", "country", "operating_system", "player_name", "region", "stream_type", "sub_property_id", "video_series", "video_title"]
  if @api_client.config.client_side_validation && opts[:'dimension'] && !allowable_values.include?(opts[:'dimension'])
    fail ArgumentError, "invalid value for \"dimension\", must be one of #{allowable_values}"
  end
  allowable_values = ["negative_impact", "value", "views", "field"]
  if @api_client.config.client_side_validation && opts[:'order_by'] && !allowable_values.include?(opts[:'order_by'])
    fail ArgumentError, "invalid value for \"order_by\", must be one of #{allowable_values}"
  end
  allowable_values = ["asc", "desc"]
  if @api_client.config.client_side_validation && opts[:'order_direction'] && !allowable_values.include?(opts[:'order_direction'])
    fail ArgumentError, "invalid value for \"order_direction\", must be one of #{allowable_values}"
  end
  # resource path
  local_var_path = '/data/v1/realtime/metrics/{REALTIME_METRIC_ID}/breakdown'.sub('{' + 'REALTIME_METRIC_ID' + '}', CGI.escape(realtime_metric_id.to_s))

  # query parameters
  query_params = opts[:query_params] || {}
  query_params[:'dimension'] = opts[:'dimension'] if !opts[:'dimension'].nil?
  query_params[:'timestamp'] = opts[:'timestamp'] if !opts[:'timestamp'].nil?
  query_params[:'filters[]'] = @api_client.build_collection_param(opts[:'filters'], :multi) if !opts[:'filters'].nil?
  query_params[:'order_by'] = opts[:'order_by'] if !opts[:'order_by'].nil?
  query_params[:'order_direction'] = opts[:'order_direction'] if !opts[:'order_direction'].nil?

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'GetRealTimeBreakdownResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['accessToken']

  new_options = opts.merge(
    :operation => :"RealTimeApi.get_realtime_breakdown",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: RealTimeApi#get_realtime_breakdown\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_realtime_histogram_timeseries(realtime_histogram_metric_id, opts = {}) click to toggle source

Get Real-Time Histogram Timeseries Gets histogram timeseries information for a specific metric. @param realtime_histogram_metric_id [String] ID of the Realtime Histogram Metric @param [Hash] opts the optional parameters @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]=operating_system:windows&filters&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint. @return [GetRealTimeHistogramTimeseriesResponse]

# File lib/mux_ruby/api/real_time_api.rb, line 123
def get_realtime_histogram_timeseries(realtime_histogram_metric_id, opts = {})
  data, _status_code, _headers = get_realtime_histogram_timeseries_with_http_info(realtime_histogram_metric_id, opts)
  data
end
get_realtime_histogram_timeseries_with_http_info(realtime_histogram_metric_id, opts = {}) click to toggle source

Get Real-Time Histogram Timeseries Gets histogram timeseries information for a specific metric. @param realtime_histogram_metric_id [String] ID of the Realtime Histogram Metric @param [Hash] opts the optional parameters @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]=operating_system:windows&filters&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint. @return [Array<(GetRealTimeHistogramTimeseriesResponse, Integer, Hash)>] GetRealTimeHistogramTimeseriesResponse data, response status code and response headers

# File lib/mux_ruby/api/real_time_api.rb, line 134
def get_realtime_histogram_timeseries_with_http_info(realtime_histogram_metric_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: RealTimeApi.get_realtime_histogram_timeseries ...'
  end
  # verify the required parameter 'realtime_histogram_metric_id' is set
  if @api_client.config.client_side_validation && realtime_histogram_metric_id.nil?
    fail ArgumentError, "Missing the required parameter 'realtime_histogram_metric_id' when calling RealTimeApi.get_realtime_histogram_timeseries"
  end
  # verify enum value
  allowable_values = ["video-startup-time"]
  if @api_client.config.client_side_validation && !allowable_values.include?(realtime_histogram_metric_id)
    fail ArgumentError, "invalid value for \"realtime_histogram_metric_id\", must be one of #{allowable_values}"
  end
  # resource path
  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))

  # query parameters
  query_params = opts[:query_params] || {}
  query_params[:'filters[]'] = @api_client.build_collection_param(opts[:'filters'], :multi) if !opts[:'filters'].nil?

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'GetRealTimeHistogramTimeseriesResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['accessToken']

  new_options = opts.merge(
    :operation => :"RealTimeApi.get_realtime_histogram_timeseries",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: RealTimeApi#get_realtime_histogram_timeseries\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_realtime_timeseries(realtime_metric_id, opts = {}) click to toggle source

Get Real-Time Timeseries Gets Time series information for a specific metric along with the number of concurrent viewers. @param realtime_metric_id [String] ID of the Realtime Metric @param [Hash] opts the optional parameters @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]=operating_system:windows&filters&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint. @return [GetRealTimeTimeseriesResponse]

# File lib/mux_ruby/api/real_time_api.rb, line 194
def get_realtime_timeseries(realtime_metric_id, opts = {})
  data, _status_code, _headers = get_realtime_timeseries_with_http_info(realtime_metric_id, opts)
  data
end
get_realtime_timeseries_with_http_info(realtime_metric_id, opts = {}) click to toggle source

Get Real-Time Timeseries Gets Time series information for a specific metric along with the number of concurrent viewers. @param realtime_metric_id [String] ID of the Realtime Metric @param [Hash] opts the optional parameters @option opts [Array<String>] :filters Filter key:value pairs. Must be provided as an array query string parameter (e.g. filters[]=operating_system:windows&filters&#x3D;country:US). Possible filter names are the same as returned by the List Filters endpoint. @return [Array<(GetRealTimeTimeseriesResponse, Integer, Hash)>] GetRealTimeTimeseriesResponse data, response status code and response headers

# File lib/mux_ruby/api/real_time_api.rb, line 205
def get_realtime_timeseries_with_http_info(realtime_metric_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: RealTimeApi.get_realtime_timeseries ...'
  end
  # verify the required parameter 'realtime_metric_id' is set
  if @api_client.config.client_side_validation && realtime_metric_id.nil?
    fail ArgumentError, "Missing the required parameter 'realtime_metric_id' when calling RealTimeApi.get_realtime_timeseries"
  end
  # verify enum value
  allowable_values = ["current-concurrent-viewers", "current-rebuffering-percentage", "exits-before-video-start", "playback-failure-percentage", "current-average-bitrate"]
  if @api_client.config.client_side_validation && !allowable_values.include?(realtime_metric_id)
    fail ArgumentError, "invalid value for \"realtime_metric_id\", must be one of #{allowable_values}"
  end
  # resource path
  local_var_path = '/data/v1/realtime/metrics/{REALTIME_METRIC_ID}/timeseries'.sub('{' + 'REALTIME_METRIC_ID' + '}', CGI.escape(realtime_metric_id.to_s))

  # query parameters
  query_params = opts[:query_params] || {}
  query_params[:'filters[]'] = @api_client.build_collection_param(opts[:'filters'], :multi) if !opts[:'filters'].nil?

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'GetRealTimeTimeseriesResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['accessToken']

  new_options = opts.merge(
    :operation => :"RealTimeApi.get_realtime_timeseries",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: RealTimeApi#get_realtime_timeseries\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
list_realtime_dimensions(opts = {}) click to toggle source

List Real-Time Dimensions Lists available real-time dimensions. @param [Hash] opts the optional parameters @return [ListRealTimeDimensionsResponse]

# File lib/mux_ruby/api/real_time_api.rb, line 263
def list_realtime_dimensions(opts = {})
  data, _status_code, _headers = list_realtime_dimensions_with_http_info(opts)
  data
end
list_realtime_dimensions_with_http_info(opts = {}) click to toggle source

List Real-Time Dimensions Lists available real-time dimensions. @param [Hash] opts the optional parameters @return [Array<(ListRealTimeDimensionsResponse, Integer, Hash)>] ListRealTimeDimensionsResponse data, response status code and response headers

# File lib/mux_ruby/api/real_time_api.rb, line 272
def list_realtime_dimensions_with_http_info(opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: RealTimeApi.list_realtime_dimensions ...'
  end
  # resource path
  local_var_path = '/data/v1/realtime/dimensions'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'ListRealTimeDimensionsResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['accessToken']

  new_options = opts.merge(
    :operation => :"RealTimeApi.list_realtime_dimensions",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: RealTimeApi#list_realtime_dimensions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
list_realtime_metrics(opts = {}) click to toggle source

List Real-Time Metrics Lists available real-time metrics. @param [Hash] opts the optional parameters @return [ListRealTimeMetricsResponse]

# File lib/mux_ruby/api/real_time_api.rb, line 320
def list_realtime_metrics(opts = {})
  data, _status_code, _headers = list_realtime_metrics_with_http_info(opts)
  data
end
list_realtime_metrics_with_http_info(opts = {}) click to toggle source

List Real-Time Metrics Lists available real-time metrics. @param [Hash] opts the optional parameters @return [Array<(ListRealTimeMetricsResponse, Integer, Hash)>] ListRealTimeMetricsResponse data, response status code and response headers

# File lib/mux_ruby/api/real_time_api.rb, line 329
def list_realtime_metrics_with_http_info(opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug 'Calling API: RealTimeApi.list_realtime_metrics ...'
  end
  # resource path
  local_var_path = '/data/v1/realtime/metrics'

  # query parameters
  query_params = opts[:query_params] || {}

  # header parameters
  header_params = opts[:header_params] || {}
  # HTTP header 'Accept' (if needed)
  header_params['Accept'] = @api_client.select_header_accept(['application/json'])

  # form parameters
  form_params = opts[:form_params] || {}

  # http body (model)
  post_body = opts[:debug_body]

  # return_type
  return_type = opts[:debug_return_type] || 'ListRealTimeMetricsResponse'

  # auth_names
  auth_names = opts[:debug_auth_names] || ['accessToken']

  new_options = opts.merge(
    :operation => :"RealTimeApi.list_realtime_metrics",
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => return_type
  )

  data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: RealTimeApi#list_realtime_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end