purecloudplatformclientv2 75.1.0 → 79.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 (179) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/ActivityCode.md +1 -1
  4. data/docs/AnalyticsApi.md +66 -2
  5. data/docs/AnalyticsConversationAsyncQueryResponse.md +1 -1
  6. data/docs/AnalyticsConversationQueryResponse.md +1 -1
  7. data/docs/AnalyticsParticipant.md +1 -0
  8. data/docs/AnalyticsParticipantWithoutAttributes.md +1 -0
  9. data/docs/ArchitectApi.md +345 -0
  10. data/docs/AuditApi.md +3 -1
  11. data/docs/AuditLogMessage.md +1 -1
  12. data/docs/AuthorizationApi.md +154 -9
  13. data/docs/AvailableTopic.md +3 -1
  14. data/docs/BuAgentScheduleActivity.md +18 -0
  15. data/docs/BuAgentSchedulePublishedScheduleReference.md +16 -0
  16. data/docs/BuAgentScheduleSearchResponse.md +15 -0
  17. data/docs/BuAgentScheduleShift.md +18 -0
  18. data/docs/BuAgentSchedulesSearchResponse.md +15 -0
  19. data/docs/BuAsyncAgentSchedulesSearchResponse.md +17 -0
  20. data/docs/BuFullDayTimeOffMarker.md +18 -0
  21. data/docs/BuScheduleReference.md +15 -0
  22. data/docs/Call.md +1 -1
  23. data/docs/CallBasic.md +1 -1
  24. data/docs/CallMediaParticipant.md +1 -1
  25. data/docs/CallbackMediaParticipant.md +1 -1
  26. data/docs/CampaignProgress.md +2 -1
  27. data/docs/ChatMediaParticipant.md +1 -1
  28. data/docs/CobrowseMediaParticipant.md +1 -1
  29. data/docs/ConversationsApi.md +71 -1
  30. data/docs/CopyAttachmentsRequest.md +14 -0
  31. data/docs/CreateManagementUnitApiRequest.md +3 -2
  32. data/docs/CreateManagementUnitSettingsRequest.md +1 -1
  33. data/docs/CreateWorkPlanShift.md +1 -1
  34. data/docs/DataTableExportJob.md +22 -0
  35. data/docs/DataTableImportJob.md +25 -0
  36. data/docs/DivsPermittedEntityListing.md +23 -0
  37. data/docs/EmailMediaParticipant.md +1 -1
  38. data/docs/EntityListing.md +17 -0
  39. data/docs/ErrorBody.md +2 -2
  40. data/docs/ErrorInfo.md +14 -0
  41. data/docs/Evaluation.md +1 -0
  42. data/docs/EvaluationQuestionGroupScore.md +4 -0
  43. data/docs/EvaluationScoringSet.md +1 -0
  44. data/docs/FacebookIntegrationRequest.md +2 -2
  45. data/docs/GDPRJourneyCustomer.md +2 -2
  46. data/docs/InboundDomain.md +2 -0
  47. data/docs/Library.md +4 -3
  48. data/docs/LicenseApi.md +66 -0
  49. data/docs/MailFromResult.md +15 -0
  50. data/docs/ManagementUnit.md +2 -2
  51. data/docs/ManagementUnitSettingsRequest.md +1 -1
  52. data/docs/MessageMediaParticipant.md +1 -1
  53. data/docs/MessagingApi.md +0 -936
  54. data/docs/MessagingTemplate.md +15 -0
  55. data/docs/Organization.md +1 -0
  56. data/docs/QualityApi.md +5 -6
  57. data/docs/Record.md +15 -0
  58. data/docs/ReportingExportMetadataJobListing.md +22 -0
  59. data/docs/ReportingExportMetadataJobResponse.md +22 -0
  60. data/docs/Response.md +2 -0
  61. data/docs/RoutingApi.md +385 -0
  62. data/docs/RoutingSettings.md +13 -0
  63. data/docs/SCIMApi.md +397 -23
  64. data/docs/ScimUserExtensions.md +14 -0
  65. data/docs/ScimUserRole.md +13 -0
  66. data/docs/ScimUserRoutingLanguage.md +14 -0
  67. data/docs/ScimUserRoutingSkill.md +14 -0
  68. data/docs/ScimV2CreateUser.md +2 -1
  69. data/docs/ScimV2SchemaAttribute.md +24 -0
  70. data/docs/ScimV2SchemaDefinition.md +17 -0
  71. data/docs/ScimV2SchemaListResponse.md +17 -0
  72. data/docs/ScimV2User.md +2 -1
  73. data/docs/ShortTermForecast.md +2 -2
  74. data/docs/ShortTermForecastListItemResponse.md +2 -2
  75. data/docs/ShortTermForecastReference.md +2 -2
  76. data/docs/TimeOffRequestLookup.md +3 -3
  77. data/docs/TimeOffRequestResponse.md +3 -3
  78. data/docs/UserScheduleAdherence.md +1 -1
  79. data/docs/UsersApi.md +358 -10
  80. data/docs/ViewFilter.md +4 -10
  81. data/docs/WeekSchedule.md +1 -1
  82. data/docs/WeekScheduleListItemResponse.md +1 -1
  83. data/docs/WeekScheduleReference.md +1 -1
  84. data/docs/WorkPlanShift.md +1 -1
  85. data/docs/WorkforceManagementApi.md +40 -41
  86. data/lib/purecloudplatformclientv2.rb +27 -0
  87. data/lib/purecloudplatformclientv2/api/analytics_api.rb +73 -0
  88. data/lib/purecloudplatformclientv2/api/architect_api.rb +373 -0
  89. data/lib/purecloudplatformclientv2/api/audit_api.rb +9 -0
  90. data/lib/purecloudplatformclientv2/api/authorization_api.rb +185 -7
  91. data/lib/purecloudplatformclientv2/api/conversations_api.rb +84 -0
  92. data/lib/purecloudplatformclientv2/api/license_api.rb +63 -0
  93. data/lib/purecloudplatformclientv2/api/messaging_api.rb +0 -949
  94. data/lib/purecloudplatformclientv2/api/quality_api.rb +8 -6
  95. data/lib/purecloudplatformclientv2/api/routing_api.rb +378 -0
  96. data/lib/purecloudplatformclientv2/api/scim_api.rb +366 -26
  97. data/lib/purecloudplatformclientv2/api/users_api.rb +398 -7
  98. data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +3 -3
  99. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  100. data/lib/purecloudplatformclientv2/models/activity_code.rb +30 -30
  101. data/lib/purecloudplatformclientv2/models/analytics_conversation_async_query_response.rb +15 -15
  102. data/lib/purecloudplatformclientv2/models/analytics_conversation_query_response.rb +15 -15
  103. data/lib/purecloudplatformclientv2/models/analytics_participant.rb +27 -1
  104. data/lib/purecloudplatformclientv2/models/analytics_participant_without_attributes.rb +27 -1
  105. data/lib/purecloudplatformclientv2/models/audit_log_message.rb +5 -5
  106. data/lib/purecloudplatformclientv2/models/available_topic.rb +57 -4
  107. data/lib/purecloudplatformclientv2/models/bu_agent_schedule_activity.rb +332 -0
  108. data/lib/purecloudplatformclientv2/models/bu_agent_schedule_published_schedule_reference.rb +280 -0
  109. data/lib/purecloudplatformclientv2/models/bu_agent_schedule_search_response.rb +258 -0
  110. data/lib/purecloudplatformclientv2/models/bu_agent_schedule_shift.rb +334 -0
  111. data/lib/purecloudplatformclientv2/models/bu_agent_schedules_search_response.rb +258 -0
  112. data/lib/purecloudplatformclientv2/models/bu_async_agent_schedules_search_response.rb +320 -0
  113. data/lib/purecloudplatformclientv2/models/bu_full_day_time_off_marker.rb +332 -0
  114. data/lib/purecloudplatformclientv2/models/bu_schedule_reference.rb +254 -0
  115. data/lib/purecloudplatformclientv2/models/call.rb +1 -1
  116. data/lib/purecloudplatformclientv2/models/call_basic.rb +1 -1
  117. data/lib/purecloudplatformclientv2/models/call_media_participant.rb +1 -1
  118. data/lib/purecloudplatformclientv2/models/callback_media_participant.rb +1 -1
  119. data/lib/purecloudplatformclientv2/models/campaign_progress.rb +28 -2
  120. data/lib/purecloudplatformclientv2/models/chat_media_participant.rb +1 -1
  121. data/lib/purecloudplatformclientv2/models/cobrowse_media_participant.rb +1 -1
  122. data/lib/purecloudplatformclientv2/models/conversation_aggregate_query_predicate.rb +2 -2
  123. data/lib/purecloudplatformclientv2/models/copy_attachments_request.rb +240 -0
  124. data/lib/purecloudplatformclientv2/models/create_management_unit_api_request.rb +37 -16
  125. data/lib/purecloudplatformclientv2/models/create_management_unit_settings_request.rb +1 -1
  126. data/lib/purecloudplatformclientv2/models/create_work_plan_shift.rb +1 -1
  127. data/lib/purecloudplatformclientv2/models/data_table_export_job.rb +455 -0
  128. data/lib/purecloudplatformclientv2/models/data_table_import_job.rb +547 -0
  129. data/lib/purecloudplatformclientv2/models/divs_permitted_entity_listing.rb +453 -0
  130. data/lib/purecloudplatformclientv2/models/email_media_participant.rb +1 -1
  131. data/lib/purecloudplatformclientv2/models/entity_listing.rb +303 -0
  132. data/lib/purecloudplatformclientv2/models/error_body.rb +20 -20
  133. data/lib/purecloudplatformclientv2/models/error_info.rb +226 -0
  134. data/lib/purecloudplatformclientv2/models/evaluation.rb +27 -1
  135. data/lib/purecloudplatformclientv2/models/evaluation_question_group_score.rb +101 -1
  136. data/lib/purecloudplatformclientv2/models/evaluation_scoring_set.rb +26 -1
  137. data/lib/purecloudplatformclientv2/models/facebook_integration_request.rb +2 -7
  138. data/lib/purecloudplatformclientv2/models/flow_aggregate_query_predicate.rb +2 -2
  139. data/lib/purecloudplatformclientv2/models/gdpr_journey_customer.rb +2 -12
  140. data/lib/purecloudplatformclientv2/models/inbound_domain.rb +53 -1
  141. data/lib/purecloudplatformclientv2/models/library.rb +44 -2
  142. data/lib/purecloudplatformclientv2/models/mail_from_result.rb +275 -0
  143. data/lib/purecloudplatformclientv2/models/management_unit.rb +2 -2
  144. data/lib/purecloudplatformclientv2/models/management_unit_settings_request.rb +1 -1
  145. data/lib/purecloudplatformclientv2/models/message_media_participant.rb +1 -1
  146. data/lib/purecloudplatformclientv2/models/messaging_template.rb +270 -0
  147. data/lib/purecloudplatformclientv2/models/organization.rb +41 -1
  148. data/lib/purecloudplatformclientv2/models/record.rb +269 -0
  149. data/lib/purecloudplatformclientv2/models/reporting_export_job_response.rb +2 -2
  150. data/lib/purecloudplatformclientv2/models/reporting_export_metadata_job_listing.rb +428 -0
  151. data/lib/purecloudplatformclientv2/models/reporting_export_metadata_job_response.rb +459 -0
  152. data/lib/purecloudplatformclientv2/models/response.rb +67 -1
  153. data/lib/purecloudplatformclientv2/models/routing_settings.rb +202 -0
  154. data/lib/purecloudplatformclientv2/models/scim_metadata.rb +2 -2
  155. data/lib/purecloudplatformclientv2/models/scim_user_extensions.rb +233 -0
  156. data/lib/purecloudplatformclientv2/models/scim_user_role.rb +203 -0
  157. data/lib/purecloudplatformclientv2/models/scim_user_routing_language.rb +234 -0
  158. data/lib/purecloudplatformclientv2/models/scim_user_routing_skill.rb +234 -0
  159. data/lib/purecloudplatformclientv2/models/scim_v2_create_user.rb +30 -5
  160. data/lib/purecloudplatformclientv2/models/scim_v2_group_reference.rb +2 -2
  161. data/lib/purecloudplatformclientv2/models/scim_v2_member_reference.rb +2 -2
  162. data/lib/purecloudplatformclientv2/models/scim_v2_schema_attribute.rb +551 -0
  163. data/lib/purecloudplatformclientv2/models/scim_v2_schema_definition.rb +309 -0
  164. data/lib/purecloudplatformclientv2/models/scim_v2_schema_list_response.rb +311 -0
  165. data/lib/purecloudplatformclientv2/models/scim_v2_user.rb +27 -2
  166. data/lib/purecloudplatformclientv2/models/segment_detail_query_predicate.rb +2 -2
  167. data/lib/purecloudplatformclientv2/models/short_term_forecast.rb +30 -35
  168. data/lib/purecloudplatformclientv2/models/short_term_forecast_list_item_response.rb +30 -35
  169. data/lib/purecloudplatformclientv2/models/short_term_forecast_reference.rb +22 -27
  170. data/lib/purecloudplatformclientv2/models/time_off_request_lookup.rb +3 -3
  171. data/lib/purecloudplatformclientv2/models/time_off_request_response.rb +3 -3
  172. data/lib/purecloudplatformclientv2/models/user_schedule_adherence.rb +1 -1
  173. data/lib/purecloudplatformclientv2/models/view_filter.rb +53 -255
  174. data/lib/purecloudplatformclientv2/models/week_schedule.rb +21 -21
  175. data/lib/purecloudplatformclientv2/models/week_schedule_list_item_response.rb +21 -21
  176. data/lib/purecloudplatformclientv2/models/week_schedule_reference.rb +14 -14
  177. data/lib/purecloudplatformclientv2/models/work_plan_shift.rb +1 -1
  178. data/lib/purecloudplatformclientv2/version.rb +1 -1
  179. metadata +56 -2
