purecloudplatformclientv2 27.1.0 → 28.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/AdditionalMessage.md +13 -0
  4. data/docs/AnalyticsParticipant.md +1 -0
  5. data/docs/ArchitectApi.md +40 -28
  6. data/docs/Attachment.md +5 -5
  7. data/docs/ConversationNotificationAttachment.md +18 -0
  8. data/docs/ConversationNotificationDraftAttachments.md +18 -0
  9. data/docs/ConversationNotificationEmail.md +1 -0
  10. data/docs/ConversationNotificationEmails.md +1 -0
  11. data/docs/ConversationsApi.md +964 -198
  12. data/docs/DataTable.md +17 -0
  13. data/docs/DataTableRowEntityListing.md +22 -0
  14. data/docs/DataTablesDomainEntityListing.md +22 -0
  15. data/docs/Document.md +1 -1
  16. data/docs/DomainEdgeSoftwareVersionDto.md +1 -1
  17. data/docs/DomainOrganizationRole.md +1 -1
  18. data/docs/DomainOrganizationRoleCreate.md +1 -1
  19. data/docs/DomainOrganizationRoleUpdate.md +1 -1
  20. data/docs/Email.md +1 -0
  21. data/docs/EmailConversationNotificationAttachment.md +18 -0
  22. data/docs/EmailConversationNotificationEmailMediaParticipant.md +1 -0
  23. data/docs/EmailConversationNotificationParticipants.md +1 -0
  24. data/docs/EmailMediaParticipant.md +1 -0
  25. data/docs/FaxDocument.md +1 -1
  26. data/docs/JsonNode.md +4 -4
  27. data/docs/MessageConversation.md +17 -0
  28. data/docs/MessageConversationEntityListing.md +22 -0
  29. data/docs/MessageData.md +25 -0
  30. data/docs/MessageMediaParticipant.md +44 -0
  31. data/docs/Question.md +1 -1
  32. data/docs/Recipient.md +20 -0
  33. data/docs/RecipientListing.md +22 -0
  34. data/docs/RoutingApi.md +632 -0
  35. data/docs/SMSAvailablePhoneNumberEntityListing.md +13 -0
  36. data/docs/SmsAddressProvision.md +21 -0
  37. data/docs/SmsAvailablePhoneNumber.md +22 -0
  38. data/docs/SmsPhoneNumber.md +25 -0
  39. data/docs/SmsPhoneNumberEntityListing.md +22 -0
  40. data/docs/SmsPhoneNumberProvision.md +18 -0
  41. data/docs/TextMessageListing.md +22 -0
  42. data/lib/purecloudplatformclientv2.rb +20 -0
  43. data/lib/purecloudplatformclientv2/api/architect_api.rb +108 -34
  44. data/lib/purecloudplatformclientv2/api/conversations_api.rb +1247 -317
  45. data/lib/purecloudplatformclientv2/api/routing_api.rb +829 -43
  46. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  47. data/lib/purecloudplatformclientv2/models/additional_message.rb +207 -0
  48. data/lib/purecloudplatformclientv2/models/aggregate_metric_data.rb +2 -2
  49. data/lib/purecloudplatformclientv2/models/analytics_participant.rb +41 -1
  50. data/lib/purecloudplatformclientv2/models/analytics_query_predicate.rb +4 -4
  51. data/lib/purecloudplatformclientv2/models/attachment.rb +5 -0
  52. data/lib/purecloudplatformclientv2/models/conversation_notification_attachment.rb +326 -0
  53. data/lib/purecloudplatformclientv2/models/conversation_notification_draft_attachments.rb +326 -0
  54. data/lib/purecloudplatformclientv2/models/conversation_notification_email.rb +28 -1
  55. data/lib/purecloudplatformclientv2/models/conversation_notification_emails.rb +28 -1
  56. data/lib/purecloudplatformclientv2/models/data_table.rb +306 -0
  57. data/lib/purecloudplatformclientv2/models/data_table_row_entity_listing.rb +428 -0
  58. data/lib/purecloudplatformclientv2/models/data_tables_domain_entity_listing.rb +428 -0
  59. data/lib/purecloudplatformclientv2/models/document.rb +12 -12
  60. data/lib/purecloudplatformclientv2/models/domain_edge_software_version_dto.rb +12 -12
  61. data/lib/purecloudplatformclientv2/models/domain_organization_role.rb +12 -12
  62. data/lib/purecloudplatformclientv2/models/domain_organization_role_create.rb +12 -12
  63. data/lib/purecloudplatformclientv2/models/domain_organization_role_update.rb +12 -12
  64. data/lib/purecloudplatformclientv2/models/email.rb +32 -4
  65. data/lib/purecloudplatformclientv2/models/email_conversation_notification_attachment.rb +326 -0
  66. data/lib/purecloudplatformclientv2/models/email_conversation_notification_email_media_participant.rb +31 -4
  67. data/lib/purecloudplatformclientv2/models/email_conversation_notification_participants.rb +31 -4
  68. data/lib/purecloudplatformclientv2/models/email_media_participant.rb +32 -4
  69. data/lib/purecloudplatformclientv2/models/fax_document.rb +12 -12
  70. data/lib/purecloudplatformclientv2/models/json_node.rb +72 -72
  71. data/lib/purecloudplatformclientv2/models/message_conversation.rb +309 -0
  72. data/lib/purecloudplatformclientv2/models/message_conversation_entity_listing.rb +428 -0
  73. data/lib/purecloudplatformclientv2/models/message_data.rb +572 -0
  74. data/lib/purecloudplatformclientv2/models/message_media_participant.rb +1068 -0
  75. data/lib/purecloudplatformclientv2/models/question.rb +13 -13
  76. data/lib/purecloudplatformclientv2/models/recipient.rb +383 -0
  77. data/lib/purecloudplatformclientv2/models/recipient_listing.rb +428 -0
  78. data/lib/purecloudplatformclientv2/models/sms_address_provision.rb +440 -0
  79. data/lib/purecloudplatformclientv2/models/sms_available_phone_number.rb +465 -0
  80. data/lib/purecloudplatformclientv2/models/sms_available_phone_number_entity_listing.rb +203 -0
  81. data/lib/purecloudplatformclientv2/models/sms_phone_number.rb +546 -0
  82. data/lib/purecloudplatformclientv2/models/sms_phone_number_entity_listing.rb +428 -0
  83. data/lib/purecloudplatformclientv2/models/sms_phone_number_provision.rb +360 -0
  84. data/lib/purecloudplatformclientv2/models/text_message_listing.rb +428 -0
  85. data/lib/purecloudplatformclientv2/version.rb +1 -1
  86. metadata +42 -2
