purecloudplatformclientv2 23.0.0 → 24.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 (301) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/docs/ActionEntityListing.md +2 -2
  4. data/docs/AgentActivityEntityListing.md +2 -2
  5. data/docs/AnalyticsConversation.md +2 -1
  6. data/docs/AttemptLimitsEntityListing.md +2 -2
  7. data/docs/AttributeEntityListing.md +2 -2
  8. data/docs/BatchDownloadJobSubmission.md +1 -1
  9. data/docs/CalibrationEntityListing.md +2 -2
  10. data/docs/CallConversationEntityListing.md +2 -2
  11. data/docs/CallHistoryConversationEntityListing.md +2 -2
  12. data/docs/CallableTimeSetEntityListing.md +2 -2
  13. data/docs/CallbackConversationEntityListing.md +2 -2
  14. data/docs/CampaignEntityListing.md +2 -2
  15. data/docs/CampaignRuleEntityListing.md +2 -2
  16. data/docs/CampaignSequenceEntityListing.md +2 -2
  17. data/docs/CertificateAuthorityEntityListing.md +2 -2
  18. data/docs/ChatBadgeNotification.md +15 -0
  19. data/docs/ChatBadgeNotificationBadgeEntity.md +15 -0
  20. data/docs/ChatBadgeNotificationEntity.md +15 -0
  21. data/docs/ChatConversationEntityListing.md +2 -2
  22. data/docs/CobrowseConversationEntityListing.md +2 -2
  23. data/docs/CommandStatusEntityListing.md +2 -2
  24. data/docs/ConsumedResourcesEntityListing.md +2 -2
  25. data/docs/ConsumingResourcesEntityListing.md +2 -2
  26. data/docs/ContactListEntityListing.md +2 -2
  27. data/docs/ContactListFilterEntityListing.md +2 -2
  28. data/docs/ContactListing.md +2 -2
  29. data/docs/ConversationEntityListing.md +2 -2
  30. data/docs/ConversationNotificationMedia.md +14 -0
  31. data/docs/ConversationNotificationMessageDetails.md +1 -0
  32. data/docs/ConversationNotificationMessageMedia.md +14 -0
  33. data/docs/ConversationNotificationMessages.md +1 -0
  34. data/docs/CreateQueueRequest.md +1 -1
  35. data/docs/DIDEntityListing.md +2 -2
  36. data/docs/DIDPoolEntityListing.md +2 -2
  37. data/docs/DependencyObjectEntityListing.md +2 -2
  38. data/docs/DependencyTypeEntityListing.md +2 -2
  39. data/docs/DialerEventEntityListing.md +2 -2
  40. data/docs/DirectoryUserDevicesListing.md +2 -2
  41. data/docs/DncListEntityListing.md +2 -2
  42. data/docs/DocumentAuditEntityListing.md +2 -2
  43. data/docs/DocumentEntityListing.md +2 -2
  44. data/docs/DomainEdgeSoftwareVersionDtoEntityListing.md +2 -2
  45. data/docs/DomainEntityListing.md +2 -2
  46. data/docs/DomainEntityListingEvaluationForm.md +2 -2
  47. data/docs/DomainEntityListingQueryResult.md +2 -2
  48. data/docs/DomainOrganizationRole.md +1 -1
  49. data/docs/DomainOrganizationRoleCreate.md +1 -1
  50. data/docs/DomainOrganizationRoleUpdate.md +1 -1
  51. data/docs/EdgeEntityListing.md +2 -2
  52. data/docs/EdgeGroupEntityListing.md +2 -2
  53. data/docs/EdgeLineEntityListing.md +2 -2
  54. data/docs/EmailConversationEntityListing.md +2 -2
  55. data/docs/EmailMessageListing.md +2 -2
  56. data/docs/EncryptionKeyEntityListing.md +2 -2
  57. data/docs/EndpointEntityListing.md +2 -2
  58. data/docs/EvaluationEntityListing.md +2 -2
  59. data/docs/EvaluationFormEntityListing.md +2 -2
  60. data/docs/EvaluatorActivityEntityListing.md +2 -2
  61. data/docs/ExportScriptRequest.md +14 -0
  62. data/docs/ExportScriptResponse.md +13 -0
  63. data/docs/ExtensionEntityListing.md +2 -2
  64. data/docs/ExtensionPoolEntityListing.md +2 -2
  65. data/docs/ExternalOrganizationListing.md +2 -2
  66. data/docs/FaxDocumentEntityListing.md +2 -2
  67. data/docs/FlowEntityListing.md +2 -2
  68. data/docs/FlowVersionEntityListing.md +2 -2
  69. data/docs/GreetingListing.md +2 -2
  70. data/docs/GroupEntityListing.md +2 -2
  71. data/docs/IVREntityListing.md +2 -2
  72. data/docs/InboundDomainEntityListing.md +2 -2
  73. data/docs/InboundRouteEntityListing.md +2 -2
  74. data/docs/InteractionStatsAlertContainer.md +2 -2
  75. data/docs/InteractionStatsRuleContainer.md +2 -2
  76. data/docs/JsonNode.md +3 -3
  77. data/docs/KeywordSetEntityListing.md +2 -2
  78. data/docs/LanguageEntityListing.md +2 -2
  79. data/docs/LibraryEntityListing.md +2 -2
  80. data/docs/LineBaseEntityListing.md +2 -2
  81. data/docs/LineEntityListing.md +2 -2
  82. data/docs/LocationEntityListing.md +2 -2
  83. data/docs/LogicalInterfaceEntityListing.md +2 -2
  84. data/docs/ManagementUnitListing.md +2 -2
  85. data/docs/MessageConversationNotificationMessageDetails.md +1 -0
  86. data/docs/MessageConversationNotificationMessageMedia.md +14 -0
  87. data/docs/MessageConversationNotificationMessages.md +1 -0
  88. data/docs/NoteListing.md +2 -2
  89. data/docs/OAuthClientEntityListing.md +2 -2
  90. data/docs/OAuthProviderEntityListing.md +2 -2
  91. data/docs/OrganizationPresenceEntityListing.md +2 -2
  92. data/docs/OrganizationRoleEntityListing.md +2 -2
  93. data/docs/OrphanRecordingListing.md +2 -2
  94. data/docs/OutboundRouteBaseEntityListing.md +2 -2
  95. data/docs/OutboundRouteEntityListing.md +2 -2
  96. data/docs/PermissionCollectionEntityListing.md +2 -2
  97. data/docs/PhoneBaseEntityListing.md +2 -2
  98. data/docs/PhoneEntityListing.md +2 -2
  99. data/docs/PhoneMetaBaseEntityListing.md +2 -2
  100. data/docs/PhysicalInterfaceEntityListing.md +2 -2
  101. data/docs/PolicyEntityListing.md +2 -2
  102. data/docs/PromptAssetEntityListing.md +2 -2
  103. data/docs/PromptEntityListing.md +2 -2
  104. data/docs/QualityAuditPage.md +2 -2
  105. data/docs/Queue.md +1 -1
  106. data/docs/QueueEntityListing.md +2 -2
  107. data/docs/QueueMemberEntityListing.md +2 -2
  108. data/docs/RecordingApi.md +5 -5
  109. data/docs/RelationshipListing.md +2 -2
  110. data/docs/ReportMetaDataEntityListing.md +2 -2
  111. data/docs/ReportRunEntryEntityDomainListing.md +2 -2
  112. data/docs/ReportScheduleEntityListing.md +2 -2
  113. data/docs/ResponseEntityList.md +2 -2
  114. data/docs/ResponseEntityListing.md +2 -2
  115. data/docs/ResponseSetEntityListing.md +2 -2
  116. data/docs/RuleSetEntityListing.md +2 -2
  117. data/docs/ScheduleEntityListing.md +2 -2
  118. data/docs/ScheduleGroupEntityListing.md +2 -2
  119. data/docs/SchemaCategoryEntityListing.md +2 -2
  120. data/docs/SchemaReferenceEntityListing.md +2 -2
  121. data/docs/ScreenRecordingSessionListing.md +2 -2
  122. data/docs/ScriptEntityListing.md +2 -2
  123. data/docs/ScriptsApi.md +64 -2
  124. data/docs/SecurityProfileEntityListing.md +2 -2
  125. data/docs/ShareEntityListing.md +2 -2
  126. data/docs/SiteEntityListing.md +2 -2
  127. data/docs/SkillEntityListing.md +2 -2
  128. data/docs/StationEntityListing.md +2 -2
  129. data/docs/SystemPromptAssetEntityListing.md +2 -2
  130. data/docs/SystemPromptEntityListing.md +2 -2
  131. data/docs/TagValueEntityListing.md +2 -2
  132. data/docs/TimeZoneEntityListing.md +2 -2
  133. data/docs/TrunkBaseEntityListing.md +2 -2
  134. data/docs/TrunkEntityListing.md +2 -2
  135. data/docs/TrunkMetabaseEntityListing.md +2 -2
  136. data/docs/TrustEntityListing.md +2 -2
  137. data/docs/TrustUserEntityListing.md +2 -2
  138. data/docs/TrustorEntityListing.md +2 -2
  139. data/docs/UserEntityListing.md +2 -2
  140. data/docs/UserProfileEntityListing.md +2 -2
  141. data/docs/UserQueue.md +1 -1
  142. data/docs/UserQueueEntityListing.md +2 -2
  143. data/docs/UserRecordingEntityListing.md +2 -2
  144. data/docs/UserSkillEntityListing.md +2 -2
  145. data/docs/VoicemailMessageEntityListing.md +2 -2
  146. data/docs/WorkspaceEntityListing.md +2 -2
  147. data/docs/WorkspaceMemberEntityListing.md +2 -2
  148. data/docs/WrapupCodeEntityListing.md +2 -2
  149. data/lib/purecloudplatformclientv2.rb +8 -0
  150. data/lib/purecloudplatformclientv2/api/recording_api.rb +4 -4
  151. data/lib/purecloudplatformclientv2/api/scripts_api.rb +73 -9
  152. data/lib/purecloudplatformclientv2/api_client.rb +1 -1
  153. data/lib/purecloudplatformclientv2/models/action_entity_listing.rb +25 -25
  154. data/lib/purecloudplatformclientv2/models/agent_activity_entity_listing.rb +25 -25
  155. data/lib/purecloudplatformclientv2/models/analytics_conversation.rb +33 -5
  156. data/lib/purecloudplatformclientv2/models/analytics_query_predicate.rb +2 -2
  157. data/lib/purecloudplatformclientv2/models/attempt_limits_entity_listing.rb +25 -25
  158. data/lib/purecloudplatformclientv2/models/attribute_entity_listing.rb +25 -25
  159. data/lib/purecloudplatformclientv2/models/batch_download_job_submission.rb +1 -1
  160. data/lib/purecloudplatformclientv2/models/calibration_entity_listing.rb +25 -25
  161. data/lib/purecloudplatformclientv2/models/call_conversation_entity_listing.rb +25 -25
  162. data/lib/purecloudplatformclientv2/models/call_history_conversation_entity_listing.rb +25 -25
  163. data/lib/purecloudplatformclientv2/models/callable_time_set_entity_listing.rb +25 -25
  164. data/lib/purecloudplatformclientv2/models/callback_conversation_entity_listing.rb +25 -25
  165. data/lib/purecloudplatformclientv2/models/campaign_entity_listing.rb +25 -25
  166. data/lib/purecloudplatformclientv2/models/campaign_rule_entity_listing.rb +25 -25
  167. data/lib/purecloudplatformclientv2/models/campaign_sequence_entity_listing.rb +25 -25
  168. data/lib/purecloudplatformclientv2/models/certificate_authority_entity_listing.rb +25 -25
  169. data/lib/purecloudplatformclientv2/models/chat_badge_notification.rb +251 -0
  170. data/lib/purecloudplatformclientv2/models/chat_badge_notification_badge_entity.rb +265 -0
  171. data/lib/purecloudplatformclientv2/models/chat_badge_notification_entity.rb +265 -0
  172. data/lib/purecloudplatformclientv2/models/chat_conversation_entity_listing.rb +25 -25
  173. data/lib/purecloudplatformclientv2/models/cobrowse_conversation_entity_listing.rb +25 -25
  174. data/lib/purecloudplatformclientv2/models/command_status_entity_listing.rb +25 -25
  175. data/lib/purecloudplatformclientv2/models/consumed_resources_entity_listing.rb +25 -25
  176. data/lib/purecloudplatformclientv2/models/consuming_resources_entity_listing.rb +25 -25
  177. data/lib/purecloudplatformclientv2/models/contact_list_entity_listing.rb +25 -25
  178. data/lib/purecloudplatformclientv2/models/contact_list_filter_entity_listing.rb +25 -25
  179. data/lib/purecloudplatformclientv2/models/contact_listing.rb +25 -25
  180. data/lib/purecloudplatformclientv2/models/conversation_entity_listing.rb +25 -25
  181. data/lib/purecloudplatformclientv2/models/conversation_notification_media.rb +226 -0
  182. data/lib/purecloudplatformclientv2/models/conversation_notification_message_details.rb +31 -4
  183. data/lib/purecloudplatformclientv2/models/conversation_notification_message_media.rb +226 -0
  184. data/lib/purecloudplatformclientv2/models/conversation_notification_messages.rb +31 -4
  185. data/lib/purecloudplatformclientv2/models/create_queue_request.rb +8 -8
  186. data/lib/purecloudplatformclientv2/models/dependency_object_entity_listing.rb +25 -25
  187. data/lib/purecloudplatformclientv2/models/dependency_type_entity_listing.rb +25 -25
  188. data/lib/purecloudplatformclientv2/models/dialer_event_entity_listing.rb +25 -25
  189. data/lib/purecloudplatformclientv2/models/did_entity_listing.rb +25 -25
  190. data/lib/purecloudplatformclientv2/models/did_pool_entity_listing.rb +25 -25
  191. data/lib/purecloudplatformclientv2/models/directory_user_devices_listing.rb +25 -25
  192. data/lib/purecloudplatformclientv2/models/dnc_list_entity_listing.rb +25 -25
  193. data/lib/purecloudplatformclientv2/models/document_audit_entity_listing.rb +25 -25
  194. data/lib/purecloudplatformclientv2/models/document_entity_listing.rb +25 -25
  195. data/lib/purecloudplatformclientv2/models/domain_edge_software_version_dto_entity_listing.rb +25 -25
  196. data/lib/purecloudplatformclientv2/models/domain_entity_listing.rb +25 -25
  197. data/lib/purecloudplatformclientv2/models/domain_entity_listing_evaluation_form.rb +25 -25
  198. data/lib/purecloudplatformclientv2/models/domain_entity_listing_query_result.rb +25 -25
  199. data/lib/purecloudplatformclientv2/models/domain_organization_role.rb +12 -12
  200. data/lib/purecloudplatformclientv2/models/domain_organization_role_create.rb +12 -12
  201. data/lib/purecloudplatformclientv2/models/domain_organization_role_update.rb +12 -12
  202. data/lib/purecloudplatformclientv2/models/edge_entity_listing.rb +25 -25
  203. data/lib/purecloudplatformclientv2/models/edge_group_entity_listing.rb +25 -25
  204. data/lib/purecloudplatformclientv2/models/edge_line_entity_listing.rb +25 -25
  205. data/lib/purecloudplatformclientv2/models/email_conversation_entity_listing.rb +25 -25
  206. data/lib/purecloudplatformclientv2/models/email_message_listing.rb +25 -25
  207. data/lib/purecloudplatformclientv2/models/encryption_key_entity_listing.rb +25 -25
  208. data/lib/purecloudplatformclientv2/models/endpoint_entity_listing.rb +25 -25
  209. data/lib/purecloudplatformclientv2/models/evaluation_entity_listing.rb +25 -25
  210. data/lib/purecloudplatformclientv2/models/evaluation_form_entity_listing.rb +25 -25
  211. data/lib/purecloudplatformclientv2/models/evaluator_activity_entity_listing.rb +25 -25
  212. data/lib/purecloudplatformclientv2/models/event_log.rb +2 -2
  213. data/lib/purecloudplatformclientv2/models/event_message.rb +2 -2
  214. data/lib/purecloudplatformclientv2/models/export_script_request.rb +229 -0
  215. data/lib/purecloudplatformclientv2/models/export_script_response.rb +201 -0
  216. data/lib/purecloudplatformclientv2/models/extension_entity_listing.rb +25 -25
  217. data/lib/purecloudplatformclientv2/models/extension_pool_entity_listing.rb +25 -25
  218. data/lib/purecloudplatformclientv2/models/external_organization_listing.rb +25 -25
  219. data/lib/purecloudplatformclientv2/models/fax_document_entity_listing.rb +25 -25
  220. data/lib/purecloudplatformclientv2/models/flow_entity_listing.rb +25 -25
  221. data/lib/purecloudplatformclientv2/models/flow_version_entity_listing.rb +25 -25
  222. data/lib/purecloudplatformclientv2/models/greeting_listing.rb +25 -25
  223. data/lib/purecloudplatformclientv2/models/group_entity_listing.rb +25 -25
  224. data/lib/purecloudplatformclientv2/models/inbound_domain_entity_listing.rb +25 -25
  225. data/lib/purecloudplatformclientv2/models/inbound_route_entity_listing.rb +25 -25
  226. data/lib/purecloudplatformclientv2/models/interaction_stats_alert_container.rb +25 -25
  227. data/lib/purecloudplatformclientv2/models/interaction_stats_rule_container.rb +25 -25
  228. data/lib/purecloudplatformclientv2/models/ivr_entity_listing.rb +25 -25
  229. data/lib/purecloudplatformclientv2/models/json_node.rb +61 -61
  230. data/lib/purecloudplatformclientv2/models/keyword_set_entity_listing.rb +25 -25
  231. data/lib/purecloudplatformclientv2/models/language_entity_listing.rb +25 -25
  232. data/lib/purecloudplatformclientv2/models/library_entity_listing.rb +25 -25
  233. data/lib/purecloudplatformclientv2/models/line_base_entity_listing.rb +25 -25
  234. data/lib/purecloudplatformclientv2/models/line_entity_listing.rb +25 -25
  235. data/lib/purecloudplatformclientv2/models/location_entity_listing.rb +25 -25
  236. data/lib/purecloudplatformclientv2/models/logical_interface_entity_listing.rb +25 -25
  237. data/lib/purecloudplatformclientv2/models/management_unit_listing.rb +25 -25
  238. data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_details.rb +31 -4
  239. data/lib/purecloudplatformclientv2/models/message_conversation_notification_message_media.rb +226 -0
  240. data/lib/purecloudplatformclientv2/models/message_conversation_notification_messages.rb +31 -4
  241. data/lib/purecloudplatformclientv2/models/note_listing.rb +25 -25
  242. data/lib/purecloudplatformclientv2/models/o_auth_client_entity_listing.rb +25 -25
  243. data/lib/purecloudplatformclientv2/models/o_auth_provider_entity_listing.rb +25 -25
  244. data/lib/purecloudplatformclientv2/models/organization_presence_entity_listing.rb +25 -25
  245. data/lib/purecloudplatformclientv2/models/organization_role_entity_listing.rb +25 -25
  246. data/lib/purecloudplatformclientv2/models/orphan_recording_listing.rb +25 -25
  247. data/lib/purecloudplatformclientv2/models/outbound_route_base_entity_listing.rb +25 -25
  248. data/lib/purecloudplatformclientv2/models/outbound_route_entity_listing.rb +25 -25
  249. data/lib/purecloudplatformclientv2/models/permission_collection_entity_listing.rb +25 -25
  250. data/lib/purecloudplatformclientv2/models/phone_base_entity_listing.rb +25 -25
  251. data/lib/purecloudplatformclientv2/models/phone_entity_listing.rb +25 -25
  252. data/lib/purecloudplatformclientv2/models/phone_meta_base_entity_listing.rb +25 -25
  253. data/lib/purecloudplatformclientv2/models/physical_interface_entity_listing.rb +25 -25
  254. data/lib/purecloudplatformclientv2/models/policy_entity_listing.rb +25 -25
  255. data/lib/purecloudplatformclientv2/models/prompt_asset_entity_listing.rb +25 -25
  256. data/lib/purecloudplatformclientv2/models/prompt_entity_listing.rb +25 -25
  257. data/lib/purecloudplatformclientv2/models/quality_audit_page.rb +25 -25
  258. data/lib/purecloudplatformclientv2/models/queue.rb +8 -8
  259. data/lib/purecloudplatformclientv2/models/queue_entity_listing.rb +25 -25
  260. data/lib/purecloudplatformclientv2/models/queue_member_entity_listing.rb +25 -25
  261. data/lib/purecloudplatformclientv2/models/relationship_listing.rb +25 -25
  262. data/lib/purecloudplatformclientv2/models/report_meta_data_entity_listing.rb +25 -25
  263. data/lib/purecloudplatformclientv2/models/report_run_entry_entity_domain_listing.rb +25 -25
  264. data/lib/purecloudplatformclientv2/models/report_schedule_entity_listing.rb +25 -25
  265. data/lib/purecloudplatformclientv2/models/response_entity_list.rb +25 -25
  266. data/lib/purecloudplatformclientv2/models/response_entity_listing.rb +25 -25
  267. data/lib/purecloudplatformclientv2/models/response_set_entity_listing.rb +25 -25
  268. data/lib/purecloudplatformclientv2/models/rule_set_entity_listing.rb +25 -25
  269. data/lib/purecloudplatformclientv2/models/schedule_entity_listing.rb +25 -25
  270. data/lib/purecloudplatformclientv2/models/schedule_group_entity_listing.rb +25 -25
  271. data/lib/purecloudplatformclientv2/models/schema_category_entity_listing.rb +25 -25
  272. data/lib/purecloudplatformclientv2/models/schema_reference_entity_listing.rb +25 -25
  273. data/lib/purecloudplatformclientv2/models/screen_recording_session_listing.rb +25 -25
  274. data/lib/purecloudplatformclientv2/models/script_entity_listing.rb +25 -25
  275. data/lib/purecloudplatformclientv2/models/security_profile_entity_listing.rb +25 -25
  276. data/lib/purecloudplatformclientv2/models/share_entity_listing.rb +25 -25
  277. data/lib/purecloudplatformclientv2/models/site_entity_listing.rb +25 -25
  278. data/lib/purecloudplatformclientv2/models/skill_entity_listing.rb +25 -25
  279. data/lib/purecloudplatformclientv2/models/station_entity_listing.rb +25 -25
  280. data/lib/purecloudplatformclientv2/models/system_prompt_asset_entity_listing.rb +25 -25
  281. data/lib/purecloudplatformclientv2/models/system_prompt_entity_listing.rb +25 -25
  282. data/lib/purecloudplatformclientv2/models/tag_value_entity_listing.rb +25 -25
  283. data/lib/purecloudplatformclientv2/models/time_zone_entity_listing.rb +25 -25
  284. data/lib/purecloudplatformclientv2/models/trunk_base_entity_listing.rb +25 -25
  285. data/lib/purecloudplatformclientv2/models/trunk_entity_listing.rb +25 -25
  286. data/lib/purecloudplatformclientv2/models/trunk_metabase_entity_listing.rb +25 -25
  287. data/lib/purecloudplatformclientv2/models/trust_entity_listing.rb +25 -25
  288. data/lib/purecloudplatformclientv2/models/trust_user_entity_listing.rb +25 -25
  289. data/lib/purecloudplatformclientv2/models/trustor_entity_listing.rb +25 -25
  290. data/lib/purecloudplatformclientv2/models/user_entity_listing.rb +25 -25
  291. data/lib/purecloudplatformclientv2/models/user_profile_entity_listing.rb +25 -25
  292. data/lib/purecloudplatformclientv2/models/user_queue.rb +8 -8
  293. data/lib/purecloudplatformclientv2/models/user_queue_entity_listing.rb +25 -25
  294. data/lib/purecloudplatformclientv2/models/user_recording_entity_listing.rb +25 -25
  295. data/lib/purecloudplatformclientv2/models/user_skill_entity_listing.rb +25 -25
  296. data/lib/purecloudplatformclientv2/models/voicemail_message_entity_listing.rb +25 -25
  297. data/lib/purecloudplatformclientv2/models/workspace_entity_listing.rb +25 -25
  298. data/lib/purecloudplatformclientv2/models/workspace_member_entity_listing.rb +25 -25
  299. data/lib/purecloudplatformclientv2/models/wrapup_code_entity_listing.rb +25 -25
  300. data/lib/purecloudplatformclientv2/version.rb +1 -1
  301. metadata +18 -2
