purecloud 0.59.1 → 0.60.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 (256) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -3
  3. data/config-ruby.json +1 -1
  4. data/doc_out/AgentActivityEntityListing.html.md +2 -2
  5. data/doc_out/AggregationQuery.html.md +1 -1
  6. data/doc_out/AlertingApi.html.md +1106 -92
  7. data/doc_out/Annotation.html.md +14 -4
  8. data/doc_out/AttemptLimitsEntityListing.html.md +2 -2
  9. data/doc_out/AttributeEntityListing.html.md +2 -2
  10. data/doc_out/CalibrationEntityListing.html.md +2 -2
  11. data/doc_out/CallConversationEntityListing.html.md +2 -2
  12. data/doc_out/CallableTimeSetEntityListing.html.md +2 -2
  13. data/doc_out/CallbackConversationEntityListing.html.md +2 -2
  14. data/doc_out/CampaignEntityListing.html.md +2 -2
  15. data/doc_out/CampaignSequenceEntityListing.html.md +2 -2
  16. data/doc_out/CertificateAuthorityEntityListing.html.md +2 -2
  17. data/doc_out/ChannelEntityListing.html.md +2 -2
  18. data/doc_out/ChatConversationEntityListing.html.md +2 -2
  19. data/doc_out/CobrowseConversationEntityListing.html.md +2 -2
  20. data/doc_out/CommandStatusEntityListing.html.md +2 -2
  21. data/doc_out/ContactListEntityListing.html.md +2 -2
  22. data/doc_out/ContactSort.html.md +1 -1
  23. data/doc_out/ConversationEntityListing.html.md +2 -2
  24. data/doc_out/DIDEntityListing.html.md +2 -2
  25. data/doc_out/DIDPoolEntityListing.html.md +2 -2
  26. data/doc_out/DncListEntityListing.html.md +2 -2
  27. data/doc_out/DocumentAuditEntityListing.html.md +2 -2
  28. data/doc_out/DocumentEntityListing.html.md +2 -2
  29. data/doc_out/DomainEdgeSoftwareVersionDtoEntityListing.html.md +2 -2
  30. data/doc_out/DomainEntityListing.html.md +2 -2
  31. data/doc_out/DomainEntityListingEvaluationForm.html.md +2 -2
  32. data/doc_out/DomainEntityListingQueryResult.html.md +2 -2
  33. data/doc_out/Edge.html.md +1 -1
  34. data/doc_out/EdgeEntityListing.html.md +2 -2
  35. data/doc_out/EdgeGroupEntityListing.html.md +2 -2
  36. data/doc_out/EdgeLineEntityListing.html.md +2 -2
  37. data/doc_out/EmailConversationEntityListing.html.md +2 -2
  38. data/doc_out/EmailMessageListing.html.md +2 -2
  39. data/doc_out/EncryptionKeyEntityListing.html.md +2 -2
  40. data/doc_out/EndpointEntityListing.html.md +2 -2
  41. data/doc_out/EvaluationEntityListing.html.md +2 -2
  42. data/doc_out/EvaluationFormEntityListing.html.md +2 -2
  43. data/doc_out/EvaluatorActivityEntityListing.html.md +2 -2
  44. data/doc_out/ExtensionEntityListing.html.md +2 -2
  45. data/doc_out/ExtensionPoolEntityListing.html.md +2 -2
  46. data/doc_out/FaxDocumentEntityListing.html.md +2 -2
  47. data/doc_out/GroupEntityListing.html.md +2 -2
  48. data/doc_out/HeartBeatAlert.html.md +1 -1
  49. data/doc_out/HeartBeatAlertContainer.html.md +2 -2
  50. data/doc_out/HeartBeatRule.html.md +1 -1
  51. data/doc_out/HeartBeatRuleContainer.html.md +2 -2
  52. data/doc_out/InboundDomainEntityListing.html.md +2 -2
  53. data/doc_out/InboundRouteEntityListing.html.md +2 -2
  54. data/doc_out/InteractionStatsAlert.html.md +1 -1
  55. data/doc_out/InteractionStatsAlertContainer.html.md +2 -2
  56. data/doc_out/InteractionStatsRule.html.md +1 -1
  57. data/doc_out/InteractionStatsRuleContainer.html.md +2 -2
  58. data/doc_out/KeywordSetEntityListing.html.md +2 -2
  59. data/doc_out/LanguageEntityListing.html.md +2 -2
  60. data/doc_out/LibraryEntityListing.html.md +2 -2
  61. data/doc_out/LineBaseEntityListing.html.md +2 -2
  62. data/doc_out/LineEntityListing.html.md +2 -2
  63. data/doc_out/LocalEncryptionConfigurationListing.html.md +2 -2
  64. data/doc_out/LogicalInterfaceEntityListing.html.md +2 -2
  65. data/doc_out/OAuthClient.html.md +2 -2
  66. data/doc_out/OAuthClientEntityListing.html.md +3 -3
  67. data/doc_out/OAuthClientListing.html.md +20 -0
  68. data/doc_out/OAuthProviderEntityListing.html.md +2 -2
  69. data/doc_out/OrganizationPresenceEntityListing.html.md +2 -2
  70. data/doc_out/OrganizationRoleEntityListing.html.md +2 -2
  71. data/doc_out/OrphanRecording.html.md +1 -0
  72. data/doc_out/OrphanRecordingListing.html.md +2 -2
  73. data/doc_out/OrphanUpdateRequest.html.md +15 -0
  74. data/doc_out/OutboundRouteEntityListing.html.md +2 -2
  75. data/doc_out/PermissionCollectionEntityListing.html.md +2 -2
  76. data/doc_out/PhoneBaseEntityListing.html.md +2 -2
  77. data/doc_out/PhoneEntityListing.html.md +2 -2
  78. data/doc_out/PhoneMetaBaseEntityListing.html.md +2 -2
  79. data/doc_out/PhysicalInterfaceEntityListing.html.md +2 -2
  80. data/doc_out/PolicyEntityListing.html.md +2 -2
  81. data/doc_out/QualityApi.html.md +5 -1
  82. data/doc_out/QualityAuditPage.html.md +2 -2
  83. data/doc_out/QueueEntityListing.html.md +2 -2
  84. data/doc_out/QueueMemberEntityListing.html.md +2 -2
  85. data/doc_out/RecordingApi.html.md +132 -4
  86. data/doc_out/ReportMetaDataEntityListing.html.md +2 -2
  87. data/doc_out/ReportRunEntryEntityDomainListing.html.md +2 -2
  88. data/doc_out/ReportScheduleEntityListing.html.md +2 -2
  89. data/doc_out/ResponseEntityList.html.md +2 -2
  90. data/doc_out/ResponseEntityListing.html.md +2 -2
  91. data/doc_out/ResponseSetEntityListing.html.md +2 -2
  92. data/doc_out/RoutingStatusAlert.html.md +23 -0
  93. data/doc_out/RoutingStatusAlertContainer.html.md +22 -0
  94. data/doc_out/RoutingStatusRule.html.md +22 -0
  95. data/doc_out/RoutingStatusRuleContainer.html.md +22 -0
  96. data/doc_out/RuleSetEntityListing.html.md +2 -2
  97. data/doc_out/SchemaCategoryEntityListing.html.md +2 -2
  98. data/doc_out/SchemaReferenceEntityListing.html.md +2 -2
  99. data/doc_out/ScreenRecordingSessionListing.html.md +2 -2
  100. data/doc_out/ScriptEntityListing.html.md +2 -2
  101. data/doc_out/SecurityProfileEntityListing.html.md +2 -2
  102. data/doc_out/ShareEntityListing.html.md +2 -2
  103. data/doc_out/SiteEntityListing.html.md +2 -2
  104. data/doc_out/SkillEntityListing.html.md +2 -2
  105. data/doc_out/StationEntityListing.html.md +2 -2
  106. data/doc_out/StreetAddress.html.md +2 -2
  107. data/doc_out/TagValueEntityListing.html.md +2 -2
  108. data/doc_out/TelephonyProvidersEdgeApi.html.md +21 -17
  109. data/doc_out/TimeZoneEntityListing.html.md +2 -2
  110. data/doc_out/TrunkBaseEntityListing.html.md +2 -2
  111. data/doc_out/TrunkEntityListing.html.md +2 -2
  112. data/doc_out/TrunkMetabaseEntityListing.html.md +2 -2
  113. data/doc_out/UserEntityListing.html.md +2 -2
  114. data/doc_out/UserPresenceAlert.html.md +25 -0
  115. data/doc_out/UserPresenceAlertContainer.html.md +22 -0
  116. data/doc_out/UserPresenceRule.html.md +23 -0
  117. data/doc_out/{UsersEntityListing.html.md → UserPresenceRuleContainer.html.md} +5 -5
  118. data/doc_out/UserQueueEntityListing.html.md +2 -2
  119. data/doc_out/UserRecordingEntityListing.html.md +2 -2
  120. data/doc_out/UserSkillEntityListing.html.md +2 -2
  121. data/doc_out/UsersApi.html.md +2 -2
  122. data/doc_out/WorkspaceEntityListing.html.md +2 -2
  123. data/doc_out/WorkspaceMemberEntityListing.html.md +2 -2
  124. data/doc_out/WrapupCodeEntityListing.html.md +2 -2
  125. data/doc_out/index.html.md +3 -3
  126. data/lib/purecloud.rb +10 -1
  127. data/lib/purecloud/api/alerting_api.rb +1070 -49
  128. data/lib/purecloud/api/quality_api.rb +6 -0
  129. data/lib/purecloud/api/recording_api.rb +140 -2
  130. data/lib/purecloud/api/telephony_providers_edge_api.rb +13 -10
  131. data/lib/purecloud/api/users_api.rb +3 -3
  132. data/lib/purecloud/api_client.rb +1 -1
  133. data/lib/purecloud/models/agent_activity_entity_listing.rb +17 -17
  134. data/lib/purecloud/models/aggregation_query.rb +1 -1
  135. data/lib/purecloud/models/annotation.rb +115 -1
  136. data/lib/purecloud/models/attempt_limits_entity_listing.rb +17 -17
  137. data/lib/purecloud/models/attribute_entity_listing.rb +17 -17
  138. data/lib/purecloud/models/calibration_entity_listing.rb +17 -17
  139. data/lib/purecloud/models/call_conversation_entity_listing.rb +17 -17
  140. data/lib/purecloud/models/callable_time_set_entity_listing.rb +17 -17
  141. data/lib/purecloud/models/callback_conversation_entity_listing.rb +17 -17
  142. data/lib/purecloud/models/campaign_entity_listing.rb +17 -17
  143. data/lib/purecloud/models/campaign_sequence_entity_listing.rb +17 -17
  144. data/lib/purecloud/models/certificate_authority_entity_listing.rb +17 -17
  145. data/lib/purecloud/models/channel_entity_listing.rb +17 -17
  146. data/lib/purecloud/models/chat_conversation_entity_listing.rb +17 -17
  147. data/lib/purecloud/models/cobrowse_conversation_entity_listing.rb +17 -17
  148. data/lib/purecloud/models/command_status_entity_listing.rb +17 -17
  149. data/lib/purecloud/models/contact_list_entity_listing.rb +17 -17
  150. data/lib/purecloud/models/contact_sort.rb +1 -0
  151. data/lib/purecloud/models/conversation_entity_listing.rb +17 -17
  152. data/lib/purecloud/models/did_entity_listing.rb +17 -17
  153. data/lib/purecloud/models/did_pool_entity_listing.rb +17 -17
  154. data/lib/purecloud/models/dnc_list_entity_listing.rb +17 -17
  155. data/lib/purecloud/models/document_audit_entity_listing.rb +17 -17
  156. data/lib/purecloud/models/document_entity_listing.rb +17 -17
  157. data/lib/purecloud/models/domain_edge_software_version_dto_entity_listing.rb +17 -17
  158. data/lib/purecloud/models/domain_entity_listing.rb +17 -17
  159. data/lib/purecloud/models/domain_entity_listing_evaluation_form.rb +17 -17
  160. data/lib/purecloud/models/domain_entity_listing_query_result.rb +17 -17
  161. data/lib/purecloud/models/edge.rb +2 -1
  162. data/lib/purecloud/models/edge_entity_listing.rb +17 -17
  163. data/lib/purecloud/models/edge_group_entity_listing.rb +17 -17
  164. data/lib/purecloud/models/edge_line_entity_listing.rb +17 -17
  165. data/lib/purecloud/models/email_conversation_entity_listing.rb +17 -17
  166. data/lib/purecloud/models/email_message_listing.rb +17 -17
  167. data/lib/purecloud/models/encryption_key_entity_listing.rb +17 -17
  168. data/lib/purecloud/models/endpoint_entity_listing.rb +17 -17
  169. data/lib/purecloud/models/evaluation_entity_listing.rb +17 -17
  170. data/lib/purecloud/models/evaluation_form_entity_listing.rb +17 -17
  171. data/lib/purecloud/models/evaluator_activity_entity_listing.rb +17 -17
  172. data/lib/purecloud/models/extension_entity_listing.rb +17 -17
  173. data/lib/purecloud/models/extension_pool_entity_listing.rb +17 -17
  174. data/lib/purecloud/models/fax_document_entity_listing.rb +17 -17
  175. data/lib/purecloud/models/group_entity_listing.rb +17 -17
  176. data/lib/purecloud/models/group_search_criteria.rb +1 -1
  177. data/lib/purecloud/models/heart_beat_alert.rb +1 -1
  178. data/lib/purecloud/models/heart_beat_alert_container.rb +17 -17
  179. data/lib/purecloud/models/heart_beat_rule.rb +1 -1
  180. data/lib/purecloud/models/heart_beat_rule_container.rb +17 -17
  181. data/lib/purecloud/models/inbound_domain_entity_listing.rb +17 -17
  182. data/lib/purecloud/models/inbound_route_entity_listing.rb +17 -17
  183. data/lib/purecloud/models/interaction_stats_alert.rb +1 -1
  184. data/lib/purecloud/models/interaction_stats_alert_container.rb +17 -17
  185. data/lib/purecloud/models/interaction_stats_rule.rb +1 -1
  186. data/lib/purecloud/models/interaction_stats_rule_container.rb +17 -17
  187. data/lib/purecloud/models/keyword_set_entity_listing.rb +17 -17
  188. data/lib/purecloud/models/language_entity_listing.rb +17 -17
  189. data/lib/purecloud/models/library_entity_listing.rb +17 -17
  190. data/lib/purecloud/models/line_base_entity_listing.rb +17 -17
  191. data/lib/purecloud/models/line_entity_listing.rb +17 -17
  192. data/lib/purecloud/models/local_encryption_configuration_listing.rb +17 -17
  193. data/lib/purecloud/models/location_search_criteria.rb +1 -1
  194. data/lib/purecloud/models/logical_interface_entity_listing.rb +17 -17
  195. data/lib/purecloud/models/o_auth_client_entity_listing.rb +18 -18
  196. data/lib/purecloud/models/o_auth_client_listing.rb +246 -0
  197. data/lib/purecloud/models/o_auth_provider_entity_listing.rb +17 -17
  198. data/lib/purecloud/models/organization_presence_entity_listing.rb +17 -17
  199. data/lib/purecloud/models/organization_role_entity_listing.rb +17 -17
  200. data/lib/purecloud/models/orphan_recording.rb +21 -1
  201. data/lib/purecloud/models/orphan_recording_listing.rb +17 -17
  202. data/lib/purecloud/models/orphan_update_request.rb +188 -0
  203. data/lib/purecloud/models/outbound_route_entity_listing.rb +17 -17
  204. data/lib/purecloud/models/permission_collection_entity_listing.rb +17 -17
  205. data/lib/purecloud/models/phone_base_entity_listing.rb +17 -17
  206. data/lib/purecloud/models/phone_entity_listing.rb +17 -17
  207. data/lib/purecloud/models/phone_meta_base_entity_listing.rb +17 -17
  208. data/lib/purecloud/models/physical_interface_entity_listing.rb +17 -17
  209. data/lib/purecloud/models/policy_entity_listing.rb +17 -17
  210. data/lib/purecloud/models/quality_audit_page.rb +17 -17
  211. data/lib/purecloud/models/queue_entity_listing.rb +17 -17
  212. data/lib/purecloud/models/queue_member_entity_listing.rb +17 -17
  213. data/lib/purecloud/models/report_meta_data_entity_listing.rb +17 -17
  214. data/lib/purecloud/models/report_run_entry_entity_domain_listing.rb +17 -17
  215. data/lib/purecloud/models/report_schedule_entity_listing.rb +17 -17
  216. data/lib/purecloud/models/response_entity_list.rb +17 -17
  217. data/lib/purecloud/models/response_entity_listing.rb +17 -17
  218. data/lib/purecloud/models/response_set_entity_listing.rb +17 -17
  219. data/lib/purecloud/models/routing_status_alert.rb +289 -0
  220. data/lib/purecloud/models/routing_status_alert_container.rb +257 -0
  221. data/lib/purecloud/models/routing_status_rule.rb +282 -0
  222. data/lib/purecloud/models/routing_status_rule_container.rb +257 -0
  223. data/lib/purecloud/models/rule_set_entity_listing.rb +17 -17
  224. data/lib/purecloud/models/schema_category_entity_listing.rb +17 -17
  225. data/lib/purecloud/models/schema_reference_entity_listing.rb +17 -17
  226. data/lib/purecloud/models/screen_recording_session_listing.rb +17 -17
  227. data/lib/purecloud/models/script_entity_listing.rb +17 -17
  228. data/lib/purecloud/models/security_profile_entity_listing.rb +17 -17
  229. data/lib/purecloud/models/share_entity_listing.rb +17 -17
  230. data/lib/purecloud/models/site_entity_listing.rb +17 -17
  231. data/lib/purecloud/models/skill_entity_listing.rb +17 -17
  232. data/lib/purecloud/models/station_entity_listing.rb +17 -17
  233. data/lib/purecloud/models/street_address.rb +2 -0
  234. data/lib/purecloud/models/tag_value_entity_listing.rb +17 -17
  235. data/lib/purecloud/models/time_zone_entity_listing.rb +17 -17
  236. data/lib/purecloud/models/trunk_base_entity_listing.rb +17 -17
  237. data/lib/purecloud/models/trunk_entity_listing.rb +17 -17
  238. data/lib/purecloud/models/trunk_metabase_entity_listing.rb +17 -17
  239. data/lib/purecloud/models/user_entity_listing.rb +17 -17
  240. data/lib/purecloud/models/user_presence_alert.rb +310 -0
  241. data/lib/purecloud/models/user_presence_alert_container.rb +257 -0
  242. data/lib/purecloud/models/user_presence_rule.rb +293 -0
  243. data/lib/purecloud/models/{users_entity_listing.rb → user_presence_rule_container.rb} +19 -19
  244. data/lib/purecloud/models/user_queue_entity_listing.rb +17 -17
  245. data/lib/purecloud/models/user_recording_entity_listing.rb +17 -17
  246. data/lib/purecloud/models/user_schedule_adherence.rb +3 -3
  247. data/lib/purecloud/models/user_search_criteria.rb +1 -1
  248. data/lib/purecloud/models/user_skill_entity_listing.rb +17 -17
  249. data/lib/purecloud/models/workspace_entity_listing.rb +17 -17
  250. data/lib/purecloud/models/workspace_member_entity_listing.rb +17 -17
  251. data/lib/purecloud/models/wrapup_code_entity_listing.rb +17 -17
  252. data/lib/purecloud/version.rb +1 -1
  253. data/newVersion.md +1 -1
  254. data/swagger.json +1 -1
  255. data/version.json +1 -1
  256. metadata +22 -4
