purecloud 0.32.1 → 0.33.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 (173) hide show
  1. checksums.yaml +4 -4
  2. data/config-ruby.json +1 -1
  3. data/lib/purecloud.rb +69 -66
  4. data/lib/purecloud/api/notifications_api.rb +3 -0
  5. data/lib/purecloud/api/recording_api.rb +4 -4
  6. data/lib/purecloud/api/user_recordings_api.rb +2 -2
  7. data/lib/purecloud/api/voicemail_api.rb +2 -2
  8. data/lib/purecloud/models/address_listing.rb +11 -11
  9. data/lib/purecloud/models/agent_activity_entity_listing.rb +11 -11
  10. data/lib/purecloud/models/aggregation_query.rb +1 -1
  11. data/lib/purecloud/models/attribute_entity_listing.rb +11 -11
  12. data/lib/purecloud/models/automate_queue_member_entity_listing.rb +11 -11
  13. data/lib/purecloud/models/available_additional_service_listing.rb +11 -11
  14. data/lib/purecloud/models/available_topic.rb +26 -4
  15. data/lib/purecloud/models/available_topic_entity_listing.rb +11 -11
  16. data/lib/purecloud/models/calibration_entity_listing.rb +11 -11
  17. data/lib/purecloud/models/call.rb +13 -2
  18. data/lib/purecloud/models/call_conversation_entity_listing.rb +11 -11
  19. data/lib/purecloud/models/callable_time_set_entity_listing.rb +11 -11
  20. data/lib/purecloud/models/callback.rb +16 -5
  21. data/lib/purecloud/models/callback_conversation_entity_listing.rb +11 -11
  22. data/lib/purecloud/models/campaign.rb +11 -1
  23. data/lib/purecloud/models/campaign_entity_listing.rb +11 -11
  24. data/lib/purecloud/models/campaign_sequence_entity_listing.rb +11 -11
  25. data/lib/purecloud/models/carrier_entity_listing.rb +11 -11
  26. data/lib/purecloud/models/certificate_authority_entity_listing.rb +11 -11
  27. data/lib/purecloud/models/certificate_details.rb +15 -15
  28. data/lib/purecloud/models/channel_entity_listing.rb +11 -11
  29. data/lib/purecloud/models/channel_topic_entity_listing.rb +11 -11
  30. data/lib/purecloud/models/chat_conversation_entity_listing.rb +11 -11
  31. data/lib/purecloud/models/command_status_entity_listing.rb +11 -11
  32. data/lib/purecloud/models/consumed_resources_entity_listing.rb +11 -11
  33. data/lib/purecloud/models/consuming_resources_entity_listing.rb +11 -11
  34. data/lib/purecloud/models/contact_list_entity_listing.rb +11 -11
  35. data/lib/purecloud/models/contact_listing.rb +11 -11
  36. data/lib/purecloud/models/contact_sort.rb +165 -0
  37. data/lib/purecloud/models/conversation_chat.rb +16 -5
  38. data/lib/purecloud/models/conversation_entity_listing.rb +11 -11
  39. data/lib/purecloud/models/conversation_query.rb +1 -1
  40. data/lib/purecloud/models/currency.rb +178 -0
  41. data/lib/purecloud/models/deleted_resource_consumer_entity_listing.rb +11 -11
  42. data/lib/purecloud/models/dependency_object_entity_listing.rb +11 -11
  43. data/lib/purecloud/models/dependency_type_entity_listing.rb +11 -11
  44. data/lib/purecloud/models/did_entity_listing.rb +11 -11
  45. data/lib/purecloud/models/did_pool_entity_listing.rb +11 -11
  46. data/lib/purecloud/models/dnc_list_entity_listing.rb +11 -11
  47. data/lib/purecloud/models/document.rb +11 -11
  48. data/lib/purecloud/models/document_audit_entity_listing.rb +11 -11
  49. data/lib/purecloud/models/document_entity_listing.rb +11 -11
  50. data/lib/purecloud/models/domain_billing_period_entity_listing.rb +11 -11
  51. data/lib/purecloud/models/domain_entity_listing.rb +11 -11
  52. data/lib/purecloud/models/domain_entity_listing_evaluation_form.rb +11 -11
  53. data/lib/purecloud/models/domain_entity_listing_query_result.rb +11 -11
  54. data/lib/purecloud/models/domain_invoice_entity_listing.rb +11 -11
  55. data/lib/purecloud/models/domain_third_party_account_entity_listing.rb +11 -11
  56. data/lib/purecloud/models/domain_third_party_subscription_entity_listing.rb +11 -11
  57. data/lib/purecloud/models/domain_voice_rate_extended_response_item_entity_listing.rb +11 -11
  58. data/lib/purecloud/models/domain_voice_rate_international_response_item_entity_listing.rb +11 -11
  59. data/lib/purecloud/models/domain_voice_rate_response_item_entity_listing.rb +11 -11
  60. data/lib/purecloud/models/edge_entity_listing.rb +11 -11
  61. data/lib/purecloud/models/edge_group.rb +14 -1
  62. data/lib/purecloud/models/edge_group_entity_listing.rb +11 -11
  63. data/lib/purecloud/models/edge_line_entity_listing.rb +11 -11
  64. data/lib/purecloud/models/email.rb +16 -5
  65. data/lib/purecloud/models/email_conversation_entity_listing.rb +11 -11
  66. data/lib/purecloud/models/email_message_listing.rb +11 -11
  67. data/lib/purecloud/models/encryption_key_entity_listing.rb +11 -11
  68. data/lib/purecloud/models/endpoint_entity_listing.rb +11 -11
  69. data/lib/purecloud/models/evaluation_entity_listing.rb +11 -11
  70. data/lib/purecloud/models/evaluation_form_entity_listing.rb +11 -11
  71. data/lib/purecloud/models/evaluator_activity_entity_listing.rb +11 -11
  72. data/lib/purecloud/models/extension_entity_listing.rb +11 -11
  73. data/lib/purecloud/models/extension_pool_entity_listing.rb +11 -11
  74. data/lib/purecloud/models/external_organization_listing.rb +11 -11
  75. data/lib/purecloud/models/fax_document.rb +11 -11
  76. data/lib/purecloud/models/fax_document_entity_listing.rb +11 -11
  77. data/lib/purecloud/models/flow_config_meta_data_entity_listing.rb +11 -11
  78. data/lib/purecloud/models/flow_entity_listing.rb +11 -11
  79. data/lib/purecloud/models/flow_history_result_item_entity_listing.rb +11 -11
  80. data/lib/purecloud/models/flow_version_config_meta_data_entity_listing.rb +11 -11
  81. data/lib/purecloud/models/flow_version_entity_listing.rb +11 -11
  82. data/lib/purecloud/models/group_entity_listing.rb +11 -11
  83. data/lib/purecloud/models/hardware_rate_listing.rb +11 -11
  84. data/lib/purecloud/models/inbound_domain_entity_listing.rb +11 -11
  85. data/lib/purecloud/models/inbound_route_entity_listing.rb +11 -11
  86. data/lib/purecloud/models/integration_type_entity_listing.rb +11 -11
  87. data/lib/purecloud/models/interaction_stats_alert_container.rb +11 -11
  88. data/lib/purecloud/models/interaction_stats_rule_container.rb +11 -11
  89. data/lib/purecloud/models/ivr_entity_listing.rb +11 -11
  90. data/lib/purecloud/models/json_node.rb +37 -37
  91. data/lib/purecloud/models/language_entity_listing.rb +11 -11
  92. data/lib/purecloud/models/library_entity_listing.rb +11 -11
  93. data/lib/purecloud/models/line_base_entity_listing.rb +11 -11
  94. data/lib/purecloud/models/line_entity_listing.rb +11 -11
  95. data/lib/purecloud/models/linked_entity_listing_flow_details.rb +11 -11
  96. data/lib/purecloud/models/linked_entity_listing_work_item_search_details.rb +11 -11
  97. data/lib/purecloud/models/location_entity_listing.rb +11 -11
  98. data/lib/purecloud/models/logical_interface_entity_listing.rb +11 -11
  99. data/lib/purecloud/models/media_policy.rb +1 -14
  100. data/lib/purecloud/models/note_listing.rb +11 -11
  101. data/lib/purecloud/models/o_auth_client_entity_listing.rb +11 -11
  102. data/lib/purecloud/models/o_auth_provider_entity_listing.rb +11 -11
  103. data/lib/purecloud/models/organization_presence_entity_listing.rb +11 -11
  104. data/lib/purecloud/models/organization_role_entity_listing.rb +11 -11
  105. data/lib/purecloud/models/orphan_recording_listing.rb +11 -11
  106. data/lib/purecloud/models/outbound_route_entity_listing.rb +11 -11
  107. data/lib/purecloud/models/participant.rb +11 -1
  108. data/lib/purecloud/models/payment_method_listing.rb +11 -11
  109. data/lib/purecloud/models/permission_collection_entity_listing.rb +11 -11
  110. data/lib/purecloud/models/phone_base_entity_listing.rb +11 -11
  111. data/lib/purecloud/models/phone_entity_listing.rb +11 -11
  112. data/lib/purecloud/models/phone_meta_base_entity_listing.rb +11 -11
  113. data/lib/purecloud/models/physical_interface_entity_listing.rb +11 -11
  114. data/lib/purecloud/models/policy_entity_listing.rb +11 -11
  115. data/lib/purecloud/models/prompt_asset_entity_listing.rb +11 -11
  116. data/lib/purecloud/models/prompt_entity_listing.rb +11 -11
  117. data/lib/purecloud/models/quality_audit.rb +11 -11
  118. data/lib/purecloud/models/quality_audit_page.rb +11 -11
  119. data/lib/purecloud/models/queue_entity_listing.rb +11 -11
  120. data/lib/purecloud/models/queues_entity_listing.rb +11 -11
  121. data/lib/purecloud/models/quote_listing.rb +11 -11
  122. data/lib/purecloud/models/relationship_listing.rb +11 -11
  123. data/lib/purecloud/models/report_meta_data_entity_listing.rb +11 -11
  124. data/lib/purecloud/models/report_run_entry_entity_domain_listing.rb +11 -11
  125. data/lib/purecloud/models/report_schedule.rb +1 -1
  126. data/lib/purecloud/models/report_schedule_entity_listing.rb +11 -11
  127. data/lib/purecloud/models/response_entity_list.rb +11 -11
  128. data/lib/purecloud/models/response_entity_listing.rb +11 -11
  129. data/lib/purecloud/models/response_set_entity_listing.rb +11 -11
  130. data/lib/purecloud/models/rule_set_entity_listing.rb +11 -11
  131. data/lib/purecloud/models/schedule_entity_listing.rb +11 -11
  132. data/lib/purecloud/models/schedule_group_entity_listing.rb +11 -11
  133. data/lib/purecloud/models/schema_category_entity_listing.rb +11 -11
  134. data/lib/purecloud/models/schema_reference_entity_listing.rb +11 -11
  135. data/lib/purecloud/models/script_entity_listing.rb +11 -11
  136. data/lib/purecloud/models/security_profile_entity_listing.rb +11 -11
  137. data/lib/purecloud/models/service_entity_listing.rb +11 -11
  138. data/lib/purecloud/models/share_entity_listing.rb +11 -11
  139. data/lib/purecloud/models/site_entity_listing.rb +11 -11
  140. data/lib/purecloud/models/skill_entity_listing.rb +11 -11
  141. data/lib/purecloud/models/snapshot.rb +168 -0
  142. data/lib/purecloud/models/social_conversation_entity_listing.rb +11 -11
  143. data/lib/purecloud/models/social_expression.rb +16 -5
  144. data/lib/purecloud/models/spreadsheet_transform_entity_listing.rb +11 -11
  145. data/lib/purecloud/models/station_entity_listing.rb +11 -11
  146. data/lib/purecloud/models/system_prompt_asset_entity_listing.rb +11 -11
  147. data/lib/purecloud/models/system_prompt_entity_listing.rb +11 -11
  148. data/lib/purecloud/models/tag_value_entity_listing.rb +11 -11
  149. data/lib/purecloud/models/template_entity_listing.rb +11 -11
  150. data/lib/purecloud/models/text_table_transform_entity_listing.rb +11 -11
  151. data/lib/purecloud/models/time_zone_entity_listing.rb +11 -11
  152. data/lib/purecloud/models/trunk_metabase_entity_listing.rb +11 -11
  153. data/lib/purecloud/models/user_action_category_entity_listing.rb +11 -11
  154. data/lib/purecloud/models/user_action_metadata_entity_listing.rb +11 -11
  155. data/lib/purecloud/models/user_entity_listing.rb +11 -11
  156. data/lib/purecloud/models/user_me.rb +12 -1
  157. data/lib/purecloud/models/user_queue_entity_listing.rb +11 -11
  158. data/lib/purecloud/models/user_recording_entity_listing.rb +11 -11
  159. data/lib/purecloud/models/user_skill_entity_listing.rb +11 -11
  160. data/lib/purecloud/models/users_entity_listing.rb +11 -11
  161. data/lib/purecloud/models/video.rb +16 -5
  162. data/lib/purecloud/models/video_conversation_entity_listing.rb +11 -11
  163. data/lib/purecloud/models/voice_rate_international_entity_listing.rb +11 -11
  164. data/lib/purecloud/models/voice_xml_operation_entity_listing.rb +11 -11
  165. data/lib/purecloud/models/voicemail_message_entity_listing.rb +11 -11
  166. data/lib/purecloud/models/workspace_entity_listing.rb +11 -11
  167. data/lib/purecloud/models/workspace_member_entity_listing.rb +11 -11
  168. data/lib/purecloud/models/wrapup_code_entity_listing.rb +11 -11
  169. data/lib/purecloud/version.rb +1 -1
  170. data/newVersion.md +1 -1
  171. data/swagger.json +1 -1
  172. data/version.json +1 -1
  173. metadata +5 -2