@@ -26,16 +26,16 @@ module PureCloud
26
26
 
27
27
  attr_accessor :total
28
28
 
29
- attr_accessor :self_uri
30
-
31
- attr_accessor :first_uri
32
-
33
29
  attr_accessor :previous_uri
34
30
 
35
31
  attr_accessor :next_uri
36
32
 
37
33
  attr_accessor :last_uri
38
34
 
35
+ attr_accessor :self_uri
36
+
37
+ attr_accessor :first_uri
38
+
39
39
  attr_accessor :page_count
40
40
 
41
41
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -50,16 +50,16 @@ module PureCloud
50
50
 
51
51
  :'total' => :'total',
52
52
 
53
- :'self_uri' => :'selfUri',
54
-
55
- :'first_uri' => :'firstUri',
56
-
57
53
  :'previous_uri' => :'previousUri',
58
54
 
59
55
  :'next_uri' => :'nextUri',
60
56
 
61
57
  :'last_uri' => :'lastUri',
62
58
 
59
+ :'self_uri' => :'selfUri',
60
+
61
+ :'first_uri' => :'firstUri',
62
+
63
63
  :'page_count' => :'pageCount'
64
64
 
65
65
  }
@@ -77,16 +77,16 @@ module PureCloud
77
77
 
78
78
  :'total' => :'Integer',
