purecloudplatformclientv2 20.0.0 → 21.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (113) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/AdherenceSettings.md +18 -0
  4. data/docs/AgentManagementUnitReference.md +14 -0
  5. data/docs/AnalyticsSession.md +1 -0
  6. data/docs/AnalyticsView.md +1 -1
  7. data/docs/ArchitectApi.md +19 -15
  8. data/docs/CallForwarding.md +4 -2
  9. data/docs/CallMediaParticipant.md +1 -0
  10. data/docs/CallRoute.md +14 -0
  11. data/docs/CallTarget.md +14 -0
  12. data/docs/Contact.md +1 -1
  13. data/docs/ConversationNotificationMessage.md +3 -0
  14. data/docs/ConversationNotificationMessageDetails.md +2 -0
  15. data/docs/ConversationNotificationMessages.md +2 -0
  16. data/docs/ConversationNotificationMessages1.md +3 -0
  17. data/docs/ConversationsApi.md +196 -0
  18. data/docs/CreateEmailRequest.md +2 -0
  19. data/docs/CreateQueueRequest.md +2 -0
  20. data/docs/CreateSecureSession.md +16 -0
  21. data/docs/ExternalContact.md +1 -0
  22. data/docs/ImportScriptStatusResponse.md +15 -0
  23. data/docs/InboundRoute.md +1 -0
  24. data/docs/JsonNode.md +1 -1
  25. data/docs/ManagementUnit.md +5 -3
  26. data/docs/ManagementUnitReference.md +14 -0
  27. data/docs/ManagementUnitSettings.md +19 -0
  28. data/docs/Message.md +3 -0
  29. data/docs/MessageConversationNotificationMessageDetails.md +2 -0
  30. data/docs/MessageConversationNotificationMessageMediaParticipant.md +3 -0
  31. data/docs/MessageConversationNotificationMessages.md +2 -0
  32. data/docs/MessageConversationNotificationParticipants.md +3 -0
  33. data/docs/MessageDetails.md +2 -0
  34. data/docs/QualityApi.md +3 -1
  35. data/docs/Queue.md +2 -0
  36. data/docs/SchedulingSettings.md +14 -0
  37. data/docs/ScriptsApi.md +64 -0
  38. data/docs/SecureSession.md +19 -0
  39. data/docs/SecureSessionEntityListing.md +13 -0
  40. data/docs/ShortTermForecastingSettings.md +13 -0
  41. data/docs/SignedData.md +13 -0
  42. data/docs/SignedDataApi.md +73 -0
  43. data/docs/TimeOffRequestSettings.md +15 -0
  44. data/docs/UpdateUser.md +2 -2
  45. data/docs/UserConversationSummaryNotification.md +1 -0
  46. data/docs/UserQueue.md +2 -0
  47. data/docs/UserReference.md +14 -0
  48. data/docs/WorkforceManagementApi.md +61 -0
  49. data/lib/purecloudplatformclientv2.rb +16 -0
  50. data/lib/purecloudplatformclientv2/api/architect_api.rb +24 -6
  51. data/lib/purecloudplatformclientv2/api/conversations_api.rb +243 -0
  52. data/lib/purecloudplatformclientv2/api/quality_api.rb +9 -0
  53. data/lib/purecloudplatformclientv2/api/scripts_api.rb +74 -0
  54. data/lib/purecloudplatformclientv2/api/signed_data_api.rb +90 -0
  55. data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +63 -0
  56. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  57. data/lib/purecloudplatformclientv2/models/adherence_settings.rb +335 -0
  58. data/lib/purecloudplatformclientv2/models/agent_management_unit_reference.rb +229 -0
  59. data/lib/purecloudplatformclientv2/models/aggregate_metric_data.rb +2 -2
  60. data/lib/purecloudplatformclientv2/models/analytics_conversation_segment.rb +2 -2
  61. data/lib/purecloudplatformclientv2/models/analytics_query_predicate.rb +4 -4
  62. data/lib/purecloudplatformclientv2/models/analytics_session.rb +41 -1
  63. data/lib/purecloudplatformclientv2/models/analytics_view.rb +1 -1
  64. data/lib/purecloudplatformclientv2/models/call_forwarding.rb +71 -1
  65. data/lib/purecloudplatformclientv2/models/call_media_participant.rb +30 -4
  66. data/lib/purecloudplatformclientv2/models/call_route.rb +230 -0
  67. data/lib/purecloudplatformclientv2/models/call_target.rb +242 -0
  68. data/lib/purecloudplatformclientv2/models/contact.rb +1 -1
  69. data/lib/purecloudplatformclientv2/models/conversation_notification_message.rb +90 -1
  70. data/lib/purecloudplatformclientv2/models/conversation_notification_message_details.rb +68 -4
  71. data/lib/purecloudplatformclientv2/models/conversation_notification_messages.rb +68 -4
  72. data/lib/purecloudplatformclientv2/models/conversation_notification_messages_1.rb +90 -1
  73. data/lib/purecloudplatformclientv2/models/create_email_request.rb +56 -4
  74. data/lib/purecloudplatformclientv2/models/create_queue_request.rb +53 -1
  75. data/lib/purecloudplatformclientv2/models/create_secure_session.rb +290 -0
  76. data/lib/purecloudplatformclientv2/models/dependency.rb +2 -2
  77. data/lib/purecloudplatformclientv2/models/dependency_object.rb +2 -2
  78. data/lib/purecloudplatformclientv2/models/event_message.rb +2 -2
  79. data/lib/purecloudplatformclientv2/models/external_contact.rb +26 -1
  80. data/lib/purecloudplatformclientv2/models/import_script_status_response.rb +251 -0
  81. data/lib/purecloudplatformclientv2/models/inbound_route.rb +27 -1
  82. data/lib/purecloudplatformclientv2/models/interaction_stat_alert_notification.rb +2 -2
  83. data/lib/purecloudplatformclientv2/models/interaction_stat_rule_notification.rb +2 -2
  84. data/lib/purecloudplatformclientv2/models/interaction_stats_alert.rb +2 -2
  85. data/lib/purecloudplatformclientv2/models/interaction_stats_rule.rb +2 -2
  86. data/lib/purecloudplatformclientv2/models/intraday_data_group.rb +2 -2
  87. data/lib/purecloudplatformclientv2/models/intraday_data_update_notification_intraday_data_group.rb +2 -2
  88. data/lib/purecloudplatformclientv2/models/intraday_data_update_notification_intraday_data_groupings.rb +2 -2
  89. data/lib/purecloudplatformclientv2/models/json_node.rb +17 -17
  90. data/lib/purecloudplatformclientv2/models/management_unit.rb +59 -7
  91. data/lib/purecloudplatformclientv2/models/management_unit_reference.rb +229 -0
  92. data/lib/purecloudplatformclientv2/models/management_unit_settings.rb +364 -0
  93. data/lib/purecloudplatformclientv2/models/message.rb +93 -1
  94. data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_details.rb +68 -4
  95. data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_media_participant.rb +93 -4
  96. data/lib/purecloudplatformclientv2/models/message_conversation_notification_messages.rb +68 -4
  97. data/lib/purecloudplatformclientv2/models/message_conversation_notification_participants.rb +93 -4
  98. data/lib/purecloudplatformclientv2/models/message_details.rb +67 -1
  99. data/lib/purecloudplatformclientv2/models/participant.rb +2 -2
  100. data/lib/purecloudplatformclientv2/models/participant_basic.rb +2 -2
  101. data/lib/purecloudplatformclientv2/models/queue.rb +53 -1
  102. data/lib/purecloudplatformclientv2/models/scheduling_settings.rb +229 -0
  103. data/lib/purecloudplatformclientv2/models/secure_session.rb +382 -0
  104. data/lib/purecloudplatformclientv2/models/secure_session_entity_listing.rb +203 -0
  105. data/lib/purecloudplatformclientv2/models/short_term_forecasting_settings.rb +203 -0
  106. data/lib/purecloudplatformclientv2/models/signed_data.rb +201 -0
  107. data/lib/purecloudplatformclientv2/models/time_off_request_settings.rb +255 -0
  108. data/lib/purecloudplatformclientv2/models/update_user.rb +2 -1
  109. data/lib/purecloudplatformclientv2/models/user_conversation_summary_notification.rb +26 -1
  110. data/lib/purecloudplatformclientv2/models/user_queue.rb +53 -1
  111. data/lib/purecloudplatformclientv2/models/user_reference.rb +228 -0
  112. data/lib/purecloudplatformclientv2/version.rb +1 -1
  113. metadata +34 -2
