purecloudplatformclientv2 92.0.0 → 93.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/AnalyticsEvaluation.md +1 -1
  4. data/docs/AnalyticsSession.md +4 -0
  5. data/docs/ArchitectApi.md +51 -49
  6. data/docs/CoachingApi.md +8 -7
  7. data/docs/CommonCampaign.md +17 -0
  8. data/docs/CommonCampaignDivisionView.md +17 -0
  9. data/docs/CommonCampaignDivisionViewEntityListing.md +22 -0
  10. data/docs/CommonCampaignEntityListing.md +22 -0
  11. data/docs/ConversationAssociation.md +1 -1
  12. data/docs/ConversationEventTopicMessage.md +1 -0
  13. data/docs/ConversationsApi.md +4 -4
  14. data/docs/ExternalContactsApi.md +4 -4
  15. data/docs/HistoricalAdherenceActuals.md +15 -0
  16. data/docs/HistoricalAdherenceDayMetrics.md +23 -0
  17. data/docs/HistoricalAdherenceExceptionInfo.md +21 -0
  18. data/docs/HistoricalAdherenceQueryResult.md +21 -0
  19. data/docs/KnowledgeSearchRequest.md +3 -3
  20. data/docs/MessagingCampaign.md +28 -0
  21. data/docs/MessagingCampaignDivisionView.md +16 -0
  22. data/docs/MessagingCampaignDivisionViewEntityListing.md +22 -0
  23. data/docs/MessagingCampaignEntityListing.md +22 -0
  24. data/docs/ObservationValue.md +3 -1
  25. data/docs/OutboundApi.md +881 -76
  26. data/docs/QueueConversationEventTopicMessage.md +1 -0
  27. data/docs/QueueConversationSocialExpressionEventTopicMessage.md +1 -0
  28. data/docs/QueueConversationVideoEventTopicMessage.md +1 -0
  29. data/docs/ReportingExportJobRequest.md +2 -0
  30. data/docs/ReportingExportJobResponse.md +3 -0
  31. data/docs/SCIMApi.md +96 -108
  32. data/docs/ScimConfigResourceType.md +1 -1
  33. data/docs/ScimUserExtensions.md +2 -2
  34. data/docs/ScimUserRole.md +1 -1
  35. data/docs/ScimUserRoutingLanguage.md +2 -2
  36. data/docs/ScimUserRoutingSkill.md +2 -2
  37. data/docs/ScimV2CreateUser.md +3 -3
  38. data/docs/ScimV2Group.md +1 -1
  39. data/docs/ScimV2SchemaAttribute.md +11 -11
  40. data/docs/ScimV2SchemaDefinition.md +4 -4
  41. data/docs/ScimV2SchemaListResponse.md +1 -1
  42. data/docs/ScimV2User.md +4 -4
  43. data/docs/SmsConfig.md +15 -0
  44. data/docs/SmsPhoneNumberRef.md +14 -0
  45. data/docs/UserRoutingLanguage.md +3 -3
  46. data/docs/UserRoutingLanguagePost.md +1 -1
  47. data/docs/UserRoutingSkill.md +1 -1
  48. data/docs/VoicemailUserPolicy.md +1 -0
  49. data/docs/WfmBusinessUnitReference.md +14 -0
  50. data/docs/WfmHistoricalAdherenceResponse.md +1 -0
  51. data/docs/WfmHistoricalAdherenceResultWrapper.md +15 -0
  52. data/docs/WfmHistoricalDataUploadRequestStatusTopicDateTime.md +16 -0
  53. data/docs/WfmHistoricalDataUploadRequestStatusTopicHistoricalDataUploadRequestUpdate.md +20 -0
  54. data/docs/WfmScheduleReference.md +16 -0
  55. data/lib/purecloudplatformclientv2.rb +19 -0
  56. data/lib/purecloudplatformclientv2/api/architect_api.rb +15 -6
  57. data/lib/purecloudplatformclientv2/api/coaching_api.rb +10 -9
  58. data/lib/purecloudplatformclientv2/api/conversations_api.rb +4 -4
  59. data/lib/purecloudplatformclientv2/api/external_contacts_api.rb +4 -4
  60. data/lib/purecloudplatformclientv2/api/outbound_api.rb +1215 -155
  61. data/lib/purecloudplatformclientv2/api/scim_api.rb +88 -88
  62. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  63. data/lib/purecloudplatformclientv2/models/analytics_evaluation.rb +13 -13
  64. data/lib/purecloudplatformclientv2/models/analytics_session.rb +124 -4
  65. data/lib/purecloudplatformclientv2/models/common_campaign.rb +320 -0
  66. data/lib/purecloudplatformclientv2/models/common_campaign_division_view.rb +320 -0
  67. data/lib/purecloudplatformclientv2/models/common_campaign_division_view_entity_listing.rb +428 -0
  68. data/lib/purecloudplatformclientv2/models/common_campaign_entity_listing.rb +428 -0
  69. data/lib/purecloudplatformclientv2/models/conversation_aggregate_query_predicate.rb +2 -2
  70. data/lib/purecloudplatformclientv2/models/conversation_association.rb +1 -1
  71. data/lib/purecloudplatformclientv2/models/conversation_event_topic_message.rb +26 -1
  72. data/lib/purecloudplatformclientv2/models/dependency.rb +2 -2
  73. data/lib/purecloudplatformclientv2/models/dependency_object.rb +2 -2
  74. data/lib/purecloudplatformclientv2/models/event_message.rb +2 -2
  75. data/lib/purecloudplatformclientv2/models/flow_aggregate_query_predicate.rb +2 -2
  76. data/lib/purecloudplatformclientv2/models/historical_adherence_actuals.rb +268 -0
  77. data/lib/purecloudplatformclientv2/models/historical_adherence_day_metrics.rb +462 -0
  78. data/lib/purecloudplatformclientv2/models/historical_adherence_exception_info.rb +466 -0
  79. data/lib/purecloudplatformclientv2/models/historical_adherence_query_result.rb +430 -0
  80. data/lib/purecloudplatformclientv2/models/knowledge_search_request.rb +0 -15
  81. data/lib/purecloudplatformclientv2/models/messaging_campaign.rb +621 -0
  82. data/lib/purecloudplatformclientv2/models/messaging_campaign_division_view.rb +279 -0
  83. data/lib/purecloudplatformclientv2/models/messaging_campaign_division_view_entity_listing.rb +428 -0
  84. data/lib/purecloudplatformclientv2/models/messaging_campaign_entity_listing.rb +428 -0
  85. data/lib/purecloudplatformclientv2/models/observation_value.rb +70 -2
  86. data/lib/purecloudplatformclientv2/models/queue_conversation_event_topic_message.rb +26 -1
  87. data/lib/purecloudplatformclientv2/models/queue_conversation_social_expression_event_topic_message.rb +26 -1
  88. data/lib/purecloudplatformclientv2/models/queue_conversation_video_event_topic_message.rb +26 -1
  89. data/lib/purecloudplatformclientv2/models/reporting_export_job_request.rb +53 -1
  90. data/lib/purecloudplatformclientv2/models/reporting_export_job_response.rb +78 -1
  91. data/lib/purecloudplatformclientv2/models/scim_config_resource_type.rb +1 -1
  92. data/lib/purecloudplatformclientv2/models/scim_user_extensions.rb +3 -3
  93. data/lib/purecloudplatformclientv2/models/scim_user_role.rb +1 -1
  94. data/lib/purecloudplatformclientv2/models/scim_user_routing_language.rb +3 -3
  95. data/lib/purecloudplatformclientv2/models/scim_user_routing_skill.rb +3 -3
  96. data/lib/purecloudplatformclientv2/models/scim_v2_create_user.rb +3 -2
  97. data/lib/purecloudplatformclientv2/models/scim_v2_enterprise_user.rb +1 -1
  98. data/lib/purecloudplatformclientv2/models/scim_v2_group.rb +1 -1
  99. data/lib/purecloudplatformclientv2/models/scim_v2_schema_attribute.rb +12 -12
  100. data/lib/purecloudplatformclientv2/models/scim_v2_schema_definition.rb +5 -5
  101. data/lib/purecloudplatformclientv2/models/scim_v2_schema_list_response.rb +2 -2
  102. data/lib/purecloudplatformclientv2/models/scim_v2_user.rb +4 -3
  103. data/lib/purecloudplatformclientv2/models/segment_detail_query_predicate.rb +2 -2
  104. data/lib/purecloudplatformclientv2/models/sms_config.rb +269 -0
  105. data/lib/purecloudplatformclientv2/models/sms_phone_number_ref.rb +232 -0
  106. data/lib/purecloudplatformclientv2/models/user_routing_language.rb +4 -4
  107. data/lib/purecloudplatformclientv2/models/user_routing_language_post.rb +1 -1
  108. data/lib/purecloudplatformclientv2/models/user_routing_skill.rb +1 -1
  109. data/lib/purecloudplatformclientv2/models/voicemail_user_policy.rb +30 -4
  110. data/lib/purecloudplatformclientv2/models/wem_coaching_appointment_topic_coaching_appointment_notification.rb +4 -4
  111. data/lib/purecloudplatformclientv2/models/wfm_business_unit_reference.rb +228 -0
  112. data/lib/purecloudplatformclientv2/models/wfm_historical_adherence_response.rb +27 -1
  113. data/lib/purecloudplatformclientv2/models/wfm_historical_adherence_result_wrapper.rb +258 -0
  114. data/lib/purecloudplatformclientv2/models/wfm_historical_data_upload_request_status_topic_date_time.rb +276 -0
  115. data/lib/purecloudplatformclientv2/models/wfm_historical_data_upload_request_status_topic_historical_data_upload_request_update.rb +390 -0
  116. data/lib/purecloudplatformclientv2/models/wfm_schedule_reference.rb +280 -0
  117. data/lib/purecloudplatformclientv2/version.rb +1 -1
  118. metadata +41 -3
