purecloud 0.42.1 → 0.43.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 (319) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/config-ruby.json +1 -1
  4. data/doc_out/AddressListing.html.md +2 -2
  5. data/doc_out/AgentActivityEntityListing.html.md +2 -2
  6. data/doc_out/Asset.html.md +17 -0
  7. data/doc_out/AssetEntityListing.html.md +22 -0
  8. data/doc_out/AttributeEntityListing.html.md +2 -2
  9. data/doc_out/AvailableAdditionalServiceListing.html.md +2 -2
  10. data/doc_out/AvailableTopicEntityListing.html.md +2 -2
  11. data/doc_out/BillingContactListing.html.md +2 -2
  12. data/doc_out/CalibrationEntityListing.html.md +2 -2
  13. data/doc_out/CallConversationEntityListing.html.md +2 -2
  14. data/doc_out/CallableTimeSetEntityListing.html.md +2 -2
  15. data/doc_out/CallbackConversationEntityListing.html.md +2 -2
  16. data/doc_out/CampaignEntityListing.html.md +2 -2
  17. data/doc_out/CampaignSequenceEntityListing.html.md +2 -2
  18. data/doc_out/CarrierEntityListing.html.md +2 -2
  19. data/doc_out/CertificateAuthorityEntityListing.html.md +2 -2
  20. data/doc_out/ChannelEntityListing.html.md +2 -2
  21. data/doc_out/ChannelTopicEntityListing.html.md +2 -2
  22. data/doc_out/ChatConversationEntityListing.html.md +2 -2
  23. data/doc_out/CommandStatusEntityListing.html.md +2 -2
  24. data/doc_out/ConsumedResourcesEntityListing.html.md +2 -2
  25. data/doc_out/ConsumingResourcesEntityListing.html.md +2 -2
  26. data/doc_out/ContactListEntityListing.html.md +2 -2
  27. data/doc_out/ContactListing.html.md +2 -2
  28. data/doc_out/ConversationEntityListing.html.md +2 -2
  29. data/doc_out/ConversationsApi.html.md +62 -0
  30. data/doc_out/DIDEntityListing.html.md +2 -2
  31. data/doc_out/DIDPoolEntityListing.html.md +2 -2
  32. data/doc_out/DependencyObjectEntityListing.html.md +2 -2
  33. data/doc_out/DependencyTypeEntityListing.html.md +2 -2
  34. data/doc_out/DncListEntityListing.html.md +2 -2
  35. data/doc_out/DocumentAuditEntityListing.html.md +2 -2
  36. data/doc_out/DocumentEntityListing.html.md +2 -2
  37. data/doc_out/DomainBillingPeriodEntityListing.html.md +2 -2
  38. data/doc_out/DomainEntityListing.html.md +2 -2
  39. data/doc_out/DomainEntityListingEvaluationForm.html.md +2 -2
  40. data/doc_out/DomainEntityListingQueryResult.html.md +2 -2
  41. data/doc_out/DomainInvoiceEntityListing.html.md +2 -2
  42. data/doc_out/DomainThirdPartyAccountEntityListing.html.md +2 -2
  43. data/doc_out/DomainThirdPartySubscriptionEntityListing.html.md +2 -2
  44. data/doc_out/DomainVoiceRateExtendedResponseItemEntityListing.html.md +2 -2
  45. data/doc_out/DomainVoiceRateInternationalResponseItemEntityListing.html.md +2 -2
  46. data/doc_out/DomainVoiceRateResponseItemEntityListing.html.md +2 -2
  47. data/doc_out/EdgeEntityListing.html.md +2 -2
  48. data/doc_out/EdgeGroupEntityListing.html.md +2 -2
  49. data/doc_out/EdgeLineEntityListing.html.md +2 -2
  50. data/doc_out/EmailConversationEntityListing.html.md +2 -2
  51. data/doc_out/EmailMessageListing.html.md +2 -2
  52. data/doc_out/EncryptionKeyEntityListing.html.md +2 -2
  53. data/doc_out/EndpointEntityListing.html.md +2 -2
  54. data/doc_out/EvaluationEntityListing.html.md +2 -2
  55. data/doc_out/EvaluationFormEntityListing.html.md +2 -2
  56. data/doc_out/EvaluatorActivityEntityListing.html.md +2 -2
  57. data/doc_out/ExtensionEntityListing.html.md +2 -2
  58. data/doc_out/ExtensionPoolEntityListing.html.md +2 -2
  59. data/doc_out/ExternalOrganizationListing.html.md +2 -2
  60. data/doc_out/FaxDocumentEntityListing.html.md +2 -2
  61. data/doc_out/FlowConfigMetaDataEntityListing.html.md +2 -2
  62. data/doc_out/FlowEntityListing.html.md +2 -2
  63. data/doc_out/FlowVersionConfigMetaDataEntityListing.html.md +2 -2
  64. data/doc_out/FlowVersionEntityListing.html.md +2 -2
  65. data/doc_out/GroupEntityListing.html.md +2 -2
  66. data/doc_out/HardwareRateListing.html.md +2 -2
  67. data/doc_out/IVREntityListing.html.md +2 -2
  68. data/doc_out/InboundDomainEntityListing.html.md +2 -2
  69. data/doc_out/InboundRouteEntityListing.html.md +2 -2
  70. data/doc_out/IntegrationEntityListing.html.md +2 -2
  71. data/doc_out/IntegrationTypeEntityListing.html.md +2 -2
  72. data/doc_out/InteractionStatsAlertContainer.html.md +2 -2
  73. data/doc_out/InteractionStatsRuleContainer.html.md +2 -2
  74. data/doc_out/JsonNode.html.md +5 -5
  75. data/doc_out/KeywordSetEntityListing.html.md +2 -2
  76. data/doc_out/LanguageEntityListing.html.md +2 -2
  77. data/doc_out/LibraryEntityListing.html.md +2 -2
  78. data/doc_out/LineBaseEntityListing.html.md +2 -2
  79. data/doc_out/LineEntityListing.html.md +2 -2
  80. data/doc_out/LinkedEntityListingFlowDetails.html.md +2 -2
  81. data/doc_out/LinkedEntityListingWorkItemSearchDetails.html.md +2 -2
  82. data/doc_out/LogicalInterfaceEntityListing.html.md +2 -2
  83. data/doc_out/NoteListing.html.md +2 -2
  84. data/doc_out/OAuthClientEntityListing.html.md +2 -2
  85. data/doc_out/OAuthProviderEntityListing.html.md +2 -2
  86. data/doc_out/OrganizationPresenceEntityListing.html.md +2 -2
  87. data/doc_out/OrganizationRoleEntityListing.html.md +2 -2
  88. data/doc_out/OrphanRecordingListing.html.md +2 -2
  89. data/doc_out/OutboundRouteEntityListing.html.md +2 -2
  90. data/doc_out/PaymentMethodListing.html.md +2 -2
  91. data/doc_out/PermissionCollectionEntityListing.html.md +2 -2
  92. data/doc_out/Phone.html.md +1 -0
  93. data/doc_out/PhoneBaseEntityListing.html.md +2 -2
  94. data/doc_out/PhoneEntityListing.html.md +2 -2
  95. data/doc_out/PhoneMetaBaseEntityListing.html.md +2 -2
  96. data/doc_out/PhysicalInterfaceEntityListing.html.md +2 -2
  97. data/doc_out/PolicyEntityListing.html.md +2 -2
  98. data/doc_out/PresenceApi.html.md +3 -1
  99. data/doc_out/PromptAssetEntityListing.html.md +2 -2
  100. data/doc_out/PromptEntityListing.html.md +2 -2
  101. data/doc_out/QualityAuditPage.html.md +2 -2
  102. data/doc_out/QueueEntityListing.html.md +2 -2
  103. data/doc_out/QueueUtilizationDiagnostic.html.md +1 -0
  104. data/doc_out/QuoteListing.html.md +2 -2
  105. data/doc_out/RelationshipListing.html.md +2 -2
  106. data/doc_out/ReportMetaDataEntityListing.html.md +2 -2
  107. data/doc_out/ReportRunEntryEntityDomainListing.html.md +2 -2
  108. data/doc_out/ReportScheduleEntityListing.html.md +2 -2
  109. data/doc_out/ResponseEntityList.html.md +2 -2
  110. data/doc_out/ResponseEntityListing.html.md +2 -2
  111. data/doc_out/ResponseSetEntityListing.html.md +2 -2
  112. data/doc_out/RuleSetEntityListing.html.md +2 -2
  113. data/doc_out/Scene.html.md +22 -0
  114. data/doc_out/SceneEntityListing.html.md +22 -0
  115. data/doc_out/SceneGroup.html.md +16 -0
  116. data/doc_out/SceneGroupEntityListing.html.md +22 -0
  117. data/doc_out/ScheduleEntityListing.html.md +2 -2
  118. data/doc_out/ScheduleGroupEntityListing.html.md +2 -2
  119. data/doc_out/SchemaCategoryEntityListing.html.md +2 -2
  120. data/doc_out/SchemaReferenceEntityListing.html.md +2 -2
  121. data/doc_out/ScriptEntityListing.html.md +2 -2
  122. data/doc_out/SecurityProfileEntityListing.html.md +2 -2
  123. data/doc_out/ServiceEntityListing.html.md +2 -2
  124. data/doc_out/ShareEntityListing.html.md +2 -2
  125. data/doc_out/SiteEntityListing.html.md +2 -2
  126. data/doc_out/SkillEntityListing.html.md +2 -2
  127. data/doc_out/SocialConversationEntityListing.html.md +2 -2
  128. data/doc_out/SpreadsheetTransformEntityListing.html.md +2 -2
  129. data/doc_out/StationEntityListing.html.md +2 -2
  130. data/doc_out/SupportCreditListing.html.md +2 -2
  131. data/doc_out/SystemPromptAssetEntityListing.html.md +2 -2
  132. data/doc_out/SystemPromptEntityListing.html.md +2 -2
  133. data/doc_out/TagValueEntityListing.html.md +2 -2
  134. data/doc_out/TelephonyProvidersEdgeApi.html.md +6 -2
  135. data/doc_out/TemplateEntityListing.html.md +2 -2
  136. data/doc_out/TextTableTransformEntityListing.html.md +2 -2
  137. data/doc_out/Thumbnail.html.md +16 -0
  138. data/doc_out/TimeZoneEntityListing.html.md +2 -2
  139. data/doc_out/TrunkEntityListing.html.md +2 -2
  140. data/doc_out/TrunkMetabaseEntityListing.html.md +2 -2
  141. data/doc_out/UserActionCategoryEntityListing.html.md +2 -2
  142. data/doc_out/UserActionMetadataEntityListing.html.md +1 -1
  143. data/doc_out/UserEntityListing.html.md +2 -2
  144. data/doc_out/UserQueueEntityListing.html.md +2 -2
  145. data/doc_out/UserRecordingEntityListing.html.md +2 -2
  146. data/doc_out/UserSkillEntityListing.html.md +2 -2
  147. data/doc_out/UserStation.html.md +1 -0
  148. data/doc_out/UsersEntityListing.html.md +2 -2
  149. data/doc_out/VideoConversationEntityListing.html.md +2 -2
  150. data/doc_out/VoiceRateInternationalEntityListing.html.md +2 -2
  151. data/doc_out/VoiceXmlOperationEntityListing.html.md +2 -2
  152. data/doc_out/Waypoint.html.md +20 -0
  153. data/doc_out/WaypointEntityListing.html.md +22 -0
  154. data/doc_out/WorkspaceEntityListing.html.md +2 -2
  155. data/doc_out/WorkspaceMemberEntityListing.html.md +2 -2
  156. data/doc_out/WrapupCodeEntityListing.html.md +2 -2
  157. data/doc_out/index.html.md +3 -3
  158. data/lib/purecloud.rb +9 -0
  159. data/lib/purecloud/api/conversations_api.rb +69 -0
  160. data/lib/purecloud/api/presence_api.rb +3 -0
  161. data/lib/purecloud/api/telephony_providers_edge_api.rb +8 -2
  162. data/lib/purecloud/api_client.rb +1 -1
  163. data/lib/purecloud/models/address_listing.rb +13 -13
  164. data/lib/purecloud/models/agent_activity_entity_listing.rb +13 -13
  165. data/lib/purecloud/models/asset.rb +207 -0
  166. data/lib/purecloud/models/asset_entity_listing.rb +257 -0
  167. data/lib/purecloud/models/attribute_entity_listing.rb +13 -13
  168. data/lib/purecloud/models/available_additional_service_listing.rb +13 -13
  169. data/lib/purecloud/models/available_topic_entity_listing.rb +13 -13
  170. data/lib/purecloud/models/billing_contact_listing.rb +13 -13
  171. data/lib/purecloud/models/calibration_entity_listing.rb +13 -13
  172. data/lib/purecloud/models/call_conversation_entity_listing.rb +13 -13
  173. data/lib/purecloud/models/callable_time_set_entity_listing.rb +13 -13
  174. data/lib/purecloud/models/callback_conversation_entity_listing.rb +13 -13
  175. data/lib/purecloud/models/campaign_entity_listing.rb +13 -13
  176. data/lib/purecloud/models/campaign_sequence_entity_listing.rb +13 -13
  177. data/lib/purecloud/models/carrier_entity_listing.rb +13 -13
  178. data/lib/purecloud/models/certificate_authority_entity_listing.rb +13 -13
  179. data/lib/purecloud/models/channel_entity_listing.rb +13 -13
  180. data/lib/purecloud/models/channel_topic_entity_listing.rb +13 -13
  181. data/lib/purecloud/models/chat_conversation_entity_listing.rb +13 -13
  182. data/lib/purecloud/models/command_status_entity_listing.rb +13 -13
  183. data/lib/purecloud/models/consumed_resources_entity_listing.rb +13 -13
  184. data/lib/purecloud/models/consuming_resources_entity_listing.rb +13 -13
  185. data/lib/purecloud/models/contact_list_entity_listing.rb +13 -13
  186. data/lib/purecloud/models/contact_listing.rb +13 -13
  187. data/lib/purecloud/models/conversation_entity_listing.rb +13 -13
  188. data/lib/purecloud/models/default_greeting_list.rb +1 -1
  189. data/lib/purecloud/models/dependency_object_entity_listing.rb +13 -13
  190. data/lib/purecloud/models/dependency_type_entity_listing.rb +13 -13
  191. data/lib/purecloud/models/did_entity_listing.rb +13 -13
  192. data/lib/purecloud/models/did_pool_entity_listing.rb +13 -13
  193. data/lib/purecloud/models/dnc_list_entity_listing.rb +13 -13
  194. data/lib/purecloud/models/document_audit_entity_listing.rb +13 -13
  195. data/lib/purecloud/models/document_entity_listing.rb +13 -13
  196. data/lib/purecloud/models/domain_billing_period_entity_listing.rb +13 -13
  197. data/lib/purecloud/models/domain_entity_listing.rb +13 -13
  198. data/lib/purecloud/models/domain_entity_listing_evaluation_form.rb +13 -13
  199. data/lib/purecloud/models/domain_entity_listing_query_result.rb +13 -13
  200. data/lib/purecloud/models/domain_invoice_entity_listing.rb +13 -13
  201. data/lib/purecloud/models/domain_third_party_account_entity_listing.rb +13 -13
  202. data/lib/purecloud/models/domain_third_party_subscription_entity_listing.rb +13 -13
  203. data/lib/purecloud/models/domain_voice_rate_extended_response_item_entity_listing.rb +13 -13
  204. data/lib/purecloud/models/domain_voice_rate_international_response_item_entity_listing.rb +13 -13
  205. data/lib/purecloud/models/domain_voice_rate_response_item_entity_listing.rb +13 -13
  206. data/lib/purecloud/models/edge_entity_listing.rb +13 -13
  207. data/lib/purecloud/models/edge_group_entity_listing.rb +13 -13
  208. data/lib/purecloud/models/edge_line_entity_listing.rb +13 -13
  209. data/lib/purecloud/models/email_conversation_entity_listing.rb +13 -13
  210. data/lib/purecloud/models/email_message_listing.rb +13 -13
  211. data/lib/purecloud/models/encryption_key_entity_listing.rb +13 -13
  212. data/lib/purecloud/models/endpoint_entity_listing.rb +13 -13
  213. data/lib/purecloud/models/evaluation_entity_listing.rb +13 -13
  214. data/lib/purecloud/models/evaluation_form_entity_listing.rb +13 -13
  215. data/lib/purecloud/models/evaluator_activity_entity_listing.rb +13 -13
  216. data/lib/purecloud/models/extension_entity_listing.rb +13 -13
  217. data/lib/purecloud/models/extension_pool_entity_listing.rb +13 -13
  218. data/lib/purecloud/models/external_organization_listing.rb +13 -13
  219. data/lib/purecloud/models/fax_document_entity_listing.rb +13 -13
  220. data/lib/purecloud/models/flow_config_meta_data_entity_listing.rb +13 -13
  221. data/lib/purecloud/models/flow_entity_listing.rb +13 -13
  222. data/lib/purecloud/models/flow_version_config_meta_data_entity_listing.rb +13 -13
  223. data/lib/purecloud/models/flow_version_entity_listing.rb +13 -13
  224. data/lib/purecloud/models/greeting.rb +1 -1
  225. data/lib/purecloud/models/group_entity_listing.rb +13 -13
  226. data/lib/purecloud/models/hardware_rate_listing.rb +13 -13
  227. data/lib/purecloud/models/inbound_domain_entity_listing.rb +13 -13
  228. data/lib/purecloud/models/inbound_route_entity_listing.rb +13 -13
  229. data/lib/purecloud/models/integration_entity_listing.rb +13 -13
  230. data/lib/purecloud/models/integration_type_entity_listing.rb +13 -13
  231. data/lib/purecloud/models/interaction_stats_alert_container.rb +13 -13
  232. data/lib/purecloud/models/interaction_stats_rule_container.rb +13 -13
  233. data/lib/purecloud/models/ivr_entity_listing.rb +13 -13
  234. data/lib/purecloud/models/json_node.rb +61 -61
  235. data/lib/purecloud/models/keyword_set_entity_listing.rb +13 -13
  236. data/lib/purecloud/models/language_entity_listing.rb +13 -13
  237. data/lib/purecloud/models/library_entity_listing.rb +13 -13
  238. data/lib/purecloud/models/line_base_entity_listing.rb +13 -13
  239. data/lib/purecloud/models/line_entity_listing.rb +13 -13
  240. data/lib/purecloud/models/linked_entity_listing_flow_details.rb +13 -13
  241. data/lib/purecloud/models/linked_entity_listing_work_item_search_details.rb +13 -13
  242. data/lib/purecloud/models/logical_interface_entity_listing.rb +13 -13
  243. data/lib/purecloud/models/note_listing.rb +13 -13
  244. data/lib/purecloud/models/o_auth_client_entity_listing.rb +13 -13
  245. data/lib/purecloud/models/o_auth_provider_entity_listing.rb +13 -13
  246. data/lib/purecloud/models/organization_presence_entity_listing.rb +13 -13
  247. data/lib/purecloud/models/organization_role_entity_listing.rb +13 -13
  248. data/lib/purecloud/models/orphan_recording_listing.rb +13 -13
  249. data/lib/purecloud/models/outbound_route_entity_listing.rb +13 -13
  250. data/lib/purecloud/models/payment_method_listing.rb +13 -13
  251. data/lib/purecloud/models/permission_collection_entity_listing.rb +13 -13
  252. data/lib/purecloud/models/phone.rb +12 -1
  253. data/lib/purecloud/models/phone_base_entity_listing.rb +13 -13
  254. data/lib/purecloud/models/phone_entity_listing.rb +13 -13
  255. data/lib/purecloud/models/phone_meta_base_entity_listing.rb +13 -13
  256. data/lib/purecloud/models/physical_interface_entity_listing.rb +13 -13
  257. data/lib/purecloud/models/policy_entity_listing.rb +13 -13
  258. data/lib/purecloud/models/prompt_asset_entity_listing.rb +13 -13
  259. data/lib/purecloud/models/prompt_entity_listing.rb +13 -13
  260. data/lib/purecloud/models/quality_audit_page.rb +13 -13
  261. data/lib/purecloud/models/queue_entity_listing.rb +13 -13
  262. data/lib/purecloud/models/queue_utilization_diagnostic.rb +12 -1
  263. data/lib/purecloud/models/quote_listing.rb +13 -13
  264. data/lib/purecloud/models/relationship_listing.rb +13 -13
  265. data/lib/purecloud/models/report_meta_data_entity_listing.rb +13 -13
  266. data/lib/purecloud/models/report_run_entry_entity_domain_listing.rb +13 -13
  267. data/lib/purecloud/models/report_schedule_entity_listing.rb +13 -13
  268. data/lib/purecloud/models/response_entity_list.rb +13 -13
  269. data/lib/purecloud/models/response_entity_listing.rb +13 -13
  270. data/lib/purecloud/models/response_set_entity_listing.rb +13 -13
  271. data/lib/purecloud/models/rule_set_entity_listing.rb +13 -13
  272. data/lib/purecloud/models/scene.rb +270 -0
  273. data/lib/purecloud/models/scene_entity_listing.rb +257 -0
  274. data/lib/purecloud/models/scene_group.rb +197 -0
  275. data/lib/purecloud/models/scene_group_entity_listing.rb +257 -0
  276. data/lib/purecloud/models/schedule_entity_listing.rb +13 -13
  277. data/lib/purecloud/models/schedule_group_entity_listing.rb +13 -13
  278. data/lib/purecloud/models/schema_category_entity_listing.rb +13 -13
  279. data/lib/purecloud/models/schema_reference_entity_listing.rb +13 -13
  280. data/lib/purecloud/models/script_entity_listing.rb +13 -13
  281. data/lib/purecloud/models/security_profile_entity_listing.rb +13 -13
  282. data/lib/purecloud/models/service_entity_listing.rb +13 -13
  283. data/lib/purecloud/models/share_entity_listing.rb +13 -13
  284. data/lib/purecloud/models/site_entity_listing.rb +13 -13
  285. data/lib/purecloud/models/skill_entity_listing.rb +13 -13
  286. data/lib/purecloud/models/social_conversation_entity_listing.rb +13 -13
  287. data/lib/purecloud/models/spreadsheet_transform_entity_listing.rb +13 -13
  288. data/lib/purecloud/models/station_entity_listing.rb +13 -13
  289. data/lib/purecloud/models/support_credit_listing.rb +13 -13
  290. data/lib/purecloud/models/system_prompt_asset_entity_listing.rb +13 -13
  291. data/lib/purecloud/models/system_prompt_entity_listing.rb +13 -13
  292. data/lib/purecloud/models/tag_value_entity_listing.rb +13 -13
  293. data/lib/purecloud/models/template_entity_listing.rb +13 -13
  294. data/lib/purecloud/models/text_table_transform_entity_listing.rb +13 -13
  295. data/lib/purecloud/models/thumbnail.rb +197 -0
  296. data/lib/purecloud/models/time_zone_entity_listing.rb +13 -13
  297. data/lib/purecloud/models/trunk_entity_listing.rb +13 -13
  298. data/lib/purecloud/models/trunk_metabase_entity_listing.rb +13 -13
  299. data/lib/purecloud/models/user_action_category_entity_listing.rb +13 -13
  300. data/lib/purecloud/models/user_action_metadata_entity_listing.rb +11 -11
  301. data/lib/purecloud/models/user_entity_listing.rb +13 -13
  302. data/lib/purecloud/models/user_queue_entity_listing.rb +13 -13
  303. data/lib/purecloud/models/user_recording_entity_listing.rb +13 -13
  304. data/lib/purecloud/models/user_skill_entity_listing.rb +13 -13
  305. data/lib/purecloud/models/user_station.rb +17 -4
  306. data/lib/purecloud/models/users_entity_listing.rb +13 -13
  307. data/lib/purecloud/models/video_conversation_entity_listing.rb +13 -13
  308. data/lib/purecloud/models/voice_rate_international_entity_listing.rb +13 -13
  309. data/lib/purecloud/models/voice_xml_operation_entity_listing.rb +13 -13
  310. data/lib/purecloud/models/waypoint.rb +237 -0
  311. data/lib/purecloud/models/waypoint_entity_listing.rb +257 -0
  312. data/lib/purecloud/models/workspace_entity_listing.rb +13 -13
  313. data/lib/purecloud/models/workspace_member_entity_listing.rb +13 -13
  314. data/lib/purecloud/models/wrapup_code_entity_listing.rb +13 -13
  315. data/lib/purecloud/version.rb +1 -1
  316. data/newVersion.md +1 -1
  317. data/swagger.json +1 -1
  318. data/version.json +1 -1
  319. metadata +20 -2