@@ -22,10 +22,10 @@ module PureCloud
22
22
  # The name of the management unit
23
23
  attr_accessor :name
24
24
 
25
- # The default time zone to use for this management unit
25
+ # The default time zone to use for this management unit. Moving to Business Unit
26
26
  attr_accessor :time_zone
27
27
 
28
- # The configured first day of the week for scheduling and forecasting purposes
28
+ # The configured first day of the week for scheduling and forecasting purposes. Moving to Business Unit
29
29
  attr_accessor :start_day_of_week
30
30
 
31
31
  # The configuration for the management unit. If omitted, reasonable defaults will be assigned
@@ -34,6 +34,9 @@ module PureCloud
34
34
  # The id of the division to which this management unit belongs. Defaults to home division ID
35
35
  attr_accessor :division_id
36
36
 
37
+ # The id of the business unit to which this management unit belongs. Required after business unit launch
38
+ attr_accessor :business_unit_id
39
+
37
40
  # Attribute mapping from ruby-style variable name to JSON key.
38
41
  def self.attribute_map
39
42
  {
@@ -46,7 +49,9 @@ module PureCloud
46
49
 
47
50
  :'settings' => :'settings',
48
51
 
49
- :'division_id' => :'divisionId'
52
+ :'division_id' => :'divisionId',
53
+
54
+ :'business_unit_id' => :'businessUnitId'
50
55
 
51
56
  }