@@ -12,12 +12,12 @@ module PureCloud
12
12
 
13
13
  attr_accessor :self_uri
14
14
 
15
- attr_accessor :first_uri
16
-
17
15
  attr_accessor :previous_uri
18
16
 
19
17
  attr_accessor :next_uri
20
18
 
19
+ attr_accessor :first_uri
20
+
21
21
  attr_accessor :last_uri
22
22
 
23
23
  attr_accessor :page_count
@@ -36,12 +36,12 @@ module PureCloud
36
36
 
37
37
  :'self_uri' => :'selfUri',
38
38
 
39
- :'first_uri' => :'firstUri',
40
-
41
39
  :'previous_uri' => :'previousUri',
42
40
 
43
41
  :'next_uri' => :'nextUri',
44
42
 
43
+ :'first_uri' => :'firstUri',
44
+
45
45
  :'last_uri' => :'lastUri',
46
46
 
47
47
  :'page_count' => :'pageCount'
@@ -57,9 +57,9 @@ module PureCloud
57
57
  :'total' => :'Integer',
58
58
  :'entities' => :'Array<Dependency>',
59
59
  :'self_uri' => :'String',
60
- :'first_uri' => :'String',
61
60
  :'previous_uri' => :'String',
62
61
  :'next_uri' => :'String',
