lib/purecloud/models/participant.rb in purecloud-0.50.1 vs lib/purecloud/models/participant.rb in purecloud-0.51.1
- old
+ new
@@ -16,71 +16,100 @@
require 'date'
module PureCloud
class Participant
+ # A globally unique identifier for this conversation.
attr_accessor :id
- # Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
+ # The timestamp when this participant joined the conversation in the provider clock. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
attr_accessor :start_time
- # Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
+ # The timestamp when this participant disconnected from the conversation in the provider clock. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
attr_accessor :end_time
- # Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
+ # The timestamp when this participant was connected to the conversation in the provider clock. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
attr_accessor :connected_time
+ # A human readable name identifying the participant.
attr_accessor :name
+ # If this participant represents a user, then this will be an URI that can be used to fetch the user.
attr_accessor :user_uri
+ # If this participant represents a user, then this will be the globally unique identifier for the user.
attr_accessor :user_id
+ # If this participant represents an external contact, then this will be the globally unique identifier for the external contact.
attr_accessor :external_contact_id
+ # If this participant represents an external org, then this will be the globally unique identifier for the external org.
+ attr_accessor :external_organization_id
+
+ # If present, the queue id that the communication channel came in on.
attr_accessor :queue_id
+ # If present, group of users the participant represents.
attr_accessor :group_id
+ # If present, the queue name that the communication channel came in on.
attr_accessor :queue_name
+ # A well known string that specifies the purpose of this participant.
attr_accessor :purpose
+ # A well known string that specifies the type of this participant.
attr_accessor :participant_type
+ # If this participant is part of a consult transfer, then this will be the participant id of the participant being transferred.
attr_accessor :consult_participant_id
+ # The address for the this participant. For a phone call this will be the ANI.
attr_accessor :address
+ # The address for the this participant. For a phone call this will be the ANI.
attr_accessor :ani
+ # The address for the this participant. For a phone call this will be the ANI.
attr_accessor :dnis
+ # An ISO 639 language code specifying the locale for this participant
attr_accessor :locale
+ # True iff this participant is required to enter wrapup for this conversation.
attr_accessor :wrapup_required
+ # This field controls how the UI prompts the agent for a wrapup.
attr_accessor :wrapup_prompt
+ # Specifies how long a timed ACW session will last.
attr_accessor :wrapup_timeout_ms
+ # The UI sets this field when the agent chooses to skip entering a wrapup for this participant.
attr_accessor :wrapup_skipped
+ # Call wrap up or disposition data.
attr_accessor :wrapup
+ # If this participant is a monitor, then this will be the id of the participant that is being monitored.
attr_accessor :monitored_participant_id
+ # Additional participant attributes
attr_accessor :attributes
attr_accessor :calls
attr_accessor :callbacks
attr_accessor :chats
+ attr_accessor :cobrowsesessions
+
attr_accessor :emails
+ attr_accessor :screenshares
+
attr_accessor :social_expressions
attr_accessor :videos
attr_accessor :evaluations
@@ -103,10 +132,12 @@
:'user_id' => :'userId',
:'external_contact_id' => :'externalContactId',
+ :'external_organization_id' => :'externalOrganizationId',
+
:'queue_id' => :'queueId',
:'group_id' => :'groupId',
:'queue_name' => :'queueName',
@@ -143,12 +174,16 @@
:'callbacks' => :'callbacks',
:'chats' => :'chats',
+ :'cobrowsesessions' => :'cobrowsesessions',
+
:'emails' => :'emails',
+ :'screenshares' => :'screenshares',
+
:'social_expressions' => :'socialExpressions',
:'videos' => :'videos',
:'evaluations' => :'evaluations'
@@ -165,10 +200,11 @@
:'connected_time' => :'DateTime',
:'name' => :'String',
:'user_uri' => :'String',
:'user_id' => :'String',
:'external_contact_id' => :'String',
+ :'external_organization_id' => :'String',
:'queue_id' => :'String',
:'group_id' => :'String',
:'queue_name' => :'String',
:'purpose' => :'String',
:'participant_type' => :'String',
@@ -185,11 +221,13 @@
:'monitored_participant_id' => :'String',
:'attributes' => :'Hash<String, String>',
:'calls' => :'Array<Call>',
:'callbacks' => :'Array<Callback>',
:'chats' => :'Array<ConversationChat>',
+ :'cobrowsesessions' => :'Array<Cobrowsesession>',
:'emails' => :'Array<Email>',
+ :'screenshares' => :'Array<Screenshare>',
:'social_expressions' => :'Array<SocialExpression>',
:'videos' => :'Array<Video>',
:'evaluations' => :'Array<Evaluation>'
}
@@ -232,10 +270,14 @@
if attributes[:'externalContactId']
self.external_contact_id = attributes[:'externalContactId']
end
+ if attributes[:'externalOrganizationId']
+ self.external_organization_id = attributes[:'externalOrganizationId']
+ end
+
if attributes[:'queueId']
self.queue_id = attributes[:'queueId']
end
if attributes[:'groupId']
@@ -324,16 +366,28 @@
if (value = attributes[:'chats']).is_a?(Array)
self.chats = value
end
end
+ if attributes[:'cobrowsesessions']
+ if (value = attributes[:'cobrowsesessions']).is_a?(Array)
+ self.cobrowsesessions = value
+ end
+ end
+
if attributes[:'emails']
if (value = attributes[:'emails']).is_a?(Array)
self.emails = value
end
end
+ if attributes[:'screenshares']
+ if (value = attributes[:'screenshares']).is_a?(Array)
+ self.screenshares = value
+ end
+ end
+
if attributes[:'socialExpressions']
if (value = attributes[:'socialExpressions']).is_a?(Array)
self.social_expressions = value
end
end
@@ -371,10 +425,11 @@
connected_time == o.connected_time &&
name == o.name &&
user_uri == o.user_uri &&
user_id == o.user_id &&
external_contact_id == o.external_contact_id &&
+ external_organization_id == o.external_organization_id &&
queue_id == o.queue_id &&
group_id == o.group_id &&
queue_name == o.queue_name &&
purpose == o.purpose &&
participant_type == o.participant_type &&
@@ -391,11 +446,13 @@
monitored_participant_id == o.monitored_participant_id &&
attributes == o.attributes &&
calls == o.calls &&
callbacks == o.callbacks &&
chats == o.chats &&
+ cobrowsesessions == o.cobrowsesessions &&
emails == o.emails &&
+ screenshares == o.screenshares &&
social_expressions == o.social_expressions &&
videos == o.videos &&
evaluations == o.evaluations
end
@@ -404,10 +461,10 @@
self == o
end
# Calculate hash code according to all attributes.
def hash
- [id, start_time, end_time, connected_time, name, user_uri, user_id, external_contact_id, queue_id, group_id, queue_name, purpose, participant_type, consult_participant_id, address, ani, dnis, locale, wrapup_required, wrapup_prompt, wrapup_timeout_ms, wrapup_skipped, wrapup, monitored_participant_id, attributes, calls, callbacks, chats, emails, social_expressions, videos, evaluations].hash
+ [id, start_time, end_time, connected_time, name, user_uri, user_id, external_contact_id, external_organization_id, queue_id, group_id, queue_name, purpose, participant_type, consult_participant_id, address, ani, dnis, locale, wrapup_required, wrapup_prompt, wrapup_timeout_ms, wrapup_skipped, wrapup, monitored_participant_id, attributes, calls, callbacks, chats, cobrowsesessions, emails, screenshares, social_expressions, videos, evaluations].hash
end
# build the object from hash
def build_from_hash(attributes)
return nil unless attributes.is_a?(Hash)