@@ -149,6 +149,7 @@ module PureCloud
149
149
  # @param [Hash] opts the optional parameters
150
150
  # @option opts [Integer] :page_number Page number (default to 1)
151
151
  # @option opts [Integer] :page_size Page size (default to 25)
152
+ # @option opts [String] :deleted Deleted query can be true, false or all (default to false)
152
153
  # @return [OrganizationPresenceEntityListing]
153
154
  def get_presencedefinitions(opts = {})
154
155
  data, status_code, headers = get_presencedefinitions_with_http_info(opts)
@@ -160,6 +161,7 @@ module PureCloud
160
161
  # @param [Hash] opts the optional parameters
161
162
  # @option opts [Integer] :page_number Page number
162
163
  # @option opts [Integer] :page_size Page size
164
+ # @option opts [String] :deleted Deleted query can be true, false or all
163
165
  # @return [Array<(OrganizationPresenceEntityListing, Fixnum, Hash)>] OrganizationPresenceEntityListing data, response status code and response headers
164
166
  def get_presencedefinitions_with_http_info(opts = {})
165
167
  if @api_client.config.debugging
@@ -173,6 +175,7 @@ module PureCloud
173
175
  query_params = {}
174
176
  query_params[:'pageNumber'] = opts[:'page_number'] if opts[:'page_number']
