purecloudplatformclientv2 70.0.0 → 71.0.0

Sign up to get free protection for your applications and to get access to all the features.
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