62
+ :'first_uri' => :'String',
63
63
  :'last_uri' => :'String',
64
64
  :'page_count' => :'Integer'
65
65
 
@@ -95,10 +95,6 @@ module PureCloud
95
95
  self.self_uri = attributes[:'selfUri']
96
96
  end
97
97
 
98
- if attributes[:'firstUri']
99
- self.first_uri = attributes[:'firstUri']
100
- end
101
-
102
98
  if attributes[:'previousUri']
103
99
  self.previous_uri = attributes[:'previousUri']
104
100
  end
@@ -107,6 +103,10 @@ module PureCloud
107
103
  self.next_uri = attributes[:'nextUri']
108
104
  end
109
105
 
106
+ if attributes[:'firstUri']
107
+ self.first_uri = attributes[:'firstUri']
108
+ end
109
+
110
110
  if attributes[:'lastUri']
111
111
  self.last_uri = attributes[:'lastUri']
112
112
  end
@@ -126,9 +126,9 @@ module PureCloud
126
126
  total == o.total &&
127
127
  entities == o.entities &&
128
128
  self_uri == o.self_uri &&
129
- first_uri == o.first_uri &&
130
129
  previous_uri == o.previous_uri &&
131
130
  next_uri == o.next_uri &&
131
+ first_uri == o.first_uri &&
132
132
  last_uri == o.last_uri &&
