purecloud 0.67.1 → 0.68.1

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 (424) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/bin/notificationMappings.json +4 -4
  4. data/config-ruby.json +1 -1
  5. data/doc_out/ActivityCode.html.md +20 -0
  6. data/doc_out/ActivityCodeContainer.html.md +13 -0
  7. data/doc_out/AgentActivityEntityListing.html.md +2 -2
  8. data/doc_out/AlertingApi.html.md +137 -35
  9. data/doc_out/AnalyticsApi.html.md +89 -23
  10. data/doc_out/AttemptLimitsEntityListing.html.md +2 -2
  11. data/doc_out/AttemptLimitsNotification.html.md +2 -1
  12. data/doc_out/AttributeEntityListing.html.md +2 -2
  13. data/doc_out/AttributesApi.html.md +25 -7
  14. data/doc_out/AuthorizationApi.html.md +69 -18
  15. data/doc_out/CalibrationEntityListing.html.md +2 -2
  16. data/doc_out/CallConversationEntityListing.html.md +2 -2
  17. data/doc_out/CallConversationNotificationCallMediaParticipant.html.md +1 -1
  18. data/doc_out/CallConversationNotificationParticipants.html.md +1 -1
  19. data/doc_out/CallableTimeSetEntityListing.html.md +2 -2
  20. data/doc_out/CallableTimeSetNotification.html.md +1 -1
  21. data/doc_out/CallbackConversationEntityListing.html.md +2 -2
  22. data/doc_out/CallbackConversationNotificationCallbackMediaParticipant.html.md +1 -1
  23. data/doc_out/CallbackConversationNotificationParticipants.html.md +1 -1
  24. data/doc_out/CampaignEntityListing.html.md +2 -2
  25. data/doc_out/CampaignNotification.html.md +2 -2
  26. data/doc_out/{CampaignNotificationError.html.md → CampaignNotificationRestErrorDetail.html.md} +2 -2
  27. data/doc_out/CampaignProgressNotification.html.md +1 -1
  28. data/doc_out/CampaignRuleEntityListing.html.md +2 -2
  29. data/doc_out/CampaignRuleNotification.html.md +1 -1
  30. data/doc_out/CampaignRuleNotificationCampaignRuleActionEntities.html.md +2 -2
  31. data/doc_out/CampaignRuleNotificationCampaignRuleEntities.html.md +2 -3
  32. data/doc_out/CampaignRuleNotificationUriReference.html.md +14 -0
  33. data/doc_out/CampaignScheduleNotification.html.md +2 -2
  34. data/doc_out/CampaignSequenceEntityListing.html.md +2 -2
  35. data/doc_out/CampaignSequenceNotification.html.md +2 -2
  36. data/doc_out/CertificateAuthorityEntityListing.html.md +2 -2
  37. data/doc_out/ChannelEntityListing.html.md +2 -2
  38. data/doc_out/ChatConversationEntityListing.html.md +2 -2
  39. data/doc_out/ChatConversationNotificationChatMediaParticipant.html.md +1 -1
  40. data/doc_out/ChatConversationNotificationParticipants.html.md +1 -1
  41. data/doc_out/CobrowseConversationEntityListing.html.md +2 -2
  42. data/doc_out/CobrowseConversationNotificationCobrowseMediaParticipant.html.md +1 -1
  43. data/doc_out/CobrowseConversationNotificationParticipants.html.md +1 -1
  44. data/doc_out/CommandStatusEntityListing.html.md +2 -2
  45. data/doc_out/ContactListEntityListing.html.md +2 -2
  46. data/doc_out/ContactListNotification.html.md +2 -2
  47. data/doc_out/{ContactListNotificationPhoneColumn_.html.md → ContactListNotificationContactPhoneNumberColumn.html.md} +2 -2
  48. data/doc_out/ContentManagementApi.html.md +153 -39
  49. data/doc_out/ConversationEntityListing.html.md +2 -2
  50. data/doc_out/ConversationsApi.html.md +421 -76
  51. data/doc_out/CreateEmailRequest.html.md +23 -0
  52. data/doc_out/CreateWebChatRequest.html.md +19 -0
  53. data/doc_out/DIDEntityListing.html.md +2 -2
  54. data/doc_out/DIDPoolEntityListing.html.md +2 -2
  55. data/doc_out/DecisionsFileMetadataEntityListing.html.md +2 -2
  56. data/doc_out/DncListEntityListing.html.md +2 -2
  57. data/doc_out/DncListNotification.html.md +1 -1
  58. data/doc_out/DocumentAuditEntityListing.html.md +2 -2
  59. data/doc_out/DocumentDataV2Notification.html.md +26 -0
  60. data/doc_out/{RecordingDataNotificationUserData.html.md → DocumentDataV2NotificationCreatedBy.html.md} +2 -2
  61. data/doc_out/DocumentDataV2NotificationLockData.html.md +15 -0
  62. data/doc_out/DocumentDataV2NotificationLockInfo.html.md +15 -0
  63. data/doc_out/{DocumentDataNotificationUserData.html.md → DocumentDataV2NotificationUserData.html.md} +2 -2
  64. data/doc_out/{DocumentDataNotificationWorkspace.html.md → DocumentDataV2NotificationWorkspace.html.md} +2 -2
  65. data/doc_out/{DocumentDataNotificationWorkspaceData.html.md → DocumentDataV2NotificationWorkspaceData.html.md} +2 -2
  66. data/doc_out/DocumentEntityListing.html.md +2 -2
  67. data/doc_out/DomainEdgeSoftwareVersionDtoEntityListing.html.md +2 -2
  68. data/doc_out/DomainEntityListing.html.md +2 -2
  69. data/doc_out/DomainEntityListingEvaluationForm.html.md +2 -2
  70. data/doc_out/DomainEntityListingQueryResult.html.md +2 -2
  71. data/doc_out/DomainOrganizationRole.html.md +1 -1
  72. data/doc_out/DomainOrganizationRoleCreate.html.md +1 -1
  73. data/doc_out/DomainOrganizationRoleUpdate.html.md +1 -1
  74. data/doc_out/EdgeEntityListing.html.md +2 -2
  75. data/doc_out/EdgeGroupEntityListing.html.md +2 -2
  76. data/doc_out/EdgeLineEntityListing.html.md +2 -2
  77. data/doc_out/EdgeRebootParameters.html.md +13 -0
  78. data/doc_out/EmailConversationEntityListing.html.md +2 -2
  79. data/doc_out/EmailConversationNotificationEmailMediaParticipant.html.md +1 -1
  80. data/doc_out/EmailConversationNotificationParticipants.html.md +1 -1
  81. data/doc_out/EmailMessageListing.html.md +2 -2
  82. data/doc_out/EncryptionKeyEntityListing.html.md +2 -2
  83. data/doc_out/EndpointEntityListing.html.md +2 -2
  84. data/doc_out/Entry.html.md +2 -2
  85. data/doc_out/EntryFeatureBoolean.html.md +14 -0
  86. data/doc_out/EvaluationEntityListing.html.md +2 -2
  87. data/doc_out/EvaluationFormEntityListing.html.md +2 -2
  88. data/doc_out/EvaluatorActivityEntityListing.html.md +2 -2
  89. data/doc_out/ExtensionEntityListing.html.md +2 -2
  90. data/doc_out/ExtensionPoolEntityListing.html.md +2 -2
  91. data/doc_out/FaxApi.html.md +25 -7
  92. data/doc_out/FaxDataV2Notification.html.md +29 -0
  93. data/doc_out/FaxDataV2NotificationLockData.html.md +15 -0
  94. data/doc_out/FaxDataV2NotificationLockInfo.html.md +15 -0
  95. data/doc_out/{FaxDataNotificationUserData.html.md → FaxDataV2NotificationUserData.html.md} +2 -2
  96. data/doc_out/{FaxDataNotificationWorkspaceData.html.md → FaxDataV2NotificationWorkspaceData.html.md} +2 -2
  97. data/doc_out/FaxDocumentEntityListing.html.md +2 -2
  98. data/doc_out/GeolocationApi.html.md +17 -5
  99. data/doc_out/GreetingListing.html.md +2 -2
  100. data/doc_out/GreetingsApi.html.md +65 -17
  101. data/doc_out/GroupEntityListing.html.md +2 -2
  102. data/doc_out/GroupsApi.html.md +45 -12
  103. data/doc_out/HeartBeatAlertContainer.html.md +2 -2
  104. data/doc_out/HeartBeatRuleContainer.html.md +2 -2
  105. data/doc_out/IdentityProviderApi.html.md +89 -23
  106. data/doc_out/InboundDomainEntityListing.html.md +2 -2
  107. data/doc_out/InboundRouteEntityListing.html.md +2 -2
  108. data/doc_out/InteractionStatsAlertContainer.html.md +2 -2
  109. data/doc_out/InteractionStatsRuleContainer.html.md +2 -2
  110. data/doc_out/JsonNode.html.md +2 -2
  111. data/doc_out/KeywordSetEntityListing.html.md +2 -2
  112. data/doc_out/LanguageEntityListing.html.md +2 -2
  113. data/doc_out/LanguagesApi.html.md +41 -11
  114. data/doc_out/LibraryEntityListing.html.md +2 -2
  115. data/doc_out/LineBaseEntityListing.html.md +2 -2
  116. data/doc_out/LineEntityListing.html.md +2 -2
  117. data/doc_out/LocalEncryptionConfigurationListing.html.md +2 -2
  118. data/doc_out/LocationsApi.html.md +17 -5
  119. data/doc_out/LogicalInterfaceEntityListing.html.md +2 -2
  120. data/doc_out/NotificationsApi.html.md +29 -8
  121. data/doc_out/OAuthApi.html.md +25 -7
  122. data/doc_out/OAuthClientEntityListing.html.md +2 -2
  123. data/doc_out/OAuthProviderEntityListing.html.md +2 -2
  124. data/doc_out/Organization.html.md +1 -0
  125. data/doc_out/OrganizationApi.html.md +70 -3
  126. data/doc_out/OrganizationPresenceEntityListing.html.md +2 -2
  127. data/doc_out/OrganizationRoleEntityListing.html.md +2 -2
  128. data/doc_out/OrphanRecordingListing.html.md +2 -2
  129. data/doc_out/OutOfOfficeNotification.html.md +1 -1
  130. data/doc_out/OutboundApi.html.md +323 -95
  131. data/doc_out/OutboundRouteBaseEntityListing.html.md +2 -2
  132. data/doc_out/OutboundRouteEntityListing.html.md +2 -2
  133. data/doc_out/PermissionCollectionEntityListing.html.md +2 -2
  134. data/doc_out/PhoneBaseEntityListing.html.md +2 -2
  135. data/doc_out/PhoneEntityListing.html.md +2 -2
  136. data/doc_out/PhoneMetaBaseEntityListing.html.md +2 -2
  137. data/doc_out/PhysicalInterfaceEntityListing.html.md +2 -2
  138. data/doc_out/PolicyEntityListing.html.md +2 -2
  139. data/doc_out/PresenceApi.html.md +33 -9
  140. data/doc_out/QualityApi.html.md +128 -33
  141. data/doc_out/QualityAuditPage.html.md +2 -2
  142. data/doc_out/QueueEntityListing.html.md +2 -2
  143. data/doc_out/QueueMemberEntityListing.html.md +2 -2
  144. data/doc_out/RecordingApi.html.md +133 -34
  145. data/doc_out/RecordingDataV2Notification.html.md +29 -0
  146. data/doc_out/{RecordingDataNotificationConversationData.html.md → RecordingDataV2NotificationConversationData.html.md} +2 -2
  147. data/doc_out/RecordingDataV2NotificationLockData.html.md +15 -0
  148. data/doc_out/RecordingDataV2NotificationLockInfo.html.md +15 -0
  149. data/doc_out/{DocumentDataNotificationCreatedBy.html.md → RecordingDataV2NotificationUserData.html.md} +2 -2
  150. data/doc_out/{RecordingDataNotificationWorkspaceData.html.md → RecordingDataV2NotificationWorkspaceData.html.md} +2 -2
  151. data/doc_out/ReportMetaDataEntityListing.html.md +2 -2
  152. data/doc_out/ReportRunEntryEntityDomainListing.html.md +2 -2
  153. data/doc_out/ReportScheduleEntityListing.html.md +2 -2
  154. data/doc_out/ResponseEntityList.html.md +2 -2
  155. data/doc_out/ResponseEntityListing.html.md +2 -2
  156. data/doc_out/ResponseManagementApi.html.md +45 -12
  157. data/doc_out/ResponseSetEntityListing.html.md +2 -2
  158. data/doc_out/ResponseSetNotification.html.md +1 -1
  159. data/doc_out/RoutingApi.html.md +193 -49
  160. data/doc_out/RoutingStatusAlertContainer.html.md +2 -2
  161. data/doc_out/RoutingStatusRuleContainer.html.md +2 -2
  162. data/doc_out/RuleSetEntityListing.html.md +2 -2
  163. data/doc_out/RuleSetNotification.html.md +1 -1
  164. data/doc_out/RuleSetNotificationCondition.html.md +1 -1
  165. data/doc_out/RuleSetNotificationConditions.html.md +1 -1
  166. data/doc_out/SchemaCategoryEntityListing.html.md +2 -2
  167. data/doc_out/SchemaReferenceEntityListing.html.md +2 -2
  168. data/doc_out/ScreenRecordingSessionListing.html.md +2 -2
  169. data/doc_out/ScreenShareConversationNotificationParticipants.html.md +1 -1
  170. data/doc_out/ScreenShareConversationNotificationScreenShareMediaParticipant.html.md +1 -1
  171. data/doc_out/ScriptEntityListing.html.md +2 -2
  172. data/doc_out/ScriptsApi.html.md +37 -10
  173. data/doc_out/SearchApi.html.md +49 -13
  174. data/doc_out/SecurityProfileEntityListing.html.md +2 -2
  175. data/doc_out/SequenceScheduleNotification.html.md +2 -2
  176. data/doc_out/ShareEntityListing.html.md +2 -2
  177. data/doc_out/SiteEntityListing.html.md +2 -2
  178. data/doc_out/SkillEntityListing.html.md +2 -2
  179. data/doc_out/SocialConversationNotificationParticipants.html.md +1 -1
  180. data/doc_out/SocialConversationNotificationSocialMediaParticipant.html.md +1 -1
  181. data/doc_out/StationEntityListing.html.md +2 -2
  182. data/doc_out/StationsApi.html.md +13 -4
  183. data/doc_out/SuggestApi.html.md +17 -5
  184. data/doc_out/TagValueEntityListing.html.md +2 -2
  185. data/doc_out/TelephonyProvidersEdgeApi.html.md +479 -121
  186. data/doc_out/TimeZoneEntityListing.html.md +2 -2
  187. data/doc_out/TokensApi.html.md +5 -2
  188. data/doc_out/TrunkBaseEntityListing.html.md +2 -2
  189. data/doc_out/TrunkEntityListing.html.md +2 -2
  190. data/doc_out/TrunkMetabaseEntityListing.html.md +2 -2
  191. data/doc_out/UserEntityListing.html.md +2 -2
  192. data/doc_out/UserListScheduleRequestBody.html.md +15 -0
  193. data/doc_out/UserPresenceAlertContainer.html.md +2 -2
  194. data/doc_out/UserPresenceRuleContainer.html.md +2 -2
  195. data/doc_out/UserQueueEntityListing.html.md +2 -2
  196. data/doc_out/UserRecordingEntityListing.html.md +2 -2
  197. data/doc_out/UserRecordingsApi.html.md +25 -7
  198. data/doc_out/UserSchedule.html.md +14 -0
  199. data/doc_out/UserScheduleActivity.html.md +18 -0
  200. data/doc_out/UserScheduleContainer.html.md +14 -0
  201. data/doc_out/UserScheduleFullDayTimeOffMarker.html.md +17 -0
  202. data/doc_out/UserScheduleShift.html.md +15 -0
  203. data/doc_out/UserSkillEntityListing.html.md +2 -2
  204. data/doc_out/UsersApi.html.md +169 -43
  205. data/doc_out/UtilitiesApi.html.md +13 -4
  206. data/doc_out/VideoConversationNotificationParticipants.html.md +1 -1
  207. data/doc_out/VideoConversationNotificationVideoMediaParticipant.html.md +1 -1
  208. data/doc_out/VoicemailApi.html.md +89 -23
  209. data/doc_out/VoicemailMessageEntityListing.html.md +2 -2
  210. data/doc_out/WfmUserEntityListing.html.md +13 -0
  211. data/doc_out/WorkforceManagementApi.html.md +227 -13
  212. data/doc_out/WorkspaceEntityListing.html.md +2 -2
  213. data/doc_out/WorkspaceMemberEntityListing.html.md +2 -2
  214. data/doc_out/WrapUpCodeMappingNotification.html.md +0 -1
  215. data/doc_out/WrapupCodeEntityListing.html.md +2 -2
  216. data/doc_out/index.html.md +3 -3
  217. data/lib/purecloud.rb +34 -20
  218. data/lib/purecloud/api/conversations_api.rb +120 -0
  219. data/lib/purecloud/api/organization_api.rb +57 -0
  220. data/lib/purecloud/api/outbound_api.rb +9 -9
  221. data/lib/purecloud/api/quality_api.rb +7 -0
  222. data/lib/purecloud/api/telephony_providers_edge_api.rb +3 -1
  223. data/lib/purecloud/api/workforce_management_api.rb +185 -3
  224. data/lib/purecloud/api_client.rb +1 -1
  225. data/lib/purecloud/models/activity_code.rb +253 -0
  226. data/lib/purecloud/models/activity_code_container.rb +169 -0
  227. data/lib/purecloud/models/agent_activity_entity_listing.rb +17 -17
  228. data/lib/purecloud/models/attempt_limits_entity_listing.rb +17 -17
  229. data/lib/purecloud/models/attempt_limits_notification.rb +24 -14
  230. data/lib/purecloud/models/attribute_entity_listing.rb +17 -17
  231. data/lib/purecloud/models/calibration_entity_listing.rb +17 -17
  232. data/lib/purecloud/models/call_conversation_entity_listing.rb +17 -17
  233. data/lib/purecloud/models/call_conversation_notification_call_media_participant.rb +1 -1
  234. data/lib/purecloud/models/call_conversation_notification_participants.rb +1 -1
  235. data/lib/purecloud/models/callable_time_set_entity_listing.rb +17 -17
  236. data/lib/purecloud/models/callable_time_set_notification.rb +13 -13
  237. data/lib/purecloud/models/callback_conversation_entity_listing.rb +17 -17
  238. data/lib/purecloud/models/callback_conversation_notification_callback_media_participant.rb +1 -1
  239. data/lib/purecloud/models/callback_conversation_notification_participants.rb +1 -1
  240. data/lib/purecloud/models/campaign_entity_listing.rb +17 -17
  241. data/lib/purecloud/models/campaign_notification.rb +15 -15
  242. data/lib/purecloud/models/{campaign_notification_error.rb → campaign_notification_rest_error_detail.rb} +1 -1
  243. data/lib/purecloud/models/campaign_progress_notification.rb +1 -1
  244. data/lib/purecloud/models/campaign_rule_entity_listing.rb +17 -17
  245. data/lib/purecloud/models/campaign_rule_notification.rb +14 -14
  246. data/lib/purecloud/models/campaign_rule_notification_campaign_rule_action_entities.rb +2 -2
  247. data/lib/purecloud/models/campaign_rule_notification_campaign_rule_entities.rb +3 -13
  248. data/lib/purecloud/models/campaign_rule_notification_uri_reference.rb +175 -0
  249. data/lib/purecloud/models/campaign_schedule_notification.rb +14 -14
  250. data/lib/purecloud/models/campaign_sequence_entity_listing.rb +17 -17
  251. data/lib/purecloud/models/campaign_sequence_notification.rb +15 -15
  252. data/lib/purecloud/models/certificate_authority_entity_listing.rb +17 -17
  253. data/lib/purecloud/models/channel_entity_listing.rb +17 -17
  254. data/lib/purecloud/models/chat_conversation_entity_listing.rb +17 -17
  255. data/lib/purecloud/models/chat_conversation_notification_chat_media_participant.rb +1 -1
  256. data/lib/purecloud/models/chat_conversation_notification_participants.rb +1 -1
  257. data/lib/purecloud/models/cobrowse_conversation_entity_listing.rb +17 -17
  258. data/lib/purecloud/models/cobrowse_conversation_notification_cobrowse_media_participant.rb +1 -1
  259. data/lib/purecloud/models/cobrowse_conversation_notification_participants.rb +1 -1
  260. data/lib/purecloud/models/command_status_entity_listing.rb +17 -17
  261. data/lib/purecloud/models/contact_list_entity_listing.rb +17 -17
  262. data/lib/purecloud/models/contact_list_notification.rb +14 -14
  263. data/lib/purecloud/models/{contact_list_notification_phone_column_.rb → contact_list_notification_contact_phone_number_column.rb} +1 -1
  264. data/lib/purecloud/models/contact_list_notification_import_status.rb +1 -1
  265. data/lib/purecloud/models/conversation_entity_listing.rb +17 -17
  266. data/lib/purecloud/models/create_email_request.rb +280 -0
  267. data/lib/purecloud/models/create_web_chat_request.rb +236 -0
  268. data/lib/purecloud/models/decisions_file_metadata_entity_listing.rb +17 -17
  269. data/lib/purecloud/models/did_entity_listing.rb +17 -17
  270. data/lib/purecloud/models/did_pool_entity_listing.rb +17 -17
  271. data/lib/purecloud/models/dnc_list_entity_listing.rb +17 -17
  272. data/lib/purecloud/models/dnc_list_notification.rb +14 -14
  273. data/lib/purecloud/models/dnc_list_notification_import_status.rb +1 -1
  274. data/lib/purecloud/models/document_audit_entity_listing.rb +17 -17
  275. data/lib/purecloud/models/{document_data_notification.rb → document_data_v2_notification.rb} +9 -29
  276. data/lib/purecloud/models/{recording_data_notification_user_data.rb → document_data_v2_notification_created_by.rb} +1 -1
  277. data/lib/purecloud/models/{document_data_notification_lock_info.rb → document_data_v2_notification_lock_data.rb} +4 -4
  278. data/lib/purecloud/models/{document_data_notification_lock_data.rb → document_data_v2_notification_lock_info.rb} +4 -4
  279. data/lib/purecloud/models/{document_data_notification_user_data.rb → document_data_v2_notification_user_data.rb} +1 -1
  280. data/lib/purecloud/models/{document_data_notification_workspace.rb → document_data_v2_notification_workspace.rb} +1 -1
  281. data/lib/purecloud/models/{document_data_notification_workspace_data.rb → document_data_v2_notification_workspace_data.rb} +1 -1
  282. data/lib/purecloud/models/document_entity_listing.rb +17 -17
  283. data/lib/purecloud/models/domain_edge_software_version_dto_entity_listing.rb +17 -17
  284. data/lib/purecloud/models/domain_entity_listing.rb +17 -17
  285. data/lib/purecloud/models/domain_entity_listing_evaluation_form.rb +17 -17
  286. data/lib/purecloud/models/domain_entity_listing_query_result.rb +17 -17
  287. data/lib/purecloud/models/domain_organization_role.rb +11 -11
  288. data/lib/purecloud/models/domain_organization_role_create.rb +11 -11
  289. data/lib/purecloud/models/domain_organization_role_update.rb +11 -11
  290. data/lib/purecloud/models/edge_entity_listing.rb +17 -17
  291. data/lib/purecloud/models/edge_group_entity_listing.rb +17 -17
  292. data/lib/purecloud/models/edge_line_entity_listing.rb +17 -17
  293. data/lib/purecloud/models/edge_reboot_parameters.rb +166 -0
  294. data/lib/purecloud/models/email_conversation_entity_listing.rb +17 -17
  295. data/lib/purecloud/models/email_conversation_notification_email_media_participant.rb +1 -1
  296. data/lib/purecloud/models/email_conversation_notification_participants.rb +1 -1
  297. data/lib/purecloud/models/email_message_listing.rb +17 -17
  298. data/lib/purecloud/models/encryption_key_entity_listing.rb +17 -17
  299. data/lib/purecloud/models/endpoint_entity_listing.rb +17 -17
  300. data/lib/purecloud/models/entry.rb +8 -10
  301. data/lib/purecloud/models/entry_feature_boolean.rb +184 -0
  302. data/lib/purecloud/models/evaluation_entity_listing.rb +17 -17
  303. data/lib/purecloud/models/evaluation_form_entity_listing.rb +17 -17
  304. data/lib/purecloud/models/evaluator_activity_entity_listing.rb +17 -17
  305. data/lib/purecloud/models/extension_entity_listing.rb +17 -17
  306. data/lib/purecloud/models/extension_pool_entity_listing.rb +17 -17
  307. data/lib/purecloud/models/{fax_data_notification.rb → fax_data_v2_notification.rb} +9 -29
  308. data/lib/purecloud/models/{fax_data_notification_lock_info.rb → fax_data_v2_notification_lock_data.rb} +4 -4
  309. data/lib/purecloud/models/{fax_data_notification_lock_data.rb → fax_data_v2_notification_lock_info.rb} +4 -4
  310. data/lib/purecloud/models/{fax_data_notification_user_data.rb → fax_data_v2_notification_user_data.rb} +1 -1
  311. data/lib/purecloud/models/{fax_data_notification_workspace_data.rb → fax_data_v2_notification_workspace_data.rb} +1 -1
  312. data/lib/purecloud/models/fax_document_entity_listing.rb +17 -17
  313. data/lib/purecloud/models/greeting_listing.rb +17 -17
  314. data/lib/purecloud/models/group_entity_listing.rb +17 -17
  315. data/lib/purecloud/models/heart_beat_alert_container.rb +17 -17
  316. data/lib/purecloud/models/heart_beat_rule_container.rb +17 -17
  317. data/lib/purecloud/models/import_status_notification.rb +1 -1
  318. data/lib/purecloud/models/inbound_domain_entity_listing.rb +17 -17
  319. data/lib/purecloud/models/inbound_route_entity_listing.rb +17 -17
  320. data/lib/purecloud/models/interaction_stats_alert_container.rb +17 -17
  321. data/lib/purecloud/models/interaction_stats_rule_container.rb +17 -17
  322. data/lib/purecloud/models/json_node.rb +24 -24
  323. data/lib/purecloud/models/keyword_set_entity_listing.rb +17 -17
  324. data/lib/purecloud/models/language_entity_listing.rb +17 -17
  325. data/lib/purecloud/models/library_entity_listing.rb +17 -17
  326. data/lib/purecloud/models/line_base_entity_listing.rb +17 -17
  327. data/lib/purecloud/models/line_entity_listing.rb +17 -17
  328. data/lib/purecloud/models/local_encryption_configuration_listing.rb +17 -17
  329. data/lib/purecloud/models/logical_interface_entity_listing.rb +17 -17
  330. data/lib/purecloud/models/o_auth_client_entity_listing.rb +17 -17
  331. data/lib/purecloud/models/o_auth_provider_entity_listing.rb +17 -17
  332. data/lib/purecloud/models/organization.rb +17 -4
  333. data/lib/purecloud/models/organization_presence_entity_listing.rb +17 -17
  334. data/lib/purecloud/models/organization_role_entity_listing.rb +17 -17
  335. data/lib/purecloud/models/orphan_recording_listing.rb +17 -17
  336. data/lib/purecloud/models/out_of_office_notification.rb +1 -1
  337. data/lib/purecloud/models/outbound_route_base_entity_listing.rb +17 -17
  338. data/lib/purecloud/models/outbound_route_entity_listing.rb +17 -17
  339. data/lib/purecloud/models/permission_collection_entity_listing.rb +17 -17
  340. data/lib/purecloud/models/phone_base_entity_listing.rb +17 -17
  341. data/lib/purecloud/models/phone_entity_listing.rb +17 -17
  342. data/lib/purecloud/models/phone_meta_base_entity_listing.rb +17 -17
  343. data/lib/purecloud/models/physical_interface_entity_listing.rb +17 -17
  344. data/lib/purecloud/models/policy_entity_listing.rb +17 -17
  345. data/lib/purecloud/models/quality_audit_page.rb +17 -17
  346. data/lib/purecloud/models/queue_entity_listing.rb +17 -17
  347. data/lib/purecloud/models/queue_member_entity_listing.rb +17 -17
  348. data/lib/purecloud/models/{recording_data_notification.rb → recording_data_v2_notification.rb} +10 -30
  349. data/lib/purecloud/models/{recording_data_notification_conversation_data.rb → recording_data_v2_notification_conversation_data.rb} +1 -1
  350. data/lib/purecloud/models/recording_data_v2_notification_lock_data.rb +185 -0
  351. data/lib/purecloud/models/recording_data_v2_notification_lock_info.rb +185 -0
  352. data/lib/purecloud/models/{document_data_notification_created_by.rb → recording_data_v2_notification_user_data.rb} +1 -1
  353. data/lib/purecloud/models/{recording_data_notification_workspace_data.rb → recording_data_v2_notification_workspace_data.rb} +1 -1
  354. data/lib/purecloud/models/report_meta_data_entity_listing.rb +17 -17
  355. data/lib/purecloud/models/report_run_entry_entity_domain_listing.rb +17 -17
  356. data/lib/purecloud/models/report_schedule_entity_listing.rb +17 -17
  357. data/lib/purecloud/models/response_entity_list.rb +17 -17
  358. data/lib/purecloud/models/response_entity_listing.rb +17 -17
  359. data/lib/purecloud/models/response_set_entity_listing.rb +17 -17
  360. data/lib/purecloud/models/response_set_notification.rb +13 -13
  361. data/lib/purecloud/models/routing_status_alert_container.rb +17 -17
  362. data/lib/purecloud/models/routing_status_rule_container.rb +17 -17
  363. data/lib/purecloud/models/rule_set_entity_listing.rb +17 -17
  364. data/lib/purecloud/models/rule_set_notification.rb +1 -1
  365. data/lib/purecloud/models/rule_set_notification_condition.rb +11 -11
  366. data/lib/purecloud/models/rule_set_notification_conditions.rb +18 -18
  367. data/lib/purecloud/models/rule_set_notification_rule.rb +9 -0
  368. data/lib/purecloud/models/rule_set_notification_rules.rb +9 -0
  369. data/lib/purecloud/models/schema_category_entity_listing.rb +17 -17
  370. data/lib/purecloud/models/schema_reference_entity_listing.rb +17 -17
  371. data/lib/purecloud/models/screen_recording_session_listing.rb +17 -17
  372. data/lib/purecloud/models/screen_share_conversation_notification_participants.rb +1 -1
  373. data/lib/purecloud/models/screen_share_conversation_notification_screen_share_media_participant.rb +1 -1
  374. data/lib/purecloud/models/script_entity_listing.rb +17 -17
  375. data/lib/purecloud/models/security_profile_entity_listing.rb +17 -17
  376. data/lib/purecloud/models/sequence_schedule_notification.rb +14 -14
  377. data/lib/purecloud/models/share_entity_listing.rb +17 -17
  378. data/lib/purecloud/models/site_entity_listing.rb +17 -17
  379. data/lib/purecloud/models/skill_entity_listing.rb +17 -17
  380. data/lib/purecloud/models/social_conversation_notification_participants.rb +1 -1
  381. data/lib/purecloud/models/social_conversation_notification_social_media_participant.rb +1 -1
  382. data/lib/purecloud/models/station_entity_listing.rb +17 -17
  383. data/lib/purecloud/models/tag_value_entity_listing.rb +17 -17
  384. data/lib/purecloud/models/time_zone_entity_listing.rb +17 -17
  385. data/lib/purecloud/models/trunk_base_entity_listing.rb +17 -17
  386. data/lib/purecloud/models/trunk_entity_listing.rb +17 -17
  387. data/lib/purecloud/models/trunk_metabase_entity_listing.rb +17 -17
  388. data/lib/purecloud/models/user_entity_listing.rb +17 -17
  389. data/lib/purecloud/models/user_list_schedule_request_body.rb +191 -0
  390. data/lib/purecloud/models/user_presence_alert_container.rb +17 -17
  391. data/lib/purecloud/models/user_presence_rule_container.rb +17 -17
  392. data/lib/purecloud/models/user_queue_entity_listing.rb +17 -17
  393. data/lib/purecloud/models/user_recording_entity_listing.rb +17 -17
  394. data/lib/purecloud/models/user_schedule.rb +182 -0
  395. data/lib/purecloud/models/user_schedule_activity.rb +222 -0
  396. data/lib/purecloud/models/user_schedule_container.rb +180 -0
  397. data/lib/purecloud/models/user_schedule_full_day_time_off_marker.rb +211 -0
  398. data/lib/purecloud/models/user_schedule_shift.rb +191 -0
  399. data/lib/purecloud/models/user_skill_entity_listing.rb +17 -17
  400. data/lib/purecloud/models/video_conversation_notification_participants.rb +1 -1
  401. data/lib/purecloud/models/video_conversation_notification_video_media_participant.rb +1 -1
  402. data/lib/purecloud/models/voicemail_message_entity_listing.rb +17 -17
  403. data/lib/purecloud/models/wfm_user_entity_listing.rb +167 -0
  404. data/lib/purecloud/models/workspace_entity_listing.rb +17 -17
  405. data/lib/purecloud/models/workspace_member_entity_listing.rb +17 -17
  406. data/lib/purecloud/models/wrap_up_code_mapping_notification.rb +4 -14
  407. data/lib/purecloud/models/wrapup_code_entity_listing.rb +17 -17
  408. data/lib/purecloud/version.rb +1 -1
  409. data/newVersion.md +1 -1
  410. data/swagger.json +1 -1
  411. data/swagger_template/api_doc.mustache +5 -2
  412. data/version.json +1 -1
  413. metadata +70 -42
  414. data/doc_out/DocumentDataNotification.html.md +0 -28
  415. data/doc_out/DocumentDataNotificationLockData.html.md +0 -15
  416. data/doc_out/DocumentDataNotificationLockInfo.html.md +0 -15
  417. data/doc_out/FaxDataNotification.html.md +0 -31
  418. data/doc_out/FaxDataNotificationLockData.html.md +0 -15
  419. data/doc_out/FaxDataNotificationLockInfo.html.md +0 -15
  420. data/doc_out/RecordingDataNotification.html.md +0 -31
  421. data/doc_out/RecordingDataNotificationLockData.html.md +0 -15
  422. data/doc_out/RecordingDataNotificationLockInfo.html.md +0 -15
  423. data/lib/purecloud/models/recording_data_notification_lock_data.rb +0 -185
  424. data/lib/purecloud/models/recording_data_notification_lock_info.rb +0 -185