175
177
  query_params[:'pageSize'] = opts[:'page_size'] if opts[:'page_size']
178
+ query_params[:'deleted'] = opts[:'deleted'] if opts[:'deleted']
176
179
 
177
180
  # header parameters
178
181
  header_params = {}
@@ -3202,10 +3202,12 @@ module PureCloud
3202
3202
  # @option opts [String] :sort_by Value by which to sort (default to name)
3203
3203
  # @option opts [String] :sort_order Sort order (default to ASC)
3204
3204
  # @option opts [String] :site_id Filter by site.id
3205
+ # @option opts [String] :web_rtc_user_id Filter by webRtcUser.id
3205
3206
  # @option opts [String] :phone_base_settings_id Filter by phoneBaseSettings.id
3207
+ # @option opts [String] :lines_logged_in_user_id Filter by lines.loggedInUser.id
3206
3208
  # @option opts [String] :phone_hardware_id Filter by phone_hardwareId
3207
3209
  # @option opts [Array<String>] :expand Fields to expand in the response, comma-separated
3208
- # @option opts [Array<String>] :fields Fields under properties to get, comma-separated
3210
+ # @option opts [Array<String>] :fields Fields and properties to get, comma-separated
3209
3211
  # @return [PhoneEntityListing]
3210
3212
  def get_providers_edges_phones(opts = {})
