class PureCloud::PresenceApi

Attributes

api_client[RW]

Public Class Methods

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

Public Instance Methods

delete_presence_id(presence_id, opts = {}) click to toggle source

Delete a Presence Definition

@param presence_id Organization Presence ID @param [Hash] opts the optional parameters @return [nil]

# File lib/purecloud/api/presence_api.rb, line 32
def delete_presence_id(presence_id, opts = {})
  delete_presence_id_with_http_info(presence_id, opts)
  return nil
end
delete_presence_id_with_http_info(presence_id, opts = {}) click to toggle source

Delete a Presence Definition

@param presence_id Organization Presence ID @param [Hash] opts the optional parameters @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers

# File lib/purecloud/api/presence_api.rb, line 42
def delete_presence_id_with_http_info(presence_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug "Calling API: PresenceApi#delete_presence_id ..."
  end
  
  # verify the required parameter 'presence_id' is set
  fail "Missing the required parameter 'presence_id' when calling delete_presence_id" if presence_id.nil?
  
  # resource path
  local_var_path = "/api/v2/presencedefinitions/{presenceId}".sub('{format}','json').sub('{' + 'presenceId' + '}', presence_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}

  # HTTP header 'Accept' (if needed)
  _header_accept = ['application/json']
  _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result

  # HTTP header 'Content-Type'
  _header_content_type = ['application/json']
  header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  
  auth_names = ['PureCloud Auth']
  data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names)
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PresenceApi#delete_presence_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_presence_id(presence_id, opts = {}) click to toggle source

Get a Presence Definition

@param presence_id Organization Presence ID @param [Hash] opts the optional parameters @option opts [String] :locale_code The locale code to fetch for the presence definition. Use ALL to fetch everything. @return [OrganizationPresence]

# File lib/purecloud/api/presence_api.rb, line 92
def get_presence_id(presence_id, opts = {})
  data, status_code, headers = get_presence_id_with_http_info(presence_id, opts)
  return data
end
get_presence_id_with_http_info(presence_id, opts = {}) click to toggle source

Get a Presence Definition

@param presence_id Organization Presence ID @param [Hash] opts the optional parameters @option opts [String] :locale_code The locale code to fetch for the presence definition. Use ALL to fetch everything. @return [Array<(OrganizationPresence, Fixnum, Hash)>] OrganizationPresence data, response status code and response headers

# File lib/purecloud/api/presence_api.rb, line 103
def get_presence_id_with_http_info(presence_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug "Calling API: PresenceApi#get_presence_id ..."
  end
  
  # verify the required parameter 'presence_id' is set
  fail "Missing the required parameter 'presence_id' when calling get_presence_id" if presence_id.nil?
  
  # resource path
  local_var_path = "/api/v2/presencedefinitions/{presenceId}".sub('{format}','json').sub('{' + 'presenceId' + '}', presence_id.to_s)

  # query parameters
  query_params = {}
  query_params[:'localeCode'] = opts[:'locale_code'] if opts[:'locale_code']

  # header parameters
  header_params = {}

  # HTTP header 'Accept' (if needed)
  _header_accept = ['application/json']
  _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result

  # HTTP header 'Content-Type'
  _header_content_type = ['application/json']
  header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  
  auth_names = ['PureCloud Auth']
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'OrganizationPresence')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PresenceApi#get_presence_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_presencedefinitions(opts = {}) click to toggle source

Get an Organization's list of Presence Definitions

@param [Hash] opts the optional parameters @option opts [Integer] :page_number Page number (default to 1) @option opts [Integer] :page_size Page size (default to 25) @option opts [String] :deleted Deleted query can be TRUE, FALSE or ALL (default to false) @option opts [String] :locale_code The locale code to fetch for each presence definition. Use ALL to fetch everything. @return [OrganizationPresenceEntityListing]

# File lib/purecloud/api/presence_api.rb, line 157
def get_presencedefinitions(opts = {})
  data, status_code, headers = get_presencedefinitions_with_http_info(opts)
  return data
end
get_presencedefinitions_with_http_info(opts = {}) click to toggle source

Get an Organization&#39;s list of Presence Definitions

@param [Hash] opts the optional parameters @option opts [Integer] :page_number Page number @option opts [Integer] :page_size Page size @option opts [String] :deleted Deleted query can be TRUE, FALSE or ALL @option opts [String] :locale_code The locale code to fetch for each presence definition. Use ALL to fetch everything. @return [Array<(OrganizationPresenceEntityListing, Fixnum, Hash)>] OrganizationPresenceEntityListing data, response status code and response headers

# File lib/purecloud/api/presence_api.rb, line 170
def get_presencedefinitions_with_http_info(opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug "Calling API: PresenceApi#get_presencedefinitions ..."
  end
  
  # resource path
  local_var_path = "/api/v2/presencedefinitions".sub('{format}','json')

  # query parameters
  query_params = {}
  query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number']
  query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size']
  query_params[:'deleted'] = opts[:'deleted'] if opts[:'deleted']
  query_params[:'localeCode'] = opts[:'locale_code'] if opts[:'locale_code']

  # header parameters
  header_params = {}

  # HTTP header 'Accept' (if needed)
  _header_accept = ['application/json']
  _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result

  # HTTP header 'Content-Type'
  _header_content_type = ['application/json']
  header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  
  auth_names = ['PureCloud Auth']
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'OrganizationPresenceEntityListing')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PresenceApi#get_presencedefinitions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_systempresences(opts = {}) click to toggle source