@@ -76,7 +76,7 @@ module PureCloud
76
76
  http_method = http_method.to_sym.downcase
77
77
 
78
78
  header_params = @default_headers.merge(opts[:header_params] || {})
79
- header_params['purecloud-sdk'] = '27.1.0'
79
+ header_params['purecloud-sdk'] = '28.0.0'
80
80
  query_params = opts[:query_params] || {}
81
81
  form_params = opts[:form_params] || {}
82
82
 
@@ -0,0 +1,207 @@
1
+ =begin
2
+ PureCloud Platform API
3
+
4
+ With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
5
+
6
+ OpenAPI spec version: v2
7
+ Contact: DeveloperEvangelists@genesys.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: ININ
11
+ http://www.inin.com
12
+
13
+ Terms of Service: https://developer.mypurecloud.com/tos
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class AdditionalMessage
21
+ # The body of the text message.
22
+ attr_accessor :text_body
23
+
24
+ # Attribute mapping from ruby-style variable name to JSON key.
25
+ def self.attribute_map
26
+ {
27
+
28
+ :'text_body' => :'textBody'
29
+
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+
37
+ :'text_body' => :'String'
38
+
39
+ }
40
+ end
41
+
42
+ # Initializes the object
43
+ # @param [Hash] attributes Model attributes in the form of hash
44
+ def initialize(attributes = {})
45
+ return unless attributes.is_a?(Hash)
46
+
47
+ # convert string to symbol for hash key
48
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
49
+
50
+
51
+ if attributes.has_key?(:'textBody')
52
+
53
+
54
+ self.text_body = attributes[:'textBody']
55
+
56
+
57
+ end
58
+
59
+
60
+ end
61
+
62
+ # Show invalid properties with the reasons. Usually used together with valid?
63
+ # @return Array for valid properies with the reasons
64
+ def list_invalid_properties
65
+ invalid_properties = Array.new
66
+
67
+
68
+ return invalid_properties
69
+ end
70
+
71
+ # Check to see if the all the properties in the model are valid
72
+ # @return true if the model is valid
73
+ def valid?
74
+
75
+
76
+ if @text_body.nil?
77
+ return false
78
+ end
79
+
80
+
81
+
82
+
83
+
84
+ end
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+ # Checks equality by comparing each attribute.
93
+ # @param [Object] Object to be compared
94
+ def ==(o)
95
+ return true if self.equal?(o)
96
+ self.class == o.class &&
97
+ text_body == o.text_body
98
+ end
99
+
100
+ # @see the `==` method
101
+ # @param [Object] Object to be compared
102
+ def eql?(o)
103
+ self == o
104
+ end
105
+
106
+ # Calculates hash code according to all attributes.
107
+ # @return [Fixnum] Hash code
108
+ def hash
109
+ [text_body].hash
110
+ end
111
+
112
+ # build the object from hash
113
+ def build_from_hash(attributes)
114
+ return nil unless attributes.is_a?(Hash)
115
+ self.class.swagger_types.each_pair do |key, type|
116
+ if type =~ /^Array<(.*)>/i
117
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
118
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
119
+ else
120
+ #TODO show warning in debug mode
121
+ end
122
+ elsif !attributes[self.class.attribute_map[key]].nil?
123
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
124
+ else
125
+ # data not found in attributes(hash), not an issue as the data can be optional
126
+ end
127
+ end
128
+
129
+ self
130
+ end
131
+
132
+ def _deserialize(type, value)
133
+ case type.to_sym
134
+ when :DateTime
135
+ DateTime.parse(value)
136
+ when :Date
137
+ Date.parse(value)
138
+ when :String
139
+ value.to_s
140
+ when :Integer
141
+ value.to_i
142
+ when :Float
143
+ value.to_f
144
+ when :BOOLEAN
145
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
146
+ true
147
+ else
148
+ false
149
+ end
150
+ when :Object
151
+ # generic object (usually a Hash), return directly
152
+ value
153
+ when /\AArray<(?<inner_type>.+)>\z/
154
+ inner_type = Regexp.last_match[:inner_type]
155
+ value.map { |v| _deserialize(inner_type, v) }
156
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
157
+ k_type = Regexp.last_match[:k_type]
158
+ v_type = Regexp.last_match[:v_type]
159
+ {}.tap do |hash|
160
+ value.each do |k, v|
161
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
162
+ end
163
+ end
164
+ else # model
165
+ _model = Object.const_get("PureCloud").const_get(type).new
166
+ _model.build_from_hash(value)
167
+ end
168
+ end
169
+
170
+ def to_s
171
+ to_hash.to_s
172
+ end
173
+
174
+ # to_body is an alias to to_body (backward compatibility))
175
+ def to_body
176
+ to_hash
177
+ end
178
+
179
+ # return the object in the form of hash
180
+ def to_hash
181
+ hash = {}
182
+ self.class.attribute_map.each_pair do |attr, param|
183
+ value = self.send(attr)
184
+ next if value.nil?
185
+ hash[param] = _to_hash(value)
186
+ end
187
+ hash
188
+ end
189
+
190
+ # Method to output non-array value in the form of hash
191
+ # For object, use to_hash. Otherwise, just return the value
192
+ def _to_hash(value)
193
+ if value.is_a?(Array)
194
+ value.compact.map{ |v| _to_hash(v) }
195
+ elsif value.is_a?(Hash)
196
+ {}.tap do |hash|
197
+ value.each { |k, v| hash[k] = _to_hash(v) }
198
+ end
199
+ elsif value.respond_to? :to_hash
200
+ value.to_hash
201
+ else
202
+ value
203
+ end
204
+ end
205
+
206
+ end
207
+ end
@@ -103,7 +103,7 @@ module PureCloud
103
103
 