79
79
 
80
- :'self_uri' => :'String',
81
-
82
- :'first_uri' => :'String',
83
-
84
80
  :'previous_uri' => :'String',
85
81
 
86
82
  :'next_uri' => :'String',
87
83
 
88
84
  :'last_uri' => :'String',
89
85
 
86
+ :'self_uri' => :'String',
87
+
88
+ :'first_uri' => :'String',
89
+
90
90
  :'page_count' => :'Integer'
91
91
 
92
92
  }
@@ -139,46 +139,46 @@ module PureCloud
139
139
  end
140
140
 
141
141
 
142
- if attributes.has_key?(:'selfUri')
142
+ if attributes.has_key?(:'previousUri')
143
143
 
144
144
 
145
- self.self_uri = attributes[:'selfUri']
145
+ self.previous_uri = attributes[:'previousUri']
146
146
 
147
147
 
148
148
  end
149
149
 
150
150
 
151
- if attributes.has_key?(:'firstUri')
151
+ if attributes.has_key?(:'nextUri')
152
152
 
153
153
 
154
- self.first_uri = attributes[:'firstUri']
154
+ self.next_uri = attributes[:'nextUri']
155
155
 
156
156
 
157
157
  end
158
158
 
159
159
 
160
- if attributes.has_key?(:'previousUri')
160
+ if attributes.has_key?(:'lastUri')
161
161
 