133
133
  page_count == o.page_count
134
134
  end
@@ -140,7 +140,7 @@ module PureCloud
140
140
 
141
141
  # Calculate hash code according to all attributes.
142
142
  def hash
143
- [page_size, page_number, total, entities, self_uri, first_uri, previous_uri, next_uri, last_uri, page_count].hash
143
+ [page_size, page_number, total, entities, self_uri, previous_uri, next_uri, first_uri, last_uri, page_count].hash
144
144
  end
145
145
 
146
146
  # build the object from hash
@@ -12,12 +12,12 @@ module PureCloud
12
12
 
13
13
  attr_accessor :self_uri
14
14
 
15
- attr_accessor :first_uri
16
-
17
15
  attr_accessor :previous_uri
18
16
 
19
17
  attr_accessor :next_uri
20
18
 
19
+ attr_accessor :first_uri
20
+
21
21
  attr_accessor :last_uri
22
22
 
23
23
  attr_accessor :page_count
@@ -36,12 +36,12 @@ module PureCloud
36
36
 
37
37
  :'self_uri' => :'selfUri',
38
38
 
39
- :'first_uri' => :'firstUri',
40
-
41
39
  :'previous_uri' => :'previousUri',
42
40
 
43
41
  :'next_uri' => :'nextUri',