104
104
 
105
105
 
106
- allowed_values = ["tSegmentDuration", "tConversationDuration", "oTotalCriticalScore", "oTotalScore", "nEvaluations", "tAbandon", "tIvr", "tAnswered", "tFlowOut", "tAcd", "tTalk", "tHeld", "tTalkComplete", "tHeldComplete", "tAcw", "tHandle", "tWait", "tAgentRoutingStatus", "tOrganizationPresence", "tSystemPresence", "tUserResponseTime", "tAgentResponseTime", "tVoicemail", "nStateTransitionError", "nOffered", "nOverSla", "nTransferred", "tNotResponding", "nOutbound", "nOutboundAttempted", "nOutboundConnected", "nOutboundAbandoned", "nError", "oServiceTarget", "oServiceLevel", "tActive", "tInactive", "oActiveUsers", "oMemberUsers", "oActiveQueues", "oMemberQueues", "oInteracting", "oWaiting", "oOnQueueUsers", "oOffQueueUsers", "oUserPresences", "oUserRoutingStatuses"]
106
+ allowed_values = ["tSegmentDuration", "tConversationDuration", "oTotalCriticalScore", "oTotalScore", "nEvaluations", "tAbandon", "tIvr", "tAnswered", "tFlowOut", "tAcd", "tTalk", "tHeld", "tTalkComplete", "tHeldComplete", "tAcw", "tHandle", "tWait", "tAgentRoutingStatus", "tOrganizationPresence", "tSystemPresence", "tUserResponseTime", "tAgentResponseTime", "tVoicemail", "nStateTransitionError", "nOffered", "nOverSla", "nTransferred", "tAlert", "tNotResponding", "nOutbound", "nOutboundAttempted", "nOutboundConnected", "nOutboundAbandoned", "nError", "oServiceTarget", "oServiceLevel", "tActive", "tInactive", "oActiveUsers", "oMemberUsers", "oActiveQueues", "oMemberQueues", "oInteracting", "oWaiting", "oOnQueueUsers", "oOffQueueUsers", "oUserPresences", "oUserRoutingStatuses"]
107
107
  if @metric && !allowed_values.include?(@metric)
