purecloudplatformclientv2 87.0.0 → 92.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 +5 -5
  3. data/docs/AmazonLexRequest.md +14 -0
  4. data/docs/AnalyticsEvaluation.md +1 -1
  5. data/docs/ApiUsageQuery.md +16 -0
  6. data/docs/ApiUsageQueryResult.md +14 -0
  7. data/docs/ApiUsageRow.md +25 -0
  8. data/docs/ArchitectApi.md +132 -0
  9. data/docs/AuditApi.md +130 -0
  10. data/docs/AuditQueryEntity.md +14 -0
  11. data/docs/AuditQueryExecutionStatusResponse.md +1 -0
  12. data/docs/AuditQueryRequest.md +1 -0
  13. data/docs/AuditQueryService.md +14 -0
  14. data/docs/AuditQueryServiceMapping.md +13 -0
  15. data/docs/AuditQuerySort.md +14 -0
  16. data/docs/AuditRealtimeQueryRequest.md +18 -0
  17. data/docs/AuditRealtimeQueryResultsResponse.md +17 -0
  18. data/docs/BuAgentScheduleActivity.md +2 -0
  19. data/docs/BuRescheduleRequest.md +2 -2
  20. data/docs/ButtonComponent.md +16 -0
  21. data/docs/CoachingApi.md +1 -1
  22. data/docs/ContentActions.md +17 -0
  23. data/docs/ContentAttachment.md +19 -0
  24. data/docs/ContentGeneric.md +19 -0
  25. data/docs/ContentList.md +19 -0
  26. data/docs/ContentLocation.md +17 -0
  27. data/docs/ContentNotificationTemplate.md +17 -0
  28. data/docs/ContentQuickReply.md +16 -0
  29. data/docs/ConversationAggregationQuery.md +1 -1
  30. data/docs/CreateQueueRequest.md +1 -0
  31. data/docs/EdgeGroup.md +1 -0
  32. data/docs/EntityListing.md +1 -5
  33. data/docs/EvaluationAggregationQuery.md +1 -1
  34. data/docs/ExternalContact.md +2 -0
  35. data/docs/ExternalOrganization.md +2 -0
  36. data/docs/FlowAggregationQuery.md +1 -1
  37. data/docs/FlowExecutionLaunchRequest.md +16 -0
  38. data/docs/FlowExecutionLaunchResponse.md +16 -0
  39. data/docs/FlowRuntimeExecution.md +23 -0
  40. data/docs/GenericSAML.md +22 -0
  41. data/docs/GoogleDialogflowCustomSettings.md +13 -0
  42. data/docs/GroupsApi.md +4 -4
  43. data/docs/IdentityProviderApi.md +187 -0
  44. data/docs/IpAddressAuthentication.md +13 -0
  45. data/docs/KnowledgeSearchResponse.md +1 -1
  46. data/docs/LanguageUnderstandingApi.md +164 -30
  47. data/docs/ListItemComponent.md +19 -0
  48. data/docs/MessageContent.md +19 -0
  49. data/docs/NluDomainVersion.md +3 -1
  50. data/docs/NotificationTemplateBody.md +14 -0
  51. data/docs/NotificationTemplateFooter.md +13 -0
  52. data/docs/NotificationTemplateHeader.md +16 -0
  53. data/docs/NotificationTemplateParameter.md +14 -0
  54. data/docs/OAuthApi.md +208 -0
  55. data/docs/OrganizationApi.md +126 -0
  56. data/docs/PostTextMessage.md +15 -0
  57. data/docs/PostTextRequest.md +23 -0
  58. data/docs/PostTextResponse.md +20 -0
  59. data/docs/Prompt.md +2 -2
  60. data/docs/Queue.md +1 -0
  61. data/docs/QueueRequest.md +1 -0
  62. data/docs/RecordingApi.md +12 -0
  63. data/docs/ReportingDataExportTopicDataExportNotification.md +1 -0
  64. data/docs/ScimEmail.md +1 -1
  65. data/docs/SurveyAggregationQuery.md +1 -1
  66. data/docs/SurveyForm.md +0 -2
  67. data/docs/TextbotsApi.md +78 -0
  68. data/docs/UploadUrlRequest.md +1 -0
  69. data/docs/UsageApi.md +144 -0
  70. data/docs/UsageExecutionResult.md +14 -0
  71. data/docs/UserAggregationQuery.md +1 -1
  72. data/docs/UserQueue.md +1 -0
  73. data/docs/UsersApi.md +5 -5
  74. data/docs/ViewFilter.md +2 -0
  75. data/docs/VoicemailMessagesTopicOwner.md +13 -0
  76. data/docs/VoicemailMessagesTopicVoicemailCopyRecord.md +14 -0
  77. data/docs/VoicemailMessagesTopicVoicemailMessage.md +2 -0
  78. data/docs/WfmBuShortTermForecastImportCompleteTopicBuForecastModification.md +23 -0
  79. data/docs/WfmBuShortTermForecastImportCompleteTopicBuShortTermForecast.md +24 -0
  80. data/docs/WfmBuShortTermForecastImportCompleteTopicBuShortTermForecastNotification.md +15 -0
  81. data/docs/WfmBuShortTermForecastImportCompleteTopicForecastSourceDayPointer.md +17 -0
  82. data/docs/WfmBuShortTermForecastImportCompleteTopicModificationIntervalOffsetValue.md +14 -0
  83. data/docs/WfmBuShortTermForecastImportCompleteTopicUserReference.md +13 -0
  84. data/docs/WfmBuShortTermForecastImportCompleteTopicWfmVersionedEntityMetadata.md +15 -0
  85. data/docs/WorkforceManagementApi.md +3 -3
  86. data/lib/purecloudplatformclientv2.rb +45 -0
  87. data/lib/purecloudplatformclientv2/api/architect_api.rb +130 -0
  88. data/lib/purecloudplatformclientv2/api/audit_api.rb +129 -0
  89. data/lib/purecloudplatformclientv2/api/groups_api.rb +4 -4
  90. data/lib/purecloudplatformclientv2/api/identity_provider_api.rb +175 -0
  91. data/lib/purecloudplatformclientv2/api/language_understanding_api.rb +189 -30
  92. data/lib/purecloudplatformclientv2/api/o_auth_api.rb +224 -0
  93. data/lib/purecloudplatformclientv2/api/organization_api.rb +120 -0
  94. data/lib/purecloudplatformclientv2/api/recording_api.rb +78 -0
  95. data/lib/purecloudplatformclientv2/api/textbots_api.rb +92 -0
  96. data/lib/purecloudplatformclientv2/api/usage_api.rb +157 -0
  97. data/lib/purecloudplatformclientv2/api/users_api.rb +4 -4
  98. data/lib/purecloudplatformclientv2/api/workforce_management_api.rb +6 -6
  99. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  100. data/lib/purecloudplatformclientv2/models/amazon_lex_request.rb +232 -0
  101. data/lib/purecloudplatformclientv2/models/analytics_evaluation.rb +13 -13
  102. data/lib/purecloudplatformclientv2/models/api_usage_query.rb +303 -0
  103. data/lib/purecloudplatformclientv2/models/api_usage_query_result.rb +244 -0
  104. data/lib/purecloudplatformclientv2/models/api_usage_row.rb +514 -0
  105. data/lib/purecloudplatformclientv2/models/audit_log_message.rb +6 -6
  106. data/lib/purecloudplatformclientv2/models/audit_query_entity.rb +244 -0
  107. data/lib/purecloudplatformclientv2/models/audit_query_execution_status_response.rb +34 -6
  108. data/lib/purecloudplatformclientv2/models/audit_query_request.rb +34 -6
  109. data/lib/purecloudplatformclientv2/models/audit_query_service.rb +244 -0
  110. data/lib/purecloudplatformclientv2/models/audit_query_service_mapping.rb +204 -0
  111. data/lib/purecloudplatformclientv2/models/audit_query_sort.rb +266 -0
  112. data/lib/purecloudplatformclientv2/models/audit_realtime_query_request.rb +360 -0
  113. data/lib/purecloudplatformclientv2/models/audit_realtime_query_results_response.rb +303 -0
  114. data/lib/purecloudplatformclientv2/models/bu_agent_schedule_activity.rb +70 -4
  115. data/lib/purecloudplatformclientv2/models/bu_reschedule_request.rb +2 -12
  116. data/lib/purecloudplatformclientv2/models/button_component.rb +281 -0
  117. data/lib/purecloudplatformclientv2/models/coaching_appointment_response.rb +2 -2
  118. data/lib/purecloudplatformclientv2/models/coaching_notification.rb +2 -2
  119. data/lib/purecloudplatformclientv2/models/content_actions.rb +309 -0
  120. data/lib/purecloudplatformclientv2/models/content_attachment.rb +378 -0
  121. data/lib/purecloudplatformclientv2/models/content_generic.rb +361 -0
  122. data/lib/purecloudplatformclientv2/models/content_list.rb +375 -0
  123. data/lib/purecloudplatformclientv2/models/content_location.rb +307 -0
  124. data/lib/purecloudplatformclientv2/models/content_notification_template.rb +312 -0
  125. data/lib/purecloudplatformclientv2/models/content_quick_reply.rb +300 -0
  126. data/lib/purecloudplatformclientv2/models/conversation_aggregate_query_predicate.rb +2 -2
  127. data/lib/purecloudplatformclientv2/models/conversation_aggregation_query.rb +1 -1
  128. data/lib/purecloudplatformclientv2/models/create_queue_request.rb +29 -1
  129. data/lib/purecloudplatformclientv2/models/edge_group.rb +27 -1
  130. data/lib/purecloudplatformclientv2/models/entity_listing.rb +4 -104
  131. data/lib/purecloudplatformclientv2/models/evaluation_aggregation_query.rb +1 -1
  132. data/lib/purecloudplatformclientv2/models/event_message.rb +2 -2
  133. data/lib/purecloudplatformclientv2/models/external_contact.rb +55 -1
  134. data/lib/purecloudplatformclientv2/models/external_organization.rb +55 -1
  135. data/lib/purecloudplatformclientv2/models/flow_aggregate_query_predicate.rb +2 -2
  136. data/lib/purecloudplatformclientv2/models/flow_aggregation_query.rb +1 -1
  137. data/lib/purecloudplatformclientv2/models/flow_execution_launch_request.rb +288 -0
  138. data/lib/purecloudplatformclientv2/models/flow_execution_launch_response.rb +281 -0
  139. data/lib/purecloudplatformclientv2/models/flow_runtime_execution.rb +494 -0
  140. data/lib/purecloudplatformclientv2/models/generic_saml.rb +428 -0
  141. data/lib/purecloudplatformclientv2/models/google_dialogflow_custom_settings.rb +202 -0
  142. data/lib/purecloudplatformclientv2/models/ip_address_authentication.rb +203 -0
  143. data/lib/purecloudplatformclientv2/models/knowledge_search_response.rb +18 -18
  144. data/lib/purecloudplatformclientv2/models/list_item_component.rb +373 -0
  145. data/lib/purecloudplatformclientv2/models/message_content.rb +378 -0
  146. data/lib/purecloudplatformclientv2/models/nlu_domain_version.rb +72 -1
  147. data/lib/purecloudplatformclientv2/models/notification_template_body.rb +236 -0
  148. data/lib/purecloudplatformclientv2/models/notification_template_footer.rb +203 -0
  149. data/lib/purecloudplatformclientv2/models/notification_template_header.rb +302 -0
  150. data/lib/purecloudplatformclientv2/models/notification_template_parameter.rb +234 -0
  151. data/lib/purecloudplatformclientv2/models/post_text_message.rb +275 -0
  152. data/lib/purecloudplatformclientv2/models/post_text_request.rb +482 -0
  153. data/lib/purecloudplatformclientv2/models/post_text_response.rb +413 -0
  154. data/lib/purecloudplatformclientv2/models/prompt.rb +2 -0
  155. data/lib/purecloudplatformclientv2/models/prompt_asset.rb +15 -1
  156. data/lib/purecloudplatformclientv2/models/prompt_asset_create.rb +15 -1
  157. data/lib/purecloudplatformclientv2/models/queue.rb +29 -1
  158. data/lib/purecloudplatformclientv2/models/queue_request.rb +29 -1
  159. data/lib/purecloudplatformclientv2/models/reporting_data_export_topic_data_export_notification.rb +31 -4
  160. data/lib/purecloudplatformclientv2/models/scim_email.rb +1 -1
  161. data/lib/purecloudplatformclientv2/models/survey_aggregation_query.rb +1 -1
  162. data/lib/purecloudplatformclientv2/models/survey_form.rb +1 -53
  163. data/lib/purecloudplatformclientv2/models/upload_url_request.rb +43 -4
  164. data/lib/purecloudplatformclientv2/models/usage_execution_result.rb +228 -0
  165. data/lib/purecloudplatformclientv2/models/user_aggregation_query.rb +1 -1
  166. data/lib/purecloudplatformclientv2/models/user_queue.rb +29 -1
  167. data/lib/purecloudplatformclientv2/models/view_filter.rb +58 -4
  168. data/lib/purecloudplatformclientv2/models/voicemail_messages_topic_owner.rb +201 -0
  169. data/lib/purecloudplatformclientv2/models/voicemail_messages_topic_voicemail_copy_record.rb +226 -0
  170. data/lib/purecloudplatformclientv2/models/voicemail_messages_topic_voicemail_message.rb +56 -4
  171. data/lib/purecloudplatformclientv2/models/wfm_bu_short_term_forecast_import_complete_topic_bu_forecast_modification.rb +497 -0
  172. data/lib/purecloudplatformclientv2/models/wfm_bu_short_term_forecast_import_complete_topic_bu_short_term_forecast.rb +494 -0
  173. data/lib/purecloudplatformclientv2/models/wfm_bu_short_term_forecast_import_complete_topic_bu_short_term_forecast_notification.rb +265 -0
  174. data/lib/purecloudplatformclientv2/models/wfm_bu_short_term_forecast_import_complete_topic_forecast_source_day_pointer.rb +315 -0
  175. data/lib/purecloudplatformclientv2/models/wfm_bu_short_term_forecast_import_complete_topic_modification_interval_offset_value.rb +226 -0
  176. data/lib/purecloudplatformclientv2/models/wfm_bu_short_term_forecast_import_complete_topic_user_reference.rb +201 -0
  177. data/lib/purecloudplatformclientv2/models/wfm_bu_short_term_forecast_import_complete_topic_wfm_versioned_entity_metadata.rb +251 -0
  178. data/lib/purecloudplatformclientv2/version.rb +1 -1
  179. metadata +92 -2