44
42
 
43
+ :'first_uri' => :'firstUri',
44
+
45
45
  :'last_uri' => :'lastUri',
46
46
 
47
47
  :'page_count' => :'pageCount'
@@ -57,9 +57,9 @@ module PureCloud
57
57
  :'total' => :'Integer',
58
58
  :'entities' => :'Array<ContactList>',
59
59
  :'self_uri' => :'String',
60
- :'first_uri' => :'String',
61
60
  :'previous_uri' => :'String',
62
61
  :'next_uri' => :'String',
62
+ :'first_uri' => :'String',
63
63
  :'last_uri' => :'String',
64
64
  :'page_count' => :'Integer'
65
65
 
@@ -95,10 +95,6 @@ module PureCloud
95
95
  self.self_uri = attributes[:'selfUri']
96
96
  end
97
97
 
98
- if attributes[:'firstUri']
99
- self.first_uri = attributes[:'firstUri']
100
- end
101
-
102
98
  if attributes[:'previousUri']
103
99
  self.previous_uri = attributes[:'previousUri']
104
100
  end
@@ -107,6 +103,10 @@ module PureCloud
107
103
  self.next_uri = attributes[:'nextUri']
108
104
  end
109
105
 
106
+ if attributes[:'firstUri']
107
+ self.first_uri = attributes[:'firstUri']
108
+ end
109
+
110
110
  if attributes[:'lastUri']
111
111
  self.last_uri = attributes[:'lastUri']
112
112
  end
@@ -126,9 +126,9 @@ module PureCloud
126
126
  total == o.total &&
127
127
  entities == o.entities &&
128
128
  self_uri == o.self_uri &&
129
- first_uri == o.first_uri &&
130
129
  previous_uri == o.previous_uri &&
131
130
  next_uri == o.next_uri &&
131
+ first_uri == o.first_uri &&
132
132
  last_uri == o.last_uri &&