162
162
 
163
- self.previous_uri = attributes[:'previousUri']
163
+ self.last_uri = attributes[:'lastUri']
164
164
 
165
165
 
166
166
  end
167
167
 
168
168
 
169
- if attributes.has_key?(:'nextUri')
169
+ if attributes.has_key?(:'selfUri')
170
170
 
171
171
 
172
- self.next_uri = attributes[:'nextUri']
172
+ self.self_uri = attributes[:'selfUri']
173
173
 
174
174
 
175
175
  end
176
176
 
177
177
 
178
- if attributes.has_key?(:'lastUri')
178
+ if attributes.has_key?(:'firstUri')
179
179
 
180
180
 
181
- self.last_uri = attributes[:'lastUri']
181
+ self.first_uri = attributes[:'firstUri']
182
182
 
183
183
 
184
184
  end
@@ -310,11 +310,11 @@ module PureCloud
310
310
  page_size == o.page_size &&
311
311
  page_number == o.page_number &&
312
312
  total == o.total &&
313
- self_uri == o.self_uri &&
314
- first_uri == o.first_uri &&
315
313
  previous_uri == o.previous_uri &&
316
314
  next_uri == o.next_uri &&
317
315
  last_uri == o.last_uri &&
316
+ self_uri == o.self_uri &&
317
+ first_uri == o.first_uri &&
318
318
  page_count == o.page_count