@@ -340,7 +340,7 @@ module PureCloud
340
340
 
341
341
 
342
342
 
343
- allowed_values = ["voice", "chat", "email", "callback", "sms"]
343
+ allowed_values = ["voice", "chat", "email", "callback", "message"]
344
344
  if @media_type && !allowed_values.include?(@media_type)
345
345
  return false
346
346
  end
@@ -449,7 +449,7 @@ module PureCloud
449
449
  # Custom attribute writer method checking allowed values (enum).
450
450
  # @param [Object] media_type Object to be assigned
451
451
  def media_type=(media_type)
452
- allowed_values = ["voice", "chat", "email", "callback", "sms"]
452
+ allowed_values = ["voice", "chat", "email", "callback", "message"]
453
453
  if media_type && !allowed_values.include?(media_type)
454
454
  fail ArgumentError, "invalid value for 'media_type', must be one of #{allowed_values}."
455
455
  end
@@ -306,7 +306,7 @@ module PureCloud
306
306
 
307
307
 
308
308
 
309
- allowed_values = ["voice", "chat", "email", "callback", "sms"]
309
+ allowed_values = ["voice", "chat", "email", "callback", "message"]
310
310
  if @media_type && !allowed_values.include?(@media_type)
311
311
  return false
312
312
  end