108
108
  return false
109
109
  end
@@ -125,7 +125,7 @@ module PureCloud
125
125
  # Custom attribute writer method checking allowed values (enum).
126
126
  # @param [Object] metric Object to be assigned
127
127
  def metric=(metric)
128
- allowed_values = ["tSegmentDuration", "tConversationDuration", "oTotalCriticalScore", "oTotalScore", "nEvaluations", "tAbandon", "tIvr", "tAnswered", "tFlowOut", "tAcd", "tTalk", "tHeld", "tTalkComplete", "tHeldComplete", "tAcw", "tHandle", "tWait", "tAgentRoutingStatus", "tOrganizationPresence", "tSystemPresence", "tUserResponseTime", "tAgentResponseTime", "tVoicemail", "nStateTransitionError", "nOffered", "nOverSla", "nTransferred", "tNotResponding", "nOutbound", "nOutboundAttempted", "nOutboundConnected", "nOutboundAbandoned", "nError", "oServiceTarget", "oServiceLevel", "tActive", "tInactive", "oActiveUsers", "oMemberUsers", "oActiveQueues", "oMemberQueues", "oInteracting", "oWaiting", "oOnQueueUsers", "oOffQueueUsers", "oUserPresences", "oUserRoutingStatuses"]
128
+ allowed_values = ["tSegmentDuration", "tConversationDuration", "oTotalCriticalScore", "oTotalScore", "nEvaluations", "tAbandon", "tIvr", "tAnswered", "tFlowOut", "tAcd", "tTalk", "tHeld", "tTalkComplete", "tHeldComplete", "tAcw", "tHandle", "tWait", "tAgentRoutingStatus", "tOrganizationPresence", "tSystemPresence", "tUserResponseTime", "tAgentResponseTime", "tVoicemail", "nStateTransitionError", "nOffered", "nOverSla", "nTransferred", "tAlert", "tNotResponding", "nOutbound", "nOutboundAttempted", "nOutboundConnected", "nOutboundAbandoned", "nError", "oServiceTarget", "oServiceLevel", "tActive", "tInactive", "oActiveUsers", "oMemberUsers", "oActiveQueues", "oMemberQueues", "oInteracting", "oWaiting", "oOnQueueUsers", "oOffQueueUsers", "oUserPresences", "oUserRoutingStatuses"]
129
129
  if metric && !allowed_values.include?(metric)
130
130
  fail ArgumentError, "invalid value for 'metric', must be one of #{allowed_values}."
131
131
  end
@@ -36,6 +36,9 @@ module PureCloud
36
36
  # External Organization Identifier
37
37
  attr_accessor :external_organization_id
38
38
 
39
+ # Reason for which participant flagged conversation
40
+ attr_accessor :flagged_reason
41
+
39
42
  # List of sessions associated to this participant
40
43
  attr_accessor :sessions
41
44
 
@@ -55,6 +58,8 @@ module PureCloud
55
58
 
56
59
  :'external_organization_id' => :'externalOrganizationId',
57
60
 
61
+ :'flagged_reason' => :'flaggedReason',
62
+
58
63
  :'sessions' => :'sessions'
59
64
 
60
65
  }
@@ -76,6 +81,8 @@ module PureCloud
76
81
 
77
82
  :'external_organization_id' => :'String',
78
83
 
84
+ :'flagged_reason' => :'String',
85
+
79
86
  :'sessions' => :'Array<AnalyticsSession>'
80
87
 
81
88
  }
@@ -144,6 +151,15 @@ module PureCloud
144
151
  end
145
152
 
146
153
 
154
+ if attributes.has_key?(:'flaggedReason')
155
+
156
+
157
+ self.flagged_reason = attributes[:'flaggedReason']
158
+
159
+
160
+ end
161
+
162
+
147
163
  if attributes.has_key?(:'sessions')
148
164
 
149
165
  if (value = attributes[:'sessions']).is_a?(Array)
@@ -201,6 +217,15 @@ module PureCloud
201
217
 
202
218
 
203
219
 
220
+ allowed_values = ["general"]
221
+ if @flagged_reason && !allowed_values.include?(@flagged_reason)
222
+ return false
223
+ end
224
+
225
+
226
+
227
+
228
+
204
229
 
205
230
 
206
231
  end
@@ -246,6 +271,20 @@ module PureCloud
246
271
 
247
272
 
248
273
 