3211
3213
  data, status_code, headers = get_providers_edges_phones_with_http_info(opts)
@@ -3220,10 +3222,12 @@ module PureCloud
3220
3222
  # @option opts [String] :sort_by Value by which to sort
3221
3223
  # @option opts [String] :sort_order Sort order
3222
3224
  # @option opts [String] :site_id Filter by site.id
3225
+ # @option opts [String] :web_rtc_user_id Filter by webRtcUser.id
3223
3226
  # @option opts [String] :phone_base_settings_id Filter by phoneBaseSettings.id
3227
+ # @option opts [String] :lines_logged_in_user_id Filter by lines.loggedInUser.id
3224
3228
  # @option opts [String] :phone_hardware_id Filter by phone_hardwareId
3225
3229
  # @option opts [Array<String>] :expand Fields to expand in the response, comma-separated
3226
- # @option opts [Array<String>] :fields Fields under properties to get, comma-separated
3230
+ # @option opts [Array<String>] :fields Fields and properties to get, comma-separated
3227
3231
  # @return [Array<(PhoneEntityListing, Fixnum, Hash)>] PhoneEntityListing data, response status code and response headers
3228
3232
  def get_providers_edges_phones_with_http_info(opts = {})
3229
3233
  if @api_client.config.debugging
@@ -3240,7 +3244,9 @@ module PureCloud
3240
3244
  query_params[:'sortBy'] = opts[:'sort_by'] if opts[:'sort_by']