319
319
  end
320
320
 
@@ -327,7 +327,7 @@ module PureCloud
327
327
  # Calculates hash code according to all attributes.
328
328
  # @return [Fixnum] Hash code
329
329
  def hash
330
- [entities, page_size, page_number, total, self_uri, first_uri, previous_uri, next_uri, last_uri, page_count].hash
330
+ [entities, page_size, page_number, total, previous_uri, next_uri, last_uri, self_uri, first_uri, page_count].hash
331
331
  end
332
332
 
333
333
  # build the object from hash
@@ -240,7 +240,7 @@ module PureCloud
240
240
 
241
241
 
242
242
 
243
- allowed_values = ["CALLBACK", "CALL_RESTRICTION", "CALL_RULE", "CAMPAIGN", "CAMPAIGN_RULE", "CONTACT_LIST_FILTER", "DNC_LIST", "ENTITY_LIMIT", "IMPORT_ERROR", "ORGANIZATION_CONFIGURATION", "SCHEDULE"]
243
+ allowed_values = ["CALLBACK", "CALL_RESTRICTION", "CALL_RULE", "CAMPAIGN", "CAMPAIGN_RULE", "CONTACT", "CONTACT_LIST_FILTER", "DNC_LIST", "ENTITY_LIMIT", "IMPORT_ERROR", "ORGANIZATION_CONFIGURATION", "SCHEDULE"]
244
244
  if @category && !allowed_values.include?(@category)