274
+ # Custom attribute writer method checking allowed values (enum).
275
+ # @param [Object] flagged_reason Object to be assigned
276
+ def flagged_reason=(flagged_reason)
277
+ allowed_values = ["general"]
278
+ if flagged_reason && !allowed_values.include?(flagged_reason)
279
+ fail ArgumentError, "invalid value for 'flagged_reason', must be one of #{allowed_values}."
280
+ end
281
+ @flagged_reason = flagged_reason
282
+ end
283
+
284
+
285
+
286
+
287
+
249
288
 
250
289
 
251
290
 
@@ -261,6 +300,7 @@ module PureCloud
261
300
  purpose == o.purpose &&
262
301
  external_contact_id == o.external_contact_id &&
263
302
  external_organization_id == o.external_organization_id &&
303
+ flagged_reason == o.flagged_reason &&
264
304
  sessions == o.sessions
265
305
  end
266
306
 
@@ -273,7 +313,7 @@ module PureCloud
273
313
  # Calculates hash code according to all attributes.
274
314
  # @return [Fixnum] Hash code
275
315
  def hash
276
- [participant_id, participant_name, user_id, purpose, external_contact_id, external_organization_id, sessions].hash
316
+ [participant_id, participant_name, user_id, purpose, external_contact_id, external_organization_id, flagged_reason, sessions].hash
277
317
  end
278
318
 
279
319
  # build the object from hash
@@ -195,7 +195,7 @@ module PureCloud
195
195
 
196
196
 
197
197
 
198
- allowed_values = ["conversationId", "sessionId", "mediaType", "queueId", "userId", "participantId", "participantName", "direction", "wrapUpCode", "wrapUpNote", "interactionType", "requestedRoutingSkillId", "requestedLanguageId", "requestedRoutingUserIds", "purpose", "participantType", "segmentType", "disconnectType", "errorCode", "conversationEnd", "segmentEnd", "externalContactId", "externalOrganizationId", "convertedFrom", "convertedTo", "divisionId", "stationId", "edgeId", "dnis", "ani", "outboundCampaignId", "outboundContactId", "outboundContactListId", "monitoredParticipantId", "sourceSessionId", "destinationSessionId", "sourceConversationId", "destinationConversationId", "remoteNameDisplayable", "sipResponseCode", "q850ResponseCode", "conference", "groupId", "roomId", "addressFrom", "addressTo", "addressSelf", "addressOther", "subject", "messageType", "peerId", "scriptId", "evaluationId", "evaluatorId", "contextId", "formId", "formName", "eventTime", "systemPresence", "organizationPresenceId", "routingStatus"]
198
+ allowed_values = ["conversationId", "sessionId", "mediaType", "queueId", "userId", "participantId", "participantName", "direction", "wrapUpCode", "wrapUpNote", "interactionType", "requestedRoutingSkillId", "requestedLanguageId", "requestedRoutingUserIds", "purpose", "participantType", "segmentType", "disconnectType", "errorCode", "conversationEnd", "segmentEnd", "externalContactId", "externalOrganizationId", "convertedFrom", "convertedTo", "divisionId", "flaggedReason", "stationId", "edgeId", "dnis", "ani", "outboundCampaignId", "outboundContactId", "outboundContactListId", "monitoredParticipantId", "sourceSessionId", "destinationSessionId", "sourceConversationId", "destinationConversationId", "remoteNameDisplayable", "sipResponseCode", "q850ResponseCode", "conference", "groupId", "roomId", "addressFrom", "addressTo", "addressSelf", "addressOther", "subject", "messageType", "peerId", "scriptId", "evaluationId", "evaluatorId", "contextId", "formId", "formName", "eventTime", "systemPresence", "organizationPresenceId", "routingStatus"]
199
199
  if @dimension && !allowed_values.include?(@dimension)
200
200
  return false
201
201
  end
@@ -217,7 +217,7 @@ module PureCloud
217
217
 
218
218
 
219
219
 