@@ -0,0 +1,280 @@
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@inin.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 CreateEmailRequest
21
+ # The ID of the queue to use for routing the chat conversation.
22
+ attr_accessor :queue_id
23
+
24
+ # The name of the provider that is sourcing the web chat.
25
+ attr_accessor :provider
26
+
27
+ # The list of skill ID's to use for routing.
28
+ attr_accessor :skill_ids
29
+
30
+ # The ID of the langauge to use for routing.
31
+ attr_accessor :language_id
32
+
33
+ # The priority to assign to the conversation for routing.
34
+ attr_accessor :priority
35
+
36
+ # The list of attributes to associate with the customer participant.
37
+ attr_accessor :attributes
38
+
39
+ # The email address of the recipient of the email.
40
+ attr_accessor :to_address
41
+
42
+ # The name of the recipient of the email.
43
+ attr_accessor :to_name
44
+
45
+ # The email address of the sender of the email.
46
+ attr_accessor :from_address
47
+
48
+ # The name of the sender of the email.
49
+ attr_accessor :from_name
50
+
51
+ # The subject of the email
52
+ attr_accessor :subject
53
+
54
+ # Attribute mapping from ruby-style variable name to JSON key.
55
+ def self.attribute_map
56
+ {
57
+
58
+ :'queue_id' => :'queueId',
59
+
60
+ :'provider' => :'provider',
61
+
62
+ :'skill_ids' => :'skillIds',
63
+
64
+ :'language_id' => :'languageId',
65
+
66
+ :'priority' => :'priority',
67
+
68
+ :'attributes' => :'attributes',
69
+
70
+ :'to_address' => :'toAddress',
71
+
72
+ :'to_name' => :'toName',
73
+
74
+ :'from_address' => :'fromAddress',
75
+
76
+ :'from_name' => :'fromName',
77
+
78
+ :'subject' => :'subject'
79
+
80
+ }
81
+ end
82
+
83
+ # Attribute type mapping.
84
+ def self.swagger_types
85
+ {
86
+ :'queue_id' => :'String',
87
+ :'provider' => :'String',
88
+ :'skill_ids' => :'Array<String>',
89
+ :'language_id' => :'String',
90
+ :'priority' => :'Integer',
91
+ :'attributes' => :'Hash<String, String>',
92
+ :'to_address' => :'String',
93
+ :'to_name' => :'String',
94
+ :'from_address' => :'String',
95
+ :'from_name' => :'String',
96
+ :'subject' => :'String'
97
+
98
+ }
99
+ end
100
+
101
+ def initialize(attributes = {})
102
+ return unless attributes.is_a?(Hash)
103
+
104
+ # convert string to symbol for hash key
105
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
106
+
107
+
108
+ if attributes[:'queueId']
109
+ self.queue_id = attributes[:'queueId']
110
+ end
111
+
112
+ if attributes[:'provider']
113
+ self.provider = attributes[:'provider']
114
+ end
115
+
116
+ if attributes[:'skillIds']
117
+ if (value = attributes[:'skillIds']).is_a?(Array)
118
+ self.skill_ids = value
119
+ end
120
+ end
121
+
122
+ if attributes[:'languageId']
123
+ self.language_id = attributes[:'languageId']
124
+ end
125
+
126
+ if attributes[:'priority']
127
+ self.priority = attributes[:'priority']
128
+ end
129
+
130
+ if attributes[:'attributes']
131
+ if (value = attributes[:'attributes']).is_a?(Array)
132
+ self.attributes = value
133
+ end
134
+ end
135
+
136
+ if attributes[:'toAddress']
137
+ self.to_address = attributes[:'toAddress']
138
+ end
139
+
140
+ if attributes[:'toName']
141
+ self.to_name = attributes[:'toName']
142
+ end
143
+
144
+ if attributes[:'fromAddress']
145
+ self.from_address = attributes[:'fromAddress']
146
+ end
147
+
148
+ if attributes[:'fromName']
149
+ self.from_name = attributes[:'fromName']
150
+ end
151
+
152
+ if attributes[:'subject']
153
+ self.subject = attributes[:'subject']
154
+ end
155
+
156
+ end
157
+
158
+ # Check equality by comparing each attribute.
159
+ def ==(o)
160
+ return true if self.equal?(o)
161
+ self.class == o.class &&
162
+ queue_id == o.queue_id &&
163
+ provider == o.provider &&
164
+ skill_ids == o.skill_ids &&
165
+ language_id == o.language_id &&
166
+ priority == o.priority &&
167
+ attributes == o.attributes &&
168
+ to_address == o.to_address &&
169
+ to_name == o.to_name &&
170
+ from_address == o.from_address &&
171
+ from_name == o.from_name &&
172
+ subject == o.subject
173
+ end
174
+
175
+ # @see the `==` method
176
+ def eql?(o)
177
+ self == o
178
+ end
179
+
180
+ # Calculate hash code according to all attributes.
181
+ def hash
182
+ [queue_id, provider, skill_ids, language_id, priority, attributes, to_address, to_name, from_address, from_name, subject].hash
183
+ end
184
+
185
+ # build the object from hash
186
+ def build_from_hash(attributes)
187
+ return nil unless attributes.is_a?(Hash)
188
+ self.class.swagger_types.each_pair do |key, type|
189
+ if type =~ /^Array<(.*)>/i
190
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
191
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
192
+ else
193
+ #TODO show warning in debug mode
194
+ end
195
+ elsif !attributes[self.class.attribute_map[key]].nil?
196
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
197
+ else
198
+ # data not found in attributes(hash), not an issue as the data can be optional
199
+ end
200
+ end
201
+
202
+ self
203
+ end
204
+
205
+ def _deserialize(type, value)
206
+ case type.to_sym
207
+ when :DateTime
208
+ DateTime.parse(value)
209
+ when :Date
210
+ Date.parse(value)
211
+ when :String
212
+ value.to_s
213
+ when :Integer
214
+ value.to_i
215
+ when :Float
216
+ value.to_f
217
+ when :BOOLEAN
218
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
219
+ true
220
+ else
221
+ false
222
+ end
223
+ when :Object
224
+ # generic object (usually a Hash), return directly
225
+ value
226
+ when /\AArray<(?<inner_type>.+)>\z/
227
+ inner_type = Regexp.last_match[:inner_type]
228
+ value.map { |v| _deserialize(inner_type, v) }
229
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
230
+ k_type = Regexp.last_match[:k_type]
231
+ v_type = Regexp.last_match[:v_type]
232
+ {}.tap do |hash|
233
+ value.each do |k, v|
234
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
235
+ end
236
+ end
237
+ else # model
238
+ _model = Object.const_get("PureCloud").const_get(type).new
239
+ _model.build_from_hash(value)
240
+ end
241
+ end
242
+
243
+ def to_s
244
+ to_hash.to_s
245
+ end
246
+
247
+ # to_body is an alias to to_body (backward compatibility))
248
+ def to_body
249
+ to_hash
250
+ end
251
+
252
+ # return the object in the form of hash
253
+ def to_hash
254
+ hash = {}
255
+ self.class.attribute_map.each_pair do |attr, param|
256
+ value = self.send(attr)
257
+ next if value.nil?
258
+ hash[param] = _to_hash(value)
259
+ end
260
+ hash
261
+ end
262
+
263
+ # Method to output non-array value in the form of hash
264
+ # For object, use to_hash. Otherwise, just return the value
265
+ def _to_hash(value)
266
+ if value.is_a?(Array)
267
+ value.compact.map{ |v| _to_hash(v) }
268
+ elsif value.is_a?(Hash)
269
+ {}.tap do |hash|
270
+ value.each { |k, v| hash[k] = _to_hash(v) }
271
+ end
272
+ elsif value.respond_to? :to_hash
273
+ value.to_hash
274
+ else
275
+ value
276
+ end
277
+ end
278
+
279
+ end
280
+ end
@@ -0,0 +1,236 @@
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@inin.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 CreateWebChatRequest
21
+ # The ID of the queue to use for routing the chat conversation.
22
+ attr_accessor :queue_id
23
+
24
+ # The name of the provider that is sourcing the web chat.
25
+ attr_accessor :provider
26
+
27
+ # The list of skill ID's to use for routing.
28
+ attr_accessor :skill_ids
29
+
30
+ # The ID of the langauge to use for routing.
31
+ attr_accessor :language_id
32
+
33
+ # The priority to assign to the conversation for routing.
34
+ attr_accessor :priority
35
+
36
+ # The list of attributes to associate with the customer participant.
37
+ attr_accessor :attributes
38
+
39
+ # The name of the customer participating in the web chat.
40
+ attr_accessor :customer_name
41
+
42
+ # Attribute mapping from ruby-style variable name to JSON key.
43
+ def self.attribute_map
44
+ {
45
+
46
+ :'queue_id' => :'queueId',
47
+
48
+ :'provider' => :'provider',
49
+
50
+ :'skill_ids' => :'skillIds',
51
+
52
+ :'language_id' => :'languageId',
53
+
54
+ :'priority' => :'priority',
55
+
56
+ :'attributes' => :'attributes',
57
+
58
+ :'customer_name' => :'customerName'
59
+
60
+ }
61
+ end
62
+
63
+ # Attribute type mapping.
64
+ def self.swagger_types
65
+ {
66
+ :'queue_id' => :'String',
67
+ :'provider' => :'String',
68
+ :'skill_ids' => :'Array<String>',
69
+ :'language_id' => :'String',
70
+ :'priority' => :'Integer',
71
+ :'attributes' => :'Hash<String, String>',
72
+ :'customer_name' => :'String'
73
+
74
+ }
75
+ end
76
+
77
+ def initialize(attributes = {})
78
+ return unless attributes.is_a?(Hash)
79
+
80
+ # convert string to symbol for hash key
81
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
82
+
83
+
84
+ if attributes[:'queueId']
85
+ self.queue_id = attributes[:'queueId']
86
+ end
87
+
88
+ if attributes[:'provider']
89
+ self.provider = attributes[:'provider']
90
+ end
91
+
92
+ if attributes[:'skillIds']
93
+ if (value = attributes[:'skillIds']).is_a?(Array)
94
+ self.skill_ids = value
95
+ end
96
+ end
97
+
98
+ if attributes[:'languageId']
99
+ self.language_id = attributes[:'languageId']
100
+ end
101
+
102
+ if attributes[:'priority']
103
+ self.priority = attributes[:'priority']
104
+ end
105
+
106
+ if attributes[:'attributes']
107
+ if (value = attributes[:'attributes']).is_a?(Array)
108
+ self.attributes = value
109
+ end
110
+ end
111
+
112
+ if attributes[:'customerName']
113
+ self.customer_name = attributes[:'customerName']
114
+ end
115
+
116
+ end
117
+
118
+ # Check equality by comparing each attribute.
119
+ def ==(o)
120
+ return true if self.equal?(o)
121
+ self.class == o.class &&
122
+ queue_id == o.queue_id &&
123
+ provider == o.provider &&
124
+ skill_ids == o.skill_ids &&
125
+ language_id == o.language_id &&
126
+ priority == o.priority &&
127
+ attributes == o.attributes &&
128
+ customer_name == o.customer_name
129
+ end
130
+
131
+ # @see the `==` method
132
+ def eql?(o)
133
+ self == o
134
+ end
135
+
136
+ # Calculate hash code according to all attributes.
137
+ def hash
138
+ [queue_id, provider, skill_ids, language_id, priority, attributes, customer_name].hash
139
+ end
140
+
141
+ # build the object from hash
142
+ def build_from_hash(attributes)
143
+ return nil unless attributes.is_a?(Hash)
144
+ self.class.swagger_types.each_pair do |key, type|
145
+ if type =~ /^Array<(.*)>/i
146
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
147
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
148
+ else
149
+ #TODO show warning in debug mode
150
+ end
151
+ elsif !attributes[self.class.attribute_map[key]].nil?
152
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
153
+ else
154
+ # data not found in attributes(hash), not an issue as the data can be optional
155
+ end
156
+ end
157
+
158
+ self
159
+ end
160
+
161
+ def _deserialize(type, value)
162
+ case type.to_sym
163
+ when :DateTime
164
+ DateTime.parse(value)
165
+ when :Date
166
+ Date.parse(value)
167
+ when :String
168
+ value.to_s
169
+ when :Integer
170
+ value.to_i
171
+ when :Float
172
+ value.to_f
173
+ when :BOOLEAN
174
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
175
+ true
176
+ else
177
+ false
178
+ end
179
+ when :Object
180
+ # generic object (usually a Hash), return directly
181
+ value
182
+ when /\AArray<(?<inner_type>.+)>\z/
183
+ inner_type = Regexp.last_match[:inner_type]
184
+ value.map { |v| _deserialize(inner_type, v) }
185
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
186
+ k_type = Regexp.last_match[:k_type]
187
+ v_type = Regexp.last_match[:v_type]
188
+ {}.tap do |hash|
189
+ value.each do |k, v|
190
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
191
+ end
192
+ end
193
+ else # model
194
+ _model = Object.const_get("PureCloud").const_get(type).new
195
+ _model.build_from_hash(value)
196
+ end
197
+ end
198
+
199
+ def to_s
200
+ to_hash.to_s
201
+ end
202
+
203
+ # to_body is an alias to to_body (backward compatibility))
204
+ def to_body
205
+ to_hash
206
+ end
207
+
208
+ # return the object in the form of hash
209
+ def to_hash
210
+ hash = {}
211
+ self.class.attribute_map.each_pair do |attr, param|
212
+ value = self.send(attr)
213
+ next if value.nil?
214
+ hash[param] = _to_hash(value)
215
+ end
216
+ hash
217
+ end
218
+
219
+ # Method to output non-array value in the form of hash
220
+ # For object, use to_hash. Otherwise, just return the value
221
+ def _to_hash(value)
222
+ if value.is_a?(Array)
223
+ value.compact.map{ |v| _to_hash(v) }
224
+ elsif value.is_a?(Hash)
225
+ {}.tap do |hash|
226
+ value.each { |k, v| hash[k] = _to_hash(v) }
227
+ end
228
+ elsif value.respond_to? :to_hash
229
+ value.to_hash
230
+ else
231
+ value
232
+ end
233
+ end
234
+
235
+ end
236
+ end