@@ -0,0 +1,428 @@
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 GenericSAML
21
+ # The globally unique identifier for the object.
22
+ attr_accessor :id
23
+
24
+ attr_accessor :name
25
+
26
+ attr_accessor :logo_image_data
27
+
28
+ attr_accessor :relying_party_identifier
29
+
30
+ attr_accessor :endpoint_compression
31
+
32
+ attr_accessor :certificate
33
+
34
+ attr_accessor :issuer_uri
35
+
36
+ attr_accessor :sso_target_uri
37
+
38
+ attr_accessor :disabled
39
+
40
+ # The URI for this object
41
+ attr_accessor :self_uri
42
+
43
+ # Attribute mapping from ruby-style variable name to JSON key.
44
+ def self.attribute_map
45
+ {
46
+
47
+ :'id' => :'id',
48
+
49
+ :'name' => :'name',
50
+
51
+ :'logo_image_data' => :'logoImageData',
52
+
53
+ :'relying_party_identifier' => :'relyingPartyIdentifier',
54
+
55
+ :'endpoint_compression' => :'endpointCompression',
56
+
57
+ :'certificate' => :'certificate',
58
+
59
+ :'issuer_uri' => :'issuerURI',
60
+
61
+ :'sso_target_uri' => :'ssoTargetURI',
62
+
63
+ :'disabled' => :'disabled',
64
+
65
+ :'self_uri' => :'selfUri'
66
+
67
+ }
68
+ end
69
+
70
+ # Attribute type mapping.
71
+ def self.swagger_types
72
+ {
73
+
74
+ :'id' => :'String',
75
+
76
+ :'name' => :'String',
77
+
78
+ :'logo_image_data' => :'String',
79
+
80
+ :'relying_party_identifier' => :'String',
81
+
82
+ :'endpoint_compression' => :'BOOLEAN',
83
+
84
+ :'certificate' => :'String',
85
+
86
+ :'issuer_uri' => :'String',
87
+
88
+ :'sso_target_uri' => :'String',
89
+
90
+ :'disabled' => :'BOOLEAN',
91
+
92
+ :'self_uri' => :'String'
93
+
94
+ }
95
+ end
96
+
97
+ # Initializes the object
98
+ # @param [Hash] attributes Model attributes in the form of hash
99
+ def initialize(attributes = {})
100
+ return unless attributes.is_a?(Hash)
101
+
102
+ # convert string to symbol for hash key
103
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
104
+
105
+
106
+ if attributes.has_key?(:'id')
107
+
108
+
109
+ self.id = attributes[:'id']
110
+
111
+
112
+ end
113
+
114
+
115
+ if attributes.has_key?(:'name')
116
+
117
+
118
+ self.name = attributes[:'name']
119
+
120
+
121
+ end
122
+
123
+
124
+ if attributes.has_key?(:'logoImageData')
125
+
126
+
127
+ self.logo_image_data = attributes[:'logoImageData']
128
+
129
+
130
+ end
131
+
132
+
133
+ if attributes.has_key?(:'relyingPartyIdentifier')
134
+
135
+
136
+ self.relying_party_identifier = attributes[:'relyingPartyIdentifier']
137
+
138
+
139
+ end
140
+
141
+
142
+ if attributes.has_key?(:'endpointCompression')
143
+
144
+
145
+ self.endpoint_compression = attributes[:'endpointCompression']
146
+
147
+
148
+ end
149
+
150
+
151
+ if attributes.has_key?(:'certificate')
152
+
153
+
154
+ self.certificate = attributes[:'certificate']
155
+
156
+
157
+ end
158
+
159
+
160
+ if attributes.has_key?(:'issuerURI')
161
+
162
+
163
+ self.issuer_uri = attributes[:'issuerURI']
164
+
165
+
166
+ end
167
+
168
+
169
+ if attributes.has_key?(:'ssoTargetURI')
170
+
171
+
172
+ self.sso_target_uri = attributes[:'ssoTargetURI']
173
+
174
+
175
+ end
176
+
177
+
178
+ if attributes.has_key?(:'disabled')
179
+
180
+
181
+ self.disabled = attributes[:'disabled']
182
+
183
+
184
+ end
185
+
186
+
187
+ if attributes.has_key?(:'selfUri')
188
+
189
+
190
+ self.self_uri = attributes[:'selfUri']
191
+
192
+
193
+ end
194
+
195
+
196
+ end
197
+
198
+ # Show invalid properties with the reasons. Usually used together with valid?
199
+ # @return Array for valid properies with the reasons
200
+ def list_invalid_properties
201
+ invalid_properties = Array.new
202
+
203
+
204
+ return invalid_properties
205
+ end
206
+
207
+ # Check to see if the all the properties in the model are valid
208
+ # @return true if the model is valid
209
+ def valid?
210
+
211
+
212
+
213
+
214
+
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+
223
+
224
+
225
+
226
+
227
+
228
+
229
+
230
+
231
+
232
+
233
+
234
+
235
+
236
+
237
+
238
+
239
+
240
+
241
+
242
+
243
+
244
+
245
+
246
+
247
+
248
+
249
+
250
+
251
+ end
252
+
253
+
254
+
255
+
256
+
257
+
258
+
259
+
260
+
261
+
262
+
263
+
264
+
265
+
266
+
267
+
268
+
269
+
270
+
271
+
272
+
273
+
274
+
275
+
276
+
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
+
302
+
303
+
304
+ # Checks equality by comparing each attribute.
305
+ # @param [Object] Object to be compared
306
+ def ==(o)
307
+ return true if self.equal?(o)
308
+ self.class == o.class &&
309
+ id == o.id &&
310
+ name == o.name &&
311
+ logo_image_data == o.logo_image_data &&
312
+ relying_party_identifier == o.relying_party_identifier &&
313
+ endpoint_compression == o.endpoint_compression &&
314
+ certificate == o.certificate &&
315
+ issuer_uri == o.issuer_uri &&
316
+ sso_target_uri == o.sso_target_uri &&
317
+ disabled == o.disabled &&
318
+ self_uri == o.self_uri
319
+ end
320
+
321
+ # @see the `==` method
322
+ # @param [Object] Object to be compared
323
+ def eql?(o)
324
+ self == o
325
+ end
326
+
327
+ # Calculates hash code according to all attributes.
328
+ # @return [Fixnum] Hash code
329
+ def hash
330
+ [id, name, logo_image_data, relying_party_identifier, endpoint_compression, certificate, issuer_uri, sso_target_uri, disabled, self_uri].hash
331
+ end
332
+
333
+ # build the object from hash
334
+ def build_from_hash(attributes)
335
+ return nil unless attributes.is_a?(Hash)
336
+ self.class.swagger_types.each_pair do |key, type|
337
+ if type =~ /^Array<(.*)>/i
338
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
339
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
340
+ else
341
+ #TODO show warning in debug mode
342
+ end
343
+ elsif !attributes[self.class.attribute_map[key]].nil?
344
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
345
+ else
346
+ # data not found in attributes(hash), not an issue as the data can be optional
347
+ end
348
+ end
349
+
350
+ self
351
+ end
352
+
353
+ def _deserialize(type, value)
354
+ case type.to_sym
355
+ when :DateTime
356
+ DateTime.parse(value)
357
+ when :Date
358
+ Date.parse(value)
359
+ when :String
360
+ value.to_s
361
+ when :Integer
362
+ value.to_i
363
+ when :Float
364
+ value.to_f
365
+ when :BOOLEAN
366
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
367
+ true
368
+ else
369
+ false
370
+ end
371
+ when :Object
372
+ # generic object (usually a Hash), return directly
373
+ value
374
+ when /\AArray<(?<inner_type>.+)>\z/
375
+ inner_type = Regexp.last_match[:inner_type]
376
+ value.map { |v| _deserialize(inner_type, v) }
377
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
378
+ k_type = Regexp.last_match[:k_type]
379
+ v_type = Regexp.last_match[:v_type]
380
+ {}.tap do |hash|
381
+ value.each do |k, v|
382
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
383
+ end
384
+ end
385
+ else # model
386
+ _model = Object.const_get("PureCloud").const_get(type).new
387
+ _model.build_from_hash(value)
388
+ end
389
+ end
390
+
391
+ def to_s
392
+ to_hash.to_s
393
+ end
394
+
395
+ # to_body is an alias to to_body (backward compatibility))
396
+ def to_body
397
+ to_hash
398
+ end
399
+
400
+ # return the object in the form of hash
401
+ def to_hash
402
+ hash = {}
403
+ self.class.attribute_map.each_pair do |attr, param|
404
+ value = self.send(attr)
405
+ next if value.nil?
406
+ hash[param] = _to_hash(value)
407
+ end
408
+ hash
409
+ end
410
+
411
+ # Method to output non-array value in the form of hash
412
+ # For object, use to_hash. Otherwise, just return the value
413
+ def _to_hash(value)
414
+ if value.is_a?(Array)
415
+ value.compact.map{ |v| _to_hash(v) }
416
+ elsif value.is_a?(Hash)
417
+ {}.tap do |hash|
418
+ value.each { |k, v| hash[k] = _to_hash(v) }
419
+ end
420
+ elsif value.respond_to? :to_hash
421
+ value.to_hash
422
+ else
423
+ value
424
+ end
425
+ end
426
+
427
+ end
428
+ end
@@ -0,0 +1,202 @@
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 GoogleDialogflowCustomSettings
21
+ # If set this environment will be used to initiate the dialogflow bot, otherwise the default configuration will be used. See https://cloud.google.com/dialogflow/docs/agents-versions
22
+ attr_accessor :environment
23
+
24
+ # Attribute mapping from ruby-style variable name to JSON key.
25
+ def self.attribute_map
26
+ {
27
+
28
+ :'environment' => :'environment'
29
+
30
+ }
31
+ end
32
+
33
+ # Attribute type mapping.
34
+ def self.swagger_types
35
+ {
36
+
37
+ :'environment' => :'String'
38
+
39
+ }
40
+ end
41
+
42
+ # Initializes the object
43
+ # @param [Hash] attributes Model attributes in the form of hash
44
+ def initialize(attributes = {})
45
+ return unless attributes.is_a?(Hash)
46
+
47
+ # convert string to symbol for hash key
48
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
49
+
50
+
51
+ if attributes.has_key?(:'environment')
52
+
53
+
54
+ self.environment = attributes[:'environment']
55
+
56
+
57
+ end
58
+
59
+
60
+ end
61
+
62
+ # Show invalid properties with the reasons. Usually used together with valid?
63
+ # @return Array for valid properies with the reasons
64
+ def list_invalid_properties
65
+ invalid_properties = Array.new
66
+
67
+
68
+ return invalid_properties
69
+ end
70
+
71
+ # Check to see if the all the properties in the model are valid
72
+ # @return true if the model is valid
73
+ def valid?
74
+
75
+
76
+
77
+
78
+
79
+ end
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+ # Checks equality by comparing each attribute.
88
+ # @param [Object] Object to be compared
89
+ def ==(o)
90
+ return true if self.equal?(o)
91
+ self.class == o.class &&
92
+ environment == o.environment
93
+ end
94
+
95
+ # @see the `==` method
96
+ # @param [Object] Object to be compared
97
+ def eql?(o)
98
+ self == o
99
+ end
100
+
101
+ # Calculates hash code according to all attributes.
102
+ # @return [Fixnum] Hash code
103
+ def hash
104
+ [environment].hash
105
+ end
106
+
107
+ # build the object from hash
108
+ def build_from_hash(attributes)
109
+ return nil unless attributes.is_a?(Hash)
110
+ self.class.swagger_types.each_pair do |key, type|
111
+ if type =~ /^Array<(.*)>/i
112
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
113
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
114
+ else
115
+ #TODO show warning in debug mode
116
+ end
117
+ elsif !attributes[self.class.attribute_map[key]].nil?
118
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
119
+ else
120
+ # data not found in attributes(hash), not an issue as the data can be optional
121
+ end
122
+ end
123
+
124
+ self
125
+ end
126
+
127
+ def _deserialize(type, value)
128
+ case type.to_sym
129
+ when :DateTime
130
+ DateTime.parse(value)
131
+ when :Date
132
+ Date.parse(value)
133
+ when :String
134
+ value.to_s
135
+ when :Integer
136
+ value.to_i
137
+ when :Float
138
+ value.to_f
139
+ when :BOOLEAN
140
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
141
+ true
142
+ else
143
+ false
144
+ end
145
+ when :Object
146
+ # generic object (usually a Hash), return directly
147
+ value
148
+ when /\AArray<(?<inner_type>.+)>\z/
149
+ inner_type = Regexp.last_match[:inner_type]
150
+ value.map { |v| _deserialize(inner_type, v) }
151
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
152
+ k_type = Regexp.last_match[:k_type]
153
+ v_type = Regexp.last_match[:v_type]
154
+ {}.tap do |hash|
155
+ value.each do |k, v|
156
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
157
+ end
158
+ end
159
+ else # model
160
+ _model = Object.const_get("PureCloud").const_get(type).new
161
+ _model.build_from_hash(value)
162
+ end
163
+ end
164
+
165
+ def to_s
166
+ to_hash.to_s
167
+ end
168
+
169
+ # to_body is an alias to to_body (backward compatibility))
170
+ def to_body
171
+ to_hash
172
+ end
173
+
174
+ # return the object in the form of hash
175
+ def to_hash
176
+ hash = {}
177
+ self.class.attribute_map.each_pair do |attr, param|
178
+ value = self.send(attr)
179
+ next if value.nil?
180
+ hash[param] = _to_hash(value)
181
+ end
182
+ hash
183
+ end
184
+
185
+ # Method to output non-array value in the form of hash
186
+ # For object, use to_hash. Otherwise, just return the value
187
+ def _to_hash(value)
188
+ if value.is_a?(Array)
189
+ value.compact.map{ |v| _to_hash(v) }
190
+ elsif value.is_a?(Hash)
191
+ {}.tap do |hash|
192
+ value.each { |k, v| hash[k] = _to_hash(v) }
193
+ end
194
+ elsif value.respond_to? :to_hash
195
+ value.to_hash
196
+ else
197
+ value
198
+ end
199
+ end
200
+
201
+ end
202
+ end