220
- allowed_values = ["tSegmentDuration", "tConversationDuration", "oTotalCriticalScore", "oTotalScore", "nEvaluations", "tAbandon", "tIvr", "tAnswered", "tFlowOut", "tAcd", "tTalk", "tHeld", "tTalkComplete", "tHeldComplete", "tAcw", "tHandle", "tWait", "tAgentRoutingStatus", "tOrganizationPresence", "tSystemPresence", "tUserResponseTime", "tAgentResponseTime", "tVoicemail", "nStateTransitionError", "nOffered", "nOverSla", "nTransferred", "tNotResponding", "nOutbound", "nOutboundAttempted", "nOutboundConnected", "nOutboundAbandoned", "nError", "oServiceTarget", "oServiceLevel", "tActive", "tInactive", "oActiveUsers", "oMemberUsers", "oActiveQueues", "oMemberQueues", "oInteracting", "oWaiting", "oOnQueueUsers", "oOffQueueUsers", "oUserPresences", "oUserRoutingStatuses"]
220
+ allowed_values = ["tSegmentDuration", "tConversationDuration", "oTotalCriticalScore", "oTotalScore", "nEvaluations", "tAbandon", "tIvr", "tAnswered", "tFlowOut", "tAcd", "tTalk", "tHeld", "tTalkComplete", "tHeldComplete", "tAcw", "tHandle", "tWait", "tAgentRoutingStatus", "tOrganizationPresence", "tSystemPresence", "tUserResponseTime", "tAgentResponseTime", "tVoicemail", "nStateTransitionError", "nOffered", "nOverSla", "nTransferred", "tAlert", "tNotResponding", "nOutbound", "nOutboundAttempted", "nOutboundConnected", "nOutboundAbandoned", "nError", "oServiceTarget", "oServiceLevel", "tActive", "tInactive", "oActiveUsers", "oMemberUsers", "oActiveQueues", "oMemberQueues", "oInteracting", "oWaiting", "oOnQueueUsers", "oOffQueueUsers", "oUserPresences", "oUserRoutingStatuses"]
221
221
  if @metric && !allowed_values.include?(@metric)
222
222
  return false
223
223
  end
@@ -262,7 +262,7 @@ module PureCloud
262
262
  # Custom attribute writer method checking allowed values (enum).
263
263
  # @param [Object] dimension Object to be assigned
264
264
  def dimension=(dimension)
265
- allowed_values = ["conversationId", "sessionId", "mediaType", "queueId", "userId", "participantId", "participantName", "direction", "wrapUpCode", "wrapUpNote", "interactionType", "requestedRoutingSkillId", "requestedLanguageId", "requestedRoutingUserIds", "purpose", "participantType", "segmentType", "disconnectType", "errorCode", "conversationEnd", "segmentEnd", "externalContactId", "externalOrganizationId", "convertedFrom", "convertedTo", "divisionId", "stationId", "edgeId", "dnis", "ani", "outboundCampaignId", "outboundContactId", "outboundContactListId", "monitoredParticipantId", "sourceSessionId", "destinationSessionId", "sourceConversationId", "destinationConversationId", "remoteNameDisplayable", "sipResponseCode", "q850ResponseCode", "conference", "groupId", "roomId", "addressFrom", "addressTo", "addressSelf", "addressOther", "subject", "messageType", "peerId", "scriptId", "evaluationId", "evaluatorId", "contextId", "formId", "formName", "eventTime", "systemPresence", "organizationPresenceId", "routingStatus"]
265
+ allowed_values = ["conversationId", "sessionId", "mediaType", "queueId", "userId", "participantId", "participantName", "direction", "wrapUpCode", "wrapUpNote", "interactionType", "requestedRoutingSkillId", "requestedLanguageId", "requestedRoutingUserIds", "purpose", "participantType", "segmentType", "disconnectType", "errorCode", "conversationEnd", "segmentEnd", "externalContactId", "externalOrganizationId", "convertedFrom", "convertedTo", "divisionId", "flaggedReason", "stationId", "edgeId", "dnis", "ani", "outboundCampaignId", "outboundContactId", "outboundContactListId", "monitoredParticipantId", "sourceSessionId", "destinationSessionId", "sourceConversationId", "destinationConversationId", "remoteNameDisplayable", "sipResponseCode", "q850ResponseCode", "conference", "groupId", "roomId", "addressFrom", "addressTo", "addressSelf", "addressOther", "subject", "messageType", "peerId", "scriptId", "evaluationId", "evaluatorId", "contextId", "formId", "formName", "eventTime", "systemPresence", "organizationPresenceId", "routingStatus"]
266
266
  if dimension && !allowed_values.include?(dimension)
267
267
  fail ArgumentError, "invalid value for 'dimension', must be one of #{allowed_values}."
268
268
  end
@@ -295,7 +295,7 @@ module PureCloud
295
295
  # Custom attribute writer method checking allowed values (enum).
296
296
  # @param [Object] metric Object to be assigned
297
297
  def metric=(metric)
