purecloudplatformclientv2 70.0.0 → 71.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 (39) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/AnalyticsSession.md +1 -0
  4. data/docs/BuSearchAgentSchedulesRequest.md +15 -0
  5. data/docs/ConversationsApi.md +198 -0
  6. data/docs/ManagementUnitReference.md +14 -0
  7. data/docs/RoutingApi.md +126 -0
  8. data/docs/SCIMApi.md +270 -0
  9. data/docs/ScimServiceProviderConfigAuthenticationScheme.md +1 -1
  10. data/docs/ScimV2Group.md +2 -1
  11. data/docs/SendAgentlessOutboundMessageRequest.md +16 -0
  12. data/docs/SendAgentlessOutboundMessageResponse.md +21 -0
  13. data/docs/ShiftTradeSettings.md +1 -0
  14. data/docs/TranscriptionSettings.md +14 -0
  15. data/docs/WhatsAppIntegrationRequest.md +17 -0
  16. data/docs/WorkPlanReference.md +3 -1
  17. data/docs/WorkforceManagementApi.md +74 -3
  18. data/lib/purecloudplatformclientv2.rb +6 -0
  19. data/lib/purecloudplatformclientv2/api/conversations_api.rb +195 -0
  20. data/lib/purecloudplatformclientv2/api/routing_api.rb +120 -0
  21. data/lib/purecloudplatformclientv2/api/scim_api.rb +276 -0
  22. data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +73 -0
  23. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  24. data/lib/purecloudplatformclientv2/models/analytics_session.rb +30 -4
  25. data/lib/purecloudplatformclientv2/models/bu_search_agent_schedules_request.rb +266 -0
  26. data/lib/purecloudplatformclientv2/models/conversation_aggregate_query_predicate.rb +2 -2
  27. data/lib/purecloudplatformclientv2/models/flow_aggregate_query_predicate.rb +2 -2
  28. data/lib/purecloudplatformclientv2/models/management_unit_reference.rb +229 -0
  29. data/lib/purecloudplatformclientv2/models/scim_service_provider_config_authentication_scheme.rb +1 -1
  30. data/lib/purecloudplatformclientv2/models/scim_v2_group.rb +32 -1
  31. data/lib/purecloudplatformclientv2/models/segment_detail_query_predicate.rb +2 -2
  32. data/lib/purecloudplatformclientv2/models/send_agentless_outbound_message_request.rb +314 -0
  33. data/lib/purecloudplatformclientv2/models/send_agentless_outbound_message_response.rb +424 -0
  34. data/lib/purecloudplatformclientv2/models/shift_trade_settings.rb +27 -1
  35. data/lib/purecloudplatformclientv2/models/transcription_settings.rb +252 -0
  36. data/lib/purecloudplatformclientv2/models/whats_app_integration_request.rb +321 -0
  37. data/lib/purecloudplatformclientv2/models/work_plan_reference.rb +57 -9
  38. data/lib/purecloudplatformclientv2/version.rb +1 -1
  39. metadata +14 -2