@@ -0,0 +1,246 @@
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 OAuthClientListing
21
+ # The globally unique identifier for the object.
22
+ attr_accessor :id
23
+
24
+ # The name of the OAuth client.
25
+ attr_accessor :name
26
+
27
+ # The number of seconds, between 5mins and 48hrs, until tokens created with this client expire. If this field is omitted, a default of 24 hours will be applied.
28
+ attr_accessor :access_token_validity_seconds
29
+
30
+ attr_accessor :description
31
+
32
+ # List of allowed callbacks for this client. For example: https://myap.example.com/auth/callback
33
+ attr_accessor :registered_redirect_uri
34
+
35
+ # System created secret assigned to this client. Secrets are required for code authorization and client credential grants.
36
+ attr_accessor :secret
37
+
38
+ # Roles assigned to this client. Roles only apply to clients using the client_credential grant
39
+ attr_accessor :role_ids
40
+
41
+ # The URI for this object
42
+ attr_accessor :self_uri
43
+
44
+ # Attribute mapping from ruby-style variable name to JSON key.
45
+ def self.attribute_map
46
+ {
47
+
48
+ :'id' => :'id',
49
+
50
+ :'name' => :'name',
51
+
52
+ :'access_token_validity_seconds' => :'accessTokenValiditySeconds',
53
+
54
+ :'description' => :'description',
55
+
56
+ :'registered_redirect_uri' => :'registeredRedirectUri',
57
+
58
+ :'secret' => :'secret',
59
+
60
+ :'role_ids' => :'roleIds',
61
+
62
+ :'self_uri' => :'selfUri'
63
+
64
+ }
65
+ end
66
+
67
+ # Attribute type mapping.
68
+ def self.swagger_types
69
+ {
70
+ :'id' => :'String',
71
+ :'name' => :'String',
72
+ :'access_token_validity_seconds' => :'Integer',
73
+ :'description' => :'String',
74
+ :'registered_redirect_uri' => :'Array<String>',
75
+ :'secret' => :'String',
76
+ :'role_ids' => :'Array<String>',
77
+ :'self_uri' => :'String'
78
+
79
+ }
80
+ end
81
+
82
+ def initialize(attributes = {})
83
+ return unless attributes.is_a?(Hash)
84
+
85
+ # convert string to symbol for hash key
86
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
87
+
88
+
89
+ if attributes[:'id']
90
+ self.id = attributes[:'id']
91
+ end
92
+
93
+ if attributes[:'name']
94
+ self.name = attributes[:'name']
95
+ end
96
+
97
+ if attributes[:'accessTokenValiditySeconds']
98
+ self.access_token_validity_seconds = attributes[:'accessTokenValiditySeconds']
99
+ end
100
+
101
+ if attributes[:'description']
102
+ self.description = attributes[:'description']
103
+ end
104
+
105
+ if attributes[:'registeredRedirectUri']
106
+ if (value = attributes[:'registeredRedirectUri']).is_a?(Array)
107
+ self.registered_redirect_uri = value
108
+ end
109
+ end
110
+
111
+ if attributes[:'secret']
112
+ self.secret = attributes[:'secret']
113
+ end
114
+
115
+ if attributes[:'roleIds']
116
+ if (value = attributes[:'roleIds']).is_a?(Array)
117
+ self.role_ids = value
118
+ end
119
+ end
120
+
121
+ if attributes[:'selfUri']
122
+ self.self_uri = attributes[:'selfUri']
123
+ end
124
+
125
+ end
126
+
127
+ # Check equality by comparing each attribute.
128
+ def ==(o)
129
+ return true if self.equal?(o)
130
+ self.class == o.class &&
131
+ id == o.id &&
132
+ name == o.name &&
133
+ access_token_validity_seconds == o.access_token_validity_seconds &&
134
+ description == o.description &&
135
+ registered_redirect_uri == o.registered_redirect_uri &&
136
+ secret == o.secret &&
137
+ role_ids == o.role_ids &&
138
+ self_uri == o.self_uri
139
+ end
140
+
141
+ # @see the `==` method
142
+ def eql?(o)
143
+ self == o
144
+ end
145
+
146
+ # Calculate hash code according to all attributes.
147
+ def hash
148
+ [id, name, access_token_validity_seconds, description, registered_redirect_uri, secret, role_ids, self_uri].hash
149
+ end
150
+
151
+ # build the object from hash
152
+ def build_from_hash(attributes)
153
+ return nil unless attributes.is_a?(Hash)
154
+ self.class.swagger_types.each_pair do |key, type|
155
+ if type =~ /^Array<(.*)>/i
156
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
157
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
158
+ else
159
+ #TODO show warning in debug mode
160
+ end
161
+ elsif !attributes[self.class.attribute_map[key]].nil?
162
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
163
+ else
164
+ # data not found in attributes(hash), not an issue as the data can be optional
165
+ end
166
+ end
167
+
168
+ self
169
+ end
170
+
171
+ def _deserialize(type, value)
172
+ case type.to_sym
173
+ when :DateTime
174
+ DateTime.parse(value)
175
+ when :Date
176
+ Date.parse(value)
177
+ when :String
178
+ value.to_s
179
+ when :Integer
180
+ value.to_i
181
+ when :Float
182
+ value.to_f
183
+ when :BOOLEAN
184
+ if value.to_s =~ /^(true|t|yes|y|1)$/i
185
+ true
186
+ else
187
+ false
188
+ end
189
+ when :Object
190
+ # generic object (usually a Hash), return directly
191
+ value
192
+ when /\AArray<(?<inner_type>.+)>\z/
193
+ inner_type = Regexp.last_match[:inner_type]
194
+ value.map { |v| _deserialize(inner_type, v) }
195
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
196
+ k_type = Regexp.last_match[:k_type]
197
+ v_type = Regexp.last_match[:v_type]
198
+ {}.tap do |hash|
199
+ value.each do |k, v|
200
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
201
+ end
202
+ end
203
+ else # model
204
+ _model = Object.const_get("PureCloud").const_get(type).new
205
+ _model.build_from_hash(value)
206
+ end
207
+ end
208
+
209
+ def to_s
210
+ to_hash.to_s
211
+ end
212
+
213
+ # to_body is an alias to to_body (backward compatibility))
214
+ def to_body
215
+ to_hash
216
+ end
217
+
218
+ # return the object in the form of hash
219
+ def to_hash
220
+ hash = {}
221
+ self.class.attribute_map.each_pair do |attr, param|
222
+ value = self.send(attr)
223
+ next if value.nil?
224
+ hash[param] = _to_hash(value)
225
+ end
226
+ hash
227
+ end
228
+
229
+ # Method to output non-array value in the form of hash
230
+ # For object, use to_hash. Otherwise, just return the value
231
+ def _to_hash(value)
232
+ if value.is_a?(Array)
233
+ value.compact.map{ |v| _to_hash(v) }
234
+ elsif value.is_a?(Hash)
235
+ {}.tap do |hash|
236
+ value.each { |k, v| hash[k] = _to_hash(v) }
237
+ end
238
+ elsif value.respond_to? :to_hash
239
+ value.to_hash
240
+ else
241
+ value
242
+ end
243
+ end
244
+
245
+ end
246
+ end
@@ -26,16 +26,16 @@ module PureCloud
26
26
 