298
- allowed_values = ["tSegmentDuration", "tConversationDuration", "oTotalCriticalScore", "oTotalScore", "nEvaluations", "tAbandon", "tIvr", "tAnswered", "tFlowOut", "tAcd", "tTalk", "tHeld", "tTalkComplete", "tHeldComplete", "tAcw", "tHandle", "tWait", "tAgentRoutingStatus", "tOrganizationPresence", "tSystemPresence", "tUserResponseTime", "tAgentResponseTime", "tVoicemail", "nStateTransitionError", "nOffered", "nOverSla", "nTransferred", "tNotResponding", "nOutbound", "nOutboundAttempted", "nOutboundConnected", "nOutboundAbandoned", "nError", "oServiceTarget", "oServiceLevel", "tActive", "tInactive", "oActiveUsers", "oMemberUsers", "oActiveQueues", "oMemberQueues", "oInteracting", "oWaiting", "oOnQueueUsers", "oOffQueueUsers", "oUserPresences", "oUserRoutingStatuses"]
298
+ allowed_values = ["tSegmentDuration", "tConversationDuration", "oTotalCriticalScore", "oTotalScore", "nEvaluations", "tAbandon", "tIvr", "tAnswered", "tFlowOut", "tAcd", "tTalk", "tHeld", "tTalkComplete", "tHeldComplete", "tAcw", "tHandle", "tWait", "tAgentRoutingStatus", "tOrganizationPresence", "tSystemPresence", "tUserResponseTime", "tAgentResponseTime", "tVoicemail", "nStateTransitionError", "nOffered", "nOverSla", "nTransferred", "tAlert", "tNotResponding", "nOutbound", "nOutboundAttempted", "nOutboundConnected", "nOutboundAbandoned", "nError", "oServiceTarget", "oServiceLevel", "tActive", "tInactive", "oActiveUsers", "oMemberUsers", "oActiveQueues", "oMemberQueues", "oInteracting", "oWaiting", "oOnQueueUsers", "oOffQueueUsers", "oUserPresences", "oUserRoutingStatuses"]
299
299
  if metric && !allowed_values.include?(metric)
300
300
  fail ArgumentError, "invalid value for 'metric', must be one of #{allowed_values}."
301
301
  end
@@ -18,14 +18,19 @@ require 'date'
18
18
 
19
19
  module PureCloud
20
20
  class Attachment
21
+ # The unique identifier for the attachment.
21
22
  attr_accessor :attachment_id
22
23
 
24
+ # The name of the attachment.
23
25
  attr_accessor :name
24
26
 
27
+ # The content uri of the attachment. If set, this is commonly a public api download location.
25
28
  attr_accessor :content_uri
26
29
 
30
+ # The type of file the attachment is.
27
31
  attr_accessor :content_type
28
32
 
33
+ # The length of the attachment file.
29
34
  attr_accessor :content_length
30
35
 