@@ -0,0 +1,424 @@
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 SendAgentlessOutboundMessageResponse
21
+ # The globally unique identifier for the object.
22
+ attr_accessor :id
23
+
24
+ # The identifier of the conversation.
25
+ attr_accessor :conversation_id
26
+
27
+ # The sender of the text message.
28
+ attr_accessor :from_address
29
+
30
+ # The recipient of the text message.
31
+ attr_accessor :to_address
32
+
33
+ # Type of text messenger.
34
+ attr_accessor :messenger_type
35
+
36
+ # The body of the text message.
37
+ attr_accessor :text_body
38
+
39
+ # The time when the message was sent. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
40
+ attr_accessor :timestamp
41
+
42
+ # The URI for this object
43
+ attr_accessor :self_uri
44
+
45
+ # Details of the user created the job
46
+ attr_accessor :user
47
+
48
+ # Attribute mapping from ruby-style variable name to JSON key.
49
+ def self.attribute_map
50
+ {
51
+
52
+ :'id' => :'id',
53
+
54
+ :'conversation_id' => :'conversationId',
55
+
56
+ :'from_address' => :'fromAddress',
57
+
58
+ :'to_address' => :'toAddress',
59
+
60
+ :'messenger_type' => :'messengerType',
61
+
62
+ :'text_body' => :'textBody',
63
+
64
+ :'timestamp' => :'timestamp',
65
+
66
+ :'self_uri' => :'selfUri',
67
+
68
+ :'user' => :'user'
69
+
70
+ }
71
+ end
72
+
73
+ # Attribute type mapping.
74
+ def self.swagger_types
75
+ {
76
+
77
+ :'id' => :'String',
78
+
79
+ :'conversation_id' => :'String',
80
+
81
+ :'from_address' => :'String',
82
+
83
+ :'to_address' => :'String',
84
+
85
+ :'messenger_type' => :'String',
86
+
87
+ :'text_body' => :'String',
88
+
89
+ :'timestamp' => :'DateTime',
90
+
91
+ :'self_uri' => :'String',
92
+
93
+ :'user' => :'AddressableEntityRef'
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?(:'id')
108
+
109
+
110
+ self.id = attributes[:'id']
111
+
112
+
113
+ end
114
+
115
+
116
+ if attributes.has_key?(:'conversationId')
117
+
118
+
119
+ self.conversation_id = attributes[:'conversationId']
120
+
121
+
122
+ end
123
+
124
+
125
+ if attributes.has_key?(:'fromAddress')
126
+
127
+
128
+ self.from_address = attributes[:'fromAddress']
129
+
130
+
131
+ end
132
+
133
+
134
+ if attributes.has_key?(:'toAddress')
135
+
136
+
137
+ self.to_address = attributes[:'toAddress']
138
+
139
+
140
+ end
141
+
142
+
143
+ if attributes.has_key?(:'messengerType')
144
+
145
+
146
+ self.messenger_type = attributes[:'messengerType']
147
+
148
+
149
+ end
150
+
151
+
152
+ if attributes.has_key?(:'textBody')
153
+
154
+
155
+ self.text_body = attributes[:'textBody']
156
+
157
+
158
+ end
159
+
160
+
161
+ if attributes.has_key?(:'timestamp')
162
+
163
+
164
+ self.timestamp = attributes[:'timestamp']
165
+
166
+
167
+ end
168
+
169
+
170
+ if attributes.has_key?(:'selfUri')
171
+
172
+
173
+ self.self_uri = attributes[:'selfUri']
174
+
175
+
176
+ end
177
+
178
+
179
+ if attributes.has_key?(:'user')
180
+
181
+
182
+ self.user = attributes[:'user']
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
+
218
+
219
+
220
+
221
+ allowed_values = ["sms", "facebook", "twitter", "line", "whatsapp"]
222
+ if @messenger_type && !allowed_values.include?(@messenger_type)
223
+ return false
224
+ end
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+
233
+
234
+
235
+
236
+
237
+
238
+
239
+
240
+
241
+
242
+
243
+
244
+ end
245
+
246
+
247
+
248
+
249
+
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+
260
+
261
+
262
+
263
+
264
+
265
+
266
+
267
+
268
+ # Custom attribute writer method checking allowed values (enum).
269
+ # @param [Object] messenger_type Object to be assigned
270
+ def messenger_type=(messenger_type)
271
+ allowed_values = ["sms", "facebook", "twitter", "line", "whatsapp"]
272
+ if messenger_type && !allowed_values.include?(messenger_type)
273
+ fail ArgumentError, "invalid value for 'messenger_type', must be one of #{allowed_values}."
274
+ end
275
+ @messenger_type = messenger_type
276
+ end
277
+
278
+
279
+
280
+
281
+
282
+
283
+
284
+
285
+
286
+
287
+
288
+
289
+
290
+
291
+
292
+
293
+
294
+
295
+
296
+
297
+
298
+
299
+
300
+
301
+ # Checks equality by comparing each attribute.
302
+ # @param [Object] Object to be compared
303
+ def ==(o)
304
+ return true if self.equal?(o)
305
+ self.class == o.class &&
306
+ id == o.id &&
307
+ conversation_id == o.conversation_id &&
308
+ from_address == o.from_address &&
309
+ to_address == o.to_address &&
310
+ messenger_type == o.messenger_type &&
311
+ text_body == o.text_body &&
312
+ timestamp == o.timestamp &&
313
+ self_uri == o.self_uri &&
314
+ user == o.user
315
+ end
316
+
317
+ # @see the `==` method
318
+ # @param [Object] Object to be compared
319
+ def eql?(o)
320
+ self == o
321
+ end
322
+
323
+ # Calculates hash code according to all attributes.
324
+ # @return [Fixnum] Hash code
325
+ def hash
326
+ [id, conversation_id, from_address, to_address, messenger_type, text_body, timestamp, self_uri, user].hash
327
+ end
328
+
329
+ # build the object from hash
330
+ def build_from_hash(attributes)
331
+ return nil unless attributes.is_a?(Hash)
332
+ self.class.swagger_types.each_pair do |key, type|
333
+ if type =~ /^Array<(.*)>/i
334
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
335
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
336
+ else
337
+ #TODO show warning in debug mode
338
+ end
339
+ elsif !attributes[self.class.attribute_map[key]].nil?
340
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
341
+ else
342
+ # data not found in attributes(hash), not an issue as the data can be optional
343
+ end
344
+ end
345
+
346
+ self
347
+ end
348
+
349
+ def _deserialize(type, value)
350
+ case type.to_sym
351
+ when :DateTime
352
+ DateTime.parse(value)
353
+ when :Date
354
+ Date.parse(value)
355
+ when :String
356
+ value.to_s
357
+ when :Integer
358
+ value.to_i
359
+ when :Float
360
+ value.to_f
361
+ when :BOOLEAN
362
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
363
+ true
364
+ else
365
+ false
366
+ end
367
+ when :Object
368
+ # generic object (usually a Hash), return directly
369
+ value
370
+ when /\AArray<(?<inner_type>.+)>\z/
371
+ inner_type = Regexp.last_match[:inner_type]
372
+ value.map { |v| _deserialize(inner_type, v) }
373
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
374
+ k_type = Regexp.last_match[:k_type]
375
+ v_type = Regexp.last_match[:v_type]
376
+ {}.tap do |hash|
377
+ value.each do |k, v|
378
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
379
+ end
380
+ end
381
+ else # model
382
+ _model = Object.const_get("PureCloud").const_get(type).new
383
+ _model.build_from_hash(value)
384
+ end
385
+ end
386
+
387
+ def to_s
388
+ to_hash.to_s
389
+ end
390
+
391
+ # to_body is an alias to to_body (backward compatibility))
392
+ def to_body
393
+ to_hash
394
+ end
395
+
396
+ # return the object in the form of hash
397
+ def to_hash
398
+ hash = {}
399
+ self.class.attribute_map.each_pair do |attr, param|
400
+ value = self.send(attr)
401
+ next if value.nil?
402
+ hash[param] = _to_hash(value)
403
+ end
404
+ hash
405
+ end
406
+
407
+ # Method to output non-array value in the form of hash
408
+ # For object, use to_hash. Otherwise, just return the value
409
+ def _to_hash(value)
410
+ if value.is_a?(Array)
411
+ value.compact.map{ |v| _to_hash(v) }
412
+ elsif value.is_a?(Hash)
413
+ {}.tap do |hash|
414
+ value.each { |k, v| hash[k] = _to_hash(v) }
415
+ end
416
+ elsif value.respond_to? :to_hash
417
+ value.to_hash
418
+ else
419
+ value
420
+ end
421
+ end
422
+
423
+ end
424
+ end
@@ -51,6 +51,9 @@ module PureCloud
51
51
  # Whether to constrain shift trades to agents with matching skills
52
52
  attr_accessor :requires_matching_skills
53
53
 
54
+ # Whether to constrain shift trades to agents with matching planning groups
55
+ attr_accessor :requires_matching_planning_groups
56
+
54
57
  # Rules that specify what to do with activity categories that are part of a shift defined in a trade
55
58
  attr_accessor :activity_category_rules
56
59
 
@@ -80,6 +83,8 @@ module PureCloud
80
83
 
81
84
  :'requires_matching_skills' => :'requiresMatchingSkills',
82
85
 
86
+ :'requires_matching_planning_groups' => :'requiresMatchingPlanningGroups',
87
+
83
88
  :'activity_category_rules' => :'activityCategoryRules'
84
89
 
85
90
  }
