purecloud 0.27.0 → 0.28.0

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 (269) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -0
  3. data/config-ruby.json +1 -1
  4. data/extensions/auth.rb +7 -0
  5. data/lib/purecloud.rb +137 -85
  6. data/lib/purecloud/api/analytics_api.rb +1906 -0
  7. data/lib/purecloud/api/architect_api.rb +51 -51
  8. data/lib/purecloud/api/attributes_api.rb +6 -6
  9. data/lib/purecloud/api/authorization_api.rb +17 -79
  10. data/lib/purecloud/api/callbacks_api.rb +483 -0
  11. data/lib/purecloud/api/calls_api.rb +1088 -0
  12. data/lib/purecloud/api/chats_api.rb +483 -0
  13. data/lib/purecloud/api/compliance_api.rb +2 -2
  14. data/lib/purecloud/api/configuration_api.rb +83 -83
  15. data/lib/purecloud/api/content_management_api.rb +36 -36
  16. data/lib/purecloud/api/conversations_api.rb +3542 -465
  17. data/lib/purecloud/api/downloads_api.rb +2 -2
  18. data/lib/purecloud/api/emails_api.rb +1013 -0
  19. data/lib/purecloud/api/evaluations_api.rb +73 -0
  20. data/lib/purecloud/api/external_contacts_api.rb +26 -26
  21. data/lib/purecloud/api/fax_api.rb +6 -6
  22. data/lib/purecloud/api/faxes_api.rb +73 -0
  23. data/lib/purecloud/api/geolocation_api.rb +4 -4
  24. data/lib/purecloud/api/greetings_api.rb +12 -12
  25. data/lib/purecloud/api/groups_api.rb +3 -3
  26. data/lib/purecloud/api/integrations_api.rb +144 -0
  27. data/lib/purecloud/api/languages_api.rb +2 -2
  28. data/lib/purecloud/api/licensing_api.rb +7 -7
  29. data/lib/purecloud/api/locations_api.rb +2 -2
  30. data/lib/purecloud/api/notifications_api.rb +7 -7
  31. data/lib/purecloud/api/o_auth_api.rb +22 -22
  32. data/lib/purecloud/api/outbound_api.rb +69 -81
  33. data/lib/purecloud/api/presence_api.rb +10 -10
  34. data/lib/purecloud/api/quality_api.rb +41 -93
  35. data/lib/purecloud/api/recording_api.rb +20 -29
  36. data/lib/purecloud/api/response_management_api.rb +11 -11
  37. data/lib/purecloud/api/routing_api.rb +333 -189
  38. data/lib/purecloud/api/scripts_api.rb +11 -11
  39. data/lib/purecloud/api/search_api.rb +1 -1
  40. data/lib/purecloud/api/socials_api.rb +483 -0
  41. data/lib/purecloud/api/stations_api.rb +3 -3
  42. data/lib/purecloud/api/telephony_providers_edge_api.rb +38 -38
  43. data/lib/purecloud/api/tokens_api.rb +1 -1
  44. data/lib/purecloud/api/user_recordings_api.rb +6 -6
  45. data/lib/purecloud/api/users_api.rb +403 -95
  46. data/lib/purecloud/api/utilities_api.rb +4 -60
  47. data/lib/purecloud/api/videos_api.rb +483 -0
  48. data/lib/purecloud/api/voicemail_api.rb +11 -11
  49. data/lib/purecloud/models/address.rb +47 -25
  50. data/lib/purecloud/models/address_listing.rb +11 -11
  51. data/lib/purecloud/models/agent_activity_entity_listing.rb +11 -11
  52. data/lib/purecloud/models/aggregate_data_container.rb +161 -0
  53. data/lib/purecloud/models/aggregate_metric_data.rb +175 -0
  54. data/lib/purecloud/models/{session_request.rb → aggregate_query_response.rb} +10 -8
  55. data/lib/purecloud/models/{domain_license_entity_listing.rb → aggregation_query.rb} +49 -79
  56. data/lib/purecloud/models/{tag.rb → aggregation_range.rb} +16 -16
  57. data/lib/purecloud/models/aggregation_result.rb +199 -0
  58. data/lib/purecloud/models/aggregation_result_entry.rb +179 -0
  59. data/lib/purecloud/models/alert_entity_listing.rb +11 -11
  60. data/lib/purecloud/models/analytics_conversation.rb +181 -0
  61. data/lib/purecloud/models/analytics_conversation_query_response.rb +160 -0
  62. data/lib/purecloud/models/{queue_member_entity_listing.rb → analytics_evaluation.rb} +62 -64
  63. data/lib/purecloud/models/analytics_participant.rb +158 -0
  64. data/lib/purecloud/models/analytics_property.rb +178 -0
  65. data/lib/purecloud/models/analytics_query_aggregation.rb +202 -0
  66. data/lib/purecloud/models/analytics_query_clause.rb +168 -0
  67. data/lib/purecloud/models/analytics_query_filter.rb +181 -0
  68. data/lib/purecloud/models/analytics_query_predicate.rb +269 -0
  69. data/lib/purecloud/models/analytics_segment.rb +607 -0
  70. data/lib/purecloud/models/{put_management_unit.rb → analytics_session.rb} +27 -25
  71. data/lib/purecloud/models/attribute_entity_listing.rb +11 -11
  72. data/lib/purecloud/models/audit_entity_reference.rb +1 -1
  73. data/lib/purecloud/models/automate_queue_member_entity_listing.rb +11 -11
  74. data/lib/purecloud/models/available_additional_service_listing.rb +11 -11
  75. data/lib/purecloud/models/available_topic_entity_listing.rb +11 -11
  76. data/lib/purecloud/models/calibration_entity_listing.rb +11 -11
  77. data/lib/purecloud/models/call.rb +2 -22
  78. data/lib/purecloud/models/call_conversation.rb +213 -0
  79. data/lib/purecloud/models/call_participant.rb +527 -0
  80. data/lib/purecloud/models/callable_time_set_entity_listing.rb +11 -11
  81. data/lib/purecloud/models/callback_conversation.rb +194 -0
  82. data/lib/purecloud/models/callback_participant.rb +456 -0
  83. data/lib/purecloud/models/campaign.rb +17 -219
  84. data/lib/purecloud/models/campaign_entity_listing.rb +11 -11
  85. data/lib/purecloud/models/campaign_sequence_entity_listing.rb +11 -11
  86. data/lib/purecloud/models/carrier_entity_listing.rb +11 -11
  87. data/lib/purecloud/models/certificate_authority_entity_listing.rb +11 -11
  88. data/lib/purecloud/models/channel_entity_listing.rb +11 -11
  89. data/lib/purecloud/models/channel_topic_entity_listing.rb +11 -11
  90. data/lib/purecloud/models/{domain_license.rb → chat_conversation.rb} +19 -25
  91. data/lib/purecloud/models/chat_participant.rb +270 -12
  92. data/lib/purecloud/models/chat_search_listing.rb +11 -11
  93. data/lib/purecloud/models/command_status_entity_listing.rb +11 -11
  94. data/lib/purecloud/models/consumed_resources_entity_listing.rb +11 -11
  95. data/lib/purecloud/models/consuming_resources_entity_listing.rb +11 -11
  96. data/lib/purecloud/models/contact.rb +41 -73
  97. data/lib/purecloud/models/contact_list_entity_listing.rb +11 -11
  98. data/lib/purecloud/models/contact_listing.rb +11 -11
  99. data/lib/purecloud/models/contact_sales.rb +1 -21
  100. data/lib/purecloud/models/conversation_entity_listing.rb +11 -11
  101. data/lib/purecloud/models/{evaluation_query_request.rb → conversation_query.rb} +77 -90
  102. data/lib/purecloud/models/conversation_query_response.rb +11 -11
  103. data/lib/purecloud/models/{session_entity_listing.rb → create_call_request.rb} +71 -68
  104. data/lib/purecloud/models/{conversation_response.rb → create_call_response.rb} +1 -1
  105. data/lib/purecloud/models/create_user.rb +219 -0
  106. data/lib/purecloud/models/data_item.rb +19 -23
  107. data/lib/purecloud/models/deleted_resource_consumer_entity_listing.rb +11 -11
  108. data/lib/purecloud/models/dependency_object_entity_listing.rb +11 -11
  109. data/lib/purecloud/models/dependency_type_entity_listing.rb +11 -11
  110. data/lib/purecloud/models/destination.rb +1 -21
  111. data/lib/purecloud/models/did_entity_listing.rb +11 -11
  112. data/lib/purecloud/models/did_pool_entity_listing.rb +11 -11
  113. data/lib/purecloud/models/dnc_list_entity_listing.rb +11 -11
  114. data/lib/purecloud/models/document_audit_entity_listing.rb +11 -11
  115. data/lib/purecloud/models/document_entity_listing.rb +11 -11
  116. data/lib/purecloud/models/domain_billing_period_entity_listing.rb +11 -11
  117. data/lib/purecloud/models/domain_entity_listing.rb +11 -11
  118. data/lib/purecloud/models/domain_entity_listing_evaluation_form.rb +11 -11
  119. data/lib/purecloud/models/domain_entity_listing_query_result.rb +11 -11
  120. data/lib/purecloud/models/domain_invoice_entity_listing.rb +11 -11
  121. data/lib/purecloud/models/domain_organization_role.rb +1 -23
  122. data/lib/purecloud/models/domain_permission.rb +1 -13
  123. data/lib/purecloud/models/domain_third_party_account_entity_listing.rb +11 -11
  124. data/lib/purecloud/models/domain_third_party_subscription_entity_listing.rb +11 -11
  125. data/lib/purecloud/models/domain_voice_rate_extended_response_item_entity_listing.rb +11 -11
  126. data/lib/purecloud/models/domain_voice_rate_international_response_item_entity_listing.rb +11 -11
  127. data/lib/purecloud/models/domain_voice_rate_response_item_entity_listing.rb +11 -11
  128. data/lib/purecloud/models/edge_entity_listing.rb +11 -11
  129. data/lib/purecloud/models/edge_group_entity_listing.rb +11 -11
  130. data/lib/purecloud/models/edge_line_entity_listing.rb +11 -11
  131. data/lib/purecloud/models/email_conversation.rb +194 -0
  132. data/lib/purecloud/models/email_message_listing.rb +11 -11
  133. data/lib/purecloud/models/email_participant.rb +424 -0
  134. data/lib/purecloud/models/encryption_key_entity_listing.rb +11 -11
  135. data/lib/purecloud/models/endpoint_entity_listing.rb +11 -11
  136. data/lib/purecloud/models/entity.rb +10 -20
  137. data/lib/purecloud/models/evaluation.rb +1 -0
  138. data/lib/purecloud/models/evaluation_entity_listing.rb +11 -11
  139. data/lib/purecloud/models/evaluation_form_entity_listing.rb +11 -11
  140. data/lib/purecloud/models/evaluator_activity_entity_listing.rb +11 -11
  141. data/lib/purecloud/models/extension_entity_listing.rb +11 -11
  142. data/lib/purecloud/models/extension_pool_entity_listing.rb +11 -11
  143. data/lib/purecloud/models/external_organization_listing.rb +11 -11
  144. data/lib/purecloud/models/fax_document_entity_listing.rb +11 -11
  145. data/lib/purecloud/models/filter.rb +14 -11
  146. data/lib/purecloud/models/flow_config_meta_data_entity_listing.rb +11 -11
  147. data/lib/purecloud/models/flow_entity_listing.rb +11 -11
  148. data/lib/purecloud/models/flow_history_result_item_entity_listing.rb +11 -11
  149. data/lib/purecloud/models/flow_version_config_meta_data_entity_listing.rb +11 -11
  150. data/lib/purecloud/models/flow_version_entity_listing.rb +11 -11
  151. data/lib/purecloud/models/group_entity_listing.rb +11 -11
  152. data/lib/purecloud/models/hardware_rate_listing.rb +11 -11
  153. data/lib/purecloud/models/inbound_domain_entity_listing.rb +11 -11
  154. data/lib/purecloud/models/inbound_route_entity_listing.rb +11 -11
  155. data/lib/purecloud/models/integration_type_entity_listing.rb +11 -11
  156. data/lib/purecloud/models/ivr_entity_listing.rb +11 -11
  157. data/lib/purecloud/models/language_entity_listing.rb +11 -11
  158. data/lib/purecloud/models/library_entity_listing.rb +11 -11
  159. data/lib/purecloud/models/line_base_entity_listing.rb +11 -11
  160. data/lib/purecloud/models/line_entity_listing.rb +11 -11
  161. data/lib/purecloud/models/linked_entity_listing_flow_details.rb +11 -11
  162. data/lib/purecloud/models/linked_entity_listing_work_item_search_details.rb +11 -11
  163. data/lib/purecloud/models/location_entity_listing.rb +11 -11
  164. data/lib/purecloud/models/logical_interface_entity_listing.rb +11 -11
  165. data/lib/purecloud/models/management_unit.rb +26 -14
  166. data/lib/purecloud/models/media_result.rb +1 -11
  167. data/lib/purecloud/models/media_summary.rb +2 -2
  168. data/lib/purecloud/models/media_summary_detail.rb +156 -0
  169. data/lib/purecloud/models/note_listing.rb +11 -11
  170. data/lib/purecloud/models/numeric_range.rb +180 -0
  171. data/lib/purecloud/models/o_auth_client.rb +21 -14
  172. data/lib/purecloud/models/o_auth_client_entity_listing.rb +11 -11
  173. data/lib/purecloud/models/o_auth_provider_entity_listing.rb +11 -11
  174. data/lib/purecloud/models/observation_data_container.rb +161 -0
  175. data/lib/purecloud/models/observation_query.rb +160 -0
  176. data/lib/purecloud/models/observation_query_response.rb +148 -0
  177. data/lib/purecloud/models/okta.rb +11 -11
  178. data/lib/purecloud/models/one_login.rb +11 -11
  179. data/lib/purecloud/models/organization_presence_entity_listing.rb +11 -11
  180. data/lib/purecloud/models/organization_role_entity_listing.rb +11 -11
  181. data/lib/purecloud/models/orphan_recording_listing.rb +11 -11
  182. data/lib/purecloud/models/outbound_route_entity_listing.rb +11 -11
  183. data/lib/purecloud/models/paging_spec.rb +158 -0
  184. data/lib/purecloud/models/participant.rb +1 -13
  185. data/lib/purecloud/models/payment_method_listing.rb +11 -11
  186. data/lib/purecloud/models/permission_collection_entity_listing.rb +11 -11
  187. data/lib/purecloud/models/phone_base_entity_listing.rb +11 -11
  188. data/lib/purecloud/models/phone_entity_listing.rb +11 -11
  189. data/lib/purecloud/models/phone_meta_base_entity_listing.rb +11 -11
  190. data/lib/purecloud/models/physical_interface_entity_listing.rb +11 -11
  191. data/lib/purecloud/models/policy_entity_listing.rb +11 -11
  192. data/lib/purecloud/models/presence_query_response.rb +161 -0
  193. data/lib/purecloud/models/prompt_asset_entity_listing.rb +11 -11
  194. data/lib/purecloud/models/prompt_entity_listing.rb +11 -11
  195. data/lib/purecloud/models/property_index_request.rb +182 -0
  196. data/lib/purecloud/models/quality_audit_page.rb +11 -11
  197. data/lib/purecloud/models/queue.rb +1 -23
  198. data/lib/purecloud/models/queue_entity_listing.rb +11 -11
  199. data/lib/purecloud/models/queues_entity_listing.rb +11 -11
  200. data/lib/purecloud/models/quote.rb +1 -37
  201. data/lib/purecloud/models/quote_listing.rb +11 -11
  202. data/lib/purecloud/models/recording.rb +13 -34
  203. data/lib/purecloud/models/relationship_listing.rb +11 -11
  204. data/lib/purecloud/models/report_meta_data_entity_listing.rb +11 -11
  205. data/lib/purecloud/models/report_run_entry_entity_domain_listing.rb +11 -11
  206. data/lib/purecloud/models/report_schedule_entity_listing.rb +11 -11
  207. data/lib/purecloud/models/response.rb +14 -84
  208. data/lib/purecloud/models/response_entity_list.rb +11 -11
  209. data/lib/purecloud/models/response_entity_listing.rb +11 -11
  210. data/lib/purecloud/models/response_set_entity_listing.rb +11 -11
  211. data/lib/purecloud/models/{user_status.rb → routing_skill.rb} +35 -25
  212. data/lib/purecloud/models/rule_entity_listing.rb +11 -11
  213. data/lib/purecloud/models/rule_set_entity_listing.rb +11 -11
  214. data/lib/purecloud/models/salesforce.rb +11 -11
  215. data/lib/purecloud/models/schedule_entity_listing.rb +11 -11
  216. data/lib/purecloud/models/schedule_group_entity_listing.rb +11 -11
  217. data/lib/purecloud/models/schema_category_entity_listing.rb +11 -11
  218. data/lib/purecloud/models/schema_reference_entity_listing.rb +11 -11
  219. data/lib/purecloud/models/script_entity_listing.rb +11 -11
  220. data/lib/purecloud/models/security_profile_entity_listing.rb +11 -11
  221. data/lib/purecloud/models/service_entity_listing.rb +11 -11
  222. data/lib/purecloud/models/share_entity_listing.rb +11 -11
  223. data/lib/purecloud/models/site_entity_listing.rb +11 -11
  224. data/lib/purecloud/models/skill_entity_listing.rb +12 -12
  225. data/lib/purecloud/models/social_conversation.rb +194 -0
  226. data/lib/purecloud/models/social_participant.rb +446 -0
  227. data/lib/purecloud/models/spreadsheet_transform_entity_listing.rb +11 -11
  228. data/lib/purecloud/models/station_entity_listing.rb +11 -11
  229. data/lib/purecloud/models/statistical_response.rb +158 -0
  230. data/lib/purecloud/models/statistical_summary.rb +226 -0
  231. data/lib/purecloud/models/system_prompt_asset_entity_listing.rb +11 -11
  232. data/lib/purecloud/models/system_prompt_entity_listing.rb +11 -11
  233. data/lib/purecloud/models/tag_value_entity_listing.rb +11 -11
  234. data/lib/purecloud/models/template_entity_listing.rb +11 -11
  235. data/lib/purecloud/models/text_table_transform_entity_listing.rb +11 -11
  236. data/lib/purecloud/models/time_zone.rb +1 -11
  237. data/lib/purecloud/models/time_zone_entity_listing.rb +11 -11
  238. data/lib/purecloud/models/transfer_request.rb +193 -0
  239. data/lib/purecloud/models/trunk_metabase_entity_listing.rb +11 -11
  240. data/lib/purecloud/models/user.rb +96 -129
  241. data/lib/purecloud/models/user_action_category_entity_listing.rb +11 -11
  242. data/lib/purecloud/models/user_action_metadata_entity_listing.rb +11 -11
  243. data/lib/purecloud/models/user_authorization.rb +1 -13
  244. data/lib/purecloud/models/user_entity_listing.rb +11 -11
  245. data/lib/purecloud/models/user_presence_entity_listing.rb +11 -11
  246. data/lib/purecloud/models/user_queue.rb +1 -23
  247. data/lib/purecloud/models/user_queue_entity_listing.rb +11 -11
  248. data/lib/purecloud/models/user_recording_entity_listing.rb +11 -11
  249. data/lib/purecloud/models/{session.rb → user_routing_skill.rb} +26 -41
  250. data/lib/purecloud/models/user_skill_entity_listing.rb +12 -12
  251. data/lib/purecloud/models/user_station.rb +178 -0
  252. data/lib/purecloud/models/user_stations.rb +180 -0
  253. data/lib/purecloud/models/users_entity_listing.rb +11 -11
  254. data/lib/purecloud/models/utilization.rb +4 -36
  255. data/lib/purecloud/models/video_conversation.rb +194 -0
  256. data/lib/purecloud/models/video_participant.rb +463 -0
  257. data/lib/purecloud/models/voice_rate_international_entity_listing.rb +11 -11
  258. data/lib/purecloud/models/voice_xml_operation_entity_listing.rb +11 -11
  259. data/lib/purecloud/models/voicemail_message_entity_listing.rb +11 -11
  260. data/lib/purecloud/models/workspace_entity_listing.rb +11 -11
  261. data/lib/purecloud/models/workspace_member_entity_listing.rb +11 -11
  262. data/lib/purecloud/models/wrapup_code_entity_listing.rb +11 -11
  263. data/lib/purecloud/version.rb +1 -1
  264. data/newVersion.md +1 -1
  265. data/swagger.json +1 -1
  266. data/version.json +1 -1
  267. metadata +60 -15
  268. data/lib/purecloud/models/skill.rb +0 -269
  269. data/lib/purecloud/models/user_skill.rb +0 -290
