purecloudplatformclientv2 20.0.0 → 21.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 (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