@@ -406,7 +406,7 @@ module PureCloud
406
406
  # Custom attribute writer method checking allowed values (enum).
407
407
  # @param [Object] media_type Object to be assigned
408
408
  def media_type=(media_type)
409
- allowed_values = ["voice", "chat", "email", "callback", "sms"]
409
+ allowed_values = ["voice", "chat", "email", "callback", "message"]
410
410
  if media_type && !allowed_values.include?(media_type)
411
411
  fail ArgumentError, "invalid value for 'media_type', must be one of #{allowed_values}."
412
412
  end
@@ -388,7 +388,7 @@ module PureCloud
388
388
 
389
389
 
390
390
 
391
- allowed_values = ["voice", "chat", "email", "callback"]
391
+ allowed_values = ["voice", "chat", "email", "callback", "message"]
392
392
  if @media_type && !allowed_values.include?(@media_type)
393
393
  return false
394
394
  end
@@ -539,7 +539,7 @@ module PureCloud
539
539
  # Custom attribute writer method checking allowed values (enum).
540
540
  # @param [Object] media_type Object to be assigned
541
541
  def media_type=(media_type)
542
- allowed_values = ["voice", "chat", "email", "callback"]
542
+ allowed_values = ["voice", "chat", "email", "callback", "message"]
543
543
  if media_type && !allowed_values.include?(media_type)
544
544
  fail ArgumentError, "invalid value for 'media_type', must be one of #{allowed_values}."
545
545
  end
@@ -341,7 +341,7 @@ module PureCloud
341
341
 
342
342
 
343
343
 
344
- allowed_values = ["voice", "chat", "email", "callback"]
344
+ allowed_values = ["voice", "chat", "email", "callback", "message"]
345
345
  if @media_type && !allowed_values.include?(@media_type)
346
346
  return false
347
347
  end
@@ -470,7 +470,7 @@ module PureCloud
470
470
  # Custom attribute writer method checking allowed values (enum).
471
471
  # @param [Object] media_type Object to be assigned
472
472
  def media_type=(media_type)
473
- allowed_values = ["voice", "chat", "email", "callback"]
473
+ allowed_values = ["voice", "chat", "email", "callback", "message"]
474
474
  if media_type && !allowed_values.include?(media_type)
475
475
  fail ArgumentError, "invalid value for 'media_type', must be one of #{allowed_values}."
476
476
  end
@@ -182,7 +182,7 @@ module PureCloud
182
182
 
183
183
 
184
184
 
185
- allowed_values = ["Voice", "Chat", "Email", "Callback"]
185
+ allowed_values = ["Voice", "Chat", "Email", "Callback", "Message"]
186
186
  if @media_type && !allowed_values.include?(@media_type)
187
187
  return false
188
188
  end
@@ -220,7 +220,7 @@ module PureCloud
220
220
  # Custom attribute writer method checking allowed values (enum).