@@ -0,0 +1,1088 @@
1
+ require "uri"
2
+
3
+ module PureCloud
4
+ class CallsApi
5
+ attr_accessor :api_client
6
+
7
+ def initialize(api_client = ApiClient.default)
8
+ @api_client = api_client
9
+ end
10
+
11
+ # Get conversations
12
+ #
13
+ # @param conversation_id conversation ID
14
+ # @param participant_id participant ID
15
+ # @param [Hash] opts the optional parameters
16
+ # @return [ConversationEntityListing]
17
+ def get_calls(conversation_id, participant_id, opts = {})
18
+ data, status_code, headers = get_calls_with_http_info(conversation_id, participant_id, opts)
19
+ return data
20
+ end
21
+
22
+ # Get conversations
23
+ #
24
+ # @param conversation_id conversation ID
25
+ # @param participant_id participant ID
26
+ # @param [Hash] opts the optional parameters
27
+ # @return [Array<(ConversationEntityListing, Fixnum, Hash)>] ConversationEntityListing data, response status code and response headers
28
+ def get_calls_with_http_info(conversation_id, participant_id, opts = {})
29
+ if @api_client.config.debugging
30
+ @api_client.config.logger.debug "Calling API: CallsApi#get_calls ..."
31
+ end
32
+
33
+ # verify the required parameter 'conversation_id' is set
34
+ fail "Missing the required parameter 'conversation_id' when calling get_calls" if conversation_id.nil?
35
+
36
+ # verify the required parameter 'participant_id' is set
37
+ fail "Missing the required parameter 'participant_id' when calling get_calls" if participant_id.nil?
38
+
39
+ # resource path
40
+ path = "/api/v2/calls".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
41
+
42
+ # query parameters
43
+ query_params = {}
44
+
45
+ # header parameters
46
+ header_params = {}
47
+
48
+ # HTTP header 'Accept' (if needed)
49
+ _header_accept = ['application/json']
50
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
51
+
52
+ # HTTP header 'Content-Type'
53
+ _header_content_type = ['application/json']
54
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
55
+
56
+ # form parameters
57
+ form_params = {}
58
+
59
+ # http body (model)
60
+ post_body = nil
61
+
62
+
63
+ auth_names = ['PureCloud Auth']
64
+ data, status_code, headers = @api_client.call_api(:GET, path,
65
+ :header_params => header_params,
66
+ :query_params => query_params,
67
+ :form_params => form_params,
68
+ :body => post_body,
69
+ :auth_names => auth_names,
70
+ :return_type => 'ConversationEntityListing')
71
+ if @api_client.config.debugging
72
+ @api_client.config.logger.debug "API called: CallsApi#get_calls\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
73
+ end
74
+ return data, status_code, headers
75
+ end
76
+
77
+ # Create a call conversation
78
+ #
79
+ # @param conversation_id conversation ID
80
+ # @param participant_id participant ID
81
+ # @param [Hash] opts the optional parameters
82
+ # @option opts [CreateCallRequest] :body
83
+ # @return [CreateCallResponse]
84
+ def post_calls(conversation_id, participant_id, opts = {})
85
+ data, status_code, headers = post_calls_with_http_info(conversation_id, participant_id, opts)
86
+ return data
87
+ end
88
+
89
+ # Create a call conversation
90
+ #
91
+ # @param conversation_id conversation ID
92
+ # @param participant_id participant ID
93
+ # @param [Hash] opts the optional parameters
94
+ # @option opts [CreateCallRequest] :body
95
+ # @return [Array<(CreateCallResponse, Fixnum, Hash)>] CreateCallResponse data, response status code and response headers
96
+ def post_calls_with_http_info(conversation_id, participant_id, opts = {})
97
+ if @api_client.config.debugging
98
+ @api_client.config.logger.debug "Calling API: CallsApi#post_calls ..."
99
+ end
100
+
101
+ # verify the required parameter 'conversation_id' is set
102
+ fail "Missing the required parameter 'conversation_id' when calling post_calls" if conversation_id.nil?
103
+
104
+ # verify the required parameter 'participant_id' is set
105
+ fail "Missing the required parameter 'participant_id' when calling post_calls" if participant_id.nil?
106
+
107
+ # resource path
108
+ path = "/api/v2/calls".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
109
+
110
+ # query parameters
111
+ query_params = {}
112
+
113
+ # header parameters
114
+ header_params = {}
115
+
116
+ # HTTP header 'Accept' (if needed)
117
+ _header_accept = ['application/json']
118
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
119
+
120
+ # HTTP header 'Content-Type'
121
+ _header_content_type = ['application/json']
122
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
123
+
124
+ # form parameters
125
+ form_params = {}
126
+
127
+ # http body (model)
128
+ post_body = @api_client.object_to_http_body(opts[:'body'])
129
+
130
+
131
+ auth_names = ['PureCloud Auth']
132
+ data, status_code, headers = @api_client.call_api(:POST, path,
133
+ :header_params => header_params,
134
+ :query_params => query_params,
135
+ :form_params => form_params,
136
+ :body => post_body,
137
+ :auth_names => auth_names,
138
+ :return_type => 'CreateCallResponse')
139
+ if @api_client.config.debugging
140
+ @api_client.config.logger.debug "API called: CallsApi#post_calls\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
141
+ end
142
+ return data, status_code, headers
143
+ end
144
+
145
+ # Get the maximum number of participants that this user can have on a conference
146
+ #
147
+ # @param conversation_id conversation ID
148
+ # @param participant_id participant ID
149
+ # @param [Hash] opts the optional parameters
150
+ # @return [MaxParticipants]
151
+ def get_maximumconferenceparties(conversation_id, participant_id, opts = {})
152
+ data, status_code, headers = get_maximumconferenceparties_with_http_info(conversation_id, participant_id, opts)
153
+ return data
154
+ end
155
+
156
+ # Get the maximum number of participants that this user can have on a conference
157
+ #
158
+ # @param conversation_id conversation ID
159
+ # @param participant_id participant ID
160
+ # @param [Hash] opts the optional parameters
161
+ # @return [Array<(MaxParticipants, Fixnum, Hash)>] MaxParticipants data, response status code and response headers
162
+ def get_maximumconferenceparties_with_http_info(conversation_id, participant_id, opts = {})
163
+ if @api_client.config.debugging
164
+ @api_client.config.logger.debug "Calling API: CallsApi#get_maximumconferenceparties ..."
165
+ end
166
+
167
+ # verify the required parameter 'conversation_id' is set
168
+ fail "Missing the required parameter 'conversation_id' when calling get_maximumconferenceparties" if conversation_id.nil?
169
+
170
+ # verify the required parameter 'participant_id' is set
171
+ fail "Missing the required parameter 'participant_id' when calling get_maximumconferenceparties" if participant_id.nil?
172
+
173
+ # resource path
174
+ path = "/api/v2/calls/maximumconferenceparties".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
175
+
176
+ # query parameters
177
+ query_params = {}
178
+
179
+ # header parameters
180
+ header_params = {}
181
+
182
+ # HTTP header 'Accept' (if needed)
183
+ _header_accept = ['application/json']
184
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
185
+
186
+ # HTTP header 'Content-Type'
187
+ _header_content_type = ['application/json']
188
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
189
+
190
+ # form parameters
191
+ form_params = {}
192
+
193
+ # http body (model)
194
+ post_body = nil
195
+
196
+
197
+ auth_names = ['PureCloud Auth']
198
+ data, status_code, headers = @api_client.call_api(:GET, path,
199
+ :header_params => header_params,
200
+ :query_params => query_params,
201
+ :form_params => form_params,
202
+ :body => post_body,
203
+ :auth_names => auth_names,
204
+ :return_type => 'MaxParticipants')
205
+ if @api_client.config.debugging
206
+ @api_client.config.logger.debug "API called: CallsApi#get_maximumconferenceparties\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
207
+ end
208
+ return data, status_code, headers
209
+ end
210
+
211
+ # Update conversation participant
212
+ #
213
+ # @param conversation_id conversation ID
214
+ # @param participant_id participant ID
215
+ # @param [Hash] opts the optional parameters
216
+ # @option opts [ParticipantRequest] :body
217
+ # @return [nil]
218
+ def patch_participants_participant_id(conversation_id, participant_id, opts = {})
219
+ patch_participants_participant_id_with_http_info(conversation_id, participant_id, opts)
220
+ return nil
221
+ end
222
+
223
+ # Update conversation participant
224
+ #
225
+ # @param conversation_id conversation ID
226
+ # @param participant_id participant ID
227
+ # @param [Hash] opts the optional parameters
228
+ # @option opts [ParticipantRequest] :body
229
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
230
+ def patch_participants_participant_id_with_http_info(conversation_id, participant_id, opts = {})
231
+ if @api_client.config.debugging
232
+ @api_client.config.logger.debug "Calling API: CallsApi#patch_participants_participant_id ..."
233
+ end
234
+
235
+ # verify the required parameter 'conversation_id' is set
236
+ fail "Missing the required parameter 'conversation_id' when calling patch_participants_participant_id" if conversation_id.nil?
237
+
238
+ # verify the required parameter 'participant_id' is set
239
+ fail "Missing the required parameter 'participant_id' when calling patch_participants_participant_id" if participant_id.nil?
240
+
241
+ # resource path
242
+ path = "/api/v2/calls/participants/{participantId}".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
243
+
244
+ # query parameters
245
+ query_params = {}
246
+
247
+ # header parameters
248
+ header_params = {}
249
+
250
+ # HTTP header 'Accept' (if needed)
251
+ _header_accept = ['application/json']
252
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
253
+
254
+ # HTTP header 'Content-Type'
255
+ _header_content_type = ['application/json']
256
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
257
+
258
+ # form parameters
259
+ form_params = {}
260
+
261
+ # http body (model)
262
+ post_body = @api_client.object_to_http_body(opts[:'body'])
263
+
264
+
265
+ auth_names = ['PureCloud Auth']
266
+ data, status_code, headers = @api_client.call_api(:PATCH, path,
267
+ :header_params => header_params,
268
+ :query_params => query_params,
269
+ :form_params => form_params,
270
+ :body => post_body,
271
+ :auth_names => auth_names)
272
+ if @api_client.config.debugging
273
+ @api_client.config.logger.debug "API called: CallsApi#patch_participants_participant_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
274
+ end
275
+ return data, status_code, headers
276
+ end
277
+
278
+ # Update the attributes on a conversation participant.
279
+ #
280
+ # @param conversation_id conversation ID
281
+ # @param participant_id participant ID
282
+ # @param [Hash] opts the optional parameters
283
+ # @option opts [ParticipantAttributes] :body
284
+ # @return [nil]
285
+ def patch_participants_participant_id_attributes(conversation_id, participant_id, opts = {})
286
+ patch_participants_participant_id_attributes_with_http_info(conversation_id, participant_id, opts)
287
+ return nil
288
+ end
289
+
290
+ # Update the attributes on a conversation participant.
291
+ #
292
+ # @param conversation_id conversation ID
293
+ # @param participant_id participant ID
294
+ # @param [Hash] opts the optional parameters
295
+ # @option opts [ParticipantAttributes] :body
296
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
297
+ def patch_participants_participant_id_attributes_with_http_info(conversation_id, participant_id, opts = {})
298
+ if @api_client.config.debugging
299
+ @api_client.config.logger.debug "Calling API: CallsApi#patch_participants_participant_id_attributes ..."
300
+ end
301
+
302
+ # verify the required parameter 'conversation_id' is set
303
+ fail "Missing the required parameter 'conversation_id' when calling patch_participants_participant_id_attributes" if conversation_id.nil?
304
+
305
+ # verify the required parameter 'participant_id' is set
306
+ fail "Missing the required parameter 'participant_id' when calling patch_participants_participant_id_attributes" if participant_id.nil?
307
+
308
+ # resource path
309
+ path = "/api/v2/calls/participants/{participantId}/attributes".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
310
+
311
+ # query parameters
312
+ query_params = {}
313
+
314
+ # header parameters
315
+ header_params = {}
316
+
317
+ # HTTP header 'Accept' (if needed)
318
+ _header_accept = ['application/json']
319
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
320
+
321
+ # HTTP header 'Content-Type'
322
+ _header_content_type = ['application/json']
323
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
324
+
325
+ # form parameters
326
+ form_params = {}
327
+
328
+ # http body (model)
329
+ post_body = @api_client.object_to_http_body(opts[:'body'])
330
+
331
+
332
+ auth_names = ['PureCloud Auth']
333
+ data, status_code, headers = @api_client.call_api(:PATCH, path,
334
+ :header_params => header_params,
335
+ :query_params => query_params,
336
+ :form_params => form_params,
337
+ :body => post_body,
338
+ :auth_names => auth_names)
339
+ if @api_client.config.debugging
340
+ @api_client.config.logger.debug "API called: CallsApi#patch_participants_participant_id_attributes\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
341
+ end
342
+ return data, status_code, headers
343
+ end
344
+
345
+ # Replace this participant with the specified user and/or address
346
+ #
347
+ # @param conversation_id conversation ID
348
+ # @param participant_id participant ID
349
+ # @param [Hash] opts the optional parameters
350
+ # @option opts [TransferRequest] :body
351
+ # @return [nil]
352
+ def post_participants_participant_id_replace(conversation_id, participant_id, opts = {})
353
+ post_participants_participant_id_replace_with_http_info(conversation_id, participant_id, opts)
354
+ return nil
355
+ end
356
+
357
+ # Replace this participant with the specified user and/or address
358
+ #
359
+ # @param conversation_id conversation ID
360
+ # @param participant_id participant ID
361
+ # @param [Hash] opts the optional parameters
362
+ # @option opts [TransferRequest] :body
363
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
364
+ def post_participants_participant_id_replace_with_http_info(conversation_id, participant_id, opts = {})
365
+ if @api_client.config.debugging
366
+ @api_client.config.logger.debug "Calling API: CallsApi#post_participants_participant_id_replace ..."
367
+ end
368
+
369
+ # verify the required parameter 'conversation_id' is set
370
+ fail "Missing the required parameter 'conversation_id' when calling post_participants_participant_id_replace" if conversation_id.nil?
371
+
372
+ # verify the required parameter 'participant_id' is set
373
+ fail "Missing the required parameter 'participant_id' when calling post_participants_participant_id_replace" if participant_id.nil?
374
+
375
+ # resource path
376
+ path = "/api/v2/calls/participants/{participantId}/replace".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
377
+
378
+ # query parameters
379
+ query_params = {}
380
+
381
+ # header parameters
382
+ header_params = {}
383
+
384
+ # HTTP header 'Accept' (if needed)
385
+ _header_accept = ['application/json']
386
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
387
+
388
+ # HTTP header 'Content-Type'
389
+ _header_content_type = ['application/json']
390
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
391
+
392
+ # form parameters
393
+ form_params = {}
394
+
395
+ # http body (model)
396
+ post_body = @api_client.object_to_http_body(opts[:'body'])
397
+
398
+
399
+ auth_names = ['PureCloud Auth']
400
+ data, status_code, headers = @api_client.call_api(:POST, path,
401
+ :header_params => header_params,
402
+ :query_params => query_params,
403
+ :form_params => form_params,
404
+ :body => post_body,
405
+ :auth_names => auth_names)
406
+ if @api_client.config.debugging
407
+ @api_client.config.logger.debug "API called: CallsApi#post_participants_participant_id_replace\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
408
+ end
409
+ return data, status_code, headers
410
+ end
411
+
412
+ # Get the wrap-up for this conversation participant.
413
+ #
414
+ # @param conversation_id conversation ID
415
+ # @param participant_id participant ID
416
+ # @param [Hash] opts the optional parameters
417
+ # @option opts [BOOLEAN] :provisional Indicates if the wrap-up code is provisional.
418
+ # @return [WrapupCode]
419
+ def get_participants_participant_id_wrapup(conversation_id, participant_id, opts = {})
420
+ data, status_code, headers = get_participants_participant_id_wrapup_with_http_info(conversation_id, participant_id, opts)
421
+ return data
422
+ end
423
+
424
+ # Get the wrap-up for this conversation participant.
425
+ #
426
+ # @param conversation_id conversation ID
427
+ # @param participant_id participant ID
428
+ # @param [Hash] opts the optional parameters
429
+ # @option opts [BOOLEAN] :provisional Indicates if the wrap-up code is provisional.
430
+ # @return [Array<(WrapupCode, Fixnum, Hash)>] WrapupCode data, response status code and response headers
431
+ def get_participants_participant_id_wrapup_with_http_info(conversation_id, participant_id, opts = {})
432
+ if @api_client.config.debugging
433
+ @api_client.config.logger.debug "Calling API: CallsApi#get_participants_participant_id_wrapup ..."
434
+ end
435
+
436
+ # verify the required parameter 'conversation_id' is set
437
+ fail "Missing the required parameter 'conversation_id' when calling get_participants_participant_id_wrapup" if conversation_id.nil?
438
+
439
+ # verify the required parameter 'participant_id' is set
440
+ fail "Missing the required parameter 'participant_id' when calling get_participants_participant_id_wrapup" if participant_id.nil?
441
+
442
+ # resource path
443
+ path = "/api/v2/calls/participants/{participantId}/wrapup".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
444
+
445
+ # query parameters
446
+ query_params = {}
447
+ query_params[:'provisional'] = opts[:'provisional'] if opts[:'provisional']
448
+
449
+ # header parameters
450
+ header_params = {}
451
+
452
+ # HTTP header 'Accept' (if needed)
453
+ _header_accept = ['application/json']
454
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
455
+
456
+ # HTTP header 'Content-Type'
457
+ _header_content_type = ['application/json']
458
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
459
+
460
+ # form parameters
461
+ form_params = {}
462
+
463
+ # http body (model)
464
+ post_body = nil
465
+
466
+
467
+ auth_names = ['PureCloud Auth']
468
+ data, status_code, headers = @api_client.call_api(:GET, path,
469
+ :header_params => header_params,
470
+ :query_params => query_params,
471
+ :form_params => form_params,
472
+ :body => post_body,
473
+ :auth_names => auth_names,
474
+ :return_type => 'WrapupCode')
475
+ if @api_client.config.debugging
476
+ @api_client.config.logger.debug "API called: CallsApi#get_participants_participant_id_wrapup\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
477
+ end
478
+ return data, status_code, headers
479
+ end
480
+
481
+ # Get list of wrapup codes for this conversation participant
482
+ #
483
+ # @param conversation_id conversation ID
484
+ # @param participant_id participant ID
485
+ # @param [Hash] opts the optional parameters
486
+ # @return [WrapupCode]
487
+ def get_participants_participant_id_wrapupcodes(conversation_id, participant_id, opts = {})
488
+ data, status_code, headers = get_participants_participant_id_wrapupcodes_with_http_info(conversation_id, participant_id, opts)
489
+ return data
490
+ end
491
+
492
+ # Get list of wrapup codes for this conversation participant
493
+ #
494
+ # @param conversation_id conversation ID
495
+ # @param participant_id participant ID
496
+ # @param [Hash] opts the optional parameters
497
+ # @return [Array<(WrapupCode, Fixnum, Hash)>] WrapupCode data, response status code and response headers
498
+ def get_participants_participant_id_wrapupcodes_with_http_info(conversation_id, participant_id, opts = {})
499
+ if @api_client.config.debugging
500
+ @api_client.config.logger.debug "Calling API: CallsApi#get_participants_participant_id_wrapupcodes ..."
501
+ end
502
+
503
+ # verify the required parameter 'conversation_id' is set
504
+ fail "Missing the required parameter 'conversation_id' when calling get_participants_participant_id_wrapupcodes" if conversation_id.nil?
505
+
506
+ # verify the required parameter 'participant_id' is set
507
+ fail "Missing the required parameter 'participant_id' when calling get_participants_participant_id_wrapupcodes" if participant_id.nil?
508
+
509
+ # resource path
510
+ path = "/api/v2/calls/participants/{participantId}/wrapupcodes".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
511
+
512
+ # query parameters
513
+ query_params = {}
514
+
515
+ # header parameters
516
+ header_params = {}
517
+
518
+ # HTTP header 'Accept' (if needed)
519
+ _header_accept = ['application/json']
520
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
521
+
522
+ # HTTP header 'Content-Type'
523
+ _header_content_type = ['application/json']
524
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
525
+
526
+ # form parameters
527
+ form_params = {}
528
+
529
+ # http body (model)
530
+ post_body = nil
531
+
532
+
533
+ auth_names = ['PureCloud Auth']
534
+ data, status_code, headers = @api_client.call_api(:GET, path,
535
+ :header_params => header_params,
536
+ :query_params => query_params,
537
+ :form_params => form_params,
538
+ :body => post_body,
539
+ :auth_names => auth_names,
540
+ :return_type => 'WrapupCode')
541
+ if @api_client.config.debugging
542
+ @api_client.config.logger.debug "API called: CallsApi#get_participants_participant_id_wrapupcodes\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
543
+ end
544
+ return data, status_code, headers
545
+ end
546
+
547
+ # Get call conversation
548
+ #
549
+ # @param conversation_id conversation ID
550
+ # @param participant_id participant ID
551
+ # @param [Hash] opts the optional parameters
552
+ # @return [CallConversation]
553
+ def get_conversation_id(conversation_id, participant_id, opts = {})
554
+ data, status_code, headers = get_conversation_id_with_http_info(conversation_id, participant_id, opts)
555
+ return data
556
+ end
557
+
558
+ # Get call conversation
559
+ #
560
+ # @param conversation_id conversation ID
561
+ # @param participant_id participant ID
562
+ # @param [Hash] opts the optional parameters
563
+ # @return [Array<(CallConversation, Fixnum, Hash)>] CallConversation data, response status code and response headers
564
+ def get_conversation_id_with_http_info(conversation_id, participant_id, opts = {})
565
+ if @api_client.config.debugging
566
+ @api_client.config.logger.debug "Calling API: CallsApi#get_conversation_id ..."
567
+ end
568
+
569
+ # verify the required parameter 'conversation_id' is set
570
+ fail "Missing the required parameter 'conversation_id' when calling get_conversation_id" if conversation_id.nil?
571
+
572
+ # verify the required parameter 'participant_id' is set
573
+ fail "Missing the required parameter 'participant_id' when calling get_conversation_id" if participant_id.nil?
574
+
575
+ # resource path
576
+ path = "/api/v2/calls/{conversationId}".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
577
+
578
+ # query parameters
579
+ query_params = {}
580
+
581
+ # header parameters
582
+ header_params = {}
583
+
584
+ # HTTP header 'Accept' (if needed)
585
+ _header_accept = ['application/json']
586
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
587
+
588
+ # HTTP header 'Content-Type'
589
+ _header_content_type = ['application/json']
590
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
591
+
592
+ # form parameters
593
+ form_params = {}
594
+
595
+ # http body (model)
596
+ post_body = nil
597
+
598
+
599
+ auth_names = ['PureCloud Auth']
600
+ data, status_code, headers = @api_client.call_api(:GET, path,
601
+ :header_params => header_params,
602
+ :query_params => query_params,
603
+ :form_params => form_params,
604
+ :body => post_body,
605
+ :auth_names => auth_names,
606
+ :return_type => 'CallConversation')
607
+ if @api_client.config.debugging
608
+ @api_client.config.logger.debug "API called: CallsApi#get_conversation_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
609
+ end
610
+ return data, status_code, headers
611
+ end
612
+
613
+ # Add a new call to a conversation
614
+ #
615
+ # @param conversation_id conversation ID
616
+ # @param participant_id participant ID
617
+ # @param [Hash] opts the optional parameters
618
+ # @option opts [CallCommand] :body Conversation
619
+ # @return [Conversation]
620
+ def post_conversation_id(conversation_id, participant_id, opts = {})
621
+ data, status_code, headers = post_conversation_id_with_http_info(conversation_id, participant_id, opts)
622
+ return data
623
+ end
624
+
625
+ # Add a new call to a conversation
626
+ #
627
+ # @param conversation_id conversation ID
628
+ # @param participant_id participant ID
629
+ # @param [Hash] opts the optional parameters
630
+ # @option opts [CallCommand] :body Conversation
631
+ # @return [Array<(Conversation, Fixnum, Hash)>] Conversation data, response status code and response headers
632
+ def post_conversation_id_with_http_info(conversation_id, participant_id, opts = {})
633
+ if @api_client.config.debugging
634
+ @api_client.config.logger.debug "Calling API: CallsApi#post_conversation_id ..."
635
+ end
636
+
637
+ # verify the required parameter 'conversation_id' is set
638
+ fail "Missing the required parameter 'conversation_id' when calling post_conversation_id" if conversation_id.nil?
639
+
640
+ # verify the required parameter 'participant_id' is set
641
+ fail "Missing the required parameter 'participant_id' when calling post_conversation_id" if participant_id.nil?
642
+
643
+ # resource path
644
+ path = "/api/v2/calls/{conversationId}".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
645
+
646
+ # query parameters
647
+ query_params = {}
648
+
649
+ # header parameters
650
+ header_params = {}
651
+
652
+ # HTTP header 'Accept' (if needed)
653
+ _header_accept = ['application/json']
654
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
655
+
656
+ # HTTP header 'Content-Type'
657
+ _header_content_type = ['application/json']
658
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
659
+
660
+ # form parameters
661
+ form_params = {}
662
+
663
+ # http body (model)
664
+ post_body = @api_client.object_to_http_body(opts[:'body'])
665
+
666
+
667
+ auth_names = ['PureCloud Auth']
668
+ data, status_code, headers = @api_client.call_api(:POST, path,
669
+ :header_params => header_params,
670
+ :query_params => query_params,
671
+ :form_params => form_params,
672
+ :body => post_body,
673
+ :auth_names => auth_names,
674
+ :return_type => 'Conversation')
675
+ if @api_client.config.debugging
676
+ @api_client.config.logger.debug "API called: CallsApi#post_conversation_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
677
+ end
678
+ return data, status_code, headers
679
+ end
680
+
681
+ # Update conversation
682
+ #
683
+ # @param conversation_id conversation ID
684
+ # @param participant_id participant ID
685
+ # @param [Hash] opts the optional parameters
686
+ # @option opts [Conversation] :body Conversation
687
+ # @return [Conversation]
688
+ def patch_conversation_id(conversation_id, participant_id, opts = {})
689
+ data, status_code, headers = patch_conversation_id_with_http_info(conversation_id, participant_id, opts)
690
+ return data
691
+ end
692
+
693
+ # Update conversation
694
+ #
695
+ # @param conversation_id conversation ID
696
+ # @param participant_id participant ID
697
+ # @param [Hash] opts the optional parameters
698
+ # @option opts [Conversation] :body Conversation
699
+ # @return [Array<(Conversation, Fixnum, Hash)>] Conversation data, response status code and response headers
700
+ def patch_conversation_id_with_http_info(conversation_id, participant_id, opts = {})
701
+ if @api_client.config.debugging
702
+ @api_client.config.logger.debug "Calling API: CallsApi#patch_conversation_id ..."
703
+ end
704
+
705
+ # verify the required parameter 'conversation_id' is set
706
+ fail "Missing the required parameter 'conversation_id' when calling patch_conversation_id" if conversation_id.nil?
707
+
708
+ # verify the required parameter 'participant_id' is set
709
+ fail "Missing the required parameter 'participant_id' when calling patch_conversation_id" if participant_id.nil?
710
+
711
+ # resource path
712
+ path = "/api/v2/calls/{conversationId}".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
713
+
714
+ # query parameters
715
+ query_params = {}
716
+
717
+ # header parameters
718
+ header_params = {}
719
+
720
+ # HTTP header 'Accept' (if needed)
721
+ _header_accept = ['application/json']
722
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
723
+
724
+ # HTTP header 'Content-Type'
725
+ _header_content_type = ['application/json']
726
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
727
+
728
+ # form parameters
729
+ form_params = {}
730
+
731
+ # http body (model)
732
+ post_body = @api_client.object_to_http_body(opts[:'body'])
733
+
734
+
735
+ auth_names = ['PureCloud Auth']
736
+ data, status_code, headers = @api_client.call_api(:PATCH, path,
737
+ :header_params => header_params,
738
+ :query_params => query_params,
739
+ :form_params => form_params,
740
+ :body => post_body,
741
+ :auth_names => auth_names,
742
+ :return_type => 'Conversation')
743
+ if @api_client.config.debugging
744
+ @api_client.config.logger.debug "API called: CallsApi#patch_conversation_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
745
+ end
746
+ return data, status_code, headers
747
+ end
748
+
749
+ # Add participants to a conversation
750
+ #
751
+ # @param conversation_id conversation ID
752
+ # @param participant_id participant ID
753
+ # @param [Hash] opts the optional parameters
754
+ # @option opts [Conversation] :body Conversation
755
+ # @return [Conversation]
756
+ def post_conversation_id_participants(conversation_id, participant_id, opts = {})
757
+ data, status_code, headers = post_conversation_id_participants_with_http_info(conversation_id, participant_id, opts)
758
+ return data
759
+ end
760
+
761
+ # Add participants to a conversation
762
+ #
763
+ # @param conversation_id conversation ID
764
+ # @param participant_id participant ID
765
+ # @param [Hash] opts the optional parameters
766
+ # @option opts [Conversation] :body Conversation
767
+ # @return [Array<(Conversation, Fixnum, Hash)>] Conversation data, response status code and response headers
768
+ def post_conversation_id_participants_with_http_info(conversation_id, participant_id, opts = {})
769
+ if @api_client.config.debugging
770
+ @api_client.config.logger.debug "Calling API: CallsApi#post_conversation_id_participants ..."
771
+ end
772
+
773
+ # verify the required parameter 'conversation_id' is set
774
+ fail "Missing the required parameter 'conversation_id' when calling post_conversation_id_participants" if conversation_id.nil?
775
+
776
+ # verify the required parameter 'participant_id' is set
777
+ fail "Missing the required parameter 'participant_id' when calling post_conversation_id_participants" if participant_id.nil?
778
+
779
+ # resource path
780
+ path = "/api/v2/calls/{conversationId}/participants".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
781
+
782
+ # query parameters
783
+ query_params = {}
784
+
785
+ # header parameters
786
+ header_params = {}
787
+
788
+ # HTTP header 'Accept' (if needed)
789
+ _header_accept = ['application/json']
790
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
791
+
792
+ # HTTP header 'Content-Type'
793
+ _header_content_type = ['application/json']
794
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
795
+
796
+ # form parameters
797
+ form_params = {}
798
+
799
+ # http body (model)
800
+ post_body = @api_client.object_to_http_body(opts[:'body'])
801
+
802
+
803
+ auth_names = ['PureCloud Auth']
804
+ data, status_code, headers = @api_client.call_api(:POST, path,
805
+ :header_params => header_params,
806
+ :query_params => query_params,
807
+ :form_params => form_params,
808
+ :body => post_body,
809
+ :auth_names => auth_names,
810
+ :return_type => 'Conversation')
811
+ if @api_client.config.debugging
812
+ @api_client.config.logger.debug "API called: CallsApi#post_conversation_id_participants\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
813
+ end
814
+ return data, status_code, headers
815
+ end
816
+
817
+ # Initiate and update consult transfer
818
+ #
819
+ # @param conversation_id conversation ID
820
+ # @param participant_id participant ID
821
+ # @param [Hash] opts the optional parameters
822
+ # @option opts [ConsultTransfer] :body Destination address &amp; initial speak to
823
+ # @return [ConsultTransferResponse]
824
+ def post_conversation_id_participants_participant_id_consult(conversation_id, participant_id, opts = {})
825
+ data, status_code, headers = post_conversation_id_participants_participant_id_consult_with_http_info(conversation_id, participant_id, opts)
826
+ return data
827
+ end
828
+
829
+ # Initiate and update consult transfer
830
+ #
831
+ # @param conversation_id conversation ID
832
+ # @param participant_id participant ID
833
+ # @param [Hash] opts the optional parameters
834
+ # @option opts [ConsultTransfer] :body Destination address &amp; initial speak to
835
+ # @return [Array<(ConsultTransferResponse, Fixnum, Hash)>] ConsultTransferResponse data, response status code and response headers
836
+ def post_conversation_id_participants_participant_id_consult_with_http_info(conversation_id, participant_id, opts = {})
837
+ if @api_client.config.debugging
838
+ @api_client.config.logger.debug "Calling API: CallsApi#post_conversation_id_participants_participant_id_consult ..."
839
+ end
840
+
841
+ # verify the required parameter 'conversation_id' is set
842
+ fail "Missing the required parameter 'conversation_id' when calling post_conversation_id_participants_participant_id_consult" if conversation_id.nil?
843
+
844
+ # verify the required parameter 'participant_id' is set
845
+ fail "Missing the required parameter 'participant_id' when calling post_conversation_id_participants_participant_id_consult" if participant_id.nil?
846
+
847
+ # resource path
848
+ path = "/api/v2/calls/{conversationId}/participants/{participantId}/consult".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
849
+
850
+ # query parameters
851
+ query_params = {}
852
+
853
+ # header parameters
854
+ header_params = {}
855
+
856
+ # HTTP header 'Accept' (if needed)
857
+ _header_accept = ['application/json']
858
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
859
+
860
+ # HTTP header 'Content-Type'
861
+ _header_content_type = ['application/json']
862
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
863
+
864
+ # form parameters
865
+ form_params = {}
866
+
867
+ # http body (model)
868
+ post_body = @api_client.object_to_http_body(opts[:'body'])
869
+
870
+
871
+ auth_names = ['PureCloud Auth']
872
+ data, status_code, headers = @api_client.call_api(:POST, path,
873
+ :header_params => header_params,
874
+ :query_params => query_params,
875
+ :form_params => form_params,
876
+ :body => post_body,
877
+ :auth_names => auth_names,
878
+ :return_type => 'ConsultTransferResponse')
879
+ if @api_client.config.debugging
880
+ @api_client.config.logger.debug "API called: CallsApi#post_conversation_id_participants_participant_id_consult\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
881
+ end
882
+ return data, status_code, headers
883
+ end
884
+
885
+ # Cancel the transfer
886
+ #
887
+ # @param conversation_id conversation ID
888
+ # @param participant_id participant ID
889
+ # @param [Hash] opts the optional parameters
890
+ # @return [String]
891
+ def delete_conversation_id_participants_participant_id_consult(conversation_id, participant_id, opts = {})
892
+ data, status_code, headers = delete_conversation_id_participants_participant_id_consult_with_http_info(conversation_id, participant_id, opts)
893
+ return data
894
+ end
895
+
896
+ # Cancel the transfer
897
+ #
898
+ # @param conversation_id conversation ID
899
+ # @param participant_id participant ID
900
+ # @param [Hash] opts the optional parameters
901
+ # @return [Array<(String, Fixnum, Hash)>] String data, response status code and response headers
902
+ def delete_conversation_id_participants_participant_id_consult_with_http_info(conversation_id, participant_id, opts = {})
903
+ if @api_client.config.debugging
904
+ @api_client.config.logger.debug "Calling API: CallsApi#delete_conversation_id_participants_participant_id_consult ..."
905
+ end
906
+
907
+ # verify the required parameter 'conversation_id' is set
908
+ fail "Missing the required parameter 'conversation_id' when calling delete_conversation_id_participants_participant_id_consult" if conversation_id.nil?
909
+
910
+ # verify the required parameter 'participant_id' is set
911
+ fail "Missing the required parameter 'participant_id' when calling delete_conversation_id_participants_participant_id_consult" if participant_id.nil?
912
+
913
+ # resource path
914
+ path = "/api/v2/calls/{conversationId}/participants/{participantId}/consult".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
915
+
916
+ # query parameters
917
+ query_params = {}
918
+
919
+ # header parameters
920
+ header_params = {}
921
+
922
+ # HTTP header 'Accept' (if needed)
923
+ _header_accept = ['application/json']
924
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
925
+
926
+ # HTTP header 'Content-Type'
927
+ _header_content_type = ['application/json']
928
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
929
+
930
+ # form parameters
931
+ form_params = {}
932
+
933
+ # http body (model)
934
+ post_body = nil
935
+
936
+
937
+ auth_names = ['PureCloud Auth']
938
+ data, status_code, headers = @api_client.call_api(:DELETE, path,
939
+ :header_params => header_params,
940
+ :query_params => query_params,
941
+ :form_params => form_params,
942
+ :body => post_body,
943
+ :auth_names => auth_names,
944
+ :return_type => 'String')
945
+ if @api_client.config.debugging
946
+ @api_client.config.logger.debug "API called: CallsApi#delete_conversation_id_participants_participant_id_consult\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
947
+ end
948
+ return data, status_code, headers
949
+ end
950
+
951
+ # Change who can speak
952
+ #
953
+ # @param conversation_id conversation ID
954
+ # @param participant_id participant ID
955
+ # @param [Hash] opts the optional parameters
956
+ # @option opts [ConsultTransferUpdate] :body new speak to
957
+ # @return [ConsultTransferResponse]
958
+ def patch_conversation_id_participants_participant_id_consult(conversation_id, participant_id, opts = {})
959
+ data, status_code, headers = patch_conversation_id_participants_participant_id_consult_with_http_info(conversation_id, participant_id, opts)
960
+ return data
961
+ end
962
+
963
+ # Change who can speak
964
+ #
965
+ # @param conversation_id conversation ID
966
+ # @param participant_id participant ID
967
+ # @param [Hash] opts the optional parameters
968
+ # @option opts [ConsultTransferUpdate] :body new speak to
969
+ # @return [Array<(ConsultTransferResponse, Fixnum, Hash)>] ConsultTransferResponse data, response status code and response headers
970
+ def patch_conversation_id_participants_participant_id_consult_with_http_info(conversation_id, participant_id, opts = {})
971
+ if @api_client.config.debugging
972
+ @api_client.config.logger.debug "Calling API: CallsApi#patch_conversation_id_participants_participant_id_consult ..."
973
+ end
974
+
975
+ # verify the required parameter 'conversation_id' is set
976
+ fail "Missing the required parameter 'conversation_id' when calling patch_conversation_id_participants_participant_id_consult" if conversation_id.nil?
977
+
978
+ # verify the required parameter 'participant_id' is set
979
+ fail "Missing the required parameter 'participant_id' when calling patch_conversation_id_participants_participant_id_consult" if participant_id.nil?
980
+
981
+ # resource path
982
+ path = "/api/v2/calls/{conversationId}/participants/{participantId}/consult".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
983
+
984
+ # query parameters
985
+ query_params = {}
986
+
987
+ # header parameters
988
+ header_params = {}
989
+
990
+ # HTTP header 'Accept' (if needed)
991
+ _header_accept = ['application/json']
992
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
993
+
994
+ # HTTP header 'Content-Type'
995
+ _header_content_type = ['application/json']
996
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
997
+
998
+ # form parameters
999
+ form_params = {}
1000
+
1001
+ # http body (model)
1002
+ post_body = @api_client.object_to_http_body(opts[:'body'])
1003
+
1004
+
1005
+ auth_names = ['PureCloud Auth']
1006
+ data, status_code, headers = @api_client.call_api(:PATCH, path,
1007
+ :header_params => header_params,
1008
+ :query_params => query_params,
1009
+ :form_params => form_params,
1010
+ :body => post_body,
1011
+ :auth_names => auth_names,
1012
+ :return_type => 'ConsultTransferResponse')
1013
+ if @api_client.config.debugging
1014
+ @api_client.config.logger.debug "API called: CallsApi#patch_conversation_id_participants_participant_id_consult\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1015
+ end
1016
+ return data, status_code, headers
1017
+ end
1018
+
1019
+ # Listen in on the conversation from the point of view of a given participant.
1020
+ #
1021
+ # @param conversation_id conversation ID
1022
+ # @param participant_id participant ID
1023
+ # @param [Hash] opts the optional parameters
1024
+ # @return [nil]
1025
+ def post_conversation_id_participants_participant_id_monitor(conversation_id, participant_id, opts = {})
1026
+ post_conversation_id_participants_participant_id_monitor_with_http_info(conversation_id, participant_id, opts)
1027
+ return nil
1028
+ end
1029
+
1030
+ # Listen in on the conversation from the point of view of a given participant.
1031
+ #
1032
+ # @param conversation_id conversation ID
1033
+ # @param participant_id participant ID
1034
+ # @param [Hash] opts the optional parameters
1035
+ # @return [Array<(nil, Fixnum, Hash)>] nil, response status code and response headers
1036
+ def post_conversation_id_participants_participant_id_monitor_with_http_info(conversation_id, participant_id, opts = {})
1037
+ if @api_client.config.debugging
1038
+ @api_client.config.logger.debug "Calling API: CallsApi#post_conversation_id_participants_participant_id_monitor ..."
1039
+ end
1040
+
1041
+ # verify the required parameter 'conversation_id' is set
1042
+ fail "Missing the required parameter 'conversation_id' when calling post_conversation_id_participants_participant_id_monitor" if conversation_id.nil?
1043
+
1044
+ # verify the required parameter 'participant_id' is set
1045
+ fail "Missing the required parameter 'participant_id' when calling post_conversation_id_participants_participant_id_monitor" if participant_id.nil?
1046
+
1047
+ # resource path
1048
+ path = "/api/v2/calls/{conversationId}/participants/{participantId}/monitor".sub('{format}','json').sub('{' + 'conversationId' + '}', conversation_id.to_s).sub('{' + 'participantId' + '}', participant_id.to_s)
1049
+
1050
+ # query parameters
1051
+ query_params = {}
1052
+
1053
+ # header parameters
1054
+ header_params = {}
1055
+
1056
+ # HTTP header 'Accept' (if needed)
1057
+ _header_accept = ['application/json']
1058
+ _header_accept_result = @api_client.select_header_accept(_header_accept) and header_params['Accept'] = _header_accept_result
1059
+
1060
+ # HTTP header 'Content-Type'
1061
+ _header_content_type = ['application/json']
1062
+ header_params['Content-Type'] = @api_client.select_header_content_type(_header_content_type)
1063
+
1064
+ # form parameters
1065
+ form_params = {}
1066
+
1067
+ # http body (model)
1068
+ post_body = nil
1069
+
1070
+
1071
+ auth_names = ['PureCloud Auth']
1072
+ data, status_code, headers = @api_client.call_api(:POST, path,
1073
+ :header_params => header_params,
1074
+ :query_params => query_params,
1075
+ :form_params => form_params,
1076
+ :body => post_body,
1077
+ :auth_names => auth_names)
1078
+ if @api_client.config.debugging
1079
+ @api_client.config.logger.debug "API called: CallsApi#post_conversation_id_participants_participant_id_monitor\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1080
+ end
1081
+ return data, status_code, headers
1082
+ end
1083
+ end
1084
+ end
1085
+
1086
+
1087
+
1088
+