27
27
  attr_accessor :total
28
28
 
29
+ attr_accessor :first_uri
30
+
29
31
  attr_accessor :self_uri
30
32
 
31
- attr_accessor :first_uri
33
+ attr_accessor :previous_uri
32
34
 
33
35
  attr_accessor :next_uri
34
36
 
35
37
  attr_accessor :last_uri
36
38
 
37
- attr_accessor :previous_uri
38
-
39
39
  attr_accessor :page_count
40
40
 
41
41
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -50,16 +50,16 @@ module PureCloud
50
50
 
51
51
  :'total' => :'total',
52
52
 
53
+ :'first_uri' => :'firstUri',
54
+
53
55
  :'self_uri' => :'selfUri',
54
56
 
55
- :'first_uri' => :'firstUri',
57
+ :'previous_uri' => :'previousUri',
56
58
 
57
59
  :'next_uri' => :'nextUri',
58
60
 
59
61
  :'last_uri' => :'lastUri',
60
62
 
61
- :'previous_uri' => :'previousUri',
62
-
63
63
  :'page_count' => :'pageCount'
64
64
 
65
65
  }
@@ -72,11 +72,11 @@ module PureCloud
72
72
  :'page_size' => :'Integer',
73
73
  :'page_number' => :'Integer',
74
74
  :'total' => :'Integer',