221
221
  # @param [Object] media_type Object to be assigned
222
222
  def media_type=(media_type)
223
- allowed_values = ["Voice", "Chat", "Email", "Callback"]
223
+ allowed_values = ["Voice", "Chat", "Email", "Callback", "Message"]
224
224
  if media_type && !allowed_values.include?(media_type)
225
225
  fail ArgumentError, "invalid value for 'media_type', must be one of #{allowed_values}."
226
226
  end
@@ -175,7 +175,7 @@ module PureCloud
175
175
 
176
176
 
177
177
 
178
- allowed_values = ["VOICE", "CHAT", "EMAIL", "CALLBACK"]
178
+ allowed_values = ["VOICE", "CHAT", "EMAIL", "CALLBACK", "MESSAGE"]
179
179
  if @media_type && !allowed_values.include?(@media_type)
180
180
  return false
181
181
  end
@@ -213,7 +213,7 @@ module PureCloud
213
213
  # Custom attribute writer method checking allowed values (enum).
214
214
  # @param [Object] media_type Object to be assigned
215
215
  def media_type=(media_type)
216
- allowed_values = ["VOICE", "CHAT", "EMAIL", "CALLBACK"]
216
+ allowed_values = ["VOICE", "CHAT", "EMAIL", "CALLBACK", "MESSAGE"]
217
217
  if media_type && !allowed_values.include?(media_type)
218
218
  fail ArgumentError, "invalid value for 'media_type', must be one of #{allowed_values}."
219
219
  end
@@ -175,7 +175,7 @@ module PureCloud
175
175
 
176
176
 
177
177
 
178
- allowed_values = ["VOICE", "CHAT", "EMAIL", "CALLBACK"]
178
+ allowed_values = ["VOICE", "CHAT", "EMAIL", "CALLBACK", "MESSAGE"]
179
179
  if @media_type && !allowed_values.include?(@media_type)
180
180
  return false
181
181
  end
@@ -213,7 +213,7 @@ module PureCloud
213
213
  # Custom attribute writer method checking allowed values (enum).
214
214
  # @param [Object] media_type Object to be assigned
215
215
  def media_type=(media_type)
216
- allowed_values = ["VOICE", "CHAT", "EMAIL", "CALLBACK"]
216
+ allowed_values = ["VOICE", "CHAT", "EMAIL", "CALLBACK", "MESSAGE"]
217
217
  if media_type && !allowed_values.include?(media_type)
218
218
  fail ArgumentError, "invalid value for 'media_type', must be one of #{allowed_values}."
219
219
  end
@@ -32,6 +32,8 @@ module PureCloud
32
32
 
33
33
  attr_accessor :number
34
34
 
35
+ attr_accessor :floating_point_number
36
+
35
37
  attr_accessor :value_node
36
38
 
37
39
  attr_accessor :container_node
@@ -42,8 +44,6 @@ module PureCloud
42
44
 
43
45
  attr_accessor :integral_number
44
46
 
45
- attr_accessor :floating_point_number
46
-
47
47
  attr_accessor :short
48
48
 
49
49
  attr_accessor :int
@@ -78,6 +78,8 @@ module PureCloud
78
78
 
79
79
  :'number' => :'number',
80
80
 
81
+ :'floating_point_number' => :'floatingPointNumber',
82
+
81
83
  :'value_node' => :'valueNode',
82
84
 
83
85
  :'container_node' => :'containerNode',
@@ -88,8 +90,6 @@ module PureCloud
88
90
 
89
91
  :'integral_number' => :'integralNumber',
90
92
 
91
- :'floating_point_number' => :'floatingPointNumber',
92
-
93
93
  :'short' => :'short',
94
94
 
95
95
  :'int' => :'int',
@@ -127,6 +127,8 @@ module PureCloud
127
127
 
128
128
  :'number' => :'BOOLEAN',
129
129
 
130
+ :'floating_point_number' => :'BOOLEAN',
131
+
130
132
  :'value_node' => :'BOOLEAN',
131
133
 
132
134
  :'container_node' => :'BOOLEAN',
@@ -137,8 +139,6 @@ module PureCloud
137
139
 
138
140
  :'integral_number' => :'BOOLEAN',
139
141
 
140
- :'floating_point_number' => :'BOOLEAN',
141
-
142
142
  :'short' => :'BOOLEAN',