245
245
  return false
246
246
  end
@@ -305,7 +305,7 @@ module PureCloud
305
305
  # Custom attribute writer method checking allowed values (enum).
306
306
  # @param [Object] category Object to be assigned
307
307
  def category=(category)
308
- allowed_values = ["CALLBACK", "CALL_RESTRICTION", "CALL_RULE", "CAMPAIGN", "CAMPAIGN_RULE", "CONTACT_LIST_FILTER", "DNC_LIST", "ENTITY_LIMIT", "IMPORT_ERROR", "ORGANIZATION_CONFIGURATION", "SCHEDULE"]
308
+ allowed_values = ["CALLBACK", "CALL_RESTRICTION", "CALL_RULE", "CAMPAIGN", "CAMPAIGN_RULE", "CONTACT", "CONTACT_LIST_FILTER", "DNC_LIST", "ENTITY_LIMIT", "IMPORT_ERROR", "ORGANIZATION_CONFIGURATION", "SCHEDULE"]
309
309
  if category && !allowed_values.include?(category)
310
310
  fail ArgumentError, "invalid value for 'category', must be one of #{allowed_values}."
311
311
  end
@@ -152,7 +152,7 @@ module PureCloud
152
152
 
153
153
 
154
154
 
155
- allowed_values = ["APPROACHING_CONTACT_LIMIT", "APPROACHING_ENTITY_LIMIT", "CAMPAIGN_START_ERROR", "CAMPAIGN_RULE_START_ERROR", "CAMPAIGN_SET_DIALING_MODE_ERROR", "CAMPAIGN_THROTTLED", "INVALID_CALLABLE_TIME_ZONE", "CALLBACK_CREATION_INVALID_NUMBER", "CALL_RULE_INVALID_CONTACT_COLUMN", "CALL_RULE_MISMATCH_TYPE", "CALL_RULE_INVALID_OPERATOR", "CALL_RULE_NO_DNC_LISTS_CONFIGURED", "CALL_RULE_UPDATED_PHONE_COLUMN", "CONTACT_LIST_FILTER_EVALUATION_FAILED", "CONTACT_ZIP_CODE_COLUMN_VALUE_INVALID", "DNC_AUTHENTICATION_FAILURE", "EXCEEDED_CONTACT_LIMIT", "INACTIVE_EDGES_FAILED_PLACE_CALLS", "INACTIVE_EDGES_TURNED_CAMPAIGN_OFF", "INVALID_PHONE_NUMBER", "IMPORT_FAILED_TO_READ_HEADERS", "IMPORT_COULD_NOT_PARSE_AN_ENTRY", "IMPORT_CONTACT_DOES_NOT_MATCH_LIST_FORMAT", "IMPORT_ENTRY_DOES_NOT_ALIGN_WITH_HEADERS", "IMPORT_INVALID_CUSTOM_ID", "IMPORT_INVALID_DATA", "IMPORT_NO_COLUMNS_DEFINED", "IMPORT_COLUMNS_DO_NOT_EXIST_ON_LIST", "IMPORT_LIST_NO_LONGER_EXISTS", "IMPORT_FAILED_CONTACT_ZIP_CODE_COLUMN_VALUE_INVALID", "ORGANIZATION_HAS_NO_DOMAIN_SET", "RECYCLE_CAMPAIGN"]
155
+ allowed_values = ["APPROACHING_CONTACT_LIMIT", "APPROACHING_ENTITY_LIMIT", "AUTOMATIC_TIME_ZONE_ZIP_CODE_INVALID", "CAMPAIGN_START_ERROR", "CAMPAIGN_RULE_START_ERROR", "CAMPAIGN_SET_DIALING_MODE_ERROR", "CAMPAIGN_THROTTLED", "INVALID_CALLABLE_TIME_ZONE", "CALLBACK_CREATION_INVALID_NUMBER", "CALL_RULE_INVALID_CONTACT_COLUMN", "CALL_RULE_MISMATCH_TYPE", "CALL_RULE_INVALID_OPERATOR", "CALL_RULE_NO_DNC_LISTS_CONFIGURED", "CALL_RULE_UPDATED_PHONE_COLUMN", "CONTACT_LIST_FILTER_EVALUATION_FAILED", "CONTACT_ZIP_CODE_COLUMN_VALUE_INVALID", "DNC_AUTHENTICATION_FAILURE", "EXCEEDED_CONTACT_LIMIT", "INACTIVE_EDGES_FAILED_PLACE_CALLS", "INACTIVE_EDGES_TURNED_CAMPAIGN_OFF", "INVALID_PHONE_NUMBER", "IMPORT_FAILED_TO_READ_HEADERS", "IMPORT_COULD_NOT_PARSE_AN_ENTRY", "IMPORT_CONTACT_DOES_NOT_MATCH_LIST_FORMAT", "IMPORT_ENTRY_DOES_NOT_ALIGN_WITH_HEADERS", "IMPORT_INVALID_CUSTOM_ID", "IMPORT_INVALID_DATA", "IMPORT_NO_COLUMNS_DEFINED", "IMPORT_COLUMNS_DO_NOT_EXIST_ON_LIST", "IMPORT_LIST_NO_LONGER_EXISTS", "IMPORT_FAILED_CONTACT_ZIP_CODE_COLUMN_VALUE_INVALID", "ORGANIZATION_HAS_NO_DOMAIN_SET", "RECYCLE_CAMPAIGN"]
156
156
  if @code && !allowed_values.include?(@code)