75
- :'self_uri' => :'String',
76
75
  :'first_uri' => :'String',
76
+ :'self_uri' => :'String',
77
+ :'previous_uri' => :'String',
77
78
  :'next_uri' => :'String',
78
79
  :'last_uri' => :'String',
79
- :'previous_uri' => :'String',
80
80
  :'page_count' => :'Integer'
81
81
 
82
82
  }
@@ -107,12 +107,16 @@ module PureCloud
107
107
  self.total = attributes[:'total']
108
108
  end
109
109
 
110
+ if attributes[:'firstUri']
111
+ self.first_uri = attributes[:'firstUri']
112
+ end
113
+
110
114
  if attributes[:'selfUri']
111
115
  self.self_uri = attributes[:'selfUri']
112
116
  end
113
117
 
114
- if attributes[:'firstUri']
115
- self.first_uri = attributes[:'firstUri']
118
+ if attributes[:'previousUri']
119
+ self.previous_uri = attributes[:'previousUri']
116
120
  end
117
121
 
118
122
  if attributes[:'nextUri']
@@ -123,10 +127,6 @@ module PureCloud
123
127
  self.last_uri = attributes[:'lastUri']
124
128
  end
125
129
 
126
- if attributes[:'previousUri']
127
- self.previous_uri = attributes[:'previousUri']
128
- end
129
-
130
130
  if attributes[:'pageCount']