143
143
 
144
144
  :'int' => :'BOOLEAN',
@@ -230,6 +230,15 @@ module PureCloud
230
230
  end
231
231
 
232
232
 
233
+ if attributes.has_key?(:'floatingPointNumber')
234
+
235
+
236
+ self.floating_point_number = attributes[:'floatingPointNumber']
237
+
238
+
239
+ end
240
+
241
+
233
242
  if attributes.has_key?(:'valueNode')
234
243
 
235
244
 
@@ -275,15 +284,6 @@ module PureCloud
275
284
  end
276
285
 
277
286
 
278
- if attributes.has_key?(:'floatingPointNumber')
279
-
280
-
281
- self.floating_point_number = attributes[:'floatingPointNumber']
282
-
283
-
284
- end
285
-
286
-
287
287
  if attributes.has_key?(:'short')
288
288
 
289
289
 
@@ -589,12 +589,12 @@ module PureCloud
589
589
  object == o.object &&
590
590
  boolean == o.boolean &&
591
591
  number == o.number &&
592
+ floating_point_number == o.floating_point_number &&
592
593
  value_node == o.value_node &&
593
594
  container_node == o.container_node &&
594
595
  missing_node == o.missing_node &&
595
596
  pojo == o.pojo &&
596
597
  integral_number == o.integral_number &&
597
- floating_point_number == o.floating_point_number &&
598
598
  short == o.short &&
599
599
  int == o.int &&
600
600
  long == o.long &&
@@ -614,7 +614,7 @@ module PureCloud
614
614
  # Calculates hash code according to all attributes.
615
615
  # @return [Fixnum] Hash code
616
616
  def hash
617
- [array, null, node_type, float, object, boolean, number, value_node, container_node, missing_node, pojo, integral_number, floating_point_number, short, int, long, double, big_decimal, big_integer, textual, binary].hash
617
+ [array, null, node_type, float, object, boolean, number, floating_point_number, value_node, container_node, missing_node, pojo, integral_number, short, int, long, double, big_decimal, big_integer, textual, binary].hash
618
618
  end
619
619
 
620
620
  # build the object from hash
@@ -17,25 +17,31 @@ Terms of Service: https://developer.mypurecloud.com/tos
17
17
  require 'date'
18
18
 
19
19
  module PureCloud
20
- # Management Unit object for Workforce Management.
20
+ # Management Unit object for Workforce Management
21
21
  class ManagementUnit
22
22
  # The globally unique identifier for the object.
23
23
  attr_accessor :id
24
24
 
25
25
  attr_accessor :name
26
26
 
27
- # Start day of week for workforce management planning purposes
27
+ # Start day of week for scheduling and forecasting purposes
28
28
  attr_accessor :start_day_of_week
29
29
 
30
30
  # The time zone for the management unit in standard Olson Format (See https://en.wikipedia.org/wiki/Tz_database)
31
31
  attr_accessor :time_zone
32
32
 
33
- # The version of the underlying ManagementUnit object. Useful for handling eventual consistency issues. User must submit the current version they of the ManagementUnit in any write requests
33
+ # The configuration settings for this management unit
34
+ attr_accessor :settings
35
+
36
+ # The version of the underlying entity
34
37
  attr_accessor :version
35
38
 
36
- # The date and time at which this management unit was last modified. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
39
+ # The date and time at which this entity was last modified. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
37
40
  attr_accessor :date_modified
38
41
 
42
+ # The user who last modified this entity
43
+ attr_accessor :modified_by
44
+
39
45
  # The URI for this object
40
46
  attr_accessor :self_uri
41
47
 
@@ -51,10 +57,14 @@ module PureCloud
51
57
 
52
58
  :'time_zone' => :'timeZone',
53
59
 
60
+ :'settings' => :'settings',
61
+
54
62
  :'version' => :'version',
55
63
 
56
64
  :'date_modified' => :'dateModified',
57
65
 
66
+ :'modified_by' => :'modifiedBy',
67
+
58
68
  :'self_uri' => :'selfUri'
59
69
 
60
70
  }
@@ -72,10 +82,14 @@ module PureCloud
72
82
 
73
83
  :'time_zone' => :'String',
74
84
 
85
+ :'settings' => :'ManagementUnitSettings',
86
+
75
87
  :'version' => :'Integer',