Get the list of SystemPresences

@param [Hash] opts the optional parameters @return [Array<SystemPresence>]

# File lib/purecloud/api/presence_api.rb, line 220
def get_systempresences(opts = {})
  data, status_code, headers = get_systempresences_with_http_info(opts)
  return data
end
get_systempresences_with_http_info(opts = {}) click to toggle source

Get the list of SystemPresences

@param [Hash] opts the optional parameters @return [Array<(Array<SystemPresence>, Fixnum, Hash)>] Array<SystemPresence> data, response status code and response headers

# File lib/purecloud/api/presence_api.rb, line 229
def get_systempresences_with_http_info(opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug "Calling API: PresenceApi#get_systempresences ..."
  end
  
  # resource path
  local_var_path = "/api/v2/systempresences".sub('{format}','json')

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}

  # HTTP header 'Accept' (if needed)
  _header_accept = ['application/json']
  _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result

  # HTTP header 'Content-Type'
  _header_content_type = ['application/json']
  header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  
  auth_names = ['PureCloud Auth']
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'Array<SystemPresence>')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PresenceApi#get_systempresences\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
get_user_id_presences_source_id(user_id, source_id, opts = {}) click to toggle source

Get a user's Presence

@param user_id user Id @param source_id Source @param [Hash] opts the optional parameters @return [UserPresence]

# File lib/purecloud/api/presence_api.rb, line 277
def get_user_id_presences_source_id(user_id, source_id, opts = {})
  data, status_code, headers = get_user_id_presences_source_id_with_http_info(user_id, source_id, opts)
  return data
end
get_user_id_presences_source_id_with_http_info(user_id, source_id, opts = {}) click to toggle source

Get a user&#39;s Presence

@param user_id user Id @param source_id Source @param [Hash] opts the optional parameters @return [Array<(UserPresence, Fixnum, Hash)>] UserPresence data, response status code and response headers

# File lib/purecloud/api/presence_api.rb, line 288
def get_user_id_presences_source_id_with_http_info(user_id, source_id, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug "Calling API: PresenceApi#get_user_id_presences_source_id ..."
  end
  
  # verify the required parameter 'user_id' is set
  fail "Missing the required parameter 'user_id' when calling get_user_id_presences_source_id" if user_id.nil?
  
  # verify the required parameter 'source_id' is set
  fail "Missing the required parameter 'source_id' when calling get_user_id_presences_source_id" if source_id.nil?
  
  # resource path
  local_var_path = "/api/v2/users/{userId}/presences/{sourceId}".sub('{format}','json').sub('{' + 'userId' + '}', user_id.to_s).sub('{' + 'sourceId' + '}', source_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}

  # HTTP header 'Accept' (if needed)
  _header_accept = ['application/json']
  _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result

  # HTTP header 'Content-Type'
  _header_content_type = ['application/json']
  header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)

  # form parameters
  form_params = {}

  # http body (model)
  post_body = nil
  
  auth_names = ['PureCloud Auth']
  data, status_code, headers = @api_client.call_api(:GET, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'UserPresence')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PresenceApi#get_user_id_presences_source_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
patch_user_id_presences_source_id(user_id, source_id, body, opts = {}) click to toggle source

Patch a user's Presence The presence object can be patched one of three ways. Option 1: Set the 'primary' property to true. This will set the 'source' defined in the path as the user's primary presence source. Option 2: Provide the presenceDefinition value. The 'id' is the only value required within the presenceDefinition. Option 3: Provide the message value. Option 1 can be combined with Option 2 and/or Option 3. @param user_id user Id @param source_id Source @param body User presence @param [Hash] opts the optional parameters @return [UserPresence]

# File lib/purecloud/api/presence_api.rb, line 343
def patch_user_id_presences_source_id(user_id, source_id, body, opts = {})
  data, status_code, headers = patch_user_id_presences_source_id_with_http_info(user_id, source_id, body, opts)
  return data
end
patch_user_id_presences_source_id_with_http_info(user_id, source_id, body, opts = {}) click to toggle source

Patch a user&#39;s Presence The presence object can be patched one of three ways. Option 1: Set the &#39;primary&#39; property to true. This will set the &#39;source&#39; defined in the path as the user&#39;s primary presence source. Option 2: Provide the presenceDefinition value. The &#39;id&#39; is the only value required within the presenceDefinition. Option 3: Provide the message value. Option 1 can be combined with Option 2 and/or Option 3. @param user_id user Id @param source_id Source @param body User presence @param [Hash] opts the optional parameters @return [Array<(UserPresence, Fixnum, Hash)>] UserPresence data, response status code and response headers

