Class: Files::ChatSession

Inherits:
Object
  • Object
show all
Defined in:
lib/files.com/models/chat_session.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}, options = {}) ⇒ ChatSession

Returns a new instance of ChatSession.



7
8
9
10
# File 'lib/files.com/models/chat_session.rb', line 7

def initialize(attributes = {}, options = {})
  @attributes = attributes || {}
  @options = options || {}
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



5
6
7
# File 'lib/files.com/models/chat_session.rb', line 5

def attributes
  @attributes
end

#optionsObject (readonly)

Returns the value of attribute options.



5
6
7
# File 'lib/files.com/models/chat_session.rb', line 5

def options
  @options
end

Class Method Details

.all(params = {}, options = {}) ⇒ Object



54
55
56
# File 'lib/files.com/models/chat_session.rb', line 54

def self.all(params = {}, options = {})
  list(params, options)
end

.find(id, params = {}, options = {}) ⇒ Object

Parameters:

id (required) - int64 - Chat Session ID.


60
61
62
63
64
65
66
67
68
# File 'lib/files.com/models/chat_session.rb', line 60

def self.find(id, params = {}, options = {})
  params ||= {}
  params[:id] = id
  raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer)
  raise MissingParameterError.new("Parameter missing: id") unless params[:id]

  response, options = Api.send_request("/chat_sessions/#{params[:id]}", :get, params, options)
  ChatSession.new(response.data, options)
end

.get(id, params = {}, options = {}) ⇒ Object



70
71
72
# File 'lib/files.com/models/chat_session.rb', line 70

def self.get(id, params = {}, options = {})
  find(id, params, options)
end

.list(params = {}, options = {}) ⇒ Object

Parameters:

cursor - string - Used for pagination.  When a list request has more records available, cursors are provided in the response headers `X-Files-Cursor-Next` and `X-Files-Cursor-Prev`.  Send one of those cursor value here to resume an existing list from the next available record.  Note: many of our SDKs have iterator methods that will automatically handle cursor-based pagination.
per_page - int64 - Number of records to show per page.  (Max: 10000, 1,000 or less is recommended).


45
46
47
48
49
50
51
52
# File 'lib/files.com/models/chat_session.rb', line 45

def self.list(params = {}, options = {})
  raise InvalidParameterError.new("Bad parameter: cursor must be an String") if params[:cursor] and !params[:cursor].is_a?(String)
  raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params[:per_page] and !params[:per_page].is_a?(Integer)

  List.new(ChatSession, params) do
    Api.send_request("/chat_sessions", :get, params, options)
  end
end

Instance Method Details

#created_atObject

date-time - Chat session creation date/time.



33
34
35
# File 'lib/files.com/models/chat_session.rb', line 33

def created_at
  @attributes[:created_at]
end

#idObject

int64 - Chat Session ID.



13
14
15
# File 'lib/files.com/models/chat_session.rb', line 13

def id
  @attributes[:id]
end

#last_active_atObject

date-time - Most recent chat activity date/time.



28
29
30
# File 'lib/files.com/models/chat_session.rb', line 28

def last_active_at
  @attributes[:last_active_at]
end

#messagesObject

array(object) - Visible conversation messages in this chat session. For performance reasons, this is not provided when listing chat sessions.



38
39
40
# File 'lib/files.com/models/chat_session.rb', line 38

def messages
  @attributes[:messages]
end

#user_idObject

int64 - User ID.



18
19
20
# File 'lib/files.com/models/chat_session.rb', line 18

def user_id
  @attributes[:user_id]
end

#workspace_idObject

int64 - Workspace ID. ‘0` means the default workspace.



23
24
25
# File 'lib/files.com/models/chat_session.rb', line 23

def workspace_id
  @attributes[:workspace_id]
end