76
88
 
77
89
  :'date_modified' => :'DateTime',
78
90
 
91
+ :'modified_by' => :'User',
92
+
79
93
  :'self_uri' => :'String'
80
94
 
81
95
  }
@@ -126,6 +140,15 @@ module PureCloud
126
140
  end
127
141
 
128
142
 
143
+ if attributes.has_key?(:'settings')
144
+
145
+
146
+ self.settings = attributes[:'settings']
147
+
148
+
149
+ end
150
+
151
+
129
152
  if attributes.has_key?(:'version')
130
153
 
131
154
 
@@ -144,6 +167,15 @@ module PureCloud
144
167
  end
145
168
 
146
169
 
170
+ if attributes.has_key?(:'modifiedBy')
171
+
172
+
173
+ self.modified_by = attributes[:'modifiedBy']
174
+
175
+
176
+ end
177
+
178
+
147
179
  if attributes.has_key?(:'selfUri')
148
180
 
149
181
 
@@ -178,7 +210,7 @@ module PureCloud
178
210
 
179
211
 
180
212
 
181
- allowed_values = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
213
+ allowed_values = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
182
214
  if @start_day_of_week && !allowed_values.include?(@start_day_of_week)
183
215
  return false
184
216
  end
@@ -190,6 +222,10 @@ module PureCloud
190
222
 
191
223
 
192
224
 
225
+
226
+
227
+
228
+
193
229
  if @version.nil?
194
230
  return false
195
231
  end
@@ -206,6 +242,10 @@ module PureCloud
206
242
 
207
243
 
208
244
 
245
+
246
+
247
+
248
+
209
249
  end
210
250
 
211
251
 
@@ -223,7 +263,7 @@ module PureCloud
223
263
  # Custom attribute writer method checking allowed values (enum).
224
264
  # @param [Object] start_day_of_week Object to be assigned
225
265
  def start_day_of_week=(start_day_of_week)
226
- allowed_values = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
266
+ allowed_values = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
227
267
  if start_day_of_week && !allowed_values.include?(start_day_of_week)
228
268
  fail ArgumentError, "invalid value for 'start_day_of_week', must be one of #{allowed_values}."
229
269
  end
@@ -242,6 +282,16 @@ module PureCloud
242
282
 
243
283
 
244
284
 
285
+
286
+
287
+
288
+
289
+
290
+
291
+
292
+
293
+
294
+
245
295
 
246
296
 
247
297
 
@@ -262,8 +312,10 @@ module PureCloud
262
312
  name == o.name &&
263
313
  start_day_of_week == o.start_day_of_week &&
264
314
  time_zone == o.time_zone &&
315
+ settings == o.settings &&
265
316
  version == o.version &&
266
317
  date_modified == o.date_modified &&
318
+ modified_by == o.modified_by &&
267
319
  self_uri == o.self_uri
268
320
  end
269
321
 
@@ -276,7 +328,7 @@ module PureCloud
276
328
  # Calculates hash code according to all attributes.
277
329
  # @return [Fixnum] Hash code
278
330
  def hash
279
- [id, name, start_day_of_week, time_zone, version, date_modified, self_uri].hash
331
+ [id, name, start_day_of_week, time_zone, settings, version, date_modified, modified_by, self_uri].hash
280
332
  end
281
333
 
282
334
  # build the object from hash