131
131
  self.page_count = attributes[:'pageCount']
132
132
  end
@@ -141,11 +141,11 @@ module PureCloud
141
141
  page_size == o.page_size &&
142
142
  page_number == o.page_number &&
143
143
  total == o.total &&
144
- self_uri == o.self_uri &&
145
144
  first_uri == o.first_uri &&
145
+ self_uri == o.self_uri &&
146
+ previous_uri == o.previous_uri &&
146
147
  next_uri == o.next_uri &&
147
148
  last_uri == o.last_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
- [entities, page_size, page_number, total, self_uri, first_uri, next_uri, last_uri, previous_uri, page_count].hash
159
+ [entities, page_size, page_number, total, first_uri, self_uri, previous_uri, next_uri, last_uri, page_count].hash
160
160
  end
161
161
 
162
162
  # build the object from hash
@@ -26,16 +26,16 @@ module PureCloud
26
26
 
27
27
  attr_accessor :total
28
28
 
29
+ attr_accessor :first_uri
30
+
29
31
  attr_accessor :self_uri
30
32
 
31
- attr_accessor :first_uri
33
+ attr_accessor :previous_uri
32
34
 
33
35
  attr_accessor :next_uri
34
36
 
35
37
  attr_accessor :last_uri
36
38
 
37
- attr_accessor :previous_uri
38
-
39
39
  attr_accessor :page_count