52
57
  end
@@ -63,7 +68,9 @@ module PureCloud
63
68
 
64
69
  :'settings' => :'CreateManagementUnitSettingsRequest',
65
70
 
66
- :'division_id' => :'String'
71
+ :'division_id' => :'String',
72
+
73
+ :'business_unit_id' => :'String'
67
74
 
68
75
  }
69
76
  end
@@ -122,6 +129,15 @@ module PureCloud
122
129
  end
123
130
 
124
131
 
132
+ if attributes.has_key?(:'businessUnitId')
133
+
134
+
135
+ self.business_unit_id = attributes[:'businessUnitId']
136
+
137
+
138
+ end
139
+
140
+
125
141
  end
126
142
 
127
143
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -147,21 +163,11 @@ module PureCloud
147
163
 
148
164
 
149
165
 
150
- if @time_zone.nil?
151
- return false
152
- end
153
-
154
166
 
155
167
 
156
168
 
157
169
 
158
170
 
159
- if @start_day_of_week.nil?
160
- return false
161
- end
162
-
163
-
164
-
165
171
  allowed_values = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
166
172
  if @start_day_of_week && !allowed_values.include?(@start_day_of_week)
167
173
  return false
@@ -177,6 +183,15 @@ module PureCloud
177
183
 
178
184
 