# File lib/purecloud/api/presence_api.rb, line 355
def patch_user_id_presences_source_id_with_http_info(user_id, source_id, body, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug "Calling API: PresenceApi#patch_user_id_presences_source_id ..."
  end
  
  # verify the required parameter 'user_id' is set
  fail "Missing the required parameter 'user_id' when calling patch_user_id_presences_source_id" if user_id.nil?
  
  # verify the required parameter 'source_id' is set
  fail "Missing the required parameter 'source_id' when calling patch_user_id_presences_source_id" if source_id.nil?
  
  # verify the required parameter 'body' is set
  fail "Missing the required parameter 'body' when calling patch_user_id_presences_source_id" if body.nil?
  
  # resource path
  local_var_path = "/api/v2/users/{userId}/presences/{sourceId}".sub('{format}','json').sub('{' + 'userId' + '}', user_id.to_s).sub('{' + 'sourceId' + '}', source_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}

  # HTTP header 'Accept' (if needed)
  _header_accept = ['application/json']
  _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result

  # HTTP header 'Content-Type'
  _header_content_type = ['application/json']
  header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(body)
  
  auth_names = ['PureCloud Auth']
  data, status_code, headers = @api_client.call_api(:PATCH, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'UserPresence')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PresenceApi#patch_user_id_presences_source_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
post_presencedefinitions(body, opts = {}) click to toggle source

Create a Presence Definition

@param body The Presence Definition to create @param [Hash] opts the optional parameters @return [OrganizationPresence]

# File lib/purecloud/api/presence_api.rb, line 411
def post_presencedefinitions(body, opts = {})
  data, status_code, headers = post_presencedefinitions_with_http_info(body, opts)
  return data
end
post_presencedefinitions_with_http_info(body, opts = {}) click to toggle source

Create a Presence Definition

@param body The Presence Definition to create @param [Hash] opts the optional parameters @return [Array<(OrganizationPresence, Fixnum, Hash)>] OrganizationPresence data, response status code and response headers

# File lib/purecloud/api/presence_api.rb, line 421
def post_presencedefinitions_with_http_info(body, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug "Calling API: PresenceApi#post_presencedefinitions ..."
  end
  
  # verify the required parameter 'body' is set
  fail "Missing the required parameter 'body' when calling post_presencedefinitions" if body.nil?
  
  # resource path
  local_var_path = "/api/v2/presencedefinitions".sub('{format}','json')

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}

  # HTTP header 'Accept' (if needed)
  _header_accept = ['application/json']
  _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result

  # HTTP header 'Content-Type'
  _header_content_type = ['application/json']
  header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(body)
  
  auth_names = ['PureCloud Auth']
  data, status_code, headers = @api_client.call_api(:POST, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'OrganizationPresence')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PresenceApi#post_presencedefinitions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end
put_presence_id(presence_id, body, opts = {}) click to toggle source

Update a Presence Definition

@param presence_id Organization Presence ID @param body The OrganizationPresence to update @param [Hash] opts the optional parameters @return [OrganizationPresence]

# File lib/purecloud/api/presence_api.rb, line 472
def put_presence_id(presence_id, body, opts = {})
  data, status_code, headers = put_presence_id_with_http_info(presence_id, body, opts)
  return data
end
put_presence_id_with_http_info(presence_id, body, opts = {}) click to toggle source

Update a Presence Definition

@param presence_id Organization Presence ID @param body The OrganizationPresence to update @param [Hash] opts the optional parameters @return [Array<(OrganizationPresence, Fixnum, Hash)>] OrganizationPresence data, response status code and response headers

# File lib/purecloud/api/presence_api.rb, line 483
def put_presence_id_with_http_info(presence_id, body, opts = {})
  if @api_client.config.debugging
    @api_client.config.logger.debug "Calling API: PresenceApi#put_presence_id ..."
  end
  
  # verify the required parameter 'presence_id' is set
  fail "Missing the required parameter 'presence_id' when calling put_presence_id" if presence_id.nil?
  
  # verify the required parameter 'body' is set
  fail "Missing the required parameter 'body' when calling put_presence_id" if body.nil?
  
  # resource path
  local_var_path = "/api/v2/presencedefinitions/{presenceId}".sub('{format}','json').sub('{' + 'presenceId' + '}', presence_id.to_s)

  # query parameters
  query_params = {}

  # header parameters
  header_params = {}

  # HTTP header 'Accept' (if needed)
  _header_accept = ['application/json']
  _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result

  # HTTP header 'Content-Type'
  _header_content_type = ['application/json']
  header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)

  # form parameters
  form_params = {}

  # http body (model)
  post_body = @api_client.object_to_http_body(body)
  
  auth_names = ['PureCloud Auth']
  data, status_code, headers = @api_client.call_api(:PUT, local_var_path,
    :header_params => header_params,
    :query_params => query_params,
    :form_params => form_params,
    :body => post_body,
    :auth_names => auth_names,
    :return_type => 'OrganizationPresence')
  if @api_client.config.debugging
    @api_client.config.logger.debug "API called: PresenceApi#put_presence_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
  end
  return data, status_code, headers
end