3241
3245
  query_params[:'sortOrder'] = opts[:'sort_order'] if opts[:'sort_order']
3242
3246
  query_params[:'site.id'] = opts[:'site_id'] if opts[:'site_id']
3247
+ query_params[:'webRtcUser.id'] = opts[:'web_rtc_user_id'] if opts[:'web_rtc_user_id']
3243
3248
  query_params[:'phoneBaseSettings.id'] = opts[:'phone_base_settings_id'] if opts[:'phone_base_settings_id']
3249
+ query_params[:'lines.loggedInUser.id'] = opts[:'lines_logged_in_user_id'] if opts[:'lines_logged_in_user_id']
3244
3250
  query_params[:'phone_hardwareId'] = opts[:'phone_hardware_id'] if opts[:'phone_hardware_id']
3245
3251
  query_params[:'expand'] = @api_client.build_collection_param(opts[:'expand'], :multi) if opts[:'expand']
3246
3252
  query_params[:'fields'] = @api_client.build_collection_param(opts[:'fields'], :multi) if opts[:'fields']
@@ -33,7 +33,7 @@ module PureCloud
33
33
 
34
34
  def initialize(config = Configuration.default)
35
35
  @config = config
36
- @user_agent = "PureCloud SDK/Ruby 0.42.1"
36
+ @user_agent = "PureCloud SDK/Ruby 0.43.1"
37
37
  @default_headers = {
38
38
  'Content-Type' => "application/json",
39
39
  'User-Agent' => @user_agent
@@ -30,11 +30,11 @@ module PureCloud
30
30
 
31
31
  attr_accessor :first_uri
32
32
 
33
- attr_accessor :previous_uri
33
+ attr_accessor :last_uri
34
34
 
35
35
  attr_accessor :next_uri
36
36
 
37
- attr_accessor :last_uri
37
+ attr_accessor :previous_uri
38
38
 
39
39
  attr_accessor :page_count
40
40
 
@@ -54,11 +54,11 @@ module PureCloud
54
54
 
55
55
  :'first_uri' => :'firstUri',
56
56
 
57
- :'previous_uri' => :'previousUri',
57
+ :'last_uri' => :'lastUri',
58
58
 
59
59
  :'next_uri' => :'nextUri',
60
60
 
61
- :'last_uri' => :'lastUri',
61
+ :'previous_uri' => :'previousUri',
62
62
 
63
63
  :'page_count' => :'pageCount'
64
64
 
@@ -74,9 +74,9 @@ module PureCloud
74
74
  :'entities' => :'Array<BillingAddress>',
75
75
  :'self_uri' => :'String',
76
76
  :'first_uri' => :'String',
77
- :'previous_uri' => :'String',
78
- :'next_uri' => :'String',
79
77
  :'last_uri' => :'String',
78
+ :'next_uri' => :'String',
79
+ :'previous_uri' => :'String',
80
80
  :'page_count' => :'Integer'
81
81
 
82
82
  }