157
157
  return false
158
158
  end
@@ -186,7 +186,7 @@ module PureCloud
186
186
  # Custom attribute writer method checking allowed values (enum).
187
187
  # @param [Object] code Object to be assigned
188
188
  def code=(code)
189
- allowed_values = ["APPROACHING_CONTACT_LIMIT", "APPROACHING_ENTITY_LIMIT", "CAMPAIGN_START_ERROR", "CAMPAIGN_RULE_START_ERROR", "CAMPAIGN_SET_DIALING_MODE_ERROR", "CAMPAIGN_THROTTLED", "INVALID_CALLABLE_TIME_ZONE", "CALLBACK_CREATION_INVALID_NUMBER", "CALL_RULE_INVALID_CONTACT_COLUMN", "CALL_RULE_MISMATCH_TYPE", "CALL_RULE_INVALID_OPERATOR", "CALL_RULE_NO_DNC_LISTS_CONFIGURED", "CALL_RULE_UPDATED_PHONE_COLUMN", "CONTACT_LIST_FILTER_EVALUATION_FAILED", "CONTACT_ZIP_CODE_COLUMN_VALUE_INVALID", "DNC_AUTHENTICATION_FAILURE", "EXCEEDED_CONTACT_LIMIT", "INACTIVE_EDGES_FAILED_PLACE_CALLS", "INACTIVE_EDGES_TURNED_CAMPAIGN_OFF", "INVALID_PHONE_NUMBER", "IMPORT_FAILED_TO_READ_HEADERS", "IMPORT_COULD_NOT_PARSE_AN_ENTRY", "IMPORT_CONTACT_DOES_NOT_MATCH_LIST_FORMAT", "IMPORT_ENTRY_DOES_NOT_ALIGN_WITH_HEADERS", "IMPORT_INVALID_CUSTOM_ID", "IMPORT_INVALID_DATA", "IMPORT_NO_COLUMNS_DEFINED", "IMPORT_COLUMNS_DO_NOT_EXIST_ON_LIST", "IMPORT_LIST_NO_LONGER_EXISTS", "IMPORT_FAILED_CONTACT_ZIP_CODE_COLUMN_VALUE_INVALID", "ORGANIZATION_HAS_NO_DOMAIN_SET", "RECYCLE_CAMPAIGN"]
189
+ allowed_values = ["APPROACHING_CONTACT_LIMIT", "APPROACHING_ENTITY_LIMIT", "AUTOMATIC_TIME_ZONE_ZIP_CODE_INVALID", "CAMPAIGN_START_ERROR", "CAMPAIGN_RULE_START_ERROR", "CAMPAIGN_SET_DIALING_MODE_ERROR", "CAMPAIGN_THROTTLED", "INVALID_CALLABLE_TIME_ZONE", "CALLBACK_CREATION_INVALID_NUMBER", "CALL_RULE_INVALID_CONTACT_COLUMN", "CALL_RULE_MISMATCH_TYPE", "CALL_RULE_INVALID_OPERATOR", "CALL_RULE_NO_DNC_LISTS_CONFIGURED", "CALL_RULE_UPDATED_PHONE_COLUMN", "CONTACT_LIST_FILTER_EVALUATION_FAILED", "CONTACT_ZIP_CODE_COLUMN_VALUE_INVALID", "DNC_AUTHENTICATION_FAILURE", "EXCEEDED_CONTACT_LIMIT", "INACTIVE_EDGES_FAILED_PLACE_CALLS", "INACTIVE_EDGES_TURNED_CAMPAIGN_OFF", "INVALID_PHONE_NUMBER", "IMPORT_FAILED_TO_READ_HEADERS", "IMPORT_COULD_NOT_PARSE_AN_ENTRY", "IMPORT_CONTACT_DOES_NOT_MATCH_LIST_FORMAT", "IMPORT_ENTRY_DOES_NOT_ALIGN_WITH_HEADERS", "IMPORT_INVALID_CUSTOM_ID", "IMPORT_INVALID_DATA", "IMPORT_NO_COLUMNS_DEFINED", "IMPORT_COLUMNS_DO_NOT_EXIST_ON_LIST", "IMPORT_LIST_NO_LONGER_EXISTS", "IMPORT_FAILED_CONTACT_ZIP_CODE_COLUMN_VALUE_INVALID", "ORGANIZATION_HAS_NO_DOMAIN_SET", "RECYCLE_CAMPAIGN"]
190
190
  if code && !allowed_values.include?(code)
191
191
  fail ArgumentError, "invalid value for 'code', must be one of #{allowed_values}."
192
192
  end