31
36
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -0,0 +1,326 @@
1
+ =begin
2
+ PureCloud Platform API
3
+
4
+ With the PureCloud Platform API, you can control all aspects of your PureCloud environment. With the APIs you can access the system configuration, manage conversations and more.
5
+
6
+ OpenAPI spec version: v2
7
+ Contact: DeveloperEvangelists@genesys.com
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+
10
+ License: ININ
11
+ http://www.inin.com
12
+
13
+ Terms of Service: https://developer.mypurecloud.com/tos
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class ConversationNotificationAttachment
21
+ attr_accessor :attachment_id
22
+
23
+ attr_accessor :name
24
+
25
+ attr_accessor :content_uri
26
+
27
+ attr_accessor :content_type
28
+
29
+ attr_accessor :content_length
30
+
31
+ attr_accessor :additional_properties
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ def self.attribute_map
35
+ {
36
+
37
+ :'attachment_id' => :'attachmentId',
38
+
39
+ :'name' => :'name',
40
+
41
+ :'content_uri' => :'contentUri',
42
+
43
+ :'content_type' => :'contentType',
44
+
45
+ :'content_length' => :'contentLength',
46
+
47
+ :'additional_properties' => :'additionalProperties'
48
+
49
+ }
50
+ end
51
+
52
+ # Attribute type mapping.
53
+ def self.swagger_types
54
+ {
55
+
56
+ :'attachment_id' => :'String',
57
+
58
+ :'name' => :'String',
59
+
60
+ :'content_uri' => :'String',
61
+
62
+ :'content_type' => :'String',
63
+
64
+ :'content_length' => :'Integer',
65
+
66
+ :'additional_properties' => :'Object'
67
+
68
+ }
69
+ end
70
+
71
+ # Initializes the object
72
+ # @param [Hash] attributes Model attributes in the form of hash
73
+ def initialize(attributes = {})
74
+ return unless attributes.is_a?(Hash)
75
+
76
+ # convert string to symbol for hash key
77
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
78
+
79
+
80
+ if attributes.has_key?(:'attachmentId')
81
+
82
+
83
+ self.attachment_id = attributes[:'attachmentId']
84
+
85
+
86
+ end
87
+
88
+
89
+ if attributes.has_key?(:'name')
90
+
91
+
92
+ self.name = attributes[:'name']
93
+
94
+
95
+ end
96
+
97
+
98
+ if attributes.has_key?(:'contentUri')
99
+
100
+
101
+ self.content_uri = attributes[:'contentUri']
102
+
103
+
104
+ end
105
+
106
+
107
+ if attributes.has_key?(:'contentType')
108
+
109
+
110
+ self.content_type = attributes[:'contentType']
111
+
112
+
113
+ end
114
+
115
+
116
+ if attributes.has_key?(:'contentLength')
117
+
118
+
119
+ self.content_length = attributes[:'contentLength']
120
+
121
+
122
+ end
123
+
124
+
125
+ if attributes.has_key?(:'additionalProperties')
126
+
127
+
128
+ self.additional_properties = attributes[:'additionalProperties']
129
+
130
+
131
+ end
132
+
133
+
134
+ end
135
+
136
+ # Show invalid properties with the reasons. Usually used together with valid?
137
+ # @return Array for valid properies with the reasons
138
+ def list_invalid_properties
139
+ invalid_properties = Array.new
140
+
141
+
142
+ return invalid_properties
143
+ end
144
+
145
+ # Check to see if the all the properties in the model are valid
146
+ # @return true if the model is valid
147
+ def valid?
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+ end
174
+
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+
205
+
206
+ # Checks equality by comparing each attribute.
207
+ # @param [Object] Object to be compared
208
+ def ==(o)
209
+ return true if self.equal?(o)
210
+ self.class == o.class &&
211
+ attachment_id == o.attachment_id &&
212
+ name == o.name &&
213
+ content_uri == o.content_uri &&
214
+ content_type == o.content_type &&
215
+ content_length == o.content_length &&
216
+ additional_properties == o.additional_properties
217
+ end
218
+
219
+ # @see the `==` method
220
+ # @param [Object] Object to be compared
221
+ def eql?(o)
222
+ self == o
223
+ end
224
+
225
+ # Calculates hash code according to all attributes.
226
+ # @return [Fixnum] Hash code
227
+ def hash
228
+ [attachment_id, name, content_uri, content_type, content_length, additional_properties].hash
229
+ end
230
+
231
+ # build the object from hash
232
+ def build_from_hash(attributes)
233
+ return nil unless attributes.is_a?(Hash)
234
+ self.class.swagger_types.each_pair do |key, type|
235
+ if type =~ /^Array<(.*)>/i
236
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
237
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
238
+ else
239
+ #TODO show warning in debug mode
240
+ end
241
+ elsif !attributes[self.class.attribute_map[key]].nil?
242
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
243
+ else
244
+ # data not found in attributes(hash), not an issue as the data can be optional
245
+ end
246
+ end
247
+
248
+ self
249
+ end
250
+
251
+ def _deserialize(type, value)
252
+ case type.to_sym
253
+ when :DateTime
254
+ DateTime.parse(value)
255
+ when :Date
256
+ Date.parse(value)
257
+ when :String
258
+ value.to_s
259
+ when :Integer
260
+ value.to_i
261
+ when :Float
262
+ value.to_f
263
+ when :BOOLEAN
264
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
265
+ true
266
+ else
267
+ false
268
+ end
269
+ when :Object
270
+ # generic object (usually a Hash), return directly
271
+ value
272
+ when /\AArray<(?<inner_type>.+)>\z/
273
+ inner_type = Regexp.last_match[:inner_type]
274
+ value.map { |v| _deserialize(inner_type, v) }
275
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
276
+ k_type = Regexp.last_match[:k_type]
277
+ v_type = Regexp.last_match[:v_type]
278
+ {}.tap do |hash|
279
+ value.each do |k, v|
280
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
281
+ end
282
+ end
283
+ else # model
284
+ _model = Object.const_get("PureCloud").const_get(type).new
285
+ _model.build_from_hash(value)
286
+ end
287
+ end
288
+
289
+ def to_s
290
+ to_hash.to_s
291
+ end
292
+
293
+ # to_body is an alias to to_body (backward compatibility))
294
+ def to_body
295
+ to_hash
296
+ end
297
+
298
+ # return the object in the form of hash
299
+ def to_hash
300
+ hash = {}
301
+ self.class.attribute_map.each_pair do |attr, param|
302
+ value = self.send(attr)
303
+ next if value.nil?
304
+ hash[param] = _to_hash(value)
305
+ end
306
+ hash
307
+ end
308
+
309
+ # Method to output non-array value in the form of hash
310
+ # For object, use to_hash. Otherwise, just return the value
311
+ def _to_hash(value)
312
+ if value.is_a?(Array)
313
+ value.compact.map{ |v| _to_hash(v) }
314
+ elsif value.is_a?(Hash)
315
+ {}.tap do |hash|
316
+ value.each { |k, v| hash[k] = _to_hash(v) }
317
+ end
318
+ elsif value.respond_to? :to_hash
319
+ value.to_hash
320
+ else
321
+ value
322
+ end
323
+ end
324
+
325
+ end
326
+ end