179
185
 
186
+
187
+ if @business_unit_id.nil?
188
+ return false
189
+ end
190
+
191
+
192
+
193
+
194
+
180
195
  end
181
196
 
182
197
 
@@ -214,6 +229,11 @@ module PureCloud
214
229
 
215
230
 
216
231
 
232
+
233
+
234
+
235
+
236
+
217
237
  # Checks equality by comparing each attribute.
218
238
  # @param [Object] Object to be compared
219
239
  def ==(o)
@@ -223,7 +243,8 @@ module PureCloud
223
243
  time_zone == o.time_zone &&
224
244
  start_day_of_week == o.start_day_of_week &&
225
245
  settings == o.settings &&
226
- division_id == o.division_id
246
+ division_id == o.division_id &&
247
+ business_unit_id == o.business_unit_id
227
248
  end
228
249
 
229
250
  # @see the `==` method
@@ -235,7 +256,7 @@ module PureCloud
235
256
  # Calculates hash code according to all attributes.
236
257
  # @return [Fixnum] Hash code
237
258
  def hash
238
- [name, time_zone, start_day_of_week, settings, division_id].hash
259
+ [name, time_zone, start_day_of_week, settings, division_id, business_unit_id].hash
239
260
  end
240
261
 
241
262
  # build the object from hash