@@ -115,16 +115,16 @@ module PureCloud
115
115
  self.first_uri = attributes[:'firstUri']
116
116
  end
117
117
 
118
- if attributes[:'previousUri']
119
- self.previous_uri = attributes[:'previousUri']
118
+ if attributes[:'lastUri']
119
+ self.last_uri = attributes[:'lastUri']
120
120
  end
121
121
 
122
122
  if attributes[:'nextUri']
123
123
  self.next_uri = attributes[:'nextUri']
124
124
  end
125
125
 
126
- if attributes[:'lastUri']
127
- self.last_uri = attributes[:'lastUri']
126
+ if attributes[:'previousUri']
127
+ self.previous_uri = attributes[:'previousUri']
128
128
  end
129
129
 
130
130
  if attributes[:'pageCount']
@@ -143,9 +143,9 @@ module PureCloud
143
143
  entities == o.entities &&
144
144
  self_uri == o.self_uri &&
145
145
  first_uri == o.first_uri &&
146
- previous_uri == o.previous_uri &&
147
- next_uri == o.next_uri &&
148
146
  last_uri == o.last_uri &&
147
+ next_uri == o.next_uri &&
148
+ previous_uri == o.previous_uri &&
149
149
  page_count == o.page_count
150
150
  end
151
151
 
@@ -156,7 +156,7 @@ module PureCloud
156
156
 
157
157
  # Calculate hash code according to all attributes.
158
158
  def hash
159
- [page_size, page_number, total, entities, self_uri, first_uri, previous_uri, next_uri, last_uri, page_count].hash
159
+ [page_size, page_number, total, entities, self_uri, first_uri, last_uri, next_uri, previous_uri, page_count].hash
160
160
  end
161
161
 
162
162
  # build the object from hash
@@ -30,11 +30,11 @@ module PureCloud
30
30
 
31
31
  attr_accessor :first_uri
32
32
 
33
- attr_accessor :previous_uri
33
+ attr_accessor :last_uri
34
34
 
35
35
  attr_accessor :next_uri
36
36
 
37
- attr_accessor :last_uri
37
+ attr_accessor :previous_uri
38
38
 
39
39
  attr_accessor :page_count
40
40
 
@@ -54,11 +54,11 @@ module PureCloud
54
54
 
55
55
  :'first_uri' => :'firstUri',
56
56
 
57
- :'previous_uri' => :'previousUri',
57
+ :'last_uri' => :'lastUri',
58
58
 
59
59
  :'next_uri' => :'nextUri',
60
60
 
61
- :'last_uri' => :'lastUri',
61
+ :'previous_uri' => :'previousUri',
62
62
 
63
63
  :'page_count' => :'pageCount'
64
64
 
@@ -74,9 +74,9 @@ module PureCloud
74
74
  :'entities' => :'Array<AgentActivity>',
75
75
  :'self_uri' => :'String',
76
76
  :'first_uri' => :'String',
77
- :'previous_uri' => :'String',
78
- :'next_uri' => :'String',
79
77
  :'last_uri' => :'String',
78
+ :'next_uri' => :'String',
79
+ :'previous_uri' => :'String',
80
80
  :'page_count' => :'Integer'
81
81
 
82
82
  }
@@ -115,16 +115,16 @@ module PureCloud
115
115
  self.first_uri = attributes[:'firstUri']
116
116
  end
117
117
 
118
- if attributes[:'previousUri']
119
- self.previous_uri = attributes[:'previousUri']
118
+ if attributes[:'lastUri']
119
+ self.last_uri = attributes[:'lastUri']
120
120
  end
121
121
 
122
122
  if attributes[:'nextUri']
123
123
  self.next_uri = attributes[:'nextUri']
124
124
  end
125
125
 
126
- if attributes[:'lastUri']
127
- self.last_uri = attributes[:'lastUri']
126
+ if attributes[:'previousUri']
127
+ self.previous_uri = attributes[:'previousUri']
128
128
  end
129
129
 
130
130
  if attributes[:'pageCount']
@@ -143,9 +143,9 @@ module PureCloud
143
143
  entities == o.entities &&
144
144
  self_uri == o.self_uri &&
145
145
  first_uri == o.first_uri &&
146
- previous_uri == o.previous_uri &&
147
- next_uri == o.next_uri &&
148
146
  last_uri == o.last_uri &&
147
+ next_uri == o.next_uri &&
148
+ previous_uri == o.previous_uri &&
149
149
  page_count == o.page_count
150
150
  end
151
151
 
@@ -156,7 +156,7 @@ module PureCloud
156
156
 
157
157
  # Calculate hash code according to all attributes.
158
158
  def hash
159
- [page_size, page_number, total, entities, self_uri, first_uri, previous_uri, next_uri, last_uri, page_count].hash
159
+ [page_size, page_number, total, entities, self_uri, first_uri, last_uri, next_uri, previous_uri, page_count].hash
160
160
  end
161
161
 
162
162
  # build the object from hash