@@ -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
+ # Creating an exported script via Download Service
21
+ class ExportScriptRequest
22
+ # The final file name (no extension) of the script download: <fileName>.script
23
+ attr_accessor :file_name
24
+
25
+ # The UUID version of the script to be exported. Defaults to the current editable version.
26
+ attr_accessor :version_id
27
+
28
+ # Attribute mapping from ruby-style variable name to JSON key.
29
+ def self.attribute_map
30
+ {
31
+
32
+ :'file_name' => :'fileName',
33
+
34
+ :'version_id' => :'versionId'
35
+
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ def self.swagger_types
41
+ {
42
+
43
+ :'file_name' => :'String',
44
+
45
+ :'version_id' => :'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?(:'fileName')
60
+
61
+
62
+ self.file_name = attributes[:'fileName']
63
+
64
+
65
+ end
66
+
67
+
68
+ if attributes.has_key?(:'versionId')
69
+
70
+
71
+ self.version_id = attributes[:'versionId']
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
+ file_name == o.file_name &&
119
+ version_id == o.version_id
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
+ [file_name, version_id].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
@@ -0,0 +1,201 @@
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
+ class ExportScriptResponse
21
+ attr_accessor :url
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+
27
+ :'url' => :'url'
28
+
29
+ }
30
+ end
31
+
32
+ # Attribute type mapping.
33
+ def self.swagger_types
34
+ {
35
+
36
+ :'url' => :'String'
37
+
38
+ }
39
+ end
40
+
41
+ # Initializes the object
42
+ # @param [Hash] attributes Model attributes in the form of hash
43
+ def initialize(attributes = {})
44
+ return unless attributes.is_a?(Hash)
45
+
46
+ # convert string to symbol for hash key
47
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
48
+
49
+
50
+ if attributes.has_key?(:'url')
51
+
52
+
53
+ self.url = attributes[:'url']
54
+
55
+
56
+ end
57
+
58
+
59
+ end
60
+
61
+ # Show invalid properties with the reasons. Usually used together with valid?
62
+ # @return Array for valid properies with the reasons
63
+ def list_invalid_properties
64
+ invalid_properties = Array.new
65
+
66
+
67
+ return invalid_properties
68
+ end
69
+
70
+ # Check to see if the all the properties in the model are valid
71
+ # @return true if the model is valid
72
+ def valid?
73
+
74
+
75
+
76
+
77
+
78
+ end
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+ # Checks equality by comparing each attribute.
87
+ # @param [Object] Object to be compared
88
+ def ==(o)
89
+ return true if self.equal?(o)
90
+ self.class == o.class &&
91
+ url == o.url
92
+ end
93
+
94
+ # @see the `==` method
95
+ # @param [Object] Object to be compared
96
+ def eql?(o)
97
+ self == o
98
+ end
99
+
100
+ # Calculates hash code according to all attributes.
101
+ # @return [Fixnum] Hash code
102
+ def hash
103
+ [url].hash
104
+ end
105
+
106
+ # build the object from hash
107
+ def build_from_hash(attributes)
108
+ return nil unless attributes.is_a?(Hash)
109
+ self.class.swagger_types.each_pair do |key, type|
110
+ if type =~ /^Array<(.*)>/i
111
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
112
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
113
+ else
114
+ #TODO show warning in debug mode
115
+ end
116
+ elsif !attributes[self.class.attribute_map[key]].nil?
117
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
118
+ else
119
+ # data not found in attributes(hash), not an issue as the data can be optional
120
+ end
121
+ end
122
+
123
+ self
124
+ end
125
+
126
+ def _deserialize(type, value)
127
+ case type.to_sym
128
+ when :DateTime
129
+ DateTime.parse(value)
130
+ when :Date
131
+ Date.parse(value)
132
+ when :String
133
+ value.to_s
134
+ when :Integer
135
+ value.to_i
136
+ when :Float
137
+ value.to_f
138
+ when :BOOLEAN
139
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
140
+ true
141
+ else
142
+ false
143
+ end
144
+ when :Object
145
+ # generic object (usually a Hash), return directly
146
+ value
147
+ when /\AArray<(?<inner_type>.+)>\z/
148
+ inner_type = Regexp.last_match[:inner_type]
149
+ value.map { |v| _deserialize(inner_type, v) }
150
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
151
+ k_type = Regexp.last_match[:k_type]
152
+ v_type = Regexp.last_match[:v_type]
153
+ {}.tap do |hash|
154
+ value.each do |k, v|
155
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
156
+ end
157
+ end
158
+ else # model
159
+ _model = Object.const_get("PureCloud").const_get(type).new
160
+ _model.build_from_hash(value)
161
+ end
162
+ end
163
+
164
+ def to_s
165
+ to_hash.to_s
166
+ end
167
+
168
+ # to_body is an alias to to_body (backward compatibility))
169
+ def to_body
170
+ to_hash
171
+ end
172
+
173
+ # return the object in the form of hash
174
+ def to_hash
175
+ hash = {}
176
+ self.class.attribute_map.each_pair do |attr, param|
177
+ value = self.send(attr)
178
+ next if value.nil?
179
+ hash[param] = _to_hash(value)
180
+ end
181
+ hash
182
+ end
183
+
184
+ # Method to output non-array value in the form of hash
185
+ # For object, use to_hash. Otherwise, just return the value
186
+ def _to_hash(value)
187
+ if value.is_a?(Array)
188
+ value.compact.map{ |v| _to_hash(v) }
189
+ elsif value.is_a?(Hash)
190
+ {}.tap do |hash|
191
+ value.each { |k, v| hash[k] = _to_hash(v) }
192
+ end
193
+ elsif value.respond_to? :to_hash
194
+ value.to_hash
195
+ else
196
+ value
197
+ end
198
+ end
199
+
200
+ end
201
+ end