@@ -0,0 +1,466 @@
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: UNLICENSED
11
+ https://help.mypurecloud.com/articles/terms-and-conditions/
12
+
13
+ Terms of Service: https://help.mypurecloud.com/articles/terms-and-conditions/
14
+
15
+ =end
16
+
17
+ require 'date'
18
+
19
+ module PureCloud
20
+ class HistoricalAdherenceExceptionInfo
21
+ # Exception start offset in seconds relative to query start time
22
+ attr_accessor :start_offset_seconds
23
+
24
+ # Exception end offset in seconds relative to query start time
25
+ attr_accessor :end_offset_seconds
26
+
27
+ # The ID of the scheduled activity for this user
28
+ attr_accessor :scheduled_activity_code_id
29
+
30
+ # Activity for which the user is scheduled
31
+ attr_accessor :scheduled_activity_category
32
+
33
+ # Activity for which the user is actually engaged
34
+ attr_accessor :actual_activity_category
35
+
36
+ # Actual underlying system presence value
37
+ attr_accessor :system_presence
38
+
39
+ # Actual underlying routing status, used to determine whether a user is actually in adherence when OnQueue
40
+ attr_accessor :routing_status
41
+
42
+ # The impact of the current adherence state for this user
43
+ attr_accessor :impact
44
+
45
+ # The lookup ID used to retrieve secondary status from map of lookup ID to corresponding secondary presence ID
46
+ attr_accessor :secondary_presence_lookup_id
47
+
48
+ # Attribute mapping from ruby-style variable name to JSON key.
49
+ def self.attribute_map
50
+ {
51
+
52
+ :'start_offset_seconds' => :'startOffsetSeconds',
53
+
54
+ :'end_offset_seconds' => :'endOffsetSeconds',
55
+
56
+ :'scheduled_activity_code_id' => :'scheduledActivityCodeId',
57
+
58
+ :'scheduled_activity_category' => :'scheduledActivityCategory',
59
+
60
+ :'actual_activity_category' => :'actualActivityCategory',
61
+
62
+ :'system_presence' => :'systemPresence',
63
+
64
+ :'routing_status' => :'routingStatus',
65
+
66
+ :'impact' => :'impact',
67
+
68
+ :'secondary_presence_lookup_id' => :'secondaryPresenceLookupId'
69
+
70
+ }
71
+ end
72
+
73
+ # Attribute type mapping.
74
+ def self.swagger_types
75
+ {
76
+
77
+ :'start_offset_seconds' => :'Integer',
78
+
79
+ :'end_offset_seconds' => :'Integer',
80
+
81
+ :'scheduled_activity_code_id' => :'String',
82
+
83
+ :'scheduled_activity_category' => :'String',
84
+
85
+ :'actual_activity_category' => :'String',
86
+
87
+ :'system_presence' => :'String',
88
+
89
+ :'routing_status' => :'RoutingStatus',
90
+
91
+ :'impact' => :'String',
92
+
93
+ :'secondary_presence_lookup_id' => :'String'
94
+
95
+ }
96
+ end
97
+
98
+ # Initializes the object
99
+ # @param [Hash] attributes Model attributes in the form of hash
100
+ def initialize(attributes = {})
101
+ return unless attributes.is_a?(Hash)
102
+
103
+ # convert string to symbol for hash key
104
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
105
+
106
+
107
+ if attributes.has_key?(:'startOffsetSeconds')
108
+
109
+
110
+ self.start_offset_seconds = attributes[:'startOffsetSeconds']
111
+
112
+
113
+ end
114
+
115
+
116
+ if attributes.has_key?(:'endOffsetSeconds')
117
+
118
+
119
+ self.end_offset_seconds = attributes[:'endOffsetSeconds']
120
+
121
+
122
+ end
123
+
124
+
125
+ if attributes.has_key?(:'scheduledActivityCodeId')
126
+
127
+
128
+ self.scheduled_activity_code_id = attributes[:'scheduledActivityCodeId']
129
+
130
+
131
+ end
132
+
133
+
134
+ if attributes.has_key?(:'scheduledActivityCategory')
135
+
136
+
137
+ self.scheduled_activity_category = attributes[:'scheduledActivityCategory']
138
+
139
+
140
+ end
141
+
142
+
143
+ if attributes.has_key?(:'actualActivityCategory')
144
+
145
+
146
+ self.actual_activity_category = attributes[:'actualActivityCategory']
147
+
148
+
149
+ end
150
+
151
+
152
+ if attributes.has_key?(:'systemPresence')
153
+
154
+
155
+ self.system_presence = attributes[:'systemPresence']
156
+
157
+
158
+ end
159
+
160
+
161
+ if attributes.has_key?(:'routingStatus')
162
+
163
+
164
+ self.routing_status = attributes[:'routingStatus']
165
+
166
+
167
+ end
168
+
169
+
170
+ if attributes.has_key?(:'impact')
171
+
172
+
173
+ self.impact = attributes[:'impact']
174
+
175
+
176
+ end
177
+
178
+
179
+ if attributes.has_key?(:'secondaryPresenceLookupId')
180
+
181
+
182
+ self.secondary_presence_lookup_id = attributes[:'secondaryPresenceLookupId']
183
+
184
+
185
+ end
186
+
187
+
188
+ end
189
+
190
+ # Show invalid properties with the reasons. Usually used together with valid?
191
+ # @return Array for valid properies with the reasons
192
+ def list_invalid_properties
193
+ invalid_properties = Array.new
194
+
195
+
196
+ return invalid_properties
197
+ end
198
+
199
+ # Check to see if the all the properties in the model are valid
200
+ # @return true if the model is valid
201
+ def valid?
202
+
203
+
204
+
205
+
206
+
207
+
208
+
209
+
210
+
211
+
212
+
213
+
214
+
215
+
216
+
217
+ allowed_values = ["OnQueueWork", "Break", "Meal", "Meeting", "OffQueueWork", "TimeOff", "Training", "Unavailable", "Unscheduled"]
218
+ if @scheduled_activity_category && !allowed_values.include?(@scheduled_activity_category)
219
+ return false
220
+ end
221
+
222
+
223
+
224
+
225
+
226
+ allowed_values = ["OnQueueWork", "Break", "Meal", "Meeting", "OffQueueWork", "TimeOff", "Training", "Unavailable", "Unscheduled"]
227
+ if @actual_activity_category && !allowed_values.include?(@actual_activity_category)
228
+ return false
229
+ end
230
+
231
+
232
+
233
+
234
+
235
+ allowed_values = ["Available", "Away", "Busy", "Offline", "Idle", "OnQueue", "Meal", "Training", "Meeting", "Break"]
236
+ if @system_presence && !allowed_values.include?(@system_presence)
237
+ return false
238
+ end
239
+
240
+
241
+
242
+
243
+
244
+
245
+
246
+
247
+
248
+ allowed_values = ["Positive", "Negative", "Neutral", "Unknown"]
249
+ if @impact && !allowed_values.include?(@impact)
250
+ return false
251
+ end
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+ end
260
+
261
+
262
+
263
+
264
+
265
+
266
+
267
+
268
+
269
+
270
+
271
+
272
+
273
+
274
+
275
+
276
+
277
+
278
+ # Custom attribute writer method checking allowed values (enum).
279
+ # @param [Object] scheduled_activity_category Object to be assigned
280
+ def scheduled_activity_category=(scheduled_activity_category)
281
+ allowed_values = ["OnQueueWork", "Break", "Meal", "Meeting", "OffQueueWork", "TimeOff", "Training", "Unavailable", "Unscheduled"]
282
+ if scheduled_activity_category && !allowed_values.include?(scheduled_activity_category)
283
+ fail ArgumentError, "invalid value for 'scheduled_activity_category', must be one of #{allowed_values}."
284
+ end
285
+ @scheduled_activity_category = scheduled_activity_category
286
+ end
287
+
288
+
289
+
290
+
291
+
292
+ # Custom attribute writer method checking allowed values (enum).
293
+ # @param [Object] actual_activity_category Object to be assigned
294
+ def actual_activity_category=(actual_activity_category)
295
+ allowed_values = ["OnQueueWork", "Break", "Meal", "Meeting", "OffQueueWork", "TimeOff", "Training", "Unavailable", "Unscheduled"]
296
+ if actual_activity_category && !allowed_values.include?(actual_activity_category)
297
+ fail ArgumentError, "invalid value for 'actual_activity_category', must be one of #{allowed_values}."
298
+ end
299
+ @actual_activity_category = actual_activity_category
300
+ end
301
+
302
+
303
+
304
+
305
+
306
+ # Custom attribute writer method checking allowed values (enum).
307
+ # @param [Object] system_presence Object to be assigned
308
+ def system_presence=(system_presence)
309
+ allowed_values = ["Available", "Away", "Busy", "Offline", "Idle", "OnQueue", "Meal", "Training", "Meeting", "Break"]
310
+ if system_presence && !allowed_values.include?(system_presence)
311
+ fail ArgumentError, "invalid value for 'system_presence', must be one of #{allowed_values}."
312
+ end
313
+ @system_presence = system_presence
314
+ end
315
+
316
+
317
+
318
+
319
+
320
+
321
+
322
+
323
+
324
+
325
+ # Custom attribute writer method checking allowed values (enum).
326
+ # @param [Object] impact Object to be assigned
327
+ def impact=(impact)
328
+ allowed_values = ["Positive", "Negative", "Neutral", "Unknown"]
329
+ if impact && !allowed_values.include?(impact)
330
+ fail ArgumentError, "invalid value for 'impact', must be one of #{allowed_values}."
331
+ end
332
+ @impact = impact
333
+ end
334
+
335
+
336
+
337
+
338
+
339
+
340
+
341
+
342
+
343
+ # Checks equality by comparing each attribute.
344
+ # @param [Object] Object to be compared
345
+ def ==(o)
346
+ return true if self.equal?(o)
347
+ self.class == o.class &&
348
+ start_offset_seconds == o.start_offset_seconds &&
349
+ end_offset_seconds == o.end_offset_seconds &&
350
+ scheduled_activity_code_id == o.scheduled_activity_code_id &&
351
+ scheduled_activity_category == o.scheduled_activity_category &&
352
+ actual_activity_category == o.actual_activity_category &&
353
+ system_presence == o.system_presence &&
354
+ routing_status == o.routing_status &&
355
+ impact == o.impact &&
356
+ secondary_presence_lookup_id == o.secondary_presence_lookup_id
357
+ end
358
+
359
+ # @see the `==` method
360
+ # @param [Object] Object to be compared
361
+ def eql?(o)
362
+ self == o
363
+ end
364
+
365
+ # Calculates hash code according to all attributes.
366
+ # @return [Fixnum] Hash code
367
+ def hash
368
+ [start_offset_seconds, end_offset_seconds, scheduled_activity_code_id, scheduled_activity_category, actual_activity_category, system_presence, routing_status, impact, secondary_presence_lookup_id].hash
369
+ end
370
+
371
+ # build the object from hash
372
+ def build_from_hash(attributes)
373
+ return nil unless attributes.is_a?(Hash)
374
+ self.class.swagger_types.each_pair do |key, type|
375
+ if type =~ /^Array<(.*)>/i
376
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
377
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
378
+ else
379
+ #TODO show warning in debug mode
380
+ end
381
+ elsif !attributes[self.class.attribute_map[key]].nil?
382
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
383
+ else
384
+ # data not found in attributes(hash), not an issue as the data can be optional
385
+ end
386
+ end
387
+
388
+ self
389
+ end
390
+
391
+ def _deserialize(type, value)
392
+ case type.to_sym
393
+ when :DateTime
394
+ DateTime.parse(value)
395
+ when :Date
396
+ Date.parse(value)
397
+ when :String
398
+ value.to_s
399
+ when :Integer
400
+ value.to_i
401
+ when :Float
402
+ value.to_f
403
+ when :BOOLEAN
404
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
405
+ true
406
+ else
407
+ false
408
+ end
409
+ when :Object
410
+ # generic object (usually a Hash), return directly
411
+ value
412
+ when /\AArray<(?<inner_type>.+)>\z/
413
+ inner_type = Regexp.last_match[:inner_type]
414
+ value.map { |v| _deserialize(inner_type, v) }
415
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
416
+ k_type = Regexp.last_match[:k_type]
417
+ v_type = Regexp.last_match[:v_type]
418
+ {}.tap do |hash|
419
+ value.each do |k, v|
420
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
421
+ end
422
+ end
423
+ else # model
424
+ _model = Object.const_get("PureCloud").const_get(type).new
425
+ _model.build_from_hash(value)
426
+ end
427
+ end
428
+
429
+ def to_s
430
+ to_hash.to_s
431
+ end
432
+
433
+ # to_body is an alias to to_body (backward compatibility))
434
+ def to_body
435
+ to_hash
436
+ end
437
+
438
+ # return the object in the form of hash
439
+ def to_hash
440
+ hash = {}
441
+ self.class.attribute_map.each_pair do |attr, param|
442
+ value = self.send(attr)
443
+ next if value.nil?
444
+ hash[param] = _to_hash(value)
445
+ end
446
+ hash
447
+ end
448
+
449
+ # Method to output non-array value in the form of hash
450
+ # For object, use to_hash. Otherwise, just return the value
451
+ def _to_hash(value)
452
+ if value.is_a?(Array)
453
+ value.compact.map{ |v| _to_hash(v) }
454
+ elsif value.is_a?(Hash)
455
+ {}.tap do |hash|
456
+ value.each { |k, v| hash[k] = _to_hash(v) }
457
+ end
458
+ elsif value.respond_to? :to_hash
459
+ value.to_hash
460
+ else
461
+ value
462
+ end
463
+ end
464
+
465
+ end
466
+ end