@@ -0,0 +1,207 @@
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 Asset
21
+ # The globally unique identifier for the object.
22
+ attr_accessor :id
23
+
24
+ attr_accessor :name
25
+
26
+ attr_accessor :download_url
27
+
28
+ attr_accessor :file_size_bytes
29
+
30
+ # The URI for this object
31
+ attr_accessor :self_uri
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ def self.attribute_map
35
+ {
36
+
37
+ :'id' => :'id',
38
+
39
+ :'name' => :'name',
40
+
41
+ :'download_url' => :'downloadUrl',
42
+
43
+ :'file_size_bytes' => :'fileSizeBytes',
44
+
45
+ :'self_uri' => :'selfUri'
46
+
47
+ }
48
+ end
49
+
50
+ # Attribute type mapping.
51
+ def self.swagger_types
52
+ {
53
+ :'id' => :'String',
54
+ :'name' => :'String',
55
+ :'download_url' => :'String',
56
+ :'file_size_bytes' => :'Integer',
57
+ :'self_uri' => :'String'
58
+
59
+ }
60
+ end
61
+
62
+ def initialize(attributes = {})
63
+ return unless attributes.is_a?(Hash)
64
+
65
+ # convert string to symbol for hash key
66
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
67
+
68
+
69
+ if attributes[:'id']
70
+ self.id = attributes[:'id']
71
+ end
72
+
73
+ if attributes[:'name']
74
+ self.name = attributes[:'name']
75
+ end
76
+
77
+ if attributes[:'downloadUrl']
78
+ self.download_url = attributes[:'downloadUrl']
79
+ end
80
+
81
+ if attributes[:'fileSizeBytes']
82
+ self.file_size_bytes = attributes[:'fileSizeBytes']
83
+ end
84
+
85
+ if attributes[:'selfUri']
86
+ self.self_uri = attributes[:'selfUri']
87
+ end
88
+
89
+ end
90
+
91
+ # Check equality by comparing each attribute.
92
+ def ==(o)
93
+ return true if self.equal?(o)
94
+ self.class == o.class &&
95
+ id == o.id &&
96
+ name == o.name &&
97
+ download_url == o.download_url &&
98
+ file_size_bytes == o.file_size_bytes &&
99
+ self_uri == o.self_uri
100
+ end
101
+
102
+ # @see the `==` method
103
+ def eql?(o)
104
+ self == o
105
+ end
106
+
107
+ # Calculate hash code according to all attributes.
108
+ def hash
109
+ [id, name, download_url, file_size_bytes, self_uri].hash
110
+ end
111
+
112
+ # build the object from hash
113
+ def build_from_hash(attributes)
114
+ return nil unless attributes.is_a?(Hash)
115
+ self.class.swagger_types.each_pair do |key, type|
116
+ if type =~ /^Array<(.*)>/i
117
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
118
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
119
+ else
120
+ #TODO show warning in debug mode
121
+ end
122
+ elsif !attributes[self.class.attribute_map[key]].nil?
123
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
124
+ else
125
+ # data not found in attributes(hash), not an issue as the data can be optional
126
+ end
127
+ end
128
+
129
+ self
130
+ end
131
+
132
+ def _deserialize(type, value)
133
+ case type.to_sym
134
+ when :DateTime
135
+ DateTime.parse(value)
136
+ when :Date
137
+ Date.parse(value)
138
+ when :String
139
+ value.to_s
140
+ when :Integer
141
+ value.to_i
142
+ when :Float
143
+ value.to_f
144
+ when :BOOLEAN
145
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
146
+ true
147
+ else
148
+ false
149
+ end
150
+ when :Object
151
+ # generic object (usually a Hash), return directly
152
+ value
153
+ when /\AArray<(?<inner_type>.+)>\z/
154
+ inner_type = Regexp.last_match[:inner_type]
155
+ value.map { |v| _deserialize(inner_type, v) }
156
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
157
+ k_type = Regexp.last_match[:k_type]
158
+ v_type = Regexp.last_match[:v_type]
159
+ {}.tap do |hash|
160
+ value.each do |k, v|
161
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
162
+ end
163
+ end
164
+ else # model
165
+ _model = Object.const_get("PureCloud").const_get(type).new
166
+ _model.build_from_hash(value)
167
+ end
168
+ end
169
+
170
+ def to_s
171
+ to_hash.to_s
172
+ end
173
+
174
+ # to_body is an alias to to_body (backward compatibility))
175
+ def to_body
176
+ to_hash
177
+ end
178
+
179
+ # return the object in the form of hash
180
+ def to_hash
181
+ hash = {}
182
+ self.class.attribute_map.each_pair do |attr, param|
183
+ value = self.send(attr)
184
+ next if value.nil?
185
+ hash[param] = _to_hash(value)
186
+ end
187
+ hash
188
+ end
189
+
190
+ # Method to output non-array value in the form of hash
191
+ # For object, use to_hash. Otherwise, just return the value
192
+ def _to_hash(value)
193
+ if value.is_a?(Array)
194
+ value.compact.map{ |v| _to_hash(v) }
195
+ elsif value.is_a?(Hash)
196
+ {}.tap do |hash|
197
+ value.each { |k, v| hash[k] = _to_hash(v) }
198
+ end
199
+ elsif value.respond_to? :to_hash
200
+ value.to_hash
201
+ else
202
+ value
203
+ end
204
+ end
205
+
206
+ end
207
+ end
@@ -0,0 +1,257 @@
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 AssetEntityListing
21
+ attr_accessor :page_size
22
+
23
+ attr_accessor :page_number
24
+
25
+ attr_accessor :total
26
+
27
+ attr_accessor :entities
28
+
29
+ attr_accessor :self_uri
30
+
31
+ attr_accessor :first_uri
32
+
33
+ attr_accessor :last_uri
34
+
35
+ attr_accessor :next_uri
36
+
37
+ attr_accessor :previous_uri
38
+
39
+ attr_accessor :page_count
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ def self.attribute_map
43
+ {
44
+
45
+ :'page_size' => :'pageSize',
46
+
47
+ :'page_number' => :'pageNumber',
48
+
49
+ :'total' => :'total',
50
+
51
+ :'entities' => :'entities',
52
+
53
+ :'self_uri' => :'selfUri',
54
+
55
+ :'first_uri' => :'firstUri',
56
+
57
+ :'last_uri' => :'lastUri',
58
+
59
+ :'next_uri' => :'nextUri',
60
+
61
+ :'previous_uri' => :'previousUri',
62
+
63
+ :'page_count' => :'pageCount'
64
+
65
+ }
66
+ end
67
+
68
+ # Attribute type mapping.
69
+ def self.swagger_types
70
+ {
71
+ :'page_size' => :'Integer',
72
+ :'page_number' => :'Integer',
73
+ :'total' => :'Integer',
74
+ :'entities' => :'Array<Scene>',
75
+ :'self_uri' => :'String',
76
+ :'first_uri' => :'String',
77
+ :'last_uri' => :'String',
78
+ :'next_uri' => :'String',
79
+ :'previous_uri' => :'String',
80
+ :'page_count' => :'Integer'
81
+
82
+ }
83
+ end
84
+
85
+ def initialize(attributes = {})
86
+ return unless attributes.is_a?(Hash)
87
+
88
+ # convert string to symbol for hash key
89
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
90
+
91
+
92
+ if attributes[:'pageSize']
93
+ self.page_size = attributes[:'pageSize']
94
+ end
95
+
96
+ if attributes[:'pageNumber']
97
+ self.page_number = attributes[:'pageNumber']
98
+ end
99
+
100
+ if attributes[:'total']
101
+ self.total = attributes[:'total']
102
+ end
103
+
104
+ if attributes[:'entities']
105
+ if (value = attributes[:'entities']).is_a?(Array)
106
+ self.entities = value
107
+ end
108
+ end
109
+
110
+ if attributes[:'selfUri']
111
+ self.self_uri = attributes[:'selfUri']
112
+ end
113
+
114
+ if attributes[:'firstUri']
115
+ self.first_uri = attributes[:'firstUri']
116
+ end
117
+
118
+ if attributes[:'lastUri']
119
+ self.last_uri = attributes[:'lastUri']
120
+ end
121
+
122
+ if attributes[:'nextUri']
123
+ self.next_uri = attributes[:'nextUri']
124
+ end
125
+
126
+ if attributes[:'previousUri']
127
+ self.previous_uri = attributes[:'previousUri']
128
+ end
129
+
130
+ if attributes[:'pageCount']
131
+ self.page_count = attributes[:'pageCount']
132
+ end
133
+
134
+ end
135
+
136
+ # Check equality by comparing each attribute.
137
+ def ==(o)
138
+ return true if self.equal?(o)
139
+ self.class == o.class &&
140
+ page_size == o.page_size &&
141
+ page_number == o.page_number &&
142
+ total == o.total &&
143
+ entities == o.entities &&
144
+ self_uri == o.self_uri &&
145
+ first_uri == o.first_uri &&
146
+ last_uri == o.last_uri &&
147
+ next_uri == o.next_uri &&
148
+ previous_uri == o.previous_uri &&
149
+ page_count == o.page_count
150
+ end
151
+
152
+ # @see the `==` method
153
+ def eql?(o)
154
+ self == o
155
+ end
156
+
157
+ # Calculate hash code according to all attributes.
158
+ def hash
159
+ [page_size, page_number, total, entities, self_uri, first_uri, last_uri, next_uri, previous_uri, page_count].hash
160
+ end
161
+
162
+ # build the object from hash
163
+ def build_from_hash(attributes)
164
+ return nil unless attributes.is_a?(Hash)
165
+ self.class.swagger_types.each_pair do |key, type|
166
+ if type =~ /^Array<(.*)>/i
167
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
168
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
169
+ else
170
+ #TODO show warning in debug mode
171
+ end
172
+ elsif !attributes[self.class.attribute_map[key]].nil?
173
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
174
+ else
175
+ # data not found in attributes(hash), not an issue as the data can be optional
176
+ end
177
+ end
178
+
179
+ self
180
+ end
181
+
182
+ def _deserialize(type, value)
183
+ case type.to_sym
184
+ when :DateTime
185
+ DateTime.parse(value)
186
+ when :Date
187
+ Date.parse(value)
188
+ when :String
189
+ value.to_s
190
+ when :Integer
191
+ value.to_i
192
+ when :Float
193
+ value.to_f
194
+ when :BOOLEAN
195
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
196
+ true
197
+ else
198
+ false
199
+ end
200
+ when :Object
201
+ # generic object (usually a Hash), return directly
202
+ value
203
+ when /\AArray<(?<inner_type>.+)>\z/
204
+ inner_type = Regexp.last_match[:inner_type]
205
+ value.map { |v| _deserialize(inner_type, v) }
206
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
207
+ k_type = Regexp.last_match[:k_type]
208
+ v_type = Regexp.last_match[:v_type]
209
+ {}.tap do |hash|
210
+ value.each do |k, v|
211
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
212
+ end
213
+ end
214
+ else # model
215
+ _model = Object.const_get("PureCloud").const_get(type).new
216
+ _model.build_from_hash(value)
217
+ end
218
+ end
219
+
220
+ def to_s
221
+ to_hash.to_s
222
+ end
223
+
224
+ # to_body is an alias to to_body (backward compatibility))
225
+ def to_body
226
+ to_hash
227
+ end
228
+
229
+ # return the object in the form of hash
230
+ def to_hash
231
+ hash = {}
232
+ self.class.attribute_map.each_pair do |attr, param|
233
+ value = self.send(attr)
234
+ next if value.nil?
235
+ hash[param] = _to_hash(value)
236
+ end
237
+ hash
238
+ end
239
+
240
+ # Method to output non-array value in the form of hash
241
+ # For object, use to_hash. Otherwise, just return the value
242
+ def _to_hash(value)
243
+ if value.is_a?(Array)
244
+ value.compact.map{ |v| _to_hash(v) }
245
+ elsif value.is_a?(Hash)
246
+ {}.tap do |hash|
247
+ value.each { |k, v| hash[k] = _to_hash(v) }
248
+ end
249
+ elsif value.respond_to? :to_hash
250
+ value.to_hash
251
+ else
252
+ value
253
+ end
254
+ end
255
+
256
+ end
257
+ end