133
133
  page_count == o.page_count
134
134
  end
@@ -140,7 +140,7 @@ module PureCloud
140
140
 
141
141
  # Calculate hash code according to all attributes.
142
142
  def hash
143
- [page_size, page_number, total, entities, self_uri, first_uri, previous_uri, next_uri, last_uri, page_count].hash
143
+ [page_size, page_number, total, entities, self_uri, previous_uri, next_uri, first_uri, last_uri, page_count].hash
144
144
  end
145
145
 
146
146
  # build the object from hash
@@ -12,12 +12,12 @@ module PureCloud
12
12
 
13
13
  attr_accessor :self_uri
14
14
 
15
- attr_accessor :first_uri
16
-
17
15
  attr_accessor :previous_uri
18
16
 
19
17
  attr_accessor :next_uri
20
18
 
19
+ attr_accessor :first_uri
20
+
21
21
  attr_accessor :last_uri
22
22
 
23
23
  attr_accessor :page_count
@@ -36,12 +36,12 @@ module PureCloud
36
36
 
37
37
  :'self_uri' => :'selfUri',
38
38
 
39
- :'first_uri' => :'firstUri',
40
-
41
39
  :'previous_uri' => :'previousUri',
42
40
 
43
41
  :'next_uri' => :'nextUri',
44
42
 
43
+ :'first_uri' => :'firstUri',
44
+
45
45
  :'last_uri' => :'lastUri',
46
46
 
47
47
  :'page_count' => :'pageCount'
@@ -57,9 +57,9 @@ module PureCloud
57
57
  :'total' => :'Integer',
58
58
  :'entities' => :'Array<ExternalContact>',
59
59
  :'self_uri' => :'String',
60
- :'first_uri' => :'String',
61
60
  :'previous_uri' => :'String',
62
61
  :'next_uri' => :'String',
62
+ :'first_uri' => :'String',
63
63
  :'last_uri' => :'String',
64
64
  :'page_count' => :'Integer'
65
65
 
@@ -95,10 +95,6 @@ module PureCloud
95
95
  self.self_uri = attributes[:'selfUri']
96
96
  end
97
97
 
98
- if attributes[:'firstUri']
99
- self.first_uri = attributes[:'firstUri']
100
- end
101
-
102
98
  if attributes[:'previousUri']
103
99
  self.previous_uri = attributes[:'previousUri']
104
100
  end
@@ -107,6 +103,10 @@ module PureCloud
107
103
  self.next_uri = attributes[:'nextUri']
108
104
  end
109
105
 
106
+ if attributes[:'firstUri']
107
+ self.first_uri = attributes[:'firstUri']
108
+ end
109
+
110
110
  if attributes[:'lastUri']
111
111
  self.last_uri = attributes[:'lastUri']
112
112
  end
@@ -126,9 +126,9 @@ module PureCloud
126
126
  total == o.total &&
127
127
  entities == o.entities &&
128
128
  self_uri == o.self_uri &&
129
- first_uri == o.first_uri &&
130
129
  previous_uri == o.previous_uri &&
131
130
  next_uri == o.next_uri &&
131
+ first_uri == o.first_uri &&
132
132
  last_uri == o.last_uri &&
133
133
  page_count == o.page_count
134
134
  end
@@ -140,7 +140,7 @@ module PureCloud
140
140
 
141
141
  # Calculate hash code according to all attributes.
142
142
  def hash
143
- [page_size, page_number, total, entities, self_uri, first_uri, previous_uri, next_uri, last_uri, page_count].hash
143
+ [page_size, page_number, total, entities, self_uri, previous_uri, next_uri, first_uri, last_uri, page_count].hash
144
144
  end
145
145
 
146
146
  # build the object from hash
