purecloud 0.50.1 → 0.51.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 (644) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -6
  3. data/bin/notificationMappings.json +96 -0
  4. data/config-ruby.json +1 -1
  5. data/doc_out/AcwSettings.html.md +2 -2
  6. data/doc_out/Address.html.md +17 -0
  7. data/doc_out/Agent.html.md +1 -1
  8. data/doc_out/AgentActivityEntityListing.html.md +2 -2
  9. data/doc_out/AlertingApi.html.md +445 -0
  10. data/doc_out/AttemptLimits.html.md +22 -0
  11. data/doc_out/AttemptLimitsEntityListing.html.md +22 -0
  12. data/doc_out/Attribute.html.md +1 -1
  13. data/doc_out/AttributeEntityListing.html.md +2 -2
  14. data/doc_out/AuditEntity.html.md +4 -4
  15. data/doc_out/AuditFacet.html.md +2 -2
  16. data/doc_out/AuditFilter.html.md +4 -4
  17. data/doc_out/AuditMessage.html.md +14 -14
  18. data/doc_out/AuditSearchResult.html.md +4 -4
  19. data/doc_out/AuditUser.html.md +3 -3
  20. data/doc_out/AuthorizationApi.html.md +2 -2
  21. data/doc_out/AvailableTopicEntityListing.html.md +2 -2
  22. data/doc_out/CalibrationCreate.html.md +28 -0
  23. data/doc_out/CalibrationEntityListing.html.md +2 -2
  24. data/doc_out/Call.html.md +17 -17
  25. data/doc_out/CallCommand.html.md +1 -1
  26. data/doc_out/CallConversationEntityListing.html.md +2 -2
  27. data/doc_out/CallConversationNotification.html.md +17 -0
  28. data/doc_out/CallConversationNotificationCallMediaParticipant.html.md +44 -0
  29. data/doc_out/CallConversationNotificationDetail.html.md +16 -0
  30. data/doc_out/CallConversationNotificationErrorBody.html.md +22 -0
  31. data/doc_out/CallConversationNotificationErrorInfo.html.md +22 -0
  32. data/doc_out/CallConversationNotificationFaxStatus.html.md +20 -0
  33. data/doc_out/CallConversationNotificationParticipants.html.md +44 -0
  34. data/doc_out/CallConversationNotificationUriReference.html.md +14 -0
  35. data/doc_out/CallMediaParticipant.html.md +6 -3
  36. data/doc_out/CallableTimeSetEntityListing.html.md +2 -2
  37. data/doc_out/Callback.html.md +16 -16
  38. data/doc_out/CallbackConversationEntityListing.html.md +2 -2
  39. data/doc_out/CallbackConversationNotification.html.md +16 -0
  40. data/doc_out/CallbackConversationNotificationCallbackMediaParticipant.html.md +39 -0
  41. data/doc_out/CallbackConversationNotificationDetail.html.md +16 -0
  42. data/doc_out/CallbackConversationNotificationDialerPreview.html.md +18 -0
  43. data/doc_out/CallbackConversationNotificationErrorBody.html.md +22 -0
  44. data/doc_out/CallbackConversationNotificationErrorInfo.html.md +22 -0
  45. data/doc_out/CallbackConversationNotificationErrorInfoDetails.html.md +16 -0
  46. data/doc_out/CallbackConversationNotificationParticipants.html.md +39 -0
  47. data/doc_out/CallbackConversationNotificationPhoneNumberColumn.html.md +15 -0
  48. data/doc_out/CallbackConversationNotificationUriReference.html.md +14 -0
  49. data/doc_out/CallbackConversationNotificationUser.html.md +14 -0
  50. data/doc_out/CallbackMediaParticipant.html.md +6 -3
  51. data/doc_out/Campaign.html.md +1 -0
  52. data/doc_out/CampaignEntityListing.html.md +2 -2
  53. data/doc_out/CampaignInteraction.html.md +33 -0
  54. data/doc_out/CampaignInteractions.html.md +17 -0
  55. data/doc_out/CampaignSequenceEntityListing.html.md +2 -2
  56. data/doc_out/CertificateAuthorityEntityListing.html.md +2 -2
  57. data/doc_out/Change.html.md +3 -3
  58. data/doc_out/ChannelEntityListing.html.md +2 -2
  59. data/doc_out/ChannelTopicEntityListing.html.md +2 -2
  60. data/doc_out/ChatConversationEntityListing.html.md +2 -2
  61. data/doc_out/ChatConversationNotification.html.md +16 -0
  62. data/doc_out/ChatConversationNotificationChatMediaParticipant.html.md +34 -0
  63. data/doc_out/ChatConversationNotificationDetail.html.md +16 -0
  64. data/doc_out/ChatConversationNotificationErrorBody.html.md +22 -0
  65. data/doc_out/ChatConversationNotificationErrorInfo.html.md +22 -0
  66. data/doc_out/ChatConversationNotificationParticipants.html.md +34 -0
  67. data/doc_out/ChatConversationNotificationUriReference.html.md +14 -0
  68. data/doc_out/ChatMediaParticipant.html.md +6 -3
  69. data/doc_out/CobrowseConversation.html.md +17 -0
  70. data/doc_out/CobrowseConversationEntityListing.html.md +22 -0
  71. data/doc_out/CobrowseConversationNotification.html.md +16 -0
  72. data/doc_out/CobrowseConversationNotificationCobrowseMediaParticipant.html.md +38 -0
  73. data/doc_out/CobrowseConversationNotificationDetail.html.md +16 -0
  74. data/doc_out/CobrowseConversationNotificationErrorBody.html.md +22 -0
  75. data/doc_out/CobrowseConversationNotificationErrorInfo.html.md +22 -0
  76. data/doc_out/CobrowseConversationNotificationParticipants.html.md +38 -0
  77. data/doc_out/CobrowseConversationNotificationUriReference.html.md +14 -0
  78. data/doc_out/CobrowseMediaParticipant.html.md +41 -0
  79. data/doc_out/Cobrowsesession.html.md +23 -0
  80. data/doc_out/CommandStatusEntityListing.html.md +2 -2
  81. data/doc_out/ContactListEntityListing.html.md +2 -2
  82. data/doc_out/ContactSort.html.md +1 -1
  83. data/doc_out/ContentManagementApi.html.md +34 -33
  84. data/doc_out/ConversationChat.html.md +12 -11
  85. data/doc_out/ConversationEntityListing.html.md +2 -2
  86. data/doc_out/ConversationNotification.html.md +17 -0
  87. data/doc_out/ConversationNotificationAddress.html.md +18 -0
  88. data/doc_out/ConversationNotificationCall.html.md +31 -0
  89. data/doc_out/ConversationNotificationCallback.html.md +28 -0
  90. data/doc_out/ConversationNotificationCallbacks.html.md +28 -0
  91. data/doc_out/ConversationNotificationCalls.html.md +31 -0
  92. data/doc_out/ConversationNotificationChat.html.md +21 -0
  93. data/doc_out/ConversationNotificationChats.html.md +21 -0
  94. data/doc_out/ConversationNotificationCobrowse.html.md +25 -0
  95. data/doc_out/ConversationNotificationCobrowsesessions.html.md +25 -0
  96. data/doc_out/ConversationNotificationDialerPreview.html.md +18 -0
  97. data/doc_out/ConversationNotificationDialerPreviewPhoneNumberColumns.html.md +15 -0
  98. data/doc_out/ConversationNotificationDisconnectReason.html.md +15 -0
  99. data/doc_out/ConversationNotificationDisconnectReasons.html.md +15 -0
  100. data/doc_out/ConversationNotificationEmail.html.md +23 -0
  101. data/doc_out/ConversationNotificationEmails.html.md +23 -0
  102. data/doc_out/ConversationNotificationErrorDetails.html.md +20 -0
  103. data/doc_out/ConversationNotificationErrorInfo.html.md +20 -0
  104. data/doc_out/ConversationNotificationFaxStatus.html.md +20 -0
  105. data/doc_out/ConversationNotificationParticipant.html.md +39 -0
  106. data/doc_out/ConversationNotificationParticipants.html.md +39 -0
  107. data/doc_out/ConversationNotificationPhoneNumberColumn.html.md +15 -0
  108. data/doc_out/ConversationNotificationScreenShare.html.md +21 -0
  109. data/doc_out/ConversationNotificationScreenShares.html.md +21 -0
  110. data/doc_out/ConversationNotificationSelf.html.md +18 -0
  111. data/doc_out/ConversationNotificationSocialExpression.html.md +25 -0
  112. data/doc_out/ConversationNotificationSocialExpressions.html.md +25 -0
  113. data/doc_out/ConversationNotificationVideo.html.md +24 -0
  114. data/doc_out/ConversationNotificationVideos.html.md +24 -0
  115. data/doc_out/ConversationNotificationWrapup.html.md +18 -0
  116. data/doc_out/ConversationsApi.html.md +707 -161
  117. data/doc_out/CreateCallbackCommand.html.md +1 -1
  118. data/doc_out/CreateShareRequest.html.md +3 -3
  119. data/doc_out/DIDEntityListing.html.md +2 -2
  120. data/doc_out/DIDPoolEntityListing.html.md +2 -2
  121. data/doc_out/DialerAuditRequest.html.md +4 -4
  122. data/doc_out/DialerContact.html.md +1 -1
  123. data/doc_out/DialerPreview.html.md +4 -4
  124. data/doc_out/DisconnectReason.html.md +3 -3
  125. data/doc_out/DncList.html.md +1 -2
  126. data/doc_out/DncListEntityListing.html.md +2 -2
  127. data/doc_out/DocumentAuditEntityListing.html.md +2 -2
  128. data/doc_out/DocumentEntityListing.html.md +2 -2
  129. data/doc_out/DocumentUpdate.html.md +1 -1
  130. data/doc_out/DocumentUpload.html.md +2 -2
  131. data/doc_out/DomainCapabilities.html.md +5 -3
  132. data/doc_out/DomainEdgeSoftwareVersionDto.html.md +1 -1
  133. data/doc_out/DomainEdgeSoftwareVersionDtoEntityListing.html.md +22 -0
  134. data/doc_out/DomainEntityListing.html.md +2 -2
  135. data/doc_out/DomainEntityListingEvaluationForm.html.md +2 -2
  136. data/doc_out/DomainEntityListingQueryResult.html.md +2 -2
  137. data/doc_out/DomainLogicalInterface.html.md +5 -8
  138. data/doc_out/DomainNetworkAddress.html.md +4 -4
  139. data/doc_out/DomainNetworkRoute.html.md +5 -5
  140. data/doc_out/DomainOrganizationRoleCreate.html.md +22 -0
  141. data/doc_out/Edge.html.md +2 -1
  142. data/doc_out/EdgeEntityListing.html.md +2 -2
  143. data/doc_out/EdgeGroupEntityListing.html.md +2 -2
  144. data/doc_out/EdgeLineEntityListing.html.md +2 -2
  145. data/doc_out/EdgeLogsJobRequest.html.md +3 -3
  146. data/doc_out/EdgeLogsJobUploadRequest.html.md +1 -1
  147. data/doc_out/EdgeOfflineConfiguration.html.md +14 -0
  148. data/doc_out/EdgeOfflineConfigurationInterface.html.md +16 -0
  149. data/doc_out/EdgeOfflineConfigurationNetwork.html.md +13 -0
  150. data/doc_out/EdgeOfflineConfigurationResponse.html.md +13 -0
  151. data/doc_out/Email.html.md +13 -12
  152. data/doc_out/EmailConversationEntityListing.html.md +2 -2
  153. data/doc_out/EmailConversationNotification.html.md +16 -0
  154. data/doc_out/EmailConversationNotificationDetail.html.md +16 -0
  155. data/doc_out/EmailConversationNotificationEmailMediaParticipant.html.md +35 -0
  156. data/doc_out/EmailConversationNotificationErrorBody.html.md +22 -0
  157. data/doc_out/EmailConversationNotificationErrorInfo.html.md +22 -0
  158. data/doc_out/EmailConversationNotificationParticipants.html.md +35 -0
  159. data/doc_out/EmailConversationNotificationUriReference.html.md +14 -0
  160. data/doc_out/EmailMediaParticipant.html.md +6 -3
  161. data/doc_out/EmailMessage.html.md +3 -3
  162. data/doc_out/EmailMessageListing.html.md +2 -2
  163. data/doc_out/EncryptionKeyEntityListing.html.md +2 -2
  164. data/doc_out/EndpointEntityListing.html.md +2 -2
  165. data/doc_out/Entry.html.md +2 -2
  166. data/doc_out/EvaluationEntityListing.html.md +2 -2
  167. data/doc_out/EvaluationForm.html.md +3 -3
  168. data/doc_out/EvaluationFormEntityListing.html.md +2 -2
  169. data/doc_out/EvaluatorActivityEntityListing.html.md +2 -2
  170. data/doc_out/ExtensionEntityListing.html.md +2 -2
  171. data/doc_out/ExtensionPoolEntityListing.html.md +2 -2
  172. data/doc_out/FacetInfo.html.md +2 -2
  173. data/doc_out/FaxDocumentEntityListing.html.md +2 -2
  174. data/doc_out/FaxStatus.html.md +8 -8
  175. data/doc_out/Group.html.md +1 -1
  176. data/doc_out/GroupEntityListing.html.md +2 -2
  177. data/doc_out/GroupMembersUpdate.html.md +2 -2
  178. data/doc_out/GroupUpdate.html.md +22 -0
  179. data/doc_out/GroupsApi.html.md +122 -4
  180. data/doc_out/HeartBeatAlert.html.md +24 -0
  181. data/doc_out/HeartBeatAlertContainer.html.md +22 -0
  182. data/doc_out/HeartBeatAlertNotification.html.md +22 -0
  183. data/doc_out/HeartBeatAlertNotificationNotificationUser.html.md +14 -0
  184. data/doc_out/HeartBeatAlertNotificationNotificationUsers.html.md +14 -0
  185. data/doc_out/HeartBeatRule.html.md +22 -0
  186. data/doc_out/HeartBeatRuleContainer.html.md +22 -0
  187. data/doc_out/HeartBeatRuleNotification.html.md +21 -0
  188. data/doc_out/HeartBeatRuleNotificationNotificationUser.html.md +14 -0
  189. data/doc_out/InboundDomainEntityListing.html.md +2 -2
  190. data/doc_out/InboundRoute.html.md +3 -3
  191. data/doc_out/InboundRouteEntityListing.html.md +2 -2
  192. data/doc_out/InteractionStatAlertNotification.html.md +28 -0
  193. data/doc_out/InteractionStatAlertNotificationNotificationUser.html.md +14 -0
  194. data/doc_out/InteractionStatRuleNotification.html.md +26 -0
  195. data/doc_out/InteractionStatRuleNotificationNotificationUser.html.md +14 -0
  196. data/doc_out/InteractionStatsAlertContainer.html.md +2 -2
  197. data/doc_out/InteractionStatsRuleContainer.html.md +2 -2
  198. data/doc_out/JsonNode.html.md +2 -2
  199. data/doc_out/Keyword.html.md +4 -1
  200. data/doc_out/KeywordSet.html.md +1 -1
  201. data/doc_out/KeywordSetEntityListing.html.md +2 -2
  202. data/doc_out/Language.html.md +1 -1
  203. data/doc_out/LanguageEntityListing.html.md +2 -2
  204. data/doc_out/Library.html.md +1 -1
  205. data/doc_out/LibraryEntityListing.html.md +2 -2
  206. data/doc_out/LineBaseEntityListing.html.md +2 -2
  207. data/doc_out/LineEntityListing.html.md +2 -2
  208. data/doc_out/LocationsApi.html.md +4 -4
  209. data/doc_out/LogicalInterfaceEntityListing.html.md +2 -2
  210. data/doc_out/MaxParticipants.html.md +1 -1
  211. data/doc_out/MetaData.html.md +15 -0
  212. data/doc_out/OAuthClientEntityListing.html.md +2 -2
  213. data/doc_out/OAuthProviderEntityListing.html.md +2 -2
  214. data/doc_out/OrganizationPresence.html.md +1 -1
  215. data/doc_out/OrganizationPresenceEntityListing.html.md +2 -2
  216. data/doc_out/OrganizationRoleEntityListing.html.md +2 -2
  217. data/doc_out/OrphanRecordingListing.html.md +2 -2
  218. data/doc_out/OutOfOfficeNotification.html.md +17 -0
  219. data/doc_out/OutOfOfficeNotificationUser.html.md +13 -0
  220. data/doc_out/OutboundApi.html.md +356 -0
  221. data/doc_out/OutboundRouteEntityListing.html.md +2 -2
  222. data/doc_out/Participant.html.md +28 -25
  223. data/doc_out/ParticipantAttributes.html.md +1 -1
  224. data/doc_out/PermissionCollectionEntityListing.html.md +2 -2
  225. data/doc_out/PhoneBaseEntityListing.html.md +2 -2
  226. data/doc_out/PhoneEntityListing.html.md +2 -2
  227. data/doc_out/PhoneMetaBaseEntityListing.html.md +2 -2
  228. data/doc_out/PhonesReboot.html.md +2 -2
  229. data/doc_out/PhysicalInterfaceEntityListing.html.md +2 -2
  230. data/doc_out/PolicyCreate.html.md +24 -0
  231. data/doc_out/PolicyEntityListing.html.md +2 -2
  232. data/doc_out/PresenceApi.html.md +10 -4
  233. data/doc_out/QualityApi.html.md +16 -16
  234. data/doc_out/QualityAudit.html.md +1 -1
  235. data/doc_out/QualityAuditPage.html.md +2 -2
  236. data/doc_out/QueueEntityListing.html.md +2 -2
  237. data/doc_out/QueueMemberEntityListing.html.md +22 -0
  238. data/doc_out/RecordingApi.html.md +63 -3
  239. data/doc_out/ReportMetaDataEntityListing.html.md +2 -2
  240. data/doc_out/ReportRunEntryEntityDomainListing.html.md +2 -2
  241. data/doc_out/ReportScheduleEntityListing.html.md +2 -2
  242. data/doc_out/ResponseEntityList.html.md +2 -2
  243. data/doc_out/ResponseEntityListing.html.md +2 -2
  244. data/doc_out/ResponseSetEntityListing.html.md +2 -2
  245. data/doc_out/RoutingApi.html.md +93 -24
  246. data/doc_out/RoutingSkill.html.md +1 -1
  247. data/doc_out/RoutingStatus.html.md +3 -3
  248. data/doc_out/RuleSetEntityListing.html.md +2 -2
  249. data/doc_out/SchemaCategoryEntityListing.html.md +2 -2
  250. data/doc_out/SchemaReferenceEntityListing.html.md +2 -2
  251. data/doc_out/ScreenRecordingSession.html.md +3 -0
  252. data/doc_out/ScreenRecordingSessionListing.html.md +5 -0
  253. data/doc_out/ScreenRecordingSessionRequest.html.md +15 -0
  254. data/doc_out/ScreenShareConversationNotification.html.md +16 -0
  255. data/doc_out/ScreenShareConversationNotificationDetail.html.md +16 -0
  256. data/doc_out/ScreenShareConversationNotificationErrorBody.html.md +22 -0
  257. data/doc_out/ScreenShareConversationNotificationErrorInfo.html.md +22 -0
  258. data/doc_out/ScreenShareConversationNotificationParticipants.html.md +36 -0
  259. data/doc_out/ScreenShareConversationNotificationScreenShareMediaParticipant.html.md +36 -0
  260. data/doc_out/ScreenShareConversationNotificationUriReference.html.md +14 -0
  261. data/doc_out/Screenshare.html.md +20 -0
  262. data/doc_out/SearchApi.html.md +26 -26
  263. data/doc_out/SecurityProfileEntityListing.html.md +2 -2
  264. data/doc_out/Segment.html.md +5 -5
  265. data/doc_out/ServiceContext.html.md +1 -1
  266. data/doc_out/ShareEntityListing.html.md +2 -2
  267. data/doc_out/Site.html.md +1 -1
  268. data/doc_out/SiteEntityListing.html.md +2 -2
  269. data/doc_out/SkillEntityListing.html.md +2 -2
  270. data/doc_out/SocialConversationNotification.html.md +16 -0
  271. data/doc_out/SocialConversationNotificationDetail.html.md +16 -0
  272. data/doc_out/SocialConversationNotificationErrorBody.html.md +22 -0
  273. data/doc_out/SocialConversationNotificationErrorInfo.html.md +22 -0
  274. data/doc_out/SocialConversationNotificationParticipants.html.md +37 -0
  275. data/doc_out/SocialConversationNotificationSocialMediaParticipant.html.md +37 -0
  276. data/doc_out/SocialConversationNotificationUriReference.html.md +14 -0
  277. data/doc_out/SocialExpression.html.md +13 -13
  278. data/doc_out/StationEntityListing.html.md +2 -2
  279. data/doc_out/StreetAddress.html.md +1 -1
  280. data/doc_out/SubscriberResponse.html.md +2 -2
  281. data/doc_out/SuggestApi.html.md +14 -14
  282. data/doc_out/TagValue.html.md +1 -1
  283. data/doc_out/TagValueEntityListing.html.md +2 -2
  284. data/doc_out/TelephonyProvidersEdgeApi.html.md +121 -7
  285. data/doc_out/TimeZoneEntityListing.html.md +2 -2
  286. data/doc_out/TrunkEntityListing.html.md +2 -2
  287. data/doc_out/TrunkMetabaseEntityListing.html.md +2 -2
  288. data/doc_out/UserConversationSummaryNotification.html.md +19 -0
  289. data/doc_out/UserConversationSummaryNotificationCall.html.md +14 -0
  290. data/doc_out/UserConversationSummaryNotificationCallContactCenter.html.md +14 -0
  291. data/doc_out/UserConversationSummaryNotificationMediaSummary.html.md +14 -0
  292. data/doc_out/UserConversationSummaryNotificationMediaSummaryDetail.html.md +14 -0
  293. data/doc_out/UserEntityListing.html.md +2 -2
  294. data/doc_out/UserMe.html.md +1 -0
  295. data/doc_out/UserPresenceNotification.html.md +16 -0
  296. data/doc_out/UserPresenceNotificationOrganizationPresence.html.md +14 -0
  297. data/doc_out/UserPresenceNotificationPresenceDefinition.html.md +14 -0
  298. data/doc_out/UserQueueEntityListing.html.md +2 -2
  299. data/doc_out/UserRecordingEntityListing.html.md +2 -2
  300. data/doc_out/UserRecordingsApi.html.md +6 -6
  301. data/doc_out/UserRoutingSkillPost.html.md +16 -0
  302. data/doc_out/UserSkillEntityListing.html.md +2 -2
  303. data/doc_out/UsersApi.html.md +14 -14
  304. data/doc_out/UsersEntityListing.html.md +2 -2
  305. data/doc_out/ValidateAddressRequest.html.md +1 -1
  306. data/doc_out/ValidateAddressResponse.html.md +2 -2
  307. data/doc_out/Video.html.md +10 -10
  308. data/doc_out/VideoConversationNotification.html.md +16 -0
  309. data/doc_out/VideoConversationNotificationDetail.html.md +16 -0
  310. data/doc_out/VideoConversationNotificationErrorBody.html.md +22 -0
  311. data/doc_out/VideoConversationNotificationErrorInfo.html.md +22 -0
  312. data/doc_out/VideoConversationNotificationParticipants.html.md +39 -0
  313. data/doc_out/VideoConversationNotificationUriReference.html.md +14 -0
  314. data/doc_out/VideoConversationNotificationVideoMediaParticipant.html.md +39 -0
  315. data/doc_out/VmPairingInfo.html.md +16 -0
  316. data/doc_out/WorkspaceCreate.html.md +1 -1
  317. data/doc_out/WorkspaceEntityListing.html.md +2 -2
  318. data/doc_out/WorkspaceMemberEntityListing.html.md +2 -2
  319. data/doc_out/Wrapup.html.md +7 -7
  320. data/doc_out/WrapupCode.html.md +1 -1
  321. data/doc_out/WrapupCodeEntityListing.html.md +2 -2
  322. data/doc_out/index.html.md +6 -6
  323. data/lib/purecloud.rb +138 -0
  324. data/lib/purecloud/api/alerting_api.rb +473 -0
  325. data/lib/purecloud/api/content_management_api.rb +49 -100
  326. data/lib/purecloud/api/conversations_api.rb +749 -164
  327. data/lib/purecloud/api/groups_api.rb +126 -4
  328. data/lib/purecloud/api/locations_api.rb +4 -4
  329. data/lib/purecloud/api/outbound_api.rb +386 -0
  330. data/lib/purecloud/api/presence_api.rb +8 -2
  331. data/lib/purecloud/api/quality_api.rb +14 -14
  332. data/lib/purecloud/api/recording_api.rb +63 -2
  333. data/lib/purecloud/api/routing_api.rb +108 -30
  334. data/lib/purecloud/api/search_api.rb +26 -26
  335. data/lib/purecloud/api/suggest_api.rb +14 -14
  336. data/lib/purecloud/api/telephony_providers_edge_api.rb +128 -8
  337. data/lib/purecloud/api/user_recordings_api.rb +9 -9
  338. data/lib/purecloud/api/users_api.rb +12 -12
  339. data/lib/purecloud/api_client.rb +1 -1
  340. data/lib/purecloud/models/acw_settings.rb +2 -0
  341. data/lib/purecloud/models/address.rb +210 -0
  342. data/lib/purecloud/models/agent.rb +1 -0
  343. data/lib/purecloud/models/agent_activity_entity_listing.rb +13 -13
  344. data/lib/purecloud/models/analytics_session.rb +1 -1
  345. data/lib/purecloud/models/attempt_limits.rb +271 -0
  346. data/lib/purecloud/models/attempt_limits_entity_listing.rb +257 -0
  347. data/lib/purecloud/models/attribute.rb +1 -0
  348. data/lib/purecloud/models/attribute_entity_listing.rb +13 -13
  349. data/lib/purecloud/models/audit_entity.rb +4 -0
  350. data/lib/purecloud/models/audit_facet.rb +2 -0
  351. data/lib/purecloud/models/audit_filter.rb +4 -0
  352. data/lib/purecloud/models/audit_message.rb +14 -0
  353. data/lib/purecloud/models/audit_search_result.rb +4 -0
  354. data/lib/purecloud/models/audit_user.rb +3 -0
  355. data/lib/purecloud/models/available_topic_entity_listing.rb +13 -13
  356. data/lib/purecloud/models/calibration_create.rb +323 -0
  357. data/lib/purecloud/models/calibration_entity_listing.rb +13 -13
  358. data/lib/purecloud/models/call.rb +18 -4
  359. data/lib/purecloud/models/call_command.rb +1 -0
  360. data/lib/purecloud/models/call_conversation_entity_listing.rb +13 -13
  361. data/lib/purecloud/models/call_conversation_notification.rb +218 -0
  362. data/lib/purecloud/models/call_conversation_notification_call_media_participant.rb +513 -0
  363. data/lib/purecloud/models/call_conversation_notification_detail.rb +195 -0
  364. data/lib/purecloud/models/call_conversation_notification_error_body.rb +261 -0
  365. data/lib/purecloud/models/call_conversation_notification_error_info.rb +261 -0
  366. data/lib/purecloud/models/call_conversation_notification_fax_status.rb +235 -0
  367. data/lib/purecloud/models/call_conversation_notification_participants.rb +513 -0
  368. data/lib/purecloud/models/call_conversation_notification_uri_reference.rb +175 -0
  369. data/lib/purecloud/models/call_media_participant.rb +38 -5
  370. data/lib/purecloud/models/callable_time_set_entity_listing.rb +13 -13
  371. data/lib/purecloud/models/callback.rb +17 -5
  372. data/lib/purecloud/models/callback_conversation_entity_listing.rb +13 -13
  373. data/lib/purecloud/models/callback_conversation_notification.rb +199 -0
  374. data/lib/purecloud/models/callback_conversation_notification_callback_media_participant.rb +456 -0
  375. data/lib/purecloud/models/callback_conversation_notification_detail.rb +195 -0
  376. data/lib/purecloud/models/callback_conversation_notification_dialer_preview.rb +217 -0
  377. data/lib/purecloud/models/callback_conversation_notification_error_body.rb +261 -0
  378. data/lib/purecloud/models/callback_conversation_notification_error_info.rb +261 -0
  379. data/lib/purecloud/models/callback_conversation_notification_error_info_details.rb +195 -0
  380. data/lib/purecloud/models/callback_conversation_notification_participants.rb +456 -0
  381. data/lib/purecloud/models/callback_conversation_notification_phone_number_column.rb +185 -0
  382. data/lib/purecloud/models/callback_conversation_notification_uri_reference.rb +175 -0
  383. data/lib/purecloud/models/callback_conversation_notification_user.rb +175 -0
  384. data/lib/purecloud/models/callback_media_participant.rb +38 -5
  385. data/lib/purecloud/models/campaign.rb +12 -1
  386. data/lib/purecloud/models/campaign_entity_listing.rb +13 -13
  387. data/lib/purecloud/models/campaign_interaction.rb +388 -0
  388. data/lib/purecloud/models/campaign_interactions.rb +213 -0
  389. data/lib/purecloud/models/campaign_sequence_entity_listing.rb +13 -13
  390. data/lib/purecloud/models/certificate_authority_entity_listing.rb +13 -13
  391. data/lib/purecloud/models/change.rb +3 -0
  392. data/lib/purecloud/models/channel_entity_listing.rb +13 -13
  393. data/lib/purecloud/models/channel_topic_entity_listing.rb +13 -13
  394. data/lib/purecloud/models/chat_conversation_entity_listing.rb +13 -13
  395. data/lib/purecloud/models/chat_conversation_notification.rb +199 -0
  396. data/lib/purecloud/models/chat_conversation_notification_chat_media_participant.rb +404 -0
  397. data/lib/purecloud/models/chat_conversation_notification_detail.rb +195 -0
  398. data/lib/purecloud/models/chat_conversation_notification_error_body.rb +261 -0
  399. data/lib/purecloud/models/chat_conversation_notification_error_info.rb +261 -0
  400. data/lib/purecloud/models/chat_conversation_notification_participants.rb +404 -0
  401. data/lib/purecloud/models/chat_conversation_notification_uri_reference.rb +175 -0
  402. data/lib/purecloud/models/chat_media_participant.rb +38 -5
  403. data/lib/purecloud/models/cobrowse_conversation.rb +213 -0
  404. data/lib/purecloud/models/cobrowse_conversation_entity_listing.rb +257 -0
  405. data/lib/purecloud/models/cobrowse_conversation_notification.rb +199 -0
  406. data/lib/purecloud/models/cobrowse_conversation_notification_cobrowse_media_participant.rb +446 -0
  407. data/lib/purecloud/models/cobrowse_conversation_notification_detail.rb +195 -0
  408. data/lib/purecloud/models/cobrowse_conversation_notification_error_body.rb +261 -0
  409. data/lib/purecloud/models/cobrowse_conversation_notification_error_info.rb +261 -0
  410. data/lib/purecloud/models/cobrowse_conversation_notification_participants.rb +446 -0
  411. data/lib/purecloud/models/cobrowse_conversation_notification_uri_reference.rb +175 -0
  412. data/lib/purecloud/models/cobrowse_media_participant.rb +511 -0
  413. data/lib/purecloud/models/cobrowsesession.rb +296 -0
  414. data/lib/purecloud/models/command_status_entity_listing.rb +13 -13
  415. data/lib/purecloud/models/contact_list_entity_listing.rb +13 -13
  416. data/lib/purecloud/models/contact_sort.rb +1 -0
  417. data/lib/purecloud/models/conversation_chat.rb +26 -7
  418. data/lib/purecloud/models/conversation_entity_listing.rb +13 -13
  419. data/lib/purecloud/models/conversation_notification.rb +207 -0
  420. data/lib/purecloud/models/conversation_notification_address.rb +215 -0
  421. data/lib/purecloud/models/conversation_notification_call.rb +383 -0
  422. data/lib/purecloud/models/conversation_notification_callback.rb +344 -0
  423. data/lib/purecloud/models/conversation_notification_callbacks.rb +344 -0
  424. data/lib/purecloud/models/conversation_notification_calls.rb +383 -0
  425. data/lib/purecloud/models/conversation_notification_chat.rb +263 -0
  426. data/lib/purecloud/models/conversation_notification_chats.rb +263 -0
  427. data/lib/purecloud/models/conversation_notification_cobrowse.rb +305 -0
  428. data/lib/purecloud/models/conversation_notification_cobrowsesessions.rb +305 -0
  429. data/lib/purecloud/models/conversation_notification_dialer_preview.rb +217 -0
  430. data/lib/purecloud/models/conversation_notification_dialer_preview_phone_number_columns.rb +185 -0
  431. data/lib/purecloud/models/conversation_notification_disconnect_reason.rb +194 -0
  432. data/lib/purecloud/models/conversation_notification_disconnect_reasons.rb +194 -0
  433. data/lib/purecloud/models/conversation_notification_email.rb +283 -0
  434. data/lib/purecloud/models/conversation_notification_emails.rb +283 -0
  435. data/lib/purecloud/models/conversation_notification_error_details.rb +237 -0
  436. data/lib/purecloud/models/conversation_notification_error_info.rb +237 -0
  437. data/lib/purecloud/models/conversation_notification_fax_status.rb +235 -0
  438. data/lib/purecloud/models/conversation_notification_participant.rb +443 -0
  439. data/lib/purecloud/models/conversation_notification_participants.rb +443 -0
  440. data/lib/purecloud/models/conversation_notification_phone_number_column.rb +185 -0
  441. data/lib/purecloud/models/conversation_notification_screen_share.rb +263 -0
  442. data/lib/purecloud/models/conversation_notification_screen_shares.rb +263 -0
  443. data/lib/purecloud/models/conversation_notification_self.rb +215 -0
  444. data/lib/purecloud/models/conversation_notification_social_expression.rb +303 -0
  445. data/lib/purecloud/models/conversation_notification_social_expressions.rb +303 -0
  446. data/lib/purecloud/models/conversation_notification_video.rb +302 -0
  447. data/lib/purecloud/models/conversation_notification_videos.rb +302 -0
  448. data/lib/purecloud/models/conversation_notification_wrapup.rb +217 -0
  449. data/lib/purecloud/models/create_callback_command.rb +1 -1
  450. data/lib/purecloud/models/create_share_request.rb +3 -0
  451. data/lib/purecloud/models/dialer_audit_request.rb +4 -0
  452. data/lib/purecloud/models/dialer_contact.rb +1 -1
  453. data/lib/purecloud/models/dialer_preview.rb +4 -0
  454. data/lib/purecloud/models/did_entity_listing.rb +13 -13
  455. data/lib/purecloud/models/did_pool_entity_listing.rb +13 -13
  456. data/lib/purecloud/models/disconnect_reason.rb +3 -0
  457. data/lib/purecloud/models/dnc_list.rb +2 -14
  458. data/lib/purecloud/models/dnc_list_entity_listing.rb +13 -13
  459. data/lib/purecloud/models/document_audit_entity_listing.rb +13 -13
  460. data/lib/purecloud/models/document_entity_listing.rb +13 -13
  461. data/lib/purecloud/models/document_update.rb +1 -0
  462. data/lib/purecloud/models/document_upload.rb +2 -0
  463. data/lib/purecloud/models/domain_capabilities.rb +33 -4
  464. data/lib/purecloud/models/domain_edge_software_version_dto.rb +13 -13
  465. data/lib/purecloud/models/domain_edge_software_version_dto_entity_listing.rb +257 -0
  466. data/lib/purecloud/models/domain_entity_listing.rb +13 -13
  467. data/lib/purecloud/models/domain_entity_listing_evaluation_form.rb +13 -13
  468. data/lib/purecloud/models/domain_entity_listing_query_result.rb +13 -13
  469. data/lib/purecloud/models/domain_logical_interface.rb +25 -41
  470. data/lib/purecloud/models/domain_network_address.rb +22 -0
  471. data/lib/purecloud/models/domain_network_route.rb +14 -0
  472. data/lib/purecloud/models/domain_organization_role_create.rb +266 -0
  473. data/lib/purecloud/models/edge.rb +21 -1
  474. data/lib/purecloud/models/edge_entity_listing.rb +13 -13
  475. data/lib/purecloud/models/edge_group_entity_listing.rb +13 -13
  476. data/lib/purecloud/models/edge_line_entity_listing.rb +13 -13
  477. data/lib/purecloud/models/edge_logs_job_request.rb +3 -0
  478. data/lib/purecloud/models/edge_logs_job_upload_request.rb +1 -1
  479. data/lib/purecloud/models/edge_offline_configuration.rb +177 -0
  480. data/lib/purecloud/models/edge_offline_configuration_interface.rb +203 -0
  481. data/lib/purecloud/models/edge_offline_configuration_network.rb +166 -0
  482. data/lib/purecloud/models/edge_offline_configuration_response.rb +166 -0
  483. data/lib/purecloud/models/email.rb +28 -8
  484. data/lib/purecloud/models/email_conversation_entity_listing.rb +13 -13
  485. data/lib/purecloud/models/email_conversation_notification.rb +199 -0
  486. data/lib/purecloud/models/email_conversation_notification_detail.rb +195 -0
  487. data/lib/purecloud/models/email_conversation_notification_email_media_participant.rb +414 -0
  488. data/lib/purecloud/models/email_conversation_notification_error_body.rb +261 -0
  489. data/lib/purecloud/models/email_conversation_notification_error_info.rb +261 -0
  490. data/lib/purecloud/models/email_conversation_notification_participants.rb +414 -0
  491. data/lib/purecloud/models/email_conversation_notification_uri_reference.rb +175 -0
  492. data/lib/purecloud/models/email_media_participant.rb +38 -5
  493. data/lib/purecloud/models/email_message_listing.rb +13 -13
  494. data/lib/purecloud/models/encryption_key_entity_listing.rb +13 -13
  495. data/lib/purecloud/models/endpoint_entity_listing.rb +13 -13
  496. data/lib/purecloud/models/entry.rb +2 -0
  497. data/lib/purecloud/models/evaluation_entity_listing.rb +13 -13
  498. data/lib/purecloud/models/evaluation_form.rb +3 -0
  499. data/lib/purecloud/models/evaluation_form_entity_listing.rb +13 -13
  500. data/lib/purecloud/models/evaluator_activity_entity_listing.rb +13 -13
  501. data/lib/purecloud/models/extension_entity_listing.rb +13 -13
  502. data/lib/purecloud/models/extension_pool_entity_listing.rb +13 -13
  503. data/lib/purecloud/models/facet_info.rb +2 -0
  504. data/lib/purecloud/models/fax_document_entity_listing.rb +13 -13
  505. data/lib/purecloud/models/fax_status.rb +8 -0
  506. data/lib/purecloud/models/group.rb +1 -0
  507. data/lib/purecloud/models/group_entity_listing.rb +13 -13
  508. data/lib/purecloud/models/group_members_update.rb +2 -0
  509. data/lib/purecloud/models/group_update.rb +286 -0
  510. data/lib/purecloud/models/heart_beat_alert.rb +299 -0
  511. data/lib/purecloud/models/heart_beat_alert_container.rb +257 -0
  512. data/lib/purecloud/models/heart_beat_alert_notification.rb +268 -0
  513. data/lib/purecloud/models/heart_beat_alert_notification_notification_user.rb +175 -0
  514. data/lib/purecloud/models/heart_beat_alert_notification_notification_users.rb +175 -0
  515. data/lib/purecloud/models/heart_beat_rule.rb +282 -0
  516. data/lib/purecloud/models/heart_beat_rule_container.rb +257 -0
  517. data/lib/purecloud/models/heart_beat_rule_notification.rb +258 -0
  518. data/lib/purecloud/models/heart_beat_rule_notification_notification_user.rb +175 -0
  519. data/lib/purecloud/models/inbound_domain_entity_listing.rb +13 -13
  520. data/lib/purecloud/models/inbound_route_entity_listing.rb +13 -13
  521. data/lib/purecloud/models/interaction_stat_alert_notification.rb +364 -0
  522. data/lib/purecloud/models/interaction_stat_alert_notification_notification_user.rb +175 -0
  523. data/lib/purecloud/models/interaction_stat_rule_notification.rb +344 -0
  524. data/lib/purecloud/models/interaction_stat_rule_notification_notification_user.rb +175 -0
  525. data/lib/purecloud/models/interaction_stats_alert_container.rb +13 -13
  526. data/lib/purecloud/models/interaction_stats_rule_container.rb +13 -13
  527. data/lib/purecloud/models/json_node.rb +20 -20
  528. data/lib/purecloud/models/keyword.rb +41 -1
  529. data/lib/purecloud/models/keyword_set.rb +1 -0
  530. data/lib/purecloud/models/keyword_set_entity_listing.rb +13 -13
  531. data/lib/purecloud/models/language.rb +1 -0
  532. data/lib/purecloud/models/language_entity_listing.rb +13 -13
  533. data/lib/purecloud/models/library.rb +1 -0
  534. data/lib/purecloud/models/library_entity_listing.rb +13 -13
  535. data/lib/purecloud/models/line_base_entity_listing.rb +13 -13
  536. data/lib/purecloud/models/line_entity_listing.rb +13 -13
  537. data/lib/purecloud/models/logical_interface_entity_listing.rb +13 -13
  538. data/lib/purecloud/models/max_participants.rb +1 -0
  539. data/lib/purecloud/models/meta_data.rb +187 -0
  540. data/lib/purecloud/models/o_auth_client_entity_listing.rb +13 -13
  541. data/lib/purecloud/models/o_auth_provider_entity_listing.rb +13 -13
  542. data/lib/purecloud/models/organization_presence.rb +1 -0
  543. data/lib/purecloud/models/organization_presence_entity_listing.rb +13 -13
  544. data/lib/purecloud/models/organization_role_entity_listing.rb +13 -13
  545. data/lib/purecloud/models/orphan_recording_listing.rb +13 -13
  546. data/lib/purecloud/models/out_of_office_notification.rb +205 -0
  547. data/lib/purecloud/models/out_of_office_notification_user.rb +165 -0
  548. data/lib/purecloud/models/outbound_route_entity_listing.rb +13 -13
  549. data/lib/purecloud/models/participant.rb +61 -4
  550. data/lib/purecloud/models/participant_attributes.rb +1 -0
  551. data/lib/purecloud/models/permission_collection_entity_listing.rb +13 -13
  552. data/lib/purecloud/models/phone_base_entity_listing.rb +13 -13
  553. data/lib/purecloud/models/phone_entity_listing.rb +13 -13
  554. data/lib/purecloud/models/phone_meta_base_entity_listing.rb +13 -13
  555. data/lib/purecloud/models/phones_reboot.rb +2 -0
  556. data/lib/purecloud/models/physical_interface_entity_listing.rb +13 -13
  557. data/lib/purecloud/models/policy_create.rb +285 -0
  558. data/lib/purecloud/models/policy_entity_listing.rb +13 -13
  559. data/lib/purecloud/models/quality_audit.rb +11 -11
  560. data/lib/purecloud/models/quality_audit_page.rb +13 -13
  561. data/lib/purecloud/models/queue_entity_listing.rb +13 -13
  562. data/lib/purecloud/models/queue_member_entity_listing.rb +257 -0
  563. data/lib/purecloud/models/report_meta_data_entity_listing.rb +13 -13
  564. data/lib/purecloud/models/report_run_entry_entity_domain_listing.rb +13 -13
  565. data/lib/purecloud/models/report_schedule_entity_listing.rb +13 -13
  566. data/lib/purecloud/models/response_entity_list.rb +13 -13
  567. data/lib/purecloud/models/response_entity_listing.rb +13 -13
  568. data/lib/purecloud/models/response_set_entity_listing.rb +13 -13
  569. data/lib/purecloud/models/routing_skill.rb +1 -0
  570. data/lib/purecloud/models/routing_status.rb +3 -1
  571. data/lib/purecloud/models/rule_set_entity_listing.rb +13 -13
  572. data/lib/purecloud/models/schema_category_entity_listing.rb +13 -13
  573. data/lib/purecloud/models/schema_reference_entity_listing.rb +13 -13
  574. data/lib/purecloud/models/screen_recording_session.rb +36 -4
  575. data/lib/purecloud/models/screen_recording_session_listing.rb +51 -1
  576. data/lib/purecloud/models/screen_recording_session_request.rb +197 -0
  577. data/lib/purecloud/models/screen_share_conversation_notification.rb +199 -0
  578. data/lib/purecloud/models/screen_share_conversation_notification_detail.rb +195 -0
  579. data/lib/purecloud/models/screen_share_conversation_notification_error_body.rb +261 -0
  580. data/lib/purecloud/models/screen_share_conversation_notification_error_info.rb +261 -0
  581. data/lib/purecloud/models/screen_share_conversation_notification_participants.rb +424 -0
  582. data/lib/purecloud/models/screen_share_conversation_notification_screen_share_media_participant.rb +424 -0
  583. data/lib/purecloud/models/screen_share_conversation_notification_uri_reference.rb +175 -0
  584. data/lib/purecloud/models/screenshare.rb +263 -0
  585. data/lib/purecloud/models/security_profile_entity_listing.rb +13 -13
  586. data/lib/purecloud/models/segment.rb +5 -2
  587. data/lib/purecloud/models/service_context.rb +1 -0
  588. data/lib/purecloud/models/share_entity_listing.rb +13 -13
  589. data/lib/purecloud/models/site.rb +1 -1
  590. data/lib/purecloud/models/site_entity_listing.rb +13 -13
  591. data/lib/purecloud/models/skill_entity_listing.rb +13 -13
  592. data/lib/purecloud/models/social_conversation_notification.rb +199 -0
  593. data/lib/purecloud/models/social_conversation_notification_detail.rb +195 -0
  594. data/lib/purecloud/models/social_conversation_notification_error_body.rb +261 -0
  595. data/lib/purecloud/models/social_conversation_notification_error_info.rb +261 -0
  596. data/lib/purecloud/models/social_conversation_notification_participants.rb +434 -0
  597. data/lib/purecloud/models/social_conversation_notification_social_media_participant.rb +434 -0
  598. data/lib/purecloud/models/social_conversation_notification_uri_reference.rb +175 -0
  599. data/lib/purecloud/models/social_expression.rb +14 -4
  600. data/lib/purecloud/models/station_entity_listing.rb +13 -13
  601. data/lib/purecloud/models/street_address.rb +1 -0
  602. data/lib/purecloud/models/subscriber_response.rb +2 -0
  603. data/lib/purecloud/models/tag_value.rb +1 -0
  604. data/lib/purecloud/models/tag_value_entity_listing.rb +13 -13
  605. data/lib/purecloud/models/time_zone_entity_listing.rb +13 -13
  606. data/lib/purecloud/models/trunk_entity_listing.rb +13 -13
  607. data/lib/purecloud/models/trunk_metabase_entity_listing.rb +13 -13
  608. data/lib/purecloud/models/user_conversation_summary_notification.rb +225 -0
  609. data/lib/purecloud/models/user_conversation_summary_notification_call.rb +175 -0
  610. data/lib/purecloud/models/user_conversation_summary_notification_call_contact_center.rb +175 -0
  611. data/lib/purecloud/models/user_conversation_summary_notification_media_summary.rb +175 -0
  612. data/lib/purecloud/models/user_conversation_summary_notification_media_summary_detail.rb +175 -0
  613. data/lib/purecloud/models/user_entity_listing.rb +13 -13
  614. data/lib/purecloud/models/user_me.rb +14 -1
  615. data/lib/purecloud/models/user_presence_notification.rb +195 -0
  616. data/lib/purecloud/models/user_presence_notification_organization_presence.rb +175 -0
  617. data/lib/purecloud/models/user_presence_notification_presence_definition.rb +175 -0
  618. data/lib/purecloud/models/user_queue_entity_listing.rb +13 -13
  619. data/lib/purecloud/models/user_recording_entity_listing.rb +13 -13
  620. data/lib/purecloud/models/user_routing_skill_post.rb +200 -0
  621. data/lib/purecloud/models/user_skill_entity_listing.rb +13 -13
  622. data/lib/purecloud/models/users_entity_listing.rb +13 -13
  623. data/lib/purecloud/models/validate_address_request.rb +1 -1
  624. data/lib/purecloud/models/validate_address_response.rb +2 -0
  625. data/lib/purecloud/models/video.rb +11 -3
  626. data/lib/purecloud/models/video_conversation_notification.rb +199 -0
  627. data/lib/purecloud/models/video_conversation_notification_detail.rb +195 -0
  628. data/lib/purecloud/models/video_conversation_notification_error_body.rb +261 -0
  629. data/lib/purecloud/models/video_conversation_notification_error_info.rb +261 -0
  630. data/lib/purecloud/models/video_conversation_notification_participants.rb +463 -0
  631. data/lib/purecloud/models/video_conversation_notification_uri_reference.rb +175 -0
  632. data/lib/purecloud/models/video_conversation_notification_video_media_participant.rb +463 -0
  633. data/lib/purecloud/models/vm_pairing_info.rb +196 -0
  634. data/lib/purecloud/models/workspace_create.rb +1 -0
  635. data/lib/purecloud/models/workspace_entity_listing.rb +13 -13
  636. data/lib/purecloud/models/workspace_member_entity_listing.rb +13 -13
  637. data/lib/purecloud/models/wrapup.rb +7 -1
  638. data/lib/purecloud/models/wrapup_code.rb +1 -0
  639. data/lib/purecloud/models/wrapup_code_entity_listing.rb +13 -13
  640. data/lib/purecloud/version.rb +1 -1
  641. data/newVersion.md +1 -1
  642. data/swagger.json +1 -1
  643. data/version.json +1 -1
  644. metadata +279 -2