40
40
 
41
41
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -50,16 +50,16 @@ module PureCloud
50
50
 
51
51
  :'total' => :'total',
52
52
 
53
+ :'first_uri' => :'firstUri',
54
+
53
55
  :'self_uri' => :'selfUri',
54
56
 
55
- :'first_uri' => :'firstUri',
57
+ :'previous_uri' => :'previousUri',
56
58
 
57
59
  :'next_uri' => :'nextUri',
58
60
 
59
61
  :'last_uri' => :'lastUri',
60
62
 
61
- :'previous_uri' => :'previousUri',
62
-
63
63
  :'page_count' => :'pageCount'
64
64
 
65
65
  }
@@ -72,11 +72,11 @@ module PureCloud
72
72
  :'page_size' => :'Integer',
73
73
  :'page_number' => :'Integer',
74
74
  :'total' => :'Integer',
75
- :'self_uri' => :'String',
76
75
  :'first_uri' => :'String',
76
+ :'self_uri' => :'String',
77
+ :'previous_uri' => :'String',
77
78
  :'next_uri' => :'String',
78
79
  :'last_uri' => :'String',
79
- :'previous_uri' => :'String',
80
80
  :'page_count' => :'Integer'
81
81
 
82
82
  }
@@ -107,12 +107,16 @@ module PureCloud
107
107
  self.total = attributes[:'total']