@@ -0,0 +1,165 @@
1
+ require 'date'
2
+
3
+ module PureCloud
4
+ class ContactSort
5
+ attr_accessor :field_name
6
+
7
+ attr_accessor :direction
8
+
9
+ # Attribute mapping from ruby-style variable name to JSON key.
10
+ def self.attribute_map
11
+ {
12
+
13
+ :'field_name' => :'fieldName',
14
+
15
+ :'direction' => :'direction'
16
+
17
+ }
18
+ end
19
+
20
+ # Attribute type mapping.
21
+ def self.swagger_types
22
+ {
23
+ :'field_name' => :'String',
24
+ :'direction' => :'String'
25
+
26
+ }
27
+ end
28
+
29
+ def initialize(attributes = {})
30
+ return unless attributes.is_a?(Hash)
31
+
32
+ # convert string to symbol for hash key
33
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
34
+
35
+
36
+ if attributes[:'fieldName']
37
+ self.field_name = attributes[:'fieldName']
38
+ end
39
+
40
+ if attributes[:'direction']
41
+ self.direction = attributes[:'direction']
42
+ end
43
+
44
+ end
45
+
46
+ # Custom attribute writer method checking allowed values (enum).
47
+ def direction=(direction)
48
+ allowed_values = ["ASC", "DESC"]
49
+ if direction && !allowed_values.include?(direction)
50
+ fail "invalid value for 'direction', must be one of #{allowed_values}"
51
+ end
52
+ @direction = direction
53
+ end
54
+
55
+ # Check equality by comparing each attribute.
56
+ def ==(o)
57
+ return true if self.equal?(o)
58
+ self.class == o.class &&
59
+ field_name == o.field_name &&
60
+ direction == o.direction
61
+ end
62
+
63
+ # @see the `==` method
64
+ def eql?(o)
65
+ self == o
66
+ end
67
+
68
+ # Calculate hash code according to all attributes.
69
+ def hash
70
+ [field_name, direction].hash
71
+ end
72
+
73
+ # build the object from hash
74
+ def build_from_hash(attributes)
75
+ return nil unless attributes.is_a?(Hash)
76
+ self.class.swagger_types.each_pair do |key, type|
77
+ if type =~ /^Array<(.*)>/i
78
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
79
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
80
+ else
81
+ #TODO show warning in debug mode
82
+ end
83
+ elsif !attributes[self.class.attribute_map[key]].nil?
84
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
85
+ else
86
+ # data not found in attributes(hash), not an issue as the data can be optional
87
+ end
88
+ end
89
+
90
+ self
91
+ end
92
+
93
+ def _deserialize(type, value)
94
+ case type.to_sym
95
+ when :DateTime
96
+ DateTime.parse(value)
97
+ when :Date
98
+ Date.parse(value)
99
+ when :String
100
+ value.to_s
101
+ when :Integer
102
+ value.to_i
103
+ when :Float
104
+ value.to_f
105
+ when :BOOLEAN
106
+ if value =~ /^(true|t|yes|y|1)$/i
107
+ true
108
+ else
109
+ false
110
+ end
111
+ when /\AArray<(?<inner_type>.+)>\z/
112
+ inner_type = Regexp.last_match[:inner_type]
113
+ value.map { |v| _deserialize(inner_type, v) }
114
+ when /\AHash<(?<k_type>.+), (?<v_type>.+)>\z/
115
+ k_type = Regexp.last_match[:k_type]
116
+ v_type = Regexp.last_match[:v_type]
117
+ {}.tap do |hash|
118
+ value.each do |k, v|
119
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
120
+ end
121
+ end
122
+ else # model
123
+ _model = Object.const_get("PureCloud").const_get(type).new
124
+ _model.build_from_hash(value)
125
+ end
126
+ end
127
+
128
+ def to_s
129
+ to_hash.to_s
130
+ end
131
+
132
+ # to_body is an alias to to_body (backward compatibility))
133
+ def to_body
134
+ to_hash
135
+ end
136
+
137
+ # return the object in the form of hash
138
+ def to_hash
139
+ hash = {}
140
+ self.class.attribute_map.each_pair do |attr, param|
141
+ value = self.send(attr)
142
+ next if value.nil?
143
+ hash[param] = _to_hash(value)
144
+ end
145
+ hash
146
+ end
147
+
148
+ # Method to output non-array value in the form of hash
149
+ # For object, use to_hash. Otherwise, just return the value
150
+ def _to_hash(value)
151
+ if value.is_a?(Array)
152
+ value.compact.map{ |v| _to_hash(v) }
153
+ elsif value.is_a?(Hash)
154
+ {}.tap do |hash|
155
+ value.each { |k, v| hash[k] = _to_hash(v) }
156
+ end
157
+ elsif value.respond_to? :to_hash
158
+ value.to_hash
159
+ else
160
+ value
161
+ end
162
+ end
163
+
164
+ end
165
+ end
@@ -24,6 +24,9 @@ module PureCloud
24
24
  # Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