@@ -22,7 +22,7 @@ module PureCloud
22
22
  # Adherence settings for this management unit
23
23
  attr_accessor :adherence
24
24
 
25
- # Short term forecasting settings for this management unit
25
+ # Short term forecasting settings for this management unit. Moving to Business Unit
26
26
  attr_accessor :short_term_forecasting
27
27
 
28
28
  # Time off request settings for this management unit
@@ -37,7 +37,7 @@ module PureCloud
37
37
  # Latest start time of the shift defined as offset minutes from midnight. Used if flexibleStartTime == true
38
38
  attr_accessor :latest_start_time_minutes_from_midnight
39
39
 
40
- # Whether the latest stop time constraint for the shift is enabled
40
+ # Whether the latest stop time constraint for the shift is enabled. Deprecated, use constrainLatestStopTime instead
41
41
  attr_accessor :constrain_stop_time
42
42
 
43
43
  # Whether the latest stop time constraint for the shift is enabled
@@ -0,0 +1,455 @@
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
+ # State information for an export job of rows from a datatable
21
+ class DataTableExportJob
22
+ # The globally unique identifier for the object.
23
+ attr_accessor :id
24
+
25
+ attr_accessor :name
26
+
27
+ # The PureCloud user who started the export job
28
+ attr_accessor :owner
29
+
30
+ # The status of the export job
31
+ attr_accessor :status
32
+
33
+ # The timestamp of when the export began. Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
34
+ attr_accessor :date_created
35
+
36
+ # The timestamp of when the export stopped (either successfully or unsuccessfully). Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
37
+ attr_accessor :date_completed
38
+
39
+ # The URL of the location at which the caller can download the export file, when available
40
+ attr_accessor :download_uri
41
+
42
+ # Any error information, or null of the processing is not in an error state
43
+ attr_accessor :error_information
44
+
45
+ # The current count of the number of records processed
46
+ attr_accessor :count_records_processed
47
+
48
+ # The URI for this object
49
+ attr_accessor :self_uri
50
+
51
+ # Attribute mapping from ruby-style variable name to JSON key.
52
+ def self.attribute_map
53
+ {
54
+
55
+ :'id' => :'id',
56
+
57
+ :'name' => :'name',
58
+
59
+ :'owner' => :'owner',
60
+
61
+ :'status' => :'status',
62
+
63
+ :'date_created' => :'dateCreated',
64
+
65
+ :'date_completed' => :'dateCompleted',
66
+
67
+ :'download_uri' => :'downloadURI',
68
+
69
+ :'error_information' => :'errorInformation',
70
+
71
+ :'count_records_processed' => :'countRecordsProcessed',
72
+
73
+ :'self_uri' => :'selfUri'
74
+
75
+ }
76
+ end
77
+
78
+ # Attribute type mapping.
79
+ def self.swagger_types
80
+ {
81
+
82
+ :'id' => :'String',
83
+
84
+ :'name' => :'String',
85
+
86
+ :'owner' => :'AddressableEntityRef',
87
+
88
+ :'status' => :'String',
89
+
90
+ :'date_created' => :'DateTime',
91
+
92
+ :'date_completed' => :'DateTime',
93
+
94
+ :'download_uri' => :'String',
95
+
96
+ :'error_information' => :'ErrorBody',
97
+
98
+ :'count_records_processed' => :'Integer',
99
+
100
+ :'self_uri' => :'String'
101
+
102
+ }
103
+ end
104
+
105
+ # Initializes the object
106
+ # @param [Hash] attributes Model attributes in the form of hash
107
+ def initialize(attributes = {})
108
+ return unless attributes.is_a?(Hash)
109
+
110
+ # convert string to symbol for hash key
111
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
112
+
113
+
114
+ if attributes.has_key?(:'id')
115
+
116
+
117
+ self.id = attributes[:'id']
118
+
119
+
120
+ end
121
+
122
+
123
+ if attributes.has_key?(:'name')
124
+
125
+
126
+ self.name = attributes[:'name']
127
+
128
+
129
+ end
130
+
131
+
132
+ if attributes.has_key?(:'owner')
133
+
134
+
135
+ self.owner = attributes[:'owner']
136
+
137
+
138
+ end
139
+
140
+
141
+ if attributes.has_key?(:'status')
142
+
143
+
144
+ self.status = attributes[:'status']
145
+
146
+
147
+ end
148
+
149
+
150
+ if attributes.has_key?(:'dateCreated')
151
+
152
+
153
+ self.date_created = attributes[:'dateCreated']
154
+
155
+
156
+ end
157
+
158
+
159
+ if attributes.has_key?(:'dateCompleted')
160
+
161
+
162
+ self.date_completed = attributes[:'dateCompleted']
163
+
164
+
165
+ end
166
+
167
+
168
+ if attributes.has_key?(:'downloadURI')
169
+
170
+
171
+ self.download_uri = attributes[:'downloadURI']
172
+
173
+
174
+ end
175
+
176
+
177
+ if attributes.has_key?(:'errorInformation')
178
+
179
+
180
+ self.error_information = attributes[:'errorInformation']
181
+
182
+
183
+ end
184
+
185
+
186
+ if attributes.has_key?(:'countRecordsProcessed')
187
+
188
+
189
+ self.count_records_processed = attributes[:'countRecordsProcessed']
190
+
191
+
192
+ end
193
+
194
+
195
+ if attributes.has_key?(:'selfUri')
196
+
197
+
198
+ self.self_uri = attributes[:'selfUri']
199
+
200
+
201
+ end
202
+
203
+
204
+ end
205
+
206
+ # Show invalid properties with the reasons. Usually used together with valid?
207
+ # @return Array for valid properies with the reasons
208
+ def list_invalid_properties
209
+ invalid_properties = Array.new
210
+
211
+
212
+ return invalid_properties
213
+ end
214
+
215
+ # Check to see if the all the properties in the model are valid
216
+ # @return true if the model is valid
217
+ def valid?
218
+
219
+
220
+
221
+
222
+
223
+
224
+
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+ if @status.nil?
233
+ return false
234
+ end
235
+
236
+
237
+
238
+ allowed_values = ["Processing", "Failed", "Succeeded"]
239
+ if @status && !allowed_values.include?(@status)
240
+ return false
241
+ end
242
+
243
+
244
+
245
+
246
+
247
+
248
+
249
+
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+
260
+
261
+
262
+
263
+
264
+
265
+
266
+
267
+
268
+
269
+ end
270
+
271
+
272
+
273
+
274
+
275
+
276
+
277
+
278
+
279
+
280
+
281
+
282
+
283
+
284
+
285
+
286
+
287
+
288
+ # Custom attribute writer method checking allowed values (enum).
289
+ # @param [Object] status Object to be assigned
290
+ def status=(status)
291
+ allowed_values = ["Processing", "Failed", "Succeeded"]
292
+ if status && !allowed_values.include?(status)
293
+ fail ArgumentError, "invalid value for 'status', must be one of #{allowed_values}."
294
+ end
295
+ @status = status
296
+ end
297
+
298
+
299
+
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+
314
+
315
+
316
+
317
+
318
+
319
+
320
+
321
+
322
+
323
+
324
+
325
+
326
+
327
+
328
+
329
+
330
+
331
+ # Checks equality by comparing each attribute.
332
+ # @param [Object] Object to be compared
333
+ def ==(o)
334
+ return true if self.equal?(o)
335
+ self.class == o.class &&
336
+ id == o.id &&
337
+ name == o.name &&
338
+ owner == o.owner &&
339
+ status == o.status &&
340
+ date_created == o.date_created &&
341
+ date_completed == o.date_completed &&
342
+ download_uri == o.download_uri &&
343
+ error_information == o.error_information &&
344
+ count_records_processed == o.count_records_processed &&
345
+ self_uri == o.self_uri
346
+ end
347
+
348
+ # @see the `==` method
349
+ # @param [Object] Object to be compared
350
+ def eql?(o)
351
+ self == o
352
+ end
353
+
354
+ # Calculates hash code according to all attributes.
355
+ # @return [Fixnum] Hash code
356
+ def hash
357
+ [id, name, owner, status, date_created, date_completed, download_uri, error_information, count_records_processed, self_uri].hash
358
+ end
359
+
360
+ # build the object from hash
361
+ def build_from_hash(attributes)
362
+ return nil unless attributes.is_a?(Hash)
363
+ self.class.swagger_types.each_pair do |key, type|
364
+ if type =~ /^Array<(.*)>/i
365
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
366
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
367
+ else
368
+ #TODO show warning in debug mode
369
+ end
370
+ elsif !attributes[self.class.attribute_map[key]].nil?
371
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
372
+ else
373
+ # data not found in attributes(hash), not an issue as the data can be optional
374
+ end
375
+ end
376
+
377
+ self
378
+ end
379
+
380
+ def _deserialize(type, value)
381
+ case type.to_sym
382
+ when :DateTime
383
+ DateTime.parse(value)
384
+ when :Date
385
+ Date.parse(value)
386
+ when :String
387
+ value.to_s
388
+ when :Integer
389
+ value.to_i
390
+ when :Float
391
+ value.to_f
392
+ when :BOOLEAN
393
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
394
+ true
395
+ else
396
+ false
397
+ end
398
+ when :Object
399
+ # generic object (usually a Hash), return directly
400
+ value
401
+ when /\AArray<(?<inner_type>.+)>\z/
402
+ inner_type = Regexp.last_match[:inner_type]
403
+ value.map { |v| _deserialize(inner_type, v) }
404
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
405
+ k_type = Regexp.last_match[:k_type]
406
+ v_type = Regexp.last_match[:v_type]
407
+ {}.tap do |hash|
408
+ value.each do |k, v|
409
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
410
+ end
411
+ end
412
+ else # model
413
+ _model = Object.const_get("PureCloud").const_get(type).new
414
+ _model.build_from_hash(value)
415
+ end
416
+ end
417
+
418
+ def to_s
419
+ to_hash.to_s
420
+ end
421
+
422
+ # to_body is an alias to to_body (backward compatibility))
423
+ def to_body
424
+ to_hash
425
+ end
426
+
427
+ # return the object in the form of hash
428
+ def to_hash
429
+ hash = {}
430
+ self.class.attribute_map.each_pair do |attr, param|
431
+ value = self.send(attr)
432
+ next if value.nil?
433
+ hash[param] = _to_hash(value)
434
+ end
435
+ hash
436
+ end
437
+
438
+ # Method to output non-array value in the form of hash
439
+ # For object, use to_hash. Otherwise, just return the value
440
+ def _to_hash(value)
441
+ if value.is_a?(Array)
442
+ value.compact.map{ |v| _to_hash(v) }
443
+ elsif value.is_a?(Hash)
444
+ {}.tap do |hash|
445
+ value.each { |k, v| hash[k] = _to_hash(v) }
446
+ end
447
+ elsif value.respond_to? :to_hash
448
+ value.to_hash
449
+ else
450
+ value
451
+ end
452
+ end
453
+
454
+ end
455
+ end