108
108
  end
109
109
 
110
+ if attributes[:'firstUri']
111
+ self.first_uri = attributes[:'firstUri']
112
+ end
113
+
110
114
  if attributes[:'selfUri']
111
115
  self.self_uri = attributes[:'selfUri']
112
116
  end
113
117
 
114
- if attributes[:'firstUri']
115
- self.first_uri = attributes[:'firstUri']
118
+ if attributes[:'previousUri']
119
+ self.previous_uri = attributes[:'previousUri']
116
120
  end
117
121
 
118
122
  if attributes[:'nextUri']
@@ -123,10 +127,6 @@ module PureCloud
123
127
  self.last_uri = attributes[:'lastUri']
124
128
  end
125
129
 
126
- if attributes[:'previousUri']
127
- self.previous_uri = attributes[:'previousUri']
128
- end
129
-
130
130
  if attributes[:'pageCount']
131
131
  self.page_count = attributes[:'pageCount']
132
132
  end
@@ -141,11 +141,11 @@ module PureCloud
141
141
  page_size == o.page_size &&
142
142
  page_number == o.page_number &&
143
143
  total == o.total &&
144
- self_uri == o.self_uri &&
145
144
  first_uri == o.first_uri &&
145
+ self_uri == o.self_uri &&
146
+ previous_uri == o.previous_uri &&
146
147
  next_uri == o.next_uri &&
147
148
  last_uri == o.last_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
- [entities, page_size, page_number, total, self_uri, first_uri, next_uri, last_uri, previous_uri, page_count].hash
159
+ [entities, page_size, page_number, total, first_uri, self_uri, previous_uri, next_uri, last_uri, page_count].hash
160
160
  end
161
161
 
162
162
  # build the object from hash