25
25
  attr_accessor :connected_time
26
26
 
27
+ # Date time is represented as an ISO-8601 string. For example: yyyy-MM-ddTHH:mm:ss.SSSZ
28
+ attr_accessor :disconnected_time
29
+
27
30
  # Attribute mapping from ruby-style variable name to JSON key.
28
31
  def self.attribute_map
29
32
  {
@@ -46,7 +49,9 @@ module PureCloud
46
49
 
47
50
  :'start_hold_time' => :'startHoldTime',
48
51
 
49
- :'connected_time' => :'connectedTime'
52
+ :'connected_time' => :'connectedTime',
53
+
54
+ :'disconnected_time' => :'disconnectedTime'
50
55
 
51
56
  }
52
57
  end
@@ -63,7 +68,8 @@ module PureCloud
63
68
  :'direction' => :'String',
64
69
  :'disconnect_type' => :'String',
65
70
  :'start_hold_time' => :'DateTime',
66
- :'connected_time' => :'DateTime'
71
+ :'connected_time' => :'DateTime',
72
+ :'disconnected_time' => :'DateTime'
67
73
 
68
74
  }
69
75
  end
@@ -119,6 +125,10 @@ module PureCloud
119
125
  self.connected_time = attributes[:'connectedTime']
120
126
  end
121
127
 
128
+ if attributes[:'disconnectedTime']
129
+ self.disconnected_time = attributes[:'disconnectedTime']
130
+ end
131
+
122
132
  end
123
133
 
124
134
  # Custom attribute writer method checking allowed values (enum).
@@ -141,7 +151,7 @@ module PureCloud
141
151
 
142
152
  # Custom attribute writer method checking allowed values (enum).
143
153
  def disconnect_type=(disconnect_type)
144
- allowed_values = ["ENDPOINT", "CLIENT", "SYSTEM", "TRANSFER", "TRANSFER_CONFERENCE", "TRANSFER_CONSULT", "ERROR", "PEER", "OTHER"]
154
+ allowed_values = ["ENDPOINT", "CLIENT", "SYSTEM", "TRANSFER", "TRANSFER_CONFERENCE", "TRANSFER_CONSULT", "TRANSFER_FORWARD", "ERROR", "PEER", "OTHER"]
145
155
  if disconnect_type && !allowed_values.include?(disconnect_type)
146
156
  fail "invalid value for 'disconnect_type', must be one of #{allowed_values}"
147
157
  end
@@ -161,7 +171,8 @@ module PureCloud
161
171
  direction == o.direction &&
162
172
  disconnect_type == o.disconnect_type &&
163
173
  start_hold_time == o.start_hold_time &&
164
- connected_time == o.connected_time
174
+ connected_time == o.connected_time &&
175
+ disconnected_time == o.disconnected_time
165
176
  end
166
177
 
167
178
  # @see the `==` method
@@ -171,7 +182,7 @@ module PureCloud
171
182
 
172
183
  # Calculate hash code according to all attributes.
173
184
  def hash
174
- [state, id, room_id, recording_id, segments, held, direction, disconnect_type, start_hold_time, connected_time].hash
185
+ [state, id, room_id, recording_id, segments, held, direction, disconnect_type, start_hold_time, connected_time, disconnected_time].hash
175
186
  end
176
187
 
177
188
  # build the object from hash