@@ -0,0 +1,383 @@
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 ConversationNotificationCall
21
+ attr_accessor :id
22
+
23
+ attr_accessor :state
24
+
25
+ attr_accessor :recording
26
+
27
+ attr_accessor :recording_state
28
+
29
+ attr_accessor :muted
30
+
31
+ attr_accessor :confined
32
+
33
+ attr_accessor :held
34
+
35
+ attr_accessor :error_info
36
+
37
+ attr_accessor :disconnect_type
38
+
39
+ attr_accessor :start_hold_time
40
+
41
+ attr_accessor :direction
42
+
43
+ attr_accessor :document_id
44
+
45
+ attr_accessor :_self
46
+
47
+ attr_accessor :other
48
+
49
+ attr_accessor :connected_time
50
+
51
+ attr_accessor :disconnected_time
52
+
53
+ attr_accessor :disconnect_reasons
54
+
55
+ attr_accessor :fax_status
56
+
57
+ attr_accessor :additional_properties
58
+
59
+ # Attribute mapping from ruby-style variable name to JSON key.
60
+ def self.attribute_map
61
+ {
62
+
63
+ :'id' => :'id',
64
+
65
+ :'state' => :'state',
66
+
67
+ :'recording' => :'recording',
68
+
69
+ :'recording_state' => :'recordingState',
70
+
71
+ :'muted' => :'muted',
72
+
73
+ :'confined' => :'confined',
74
+
75
+ :'held' => :'held',
76
+
77
+ :'error_info' => :'errorInfo',
78
+
79
+ :'disconnect_type' => :'disconnectType',
80
+
81
+ :'start_hold_time' => :'startHoldTime',
82
+
83
+ :'direction' => :'direction',
84
+
85
+ :'document_id' => :'documentId',
86
+
87
+ :'_self' => :'self',
88
+
89
+ :'other' => :'other',
90
+
91
+ :'connected_time' => :'connectedTime',
92
+
93
+ :'disconnected_time' => :'disconnectedTime',
94
+
95
+ :'disconnect_reasons' => :'disconnectReasons',
96
+
97
+ :'fax_status' => :'faxStatus',
98
+
99
+ :'additional_properties' => :'additionalProperties'
100
+
101
+ }
102
+ end
103
+
104
+ # Attribute type mapping.
105
+ def self.swagger_types
106
+ {
107
+ :'id' => :'String',
108
+ :'state' => :'String',
109
+ :'recording' => :'BOOLEAN',
110
+ :'recording_state' => :'String',
111
+ :'muted' => :'BOOLEAN',
112
+ :'confined' => :'BOOLEAN',
113
+ :'held' => :'BOOLEAN',
114
+ :'error_info' => :'ConversationNotificationErrorInfo',
115
+ :'disconnect_type' => :'String',
116
+ :'start_hold_time' => :'DateTime',
117
+ :'direction' => :'String',
118
+ :'document_id' => :'String',
119
+ :'_self' => :'ConversationNotificationSelf',
120
+ :'other' => :'ConversationNotificationAddress',
121
+ :'connected_time' => :'DateTime',
122
+ :'disconnected_time' => :'DateTime',
123
+ :'disconnect_reasons' => :'Array<ConversationNotificationDisconnectReasons>',
124
+ :'fax_status' => :'ConversationNotificationFaxStatus',
125
+ :'additional_properties' => :'Object'
126
+
127
+ }
128
+ end
129
+
130
+ def initialize(attributes = {})
131
+ return unless attributes.is_a?(Hash)
132
+
133
+ # convert string to symbol for hash key
134
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
135
+
136
+
137
+ if attributes[:'id']
138
+ self.id = attributes[:'id']
139
+ end
140
+
141
+ if attributes[:'state']
142
+ self.state = attributes[:'state']
143
+ end
144
+
145
+ if attributes[:'recording']
146
+ self.recording = attributes[:'recording']
147
+ end
148
+
149
+ if attributes[:'recordingState']
150
+ self.recording_state = attributes[:'recordingState']
151
+ end
152
+
153
+ if attributes[:'muted']
154
+ self.muted = attributes[:'muted']
155
+ end
156
+
157
+ if attributes[:'confined']
158
+ self.confined = attributes[:'confined']
159
+ end
160
+
161
+ if attributes[:'held']
162
+ self.held = attributes[:'held']
163
+ end
164
+
165
+ if attributes[:'errorInfo']
166
+ self.error_info = attributes[:'errorInfo']
167
+ end
168
+
169
+ if attributes[:'disconnectType']
170
+ self.disconnect_type = attributes[:'disconnectType']
171
+ end
172
+
173
+ if attributes[:'startHoldTime']
174
+ self.start_hold_time = attributes[:'startHoldTime']
175
+ end
176
+
177
+ if attributes[:'direction']
178
+ self.direction = attributes[:'direction']
179
+ end
180
+
181
+ if attributes[:'documentId']
182
+ self.document_id = attributes[:'documentId']
183
+ end
184
+
185
+ if attributes[:'self']
186
+ self._self = attributes[:'self']
187
+ end
188
+
189
+ if attributes[:'other']
190
+ self.other = attributes[:'other']
191
+ end
192
+
193
+ if attributes[:'connectedTime']
194
+ self.connected_time = attributes[:'connectedTime']
195
+ end
196
+
197
+ if attributes[:'disconnectedTime']
198
+ self.disconnected_time = attributes[:'disconnectedTime']
199
+ end
200
+
201
+ if attributes[:'disconnectReasons']
202
+ if (value = attributes[:'disconnectReasons']).is_a?(Array)
203
+ self.disconnect_reasons = value
204
+ end
205
+ end
206
+
207
+ if attributes[:'faxStatus']
208
+ self.fax_status = attributes[:'faxStatus']
209
+ end
210
+
211
+ if attributes[:'additionalProperties']
212
+ self.additional_properties = attributes[:'additionalProperties']
213
+ end
214
+
215
+ end
216
+
217
+ # Custom attribute writer method checking allowed values (enum).
218
+ def state=(state)
219
+ allowed_values = ["ALERTING", "DIALING", "CONTACTING", "OFFERING", "CONNECTED", "DISCONNECTED", "TERMINATED", "UPLOADING", "CONVERTING", "TRANSMITTING", "NONE"]
220
+ if state && !allowed_values.include?(state)
221
+ fail "invalid value for 'state', must be one of #{allowed_values}"
222
+ end
223
+ @state = state
224
+ end
225
+
226
+ # Custom attribute writer method checking allowed values (enum).
227
+ def recording_state=(recording_state)
228
+ allowed_values = ["NONE", "ACTIVE", "PAUSED"]
229
+ if recording_state && !allowed_values.include?(recording_state)
230
+ fail "invalid value for 'recording_state', must be one of #{allowed_values}"
231
+ end
232
+ @recording_state = recording_state
233
+ end
234
+
235
+ # Custom attribute writer method checking allowed values (enum).
236
+ def disconnect_type=(disconnect_type)
237
+ allowed_values = ["ENDPOINT", "CLIENT", "SYSTEM", "TIMEOUT", "TRANSFER", "TRANSFER_CONFERENCE", "TRANSFER_CONSULT", "TRANSFER_FORWARD", "TRANSFER_NOANSWER", "TRANSFER_NOTAVAILABLE", "TRANSPORT_FAILURE", "ERROR", "PEER", "OTHER", "SPAM"]
238
+ if disconnect_type && !allowed_values.include?(disconnect_type)
239
+ fail "invalid value for 'disconnect_type', must be one of #{allowed_values}"
240
+ end
241
+ @disconnect_type = disconnect_type
242
+ end
243
+
244
+ # Custom attribute writer method checking allowed values (enum).
245
+ def direction=(direction)
246
+ allowed_values = ["OUTBOUND", "INBOUND"]
247
+ if direction && !allowed_values.include?(direction)
248
+ fail "invalid value for 'direction', must be one of #{allowed_values}"
249
+ end
250
+ @direction = direction
251
+ end
252
+
253
+ # Check equality by comparing each attribute.
254
+ def ==(o)
255
+ return true if self.equal?(o)
256
+ self.class == o.class &&
257
+ id == o.id &&
258
+ state == o.state &&
259
+ recording == o.recording &&
260
+ recording_state == o.recording_state &&
261
+ muted == o.muted &&
262
+ confined == o.confined &&
263
+ held == o.held &&
264
+ error_info == o.error_info &&
265
+ disconnect_type == o.disconnect_type &&
266
+ start_hold_time == o.start_hold_time &&
267
+ direction == o.direction &&
268
+ document_id == o.document_id &&
269
+ _self == o._self &&
270
+ other == o.other &&
271
+ connected_time == o.connected_time &&
272
+ disconnected_time == o.disconnected_time &&
273
+ disconnect_reasons == o.disconnect_reasons &&
274
+ fax_status == o.fax_status &&
275
+ additional_properties == o.additional_properties
276
+ end
277
+
278
+ # @see the `==` method
279
+ def eql?(o)
280
+ self == o
281
+ end
282
+
283
+ # Calculate hash code according to all attributes.
284
+ def hash
285
+ [id, state, recording, recording_state, muted, confined, held, error_info, disconnect_type, start_hold_time, direction, document_id, _self, other, connected_time, disconnected_time, disconnect_reasons, fax_status, additional_properties].hash
286
+ end
287
+
288
+ # build the object from hash
289
+ def build_from_hash(attributes)
290
+ return nil unless attributes.is_a?(Hash)
291
+ self.class.swagger_types.each_pair do |key, type|
292
+ if type =~ /^Array<(.*)>/i
293
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
294
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
295
+ else
296
+ #TODO show warning in debug mode
297
+ end
298
+ elsif !attributes[self.class.attribute_map[key]].nil?
299
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
300
+ else
301
+ # data not found in attributes(hash), not an issue as the data can be optional
302
+ end
303
+ end
304
+
305
+ self
306
+ end
307
+
308
+ def _deserialize(type, value)
309
+ case type.to_sym
310
+ when :DateTime
311
+ DateTime.parse(value)
312
+ when :Date
313
+ Date.parse(value)
314
+ when :String
315
+ value.to_s
316
+ when :Integer
317
+ value.to_i
318
+ when :Float
319
+ value.to_f
320
+ when :BOOLEAN
321
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
322
+ true
323
+ else
324
+ false
325
+ end
326
+ when :Object
327
+ # generic object (usually a Hash), return directly
328
+ value
329
+ when /\AArray<(?<inner_type>.+)>\z/
330
+ inner_type = Regexp.last_match[:inner_type]
331
+ value.map { |v| _deserialize(inner_type, v) }
332
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
333
+ k_type = Regexp.last_match[:k_type]
334
+ v_type = Regexp.last_match[:v_type]
335
+ {}.tap do |hash|
336
+ value.each do |k, v|
337
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
338
+ end
339
+ end
340
+ else # model
341
+ _model = Object.const_get("PureCloud").const_get(type).new
342
+ _model.build_from_hash(value)
343
+ end
344
+ end
345
+
346
+ def to_s
347
+ to_hash.to_s
348
+ end
349
+
350
+ # to_body is an alias to to_body (backward compatibility))
351
+ def to_body
352
+ to_hash
353
+ end
354
+
355
+ # return the object in the form of hash
356
+ def to_hash
357
+ hash = {}
358
+ self.class.attribute_map.each_pair do |attr, param|
359
+ value = self.send(attr)
360
+ next if value.nil?
361
+ hash[param] = _to_hash(value)
362
+ end
363
+ hash
364
+ end
365
+
366
+ # Method to output non-array value in the form of hash
367
+ # For object, use to_hash. Otherwise, just return the value
368
+ def _to_hash(value)
369
+ if value.is_a?(Array)
370
+ value.compact.map{ |v| _to_hash(v) }
371
+ elsif value.is_a?(Hash)
372
+ {}.tap do |hash|
373
+ value.each { |k, v| hash[k] = _to_hash(v) }
374
+ end
375
+ elsif value.respond_to? :to_hash
376
+ value.to_hash
377
+ else
378
+ value
379
+ end
380
+ end
381
+
382
+ end
383
+ end
@@ -0,0 +1,344 @@
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 ConversationNotificationCallback
21
+ attr_accessor :state
22
+
23
+ attr_accessor :id
24
+
25
+ attr_accessor :direction
26
+
27
+ attr_accessor :held
28
+
29
+ attr_accessor :disconnect_type
30
+
31
+ attr_accessor :start_hold_time
32
+
33
+ attr_accessor :dialer_preview
34
+
35
+ attr_accessor :callback_numbers
36
+
37
+ attr_accessor :callback_user_name
38
+
39
+ attr_accessor :script_id
40
+
41
+ attr_accessor :skip_enabled
42
+
43
+ attr_accessor :timeout_seconds
44
+
45
+ attr_accessor :connected_time
46
+
47
+ attr_accessor :disconnected_time
48
+
49
+ attr_accessor :callback_scheduled_time
50
+
51
+ attr_accessor :additional_properties
52
+
53
+ # Attribute mapping from ruby-style variable name to JSON key.
54
+ def self.attribute_map
55
+ {
56
+
57
+ :'state' => :'state',
58
+
59
+ :'id' => :'id',
60
+
61
+ :'direction' => :'direction',
62
+
63
+ :'held' => :'held',
64
+
65
+ :'disconnect_type' => :'disconnectType',
66
+
67
+ :'start_hold_time' => :'startHoldTime',
68
+
69
+ :'dialer_preview' => :'dialerPreview',
70
+
71
+ :'callback_numbers' => :'callbackNumbers',
72
+
73
+ :'callback_user_name' => :'callbackUserName',
74
+
75
+ :'script_id' => :'scriptId',
76
+
77
+ :'skip_enabled' => :'skipEnabled',
78
+
79
+ :'timeout_seconds' => :'timeoutSeconds',
80
+
81
+ :'connected_time' => :'connectedTime',
82
+
83
+ :'disconnected_time' => :'disconnectedTime',
84
+
85
+ :'callback_scheduled_time' => :'callbackScheduledTime',
86
+
87
+ :'additional_properties' => :'additionalProperties'
88
+
89
+ }
90
+ end
91
+
92
+ # Attribute type mapping.
93
+ def self.swagger_types
94
+ {
95
+ :'state' => :'String',
96
+ :'id' => :'String',
97
+ :'direction' => :'String',
98
+ :'held' => :'BOOLEAN',
99
+ :'disconnect_type' => :'String',
100
+ :'start_hold_time' => :'DateTime',
101
+ :'dialer_preview' => :'ConversationNotificationDialerPreview',
102
+ :'callback_numbers' => :'Array<String>',
103
+ :'callback_user_name' => :'String',
104
+ :'script_id' => :'String',
105
+ :'skip_enabled' => :'BOOLEAN',
106
+ :'timeout_seconds' => :'Integer',
107
+ :'connected_time' => :'DateTime',
108
+ :'disconnected_time' => :'DateTime',
109
+ :'callback_scheduled_time' => :'DateTime',
110
+ :'additional_properties' => :'Object'
111
+
112
+ }
113
+ end
114
+
115
+ def initialize(attributes = {})
116
+ return unless attributes.is_a?(Hash)
117
+
118
+ # convert string to symbol for hash key
119
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
120
+
121
+
122
+ if attributes[:'state']
123
+ self.state = attributes[:'state']
124
+ end
125
+
126
+ if attributes[:'id']
127
+ self.id = attributes[:'id']
128
+ end
129
+
130
+ if attributes[:'direction']
131
+ self.direction = attributes[:'direction']
132
+ end
133
+
134
+ if attributes[:'held']
135
+ self.held = attributes[:'held']
136
+ end
137
+
138
+ if attributes[:'disconnectType']
139
+ self.disconnect_type = attributes[:'disconnectType']
140
+ end
141
+
142
+ if attributes[:'startHoldTime']
143
+ self.start_hold_time = attributes[:'startHoldTime']
144
+ end
145
+
146
+ if attributes[:'dialerPreview']
147
+ self.dialer_preview = attributes[:'dialerPreview']
148
+ end
149
+
150
+ if attributes[:'callbackNumbers']
151
+ if (value = attributes[:'callbackNumbers']).is_a?(Array)
152
+ self.callback_numbers = value
153
+ end
154
+ end
155
+
156
+ if attributes[:'callbackUserName']
157
+ self.callback_user_name = attributes[:'callbackUserName']
158
+ end
159
+
160
+ if attributes[:'scriptId']
161
+ self.script_id = attributes[:'scriptId']
162
+ end
163
+
164
+ if attributes[:'skipEnabled']
165
+ self.skip_enabled = attributes[:'skipEnabled']
166
+ end
167
+
168
+ if attributes[:'timeoutSeconds']
169
+ self.timeout_seconds = attributes[:'timeoutSeconds']
170
+ end
171
+
172
+ if attributes[:'connectedTime']
173
+ self.connected_time = attributes[:'connectedTime']
174
+ end
175
+
176
+ if attributes[:'disconnectedTime']
177
+ self.disconnected_time = attributes[:'disconnectedTime']
178
+ end
179
+
180
+ if attributes[:'callbackScheduledTime']
181
+ self.callback_scheduled_time = attributes[:'callbackScheduledTime']
182
+ end
183
+
184
+ if attributes[:'additionalProperties']
185
+ self.additional_properties = attributes[:'additionalProperties']
186
+ end
187
+
188
+ end
189
+
190
+ # Custom attribute writer method checking allowed values (enum).
191
+ def state=(state)
192
+ allowed_values = ["ALERTING", "DIALING", "CONTACTING", "OFFERING", "CONNECTED", "DISCONNECTED", "TERMINATED", "SCHEDULED", "NONE"]
193
+ if state && !allowed_values.include?(state)
194
+ fail "invalid value for 'state', must be one of #{allowed_values}"
195
+ end
196
+ @state = state
197
+ end
198
+
199
+ # Custom attribute writer method checking allowed values (enum).
200
+ def direction=(direction)
201
+ allowed_values = ["INBOUND", "OUTBOUND"]
202
+ if direction && !allowed_values.include?(direction)
203
+ fail "invalid value for 'direction', must be one of #{allowed_values}"
204
+ end
205
+ @direction = direction
206
+ end
207
+
208
+ # Custom attribute writer method checking allowed values (enum).
209
+ def disconnect_type=(disconnect_type)
210
+ allowed_values = ["ENDPOINT", "CLIENT", "SYSTEM", "TIMEOUT", "TRANSFER", "TRANSFER_CONFERENCE", "TRANSFER_CONSULT", "TRANSFER_NOANSWER", "TRANSFER_NOTAVAILABLE", "TRANSFER_FORWARD", "TRANSPORT_FAILURE", "ERROR", "PEER", "OTHER", "SPAM"]
211
+ if disconnect_type && !allowed_values.include?(disconnect_type)
212
+ fail "invalid value for 'disconnect_type', must be one of #{allowed_values}"
213
+ end
214
+ @disconnect_type = disconnect_type
215
+ end
216
+
217
+ # Check equality by comparing each attribute.
218
+ def ==(o)
219
+ return true if self.equal?(o)
220
+ self.class == o.class &&
221
+ state == o.state &&
222
+ id == o.id &&
223
+ direction == o.direction &&
224
+ held == o.held &&
225
+ disconnect_type == o.disconnect_type &&
226
+ start_hold_time == o.start_hold_time &&
227
+ dialer_preview == o.dialer_preview &&
228
+ callback_numbers == o.callback_numbers &&
229
+ callback_user_name == o.callback_user_name &&
230
+ script_id == o.script_id &&
231
+ skip_enabled == o.skip_enabled &&
232
+ timeout_seconds == o.timeout_seconds &&
233
+ connected_time == o.connected_time &&
234
+ disconnected_time == o.disconnected_time &&
235
+ callback_scheduled_time == o.callback_scheduled_time &&
236
+ additional_properties == o.additional_properties
237
+ end
238
+
239
+ # @see the `==` method
240
+ def eql?(o)
241
+ self == o
242
+ end
243
+
244
+ # Calculate hash code according to all attributes.
245
+ def hash
246
+ [state, id, direction, held, disconnect_type, start_hold_time, dialer_preview, callback_numbers, callback_user_name, script_id, skip_enabled, timeout_seconds, connected_time, disconnected_time, callback_scheduled_time, additional_properties].hash
247
+ end
248
+
249
+ # build the object from hash
250
+ def build_from_hash(attributes)
251
+ return nil unless attributes.is_a?(Hash)
252
+ self.class.swagger_types.each_pair do |key, type|
253
+ if type =~ /^Array<(.*)>/i
254
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
255
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
256
+ else
257
+ #TODO show warning in debug mode
258
+ end
259
+ elsif !attributes[self.class.attribute_map[key]].nil?
260
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
261
+ else
262
+ # data not found in attributes(hash), not an issue as the data can be optional
263
+ end
264
+ end
265
+
266
+ self
267
+ end
268
+
269
+ def _deserialize(type, value)
270
+ case type.to_sym
271
+ when :DateTime
272
+ DateTime.parse(value)
273
+ when :Date
274
+ Date.parse(value)
275
+ when :String
276
+ value.to_s
277
+ when :Integer
278
+ value.to_i
279
+ when :Float
280
+ value.to_f
281
+ when :BOOLEAN
282
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
283
+ true
284
+ else
285
+ false
286
+ end
287
+ when :Object
288
+ # generic object (usually a Hash), return directly
289
+ value
290
+ when /\AArray<(?<inner_type>.+)>\z/
291
+ inner_type = Regexp.last_match[:inner_type]
292
+ value.map { |v| _deserialize(inner_type, v) }
293
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
294
+ k_type = Regexp.last_match[:k_type]
295
+ v_type = Regexp.last_match[:v_type]
296
+ {}.tap do |hash|
297
+ value.each do |k, v|
298
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
299
+ end
300
+ end
301
+ else # model
302
+ _model = Object.const_get("PureCloud").const_get(type).new
303
+ _model.build_from_hash(value)
304
+ end
305
+ end
306
+
307
+ def to_s
308
+ to_hash.to_s
309
+ end
310
+
311
+ # to_body is an alias to to_body (backward compatibility))
312
+ def to_body
313
+ to_hash
314
+ end
315
+
316
+ # return the object in the form of hash
317
+ def to_hash
318
+ hash = {}
319
+ self.class.attribute_map.each_pair do |attr, param|
320
+ value = self.send(attr)
321
+ next if value.nil?
322
+ hash[param] = _to_hash(value)
323
+ end
324
+ hash
325
+ end
326
+
327
+ # Method to output non-array value in the form of hash
328
+ # For object, use to_hash. Otherwise, just return the value
329
+ def _to_hash(value)
330
+ if value.is_a?(Array)
331
+ value.compact.map{ |v| _to_hash(v) }
332
+ elsif value.is_a?(Hash)
333
+ {}.tap do |hash|
334
+ value.each { |k, v| hash[k] = _to_hash(v) }
335
+ end
336
+ elsif value.respond_to? :to_hash
337
+ value.to_hash
338
+ else
339
+ value
340
+ end
341
+ end
342
+
343
+ end
344
+ end