@@ -0,0 +1,229 @@
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
+ # Management unit reference object for Workforce Management (ID/selfUri only)
21
+ class ManagementUnitReference
22
+ # The globally unique identifier for the object.
23
+ attr_accessor :id
24
+
25
+ # The URI for this object
26
+ attr_accessor :self_uri
27
+
28
+ # Attribute mapping from ruby-style variable name to JSON key.
29
+ def self.attribute_map
30
+ {
31
+
32
+ :'id' => :'id',
33
+
34
+ :'self_uri' => :'selfUri'
35
+
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.swagger_types
41
+ {
42
+
43
+ :'id' => :'String',
44
+
45
+ :'self_uri' => :'String'
46
+
47
+ }
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param [Hash] attributes Model attributes in the form of hash
52
+ def initialize(attributes = {})
53
+ return unless attributes.is_a?(Hash)
54
+
55
+ # convert string to symbol for hash key
56
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
57
+
58
+
59
+ if attributes.has_key?(:'id')
60
+
61
+
62
+ self.id = attributes[:'id']
63
+
64
+
65
+ end
66
+
67
+
68
+ if attributes.has_key?(:'selfUri')
69
+
70
+
71
+ self.self_uri = attributes[:'selfUri']
72
+
73
+
74
+ end
75
+
76
+
77
+ end
78
+
79
+ # Show invalid properties with the reasons. Usually used together with valid?
80
+ # @return Array for valid properies with the reasons
81
+ def list_invalid_properties
82
+ invalid_properties = Array.new
83
+
84
+
85
+ return invalid_properties
86
+ end
87
+
88
+ # Check to see if the all the properties in the model are valid
89
+ # @return true if the model is valid
90
+ def valid?
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+ end
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+ # Checks equality by comparing each attribute.
114
+ # @param [Object] Object to be compared
115
+ def ==(o)
116
+ return true if self.equal?(o)
117
+ self.class == o.class &&
118
+ id == o.id &&
119
+ self_uri == o.self_uri
120
+ end
121
+
122
+ # @see the `==` method
123
+ # @param [Object] Object to be compared
124
+ def eql?(o)
125
+ self == o
126
+ end
127
+
128
+ # Calculates hash code according to all attributes.
129
+ # @return [Fixnum] Hash code
130
+ def hash
131
+ [id, self_uri].hash
132
+ end
133
+
134
+ # build the object from hash
135
+ def build_from_hash(attributes)
136
+ return nil unless attributes.is_a?(Hash)
137
+ self.class.swagger_types.each_pair do |key, type|
138
+ if type =~ /^Array<(.*)>/i
139
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
140
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
141
+ else
142
+ #TODO show warning in debug mode
143
+ end
144
+ elsif !attributes[self.class.attribute_map[key]].nil?
145
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
146
+ else
147
+ # data not found in attributes(hash), not an issue as the data can be optional
148
+ end
149
+ end
150
+
151
+ self
152
+ end
153
+
154
+ def _deserialize(type, value)
155
+ case type.to_sym
156
+ when :DateTime
157
+ DateTime.parse(value)
158
+ when :Date
159
+ Date.parse(value)
160
+ when :String
161
+ value.to_s
162
+ when :Integer
163
+ value.to_i
164
+ when :Float
165
+ value.to_f
166
+ when :BOOLEAN
167
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
168
+ true
169
+ else
170
+ false
171
+ end
172
+ when :Object
173
+ # generic object (usually a Hash), return directly
174
+ value
175
+ when /\AArray<(?<inner_type>.+)>\z/
176
+ inner_type = Regexp.last_match[:inner_type]
177
+ value.map { |v| _deserialize(inner_type, v) }
178
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
179
+ k_type = Regexp.last_match[:k_type]
180
+ v_type = Regexp.last_match[:v_type]
181
+ {}.tap do |hash|
182
+ value.each do |k, v|
183
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
184
+ end
185
+ end
186
+ else # model
187
+ _model = Object.const_get("PureCloud").const_get(type).new
188
+ _model.build_from_hash(value)
189
+ end
190
+ end
191
+
192
+ def to_s
193
+ to_hash.to_s
194
+ end
195
+
196
+ # to_body is an alias to to_body (backward compatibility))
197
+ def to_body
198
+ to_hash
199
+ end
200
+
201
+ # return the object in the form of hash
202
+ def to_hash
203
+ hash = {}
204
+ self.class.attribute_map.each_pair do |attr, param|
205
+ value = self.send(attr)
206
+ next if value.nil?
207
+ hash[param] = _to_hash(value)
208
+ end
209
+ hash
210
+ end
211
+
212
+ # Method to output non-array value in the form of hash
213
+ # For object, use to_hash. Otherwise, just return the value
214
+ def _to_hash(value)
215
+ if value.is_a?(Array)
216
+ value.compact.map{ |v| _to_hash(v) }
217
+ elsif value.is_a?(Hash)
218
+ {}.tap do |hash|
219
+ value.each { |k, v| hash[k] = _to_hash(v) }
220
+ end
221
+ elsif value.respond_to? :to_hash
222
+ value.to_hash
223
+ else
224
+ value
225
+ end
226
+ end
227
+
228
+ end
229
+ end