@@ -111,6 +116,8 @@ module PureCloud
111
116
 
112
117
  :'requires_matching_skills' => :'BOOLEAN',
113
118
 
119
+ :'requires_matching_planning_groups' => :'BOOLEAN',
120
+
114
121
  :'activity_category_rules' => :'Array<ShiftTradeActivityRule>'
115
122
 
116
123
  }
@@ -224,6 +231,15 @@ module PureCloud
224
231
  end
225
232
 
226
233
 
234
+ if attributes.has_key?(:'requiresMatchingPlanningGroups')
235
+
236
+
237
+ self.requires_matching_planning_groups = attributes[:'requiresMatchingPlanningGroups']
238
+
239
+
240
+ end
241
+
242
+
227
243
  if attributes.has_key?(:'activityCategoryRules')
228
244
 
229
245
  if (value = attributes[:'activityCategoryRules']).is_a?(Array)
@@ -315,6 +331,10 @@ module PureCloud
315
331
 
316
332
 
317
333
 
334
+
335
+
336
+
337
+
318
338
 
319
339
 
320
340
 
@@ -411,6 +431,11 @@ module PureCloud
411
431
 
412
432
 
413
433
 
434
+
435
+
436
+
437
+
438
+
414
439
 
415
440
 
416
441
 
@@ -433,6 +458,7 @@ module PureCloud
433
458
  requires_matching_queues == o.requires_matching_queues &&
434
459
  requires_matching_languages == o.requires_matching_languages &&
435
460
  requires_matching_skills == o.requires_matching_skills &&
461
+ requires_matching_planning_groups == o.requires_matching_planning_groups &&
436
462
  activity_category_rules == o.activity_category_rules
437
463
  end
438
464
 
@@ -445,7 +471,7 @@ module PureCloud
445
471
  # Calculates hash code according to all attributes.
446
472
  # @return [Fixnum] Hash code
447
473
  def hash
448
- [enabled, auto_review, allow_direct_trades, min_hours_in_future, unequal_paid, one_sided, weekly_min_paid_violations, weekly_max_paid_violations, requires_matching_queues, requires_matching_languages, requires_matching_skills, activity_category_rules].hash
474
+ [enabled, auto_review, allow_direct_trades, min_hours_in_future, unequal_paid, one_sided, weekly_min_paid_violations, weekly_max_paid_violations, requires_matching_queues, requires_matching_languages, requires_matching_skills, requires_matching_planning_groups, activity_category_rules].hash
449
475
  end
450
476
 
451
477
  # build the object from hash