bandwidth-sdk 10.3.0 → 11.0.0.pre.beta.1.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 (526) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +9 -0
  3. data/Gemfile.lock +76 -0
  4. data/README.md +197 -139
  5. data/Rakefile +22 -0
  6. data/bandwidth-sdk.gemspec +40 -0
  7. data/bandwidth.yml +5551 -0
  8. data/docs/AccountStatistics.md +20 -0
  9. data/docs/AnswerCallback.md +44 -0
  10. data/docs/BridgeCompleteCallback.md +48 -0
  11. data/docs/BridgeTargetCompleteCallback.md +42 -0
  12. data/docs/CallDirectionEnum.md +15 -0
  13. data/docs/CallRecordingMetadata.md +52 -0
  14. data/docs/CallState.md +52 -0
  15. data/docs/CallStateEnum.md +15 -0
  16. data/docs/CallbackMethodEnum.md +15 -0
  17. data/docs/CallsApi.md +304 -0
  18. data/docs/CodeRequest.md +28 -0
  19. data/docs/Conference.md +32 -0
  20. data/docs/ConferenceCompletedCallback.md +26 -0
  21. data/docs/ConferenceCreatedCallback.md +26 -0
  22. data/docs/ConferenceMember.md +28 -0
  23. data/docs/ConferenceMemberExitCallback.md +32 -0
  24. data/docs/ConferenceMemberJoinCallback.md +32 -0
  25. data/docs/ConferenceRecordingAvailableCallback.md +44 -0
  26. data/docs/ConferenceRecordingMetadata.md +38 -0
  27. data/docs/ConferenceRedirectCallback.md +26 -0
  28. data/docs/ConferenceStateEnum.md +15 -0
  29. data/docs/ConferencesApi.md +688 -0
  30. data/docs/CreateCall.md +54 -0
  31. data/docs/CreateCallResponse.md +58 -0
  32. data/docs/CreateLookupResponse.md +20 -0
  33. data/docs/CreateMessageRequestError.md +22 -0
  34. data/docs/CreateParticipantRequest.md +24 -0
  35. data/docs/CreateParticipantResponse.md +20 -0
  36. data/docs/DeferredResult.md +20 -0
  37. data/docs/DeviceApiVersionEnum.md +15 -0
  38. data/docs/DisconenctCallback.md +50 -0
  39. data/docs/DisconnectCallback.md +50 -0
  40. data/docs/Diversion.md +30 -0
  41. data/docs/DtmfCallback.md +50 -0
  42. data/docs/FieldError.md +20 -0
  43. data/docs/FileFormatEnum.md +15 -0
  44. data/docs/ForbiddenRequest.md +18 -0
  45. data/docs/GatherCallback.md +52 -0
  46. data/docs/InboundMessageCallback.md +26 -0
  47. data/docs/InboundMessageCallbackMessage.md +40 -0
  48. data/docs/InitiateCallback.md +40 -0
  49. data/docs/ListMessageDirectionEnum.md +15 -0
  50. data/docs/ListMessageItem.md +48 -0
  51. data/docs/LookupRequest.md +18 -0
  52. data/docs/LookupResult.md +34 -0
  53. data/docs/LookupStatus.md +24 -0
  54. data/docs/LookupStatusEnum.md +15 -0
  55. data/docs/MFAApi.md +226 -0
  56. data/docs/MachineDetectionCompleteCallback.md +44 -0
  57. data/docs/MachineDetectionConfiguration.md +46 -0
  58. data/docs/MachineDetectionModeEnum.md +15 -0
  59. data/docs/Media.md +22 -0
  60. data/docs/MediaApi.md +307 -0
  61. data/docs/Message.md +42 -0
  62. data/docs/MessageDeliveredCallback.md +26 -0
  63. data/docs/MessageDeliveredCallbackMessage.md +40 -0
  64. data/docs/MessageDirectionEnum.md +15 -0
  65. data/docs/MessageFailedCallback.md +28 -0
  66. data/docs/MessageFailedCallbackMessage.md +40 -0
  67. data/docs/MessageRequest.md +32 -0
  68. data/docs/MessageSendingCallback.md +26 -0
  69. data/docs/MessageSendingCallbackMessage.md +40 -0
  70. data/docs/MessageStatusEnum.md +15 -0
  71. data/docs/MessageTypeEnum.md +15 -0
  72. data/docs/MessagesApi.md +179 -0
  73. data/docs/MessagesList.md +22 -0
  74. data/docs/MessagingCodeResponse.md +18 -0
  75. data/docs/MessagingRequestError.md +20 -0
  76. data/docs/MfaForbiddenRequestError.md +18 -0
  77. data/docs/MfaRequestError.md +20 -0
  78. data/docs/MfaUnauthorizedRequestError.md +18 -0
  79. data/docs/PageInfo.md +24 -0
  80. data/docs/Participant.md +30 -0
  81. data/docs/ParticipantSubscription.md +20 -0
  82. data/docs/ParticipantsApi.md +227 -0
  83. data/docs/PhoneNumberLookupApi.md +153 -0
  84. data/docs/PriorityEnum.md +15 -0
  85. data/docs/PublishPermissionsEnum.md +15 -0
  86. data/docs/RecordingAvailableCallback.md +60 -0
  87. data/docs/RecordingCompleteCallback.md +60 -0
  88. data/docs/RecordingStateEnum.md +15 -0
  89. data/docs/RecordingsApi.md +758 -0
  90. data/docs/RedirectCallback.md +48 -0
  91. data/docs/RedirectMethodEnum.md +15 -0
  92. data/docs/RequestError.md +20 -0
  93. data/docs/Session.md +20 -0
  94. data/docs/SessionsApi.md +605 -0
  95. data/docs/StatisticsApi.md +78 -0
  96. data/docs/StirShaken.md +22 -0
  97. data/docs/Subscriptions.md +20 -0
  98. data/docs/Tag.md +20 -0
  99. data/docs/TnLookupRequestError.md +18 -0
  100. data/docs/TranscribeRecording.md +28 -0
  101. data/docs/Transcription.md +20 -0
  102. data/docs/TranscriptionAvailableCallback.md +58 -0
  103. data/docs/TranscriptionList.md +18 -0
  104. data/docs/TranscriptionMetadata.md +24 -0
  105. data/docs/TransferAnswerCallback.md +46 -0
  106. data/docs/TransferCompleteCallback.md +52 -0
  107. data/docs/TransferDisconnectCallback.md +56 -0
  108. data/docs/UnauthorizedRequest.md +18 -0
  109. data/docs/UpdateCall.md +36 -0
  110. data/docs/UpdateCallRecording.md +18 -0
  111. data/docs/UpdateConference.md +34 -0
  112. data/docs/UpdateConferenceMember.md +22 -0
  113. data/docs/VerifyCodeRequest.md +24 -0
  114. data/docs/VerifyCodeResponse.md +18 -0
  115. data/docs/VoiceApiError.md +22 -0
  116. data/docs/VoiceCodeResponse.md +18 -0
  117. data/git_push.sh +57 -0
  118. data/lib/bandwidth-sdk/api/calls_api.rb +325 -0
  119. data/lib/bandwidth-sdk/api/conferences_api.rb +717 -0
  120. data/lib/bandwidth-sdk/api/media_api.rb +312 -0
  121. data/lib/bandwidth-sdk/api/messages_api.rb +198 -0
  122. data/lib/bandwidth-sdk/api/mfa_api.rb +244 -0
  123. data/lib/bandwidth-sdk/api/phone_number_lookup_api.rb +165 -0
  124. data/lib/bandwidth-sdk/api/recordings_api.rb +782 -0
  125. data/lib/bandwidth-sdk/api/statistics_api.rb +85 -0
  126. data/lib/bandwidth-sdk/api_client.rb +428 -0
  127. data/lib/bandwidth-sdk/api_error.rb +58 -0
  128. data/lib/bandwidth-sdk/configuration.rb +589 -0
  129. data/lib/bandwidth-sdk/models/account_statistics.rb +230 -0
  130. data/lib/bandwidth-sdk/models/answer_callback.rb +376 -0
  131. data/lib/bandwidth-sdk/models/bridge_complete_callback.rb +397 -0
  132. data/lib/bandwidth-sdk/models/bridge_target_complete_callback.rb +365 -0
  133. data/lib/bandwidth-sdk/models/bxml/bxml.rb +13 -0
  134. data/lib/bandwidth-sdk/models/bxml/nestable_verb.rb +50 -0
  135. data/lib/bandwidth-sdk/models/bxml/response.rb +13 -0
  136. data/lib/bandwidth-sdk/models/bxml/root.rb +47 -0
  137. data/lib/bandwidth-sdk/models/bxml/verb.rb +51 -0
  138. data/lib/bandwidth-sdk/models/bxml/verbs/bridge.rb +30 -0
  139. data/lib/bandwidth-sdk/models/bxml/verbs/conference.rb +31 -0
  140. data/lib/bandwidth-sdk/models/bxml/verbs/forward.rb +22 -0
  141. data/lib/bandwidth-sdk/models/bxml/verbs/gather.rb +44 -0
  142. data/lib/bandwidth-sdk/models/bxml/verbs/hangup.rb +12 -0
  143. data/lib/bandwidth-sdk/models/bxml/verbs/pause.rb +17 -0
  144. data/lib/bandwidth-sdk/models/bxml/verbs/pause_recording.rb +12 -0
  145. data/lib/bandwidth-sdk/models/bxml/verbs/phone_number.rb +28 -0
  146. data/lib/bandwidth-sdk/models/bxml/verbs/play_audio.rb +19 -0
  147. data/lib/bandwidth-sdk/models/bxml/verbs/record.rb +34 -0
  148. data/lib/bandwidth-sdk/models/bxml/verbs/redirect.rb +25 -0
  149. data/lib/bandwidth-sdk/models/bxml/verbs/resume_recording.rb +12 -0
  150. data/lib/bandwidth-sdk/models/bxml/verbs/ring.rb +18 -0
  151. data/lib/bandwidth-sdk/models/bxml/verbs/send_dtmf.rb +19 -0
  152. data/lib/bandwidth-sdk/models/bxml/verbs/sip_uri.rb +29 -0
  153. data/lib/bandwidth-sdk/models/bxml/verbs/speak_sentence.rb +27 -0
  154. data/lib/bandwidth-sdk/models/bxml/verbs/start_gather.rb +21 -0
  155. data/lib/bandwidth-sdk/models/bxml/verbs/start_recording.rb +26 -0
  156. data/lib/bandwidth-sdk/models/bxml/verbs/start_stream.rb +30 -0
  157. data/lib/bandwidth-sdk/models/bxml/verbs/stop_gather.rb +12 -0
  158. data/lib/bandwidth-sdk/models/bxml/verbs/stop_recording.rb +12 -0
  159. data/lib/bandwidth-sdk/models/bxml/verbs/stop_stream.rb +17 -0
  160. data/lib/bandwidth-sdk/models/bxml/verbs/stream_param.rb +18 -0
  161. data/lib/bandwidth-sdk/models/bxml/verbs/tag.rb +13 -0
  162. data/lib/bandwidth-sdk/models/bxml/verbs/transfer.rb +36 -0
  163. data/lib/bandwidth-sdk/models/call_direction_enum.rb +40 -0
  164. data/lib/bandwidth-sdk/models/call_recording_metadata.rb +411 -0
  165. data/lib/bandwidth-sdk/models/call_state.rb +423 -0
  166. data/lib/bandwidth-sdk/models/call_state_enum.rb +40 -0
  167. data/lib/bandwidth-sdk/models/callback_method_enum.rb +40 -0
  168. data/lib/bandwidth-sdk/models/code_request.rb +427 -0
  169. data/lib/bandwidth-sdk/models/conference.rb +320 -0
  170. data/lib/bandwidth-sdk/models/conference_completed_callback.rb +262 -0
  171. data/lib/bandwidth-sdk/models/conference_created_callback.rb +262 -0
  172. data/lib/bandwidth-sdk/models/conference_member.rb +273 -0
  173. data/lib/bandwidth-sdk/models/conference_member_exit_callback.rb +292 -0
  174. data/lib/bandwidth-sdk/models/conference_member_join_callback.rb +292 -0
  175. data/lib/bandwidth-sdk/models/conference_recording_available_callback.rb +374 -0
  176. data/lib/bandwidth-sdk/models/conference_recording_metadata.rb +342 -0
  177. data/lib/bandwidth-sdk/models/conference_redirect_callback.rb +262 -0
  178. data/lib/bandwidth-sdk/models/conference_state_enum.rb +40 -0
  179. data/lib/bandwidth-sdk/models/create_call.rb +651 -0
  180. data/lib/bandwidth-sdk/models/create_call_response.rb +552 -0
  181. data/lib/bandwidth-sdk/models/create_lookup_response.rb +252 -0
  182. data/lib/bandwidth-sdk/models/create_message_request_error.rb +249 -0
  183. data/lib/bandwidth-sdk/models/deferred_result.rb +228 -0
  184. data/lib/bandwidth-sdk/models/disconenct_callback.rb +407 -0
  185. data/lib/bandwidth-sdk/models/disconnect_callback.rb +407 -0
  186. data/lib/bandwidth-sdk/models/diversion.rb +280 -0
  187. data/lib/bandwidth-sdk/models/dtmf_callback.rb +405 -0
  188. data/lib/bandwidth-sdk/models/field_error.rb +230 -0
  189. data/lib/bandwidth-sdk/models/file_format_enum.rb +40 -0
  190. data/lib/bandwidth-sdk/models/gather_callback.rb +415 -0
  191. data/lib/bandwidth-sdk/models/inbound_message_callback.rb +281 -0
  192. data/lib/bandwidth-sdk/models/inbound_message_callback_message.rb +399 -0
  193. data/lib/bandwidth-sdk/models/initiate_callback.rb +350 -0
  194. data/lib/bandwidth-sdk/models/list_message_direction_enum.rb +40 -0
  195. data/lib/bandwidth-sdk/models/list_message_item.rb +394 -0
  196. data/lib/bandwidth-sdk/models/lookup_request.rb +227 -0
  197. data/lib/bandwidth-sdk/models/lookup_result.rb +301 -0
  198. data/lib/bandwidth-sdk/models/lookup_status.rb +276 -0
  199. data/lib/bandwidth-sdk/models/lookup_status_enum.rb +42 -0
  200. data/lib/bandwidth-sdk/models/machine_detection_complete_callback.rb +376 -0
  201. data/lib/bandwidth-sdk/models/machine_detection_configuration.rb +500 -0
  202. data/lib/bandwidth-sdk/models/machine_detection_mode_enum.rb +40 -0
  203. data/lib/bandwidth-sdk/models/media.rb +237 -0
  204. data/lib/bandwidth-sdk/models/message.rb +376 -0
  205. data/lib/bandwidth-sdk/models/message_delivered_callback.rb +281 -0
  206. data/lib/bandwidth-sdk/models/message_delivered_callback_message.rb +404 -0
  207. data/lib/bandwidth-sdk/models/message_direction_enum.rb +40 -0
  208. data/lib/bandwidth-sdk/models/message_failed_callback.rb +295 -0
  209. data/lib/bandwidth-sdk/models/message_failed_callback_message.rb +409 -0
  210. data/lib/bandwidth-sdk/models/message_request.rb +355 -0
  211. data/lib/bandwidth-sdk/models/message_sending_callback.rb +281 -0
  212. data/lib/bandwidth-sdk/models/message_sending_callback_message.rb +409 -0
  213. data/lib/bandwidth-sdk/models/message_status_enum.rb +46 -0
  214. data/lib/bandwidth-sdk/models/message_type_enum.rb +40 -0
  215. data/lib/bandwidth-sdk/models/messages_list.rb +240 -0
  216. data/lib/bandwidth-sdk/models/messaging_code_response.rb +220 -0
  217. data/lib/bandwidth-sdk/models/messaging_request_error.rb +238 -0
  218. data/lib/bandwidth-sdk/models/mfa_forbidden_request_error.rb +220 -0
  219. data/lib/bandwidth-sdk/models/mfa_request_error.rb +230 -0
  220. data/lib/bandwidth-sdk/models/mfa_unauthorized_request_error.rb +220 -0
  221. data/lib/bandwidth-sdk/models/page_info.rb +250 -0
  222. data/lib/bandwidth-sdk/models/priority_enum.rb +40 -0
  223. data/lib/bandwidth-sdk/models/recording_available_callback.rb +454 -0
  224. data/lib/bandwidth-sdk/models/recording_complete_callback.rb +455 -0
  225. data/lib/bandwidth-sdk/models/recording_state_enum.rb +40 -0
  226. data/lib/bandwidth-sdk/models/redirect_callback.rb +395 -0
  227. data/lib/bandwidth-sdk/models/redirect_method_enum.rb +40 -0
  228. data/lib/bandwidth-sdk/models/stir_shaken.rb +240 -0
  229. data/lib/bandwidth-sdk/models/tag.rb +228 -0
  230. data/lib/bandwidth-sdk/models/tn_lookup_request_error.rb +220 -0
  231. data/lib/bandwidth-sdk/models/transcribe_recording.rb +354 -0
  232. data/lib/bandwidth-sdk/models/transcription.rb +230 -0
  233. data/lib/bandwidth-sdk/models/transcription_available_callback.rb +443 -0
  234. data/lib/bandwidth-sdk/models/transcription_list.rb +221 -0
  235. data/lib/bandwidth-sdk/models/transcription_metadata.rb +251 -0
  236. data/lib/bandwidth-sdk/models/transfer_answer_callback.rb +385 -0
  237. data/lib/bandwidth-sdk/models/transfer_complete_callback.rb +417 -0
  238. data/lib/bandwidth-sdk/models/transfer_disconnect_callback.rb +437 -0
  239. data/lib/bandwidth-sdk/models/update_call.rb +411 -0
  240. data/lib/bandwidth-sdk/models/update_call_recording.rb +246 -0
  241. data/lib/bandwidth-sdk/models/update_conference.rb +394 -0
  242. data/lib/bandwidth-sdk/models/update_conference_member.rb +243 -0
  243. data/lib/bandwidth-sdk/models/verify_code_request.rb +342 -0
  244. data/lib/bandwidth-sdk/models/verify_code_response.rb +220 -0
  245. data/lib/bandwidth-sdk/models/voice_api_error.rb +238 -0
  246. data/lib/bandwidth-sdk/models/voice_code_response.rb +220 -0
  247. data/lib/bandwidth-sdk/version.rb +15 -0
  248. data/lib/bandwidth-sdk.rb +166 -0
  249. data/openapi-config.yml +11 -0
  250. data/ruby-notes.md +15 -0
  251. data/spec/call_utils.rb +74 -0
  252. data/spec/fixtures/ruby_cat.jpeg +0 -0
  253. data/spec/integration/calls_api_integration_spec.rb +181 -0
  254. data/spec/integration/conferences_api_integration_spec.rb +163 -0
  255. data/spec/integration/media_api_integration_spec.rb +86 -0
  256. data/spec/integration/messages_api_integration_spec.rb +125 -0
  257. data/spec/integration/mfa_api_integration_spec.rb +109 -0
  258. data/spec/integration/phone_number_lookup_api_integration_spec.rb +92 -0
  259. data/spec/integration/recordings_api_integration_spec.rb +219 -0
  260. data/spec/integration/statistics_api_integration_spec.rb +57 -0
  261. data/spec/spec_helper.rb +154 -0
  262. data/spec/unit/api/calls_api_spec.rb +89 -0
  263. data/spec/unit/api/conferences_api_spec.rb +163 -0
  264. data/spec/unit/api/media_api_spec.rb +90 -0
  265. data/spec/unit/api/messages_api_spec.rb +73 -0
  266. data/spec/unit/api/mfa_api_spec.rb +74 -0
  267. data/spec/unit/api/phone_number_lookup_api_spec.rb +61 -0
  268. data/spec/unit/api/recordings_api_spec.rb +177 -0
  269. data/spec/unit/api/statistics_api_spec.rb +47 -0
  270. data/spec/unit/models/account_statistics_spec.rb +40 -0
  271. data/spec/unit/models/answer_callback_spec.rb +112 -0
  272. data/spec/unit/models/bridge_complete_callback_spec.rb +124 -0
  273. data/spec/unit/models/bridge_target_complete_callback_spec.rb +106 -0
  274. data/spec/unit/models/bxml/bxml_spec.rb +18 -0
  275. data/spec/unit/models/bxml/nestable_verb_spec.rb +13 -0
  276. data/spec/unit/models/bxml/response_spec.rb +18 -0
  277. data/spec/unit/models/bxml/verb_spec.rb +28 -0
  278. data/spec/unit/models/bxml/verbs/bridge_spec.rb +60 -0
  279. data/spec/unit/models/bxml/verbs/conference_spec.rb +60 -0
  280. data/spec/unit/models/bxml/verbs/forward_spec.rb +46 -0
  281. data/spec/unit/models/bxml/verbs/gather_spec.rb +88 -0
  282. data/spec/unit/models/bxml/verbs/hangup_spec.rb +18 -0
  283. data/spec/unit/models/bxml/verbs/pause_recording_spec.rb +18 -0
  284. data/spec/unit/models/bxml/verbs/pause_spec.rb +36 -0
  285. data/spec/unit/models/bxml/verbs/phone_number_spec.rb +56 -0
  286. data/spec/unit/models/bxml/verbs/play_audio_spec.rb +38 -0
  287. data/spec/unit/models/bxml/verbs/record_spec.rb +70 -0
  288. data/spec/unit/models/bxml/verbs/redirect_spec.rb +52 -0
  289. data/spec/unit/models/bxml/verbs/resume_recording_spec.rb +18 -0
  290. data/spec/unit/models/bxml/verbs/ring_spec.rb +38 -0
  291. data/spec/unit/models/bxml/verbs/send_dtmf_spec.rb +38 -0
  292. data/spec/unit/models/bxml/verbs/sip_uri_spec.rb +58 -0
  293. data/spec/unit/models/bxml/verbs/speak_sentence_spec.rb +40 -0
  294. data/spec/unit/models/bxml/verbs/start_gather_spec.rb +44 -0
  295. data/spec/unit/models/bxml/verbs/start_recording_spec.rb +54 -0
  296. data/spec/unit/models/bxml/verbs/start_stream_spec.rb +74 -0
  297. data/spec/unit/models/bxml/verbs/stop_gather_spec.rb +18 -0
  298. data/spec/unit/models/bxml/verbs/stop_recording_spec.rb +18 -0
  299. data/spec/unit/models/bxml/verbs/stop_stream_spec.rb +36 -0
  300. data/spec/unit/models/bxml/verbs/stream_param_spec.rb +38 -0
  301. data/spec/unit/models/bxml/verbs/tag_spec.rb +18 -0
  302. data/spec/unit/models/bxml/verbs/transfer_spec.rb +86 -0
  303. data/spec/unit/models/call_direction_enum_spec.rb +28 -0
  304. data/spec/unit/models/call_recording_metadata_spec.rb +136 -0
  305. data/spec/unit/models/call_state_enum_spec.rb +28 -0
  306. data/spec/unit/models/call_state_spec.rb +136 -0
  307. data/spec/unit/models/callback_method_enum_spec.rb +28 -0
  308. data/spec/unit/models/code_request_spec.rb +64 -0
  309. data/spec/unit/models/conference_completed_callback_spec.rb +58 -0
  310. data/spec/unit/models/conference_created_callback_spec.rb +58 -0
  311. data/spec/unit/models/conference_member_exit_callback_spec.rb +76 -0
  312. data/spec/unit/models/conference_member_join_callback_spec.rb +76 -0
  313. data/spec/unit/models/conference_member_spec.rb +64 -0
  314. data/spec/unit/models/conference_recording_available_callback_spec.rb +112 -0
  315. data/spec/unit/models/conference_recording_metadata_spec.rb +94 -0
  316. data/spec/unit/models/conference_redirect_callback_spec.rb +58 -0
  317. data/spec/unit/models/conference_spec.rb +76 -0
  318. data/spec/unit/models/conference_state_enum_spec.rb +28 -0
  319. data/spec/unit/models/create_call_response_spec.rb +154 -0
  320. data/spec/unit/models/create_call_spec.rb +142 -0
  321. data/spec/unit/models/create_lookup_response_spec.rb +40 -0
  322. data/spec/unit/models/create_message_request_error_spec.rb +46 -0
  323. data/spec/unit/models/deferred_result_spec.rb +40 -0
  324. data/spec/unit/models/disconnect_callback_spec.rb +130 -0
  325. data/spec/unit/models/diversion_spec.rb +70 -0
  326. data/spec/unit/models/dtmf_callback_spec.rb +130 -0
  327. data/spec/unit/models/field_error_spec.rb +40 -0
  328. data/spec/unit/models/file_format_enum_spec.rb +28 -0
  329. data/spec/unit/models/gather_callback_spec.rb +136 -0
  330. data/spec/unit/models/inbound_message_callback_message_spec.rb +100 -0
  331. data/spec/unit/models/inbound_message_callback_spec.rb +58 -0
  332. data/spec/unit/models/initiate_callback_spec.rb +100 -0
  333. data/spec/unit/models/list_message_direction_enum_spec.rb +28 -0
  334. data/spec/unit/models/list_message_item_spec.rb +124 -0
  335. data/spec/unit/models/lookup_request_spec.rb +34 -0
  336. data/spec/unit/models/lookup_result_spec.rb +82 -0
  337. data/spec/unit/models/lookup_status_enum_spec.rb +28 -0
  338. data/spec/unit/models/lookup_status_spec.rb +52 -0
  339. data/spec/unit/models/machine_detection_complete_callback_spec.rb +112 -0
  340. data/spec/unit/models/machine_detection_configuration_spec.rb +118 -0
  341. data/spec/unit/models/machine_detection_mode_enum_spec.rb +28 -0
  342. data/spec/unit/models/media_spec.rb +46 -0
  343. data/spec/unit/models/message_delivered_callback_message_spec.rb +100 -0
  344. data/spec/unit/models/message_delivered_callback_spec.rb +58 -0
  345. data/spec/unit/models/message_direction_enum_spec.rb +28 -0
  346. data/spec/unit/models/message_failed_callback_message_spec.rb +100 -0
  347. data/spec/unit/models/message_failed_callback_spec.rb +64 -0
  348. data/spec/unit/models/message_request_spec.rb +76 -0
  349. data/spec/unit/models/message_sending_callback_message_spec.rb +100 -0
  350. data/spec/unit/models/message_sending_callback_spec.rb +58 -0
  351. data/spec/unit/models/message_spec.rb +106 -0
  352. data/spec/unit/models/message_status_enum_spec.rb +28 -0
  353. data/spec/unit/models/message_type_enum_spec.rb +28 -0
  354. data/spec/unit/models/messages_list_spec.rb +46 -0
  355. data/spec/unit/models/messaging_code_response_spec.rb +34 -0
  356. data/spec/unit/models/messaging_request_error_spec.rb +40 -0
  357. data/spec/unit/models/mfa_forbidden_request_error_spec.rb +34 -0
  358. data/spec/unit/models/mfa_request_error_spec.rb +40 -0
  359. data/spec/unit/models/mfa_unauthorized_request_error_spec.rb +34 -0
  360. data/spec/unit/models/page_info_spec.rb +52 -0
  361. data/spec/unit/models/priority_enum_spec.rb +28 -0
  362. data/spec/unit/models/recording_available_callback_spec.rb +160 -0
  363. data/spec/unit/models/recording_complete_callback_spec.rb +160 -0
  364. data/spec/unit/models/recording_state_enum_spec.rb +28 -0
  365. data/spec/unit/models/redirect_callback_spec.rb +124 -0
  366. data/spec/unit/models/redirect_method_enum_spec.rb +28 -0
  367. data/spec/unit/models/stir_shaken_spec.rb +46 -0
  368. data/spec/unit/models/tag_spec.rb +40 -0
  369. data/spec/unit/models/tn_lookup_request_error_spec.rb +34 -0
  370. data/spec/unit/models/transcribe_recording_spec.rb +64 -0
  371. data/spec/unit/models/transcription_available_callback_spec.rb +154 -0
  372. data/spec/unit/models/transcription_list_spec.rb +34 -0
  373. data/spec/unit/models/transcription_metadata_spec.rb +52 -0
  374. data/spec/unit/models/transcription_spec.rb +40 -0
  375. data/spec/unit/models/transfer_answer_callback_spec.rb +118 -0
  376. data/spec/unit/models/transfer_complete_callback_spec.rb +136 -0
  377. data/spec/unit/models/transfer_disconnect_callback_spec.rb +148 -0
  378. data/spec/unit/models/update_call_recording_spec.rb +34 -0
  379. data/spec/unit/models/update_call_spec.rb +88 -0
  380. data/spec/unit/models/update_conference_member_spec.rb +46 -0
  381. data/spec/unit/models/update_conference_spec.rb +82 -0
  382. data/spec/unit/models/verify_code_request_spec.rb +52 -0
  383. data/spec/unit/models/verify_code_response_spec.rb +34 -0
  384. data/spec/unit/models/voice_api_error_spec.rb +46 -0
  385. data/spec/unit/models/voice_code_response_spec.rb +34 -0
  386. metadata +543 -248
  387. data/LICENSE +0 -28
  388. data/lib/bandwidth/api_helper.rb +0 -280
  389. data/lib/bandwidth/client.rb +0 -75
  390. data/lib/bandwidth/configuration.rb +0 -209
  391. data/lib/bandwidth/exceptions/api_exception.rb +0 -20
  392. data/lib/bandwidth/http/api_response.rb +0 -38
  393. data/lib/bandwidth/http/auth/messaging_basic_auth.rb +0 -22
  394. data/lib/bandwidth/http/auth/multi_factor_auth_basic_auth.rb +0 -22
  395. data/lib/bandwidth/http/auth/phone_number_lookup_basic_auth.rb +0 -22
  396. data/lib/bandwidth/http/auth/voice_basic_auth.rb +0 -22
  397. data/lib/bandwidth/http/auth/web_rtc_basic_auth.rb +0 -22
  398. data/lib/bandwidth/http/faraday_client.rb +0 -70
  399. data/lib/bandwidth/http/http_call_back.rb +0 -24
  400. data/lib/bandwidth/http/http_client.rb +0 -104
  401. data/lib/bandwidth/http/http_method_enum.rb +0 -13
  402. data/lib/bandwidth/http/http_request.rb +0 -50
  403. data/lib/bandwidth/http/http_response.rb +0 -29
  404. data/lib/bandwidth/messaging_lib/messaging/client.rb +0 -60
  405. data/lib/bandwidth/messaging_lib/messaging/controllers/api_controller.rb +0 -491
  406. data/lib/bandwidth/messaging_lib/messaging/controllers/base_controller.rb +0 -47
  407. data/lib/bandwidth/messaging_lib/messaging/exceptions/messaging_exception.rb +0 -37
  408. data/lib/bandwidth/messaging_lib/messaging/models/bandwidth_callback_message.rb +0 -100
  409. data/lib/bandwidth/messaging_lib/messaging/models/bandwidth_message.rb +0 -174
  410. data/lib/bandwidth/messaging_lib/messaging/models/bandwidth_message_item.rb +0 -203
  411. data/lib/bandwidth/messaging_lib/messaging/models/bandwidth_messages_list.rb +0 -79
  412. data/lib/bandwidth/messaging_lib/messaging/models/deferred_result.rb +0 -60
  413. data/lib/bandwidth/messaging_lib/messaging/models/media.rb +0 -70
  414. data/lib/bandwidth/messaging_lib/messaging/models/message_request.rb +0 -122
  415. data/lib/bandwidth/messaging_lib/messaging/models/page_info.rb +0 -82
  416. data/lib/bandwidth/messaging_lib/messaging/models/priority_enum.rb +0 -19
  417. data/lib/bandwidth/messaging_lib/messaging/models/tag.rb +0 -60
  418. data/lib/bandwidth/messaging_lib/messaging.rb +0 -25
  419. data/lib/bandwidth/models/base_model.rb +0 -58
  420. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/client.rb +0 -60
  421. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/controllers/base_controller.rb +0 -47
  422. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/controllers/mfa_controller.rb +0 -214
  423. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/exceptions/error_with_request_exception.rb +0 -37
  424. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/exceptions/forbidden_request_exception.rb +0 -32
  425. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/exceptions/unauthorized_request_exception.rb +0 -32
  426. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_code_request_schema.rb +0 -103
  427. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_messaging_response.rb +0 -50
  428. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_code_response.rb +0 -50
  429. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_verify_request_schema.rb +0 -94
  430. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth/models/two_factor_voice_response.rb +0 -50
  431. data/lib/bandwidth/multi_factor_auth_lib/multi_factor_auth.rb +0 -23
  432. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup/client.rb +0 -60
  433. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup/controllers/api_controller.rb +0 -1553
  434. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup/controllers/base_controller.rb +0 -47
  435. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup/exceptions/accounts_tnlookup400_error_exception.rb +0 -32
  436. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup/models/order_request.rb +0 -50
  437. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup/models/order_response.rb +0 -61
  438. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup/models/order_status.rb +0 -95
  439. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup/models/result.rb +0 -132
  440. data/lib/bandwidth/phone_number_lookup_lib/phone_number_lookup.rb +0 -20
  441. data/lib/bandwidth/utilities/date_time_helper.rb +0 -156
  442. data/lib/bandwidth/utilities/file_wrapper.rb +0 -16
  443. data/lib/bandwidth/voice_lib/bxml/bxml.rb +0 -36
  444. data/lib/bandwidth/voice_lib/bxml/response.rb +0 -39
  445. data/lib/bandwidth/voice_lib/bxml/verbs/bridge.rb +0 -28
  446. data/lib/bandwidth/voice_lib/bxml/verbs/conference.rb +0 -32
  447. data/lib/bandwidth/voice_lib/bxml/verbs/forward.rb +0 -18
  448. data/lib/bandwidth/voice_lib/bxml/verbs/gather.rb +0 -49
  449. data/lib/bandwidth/voice_lib/bxml/verbs/hangup.rb +0 -14
  450. data/lib/bandwidth/voice_lib/bxml/verbs/pause.rb +0 -15
  451. data/lib/bandwidth/voice_lib/bxml/verbs/pause_recording.rb +0 -14
  452. data/lib/bandwidth/voice_lib/bxml/verbs/phone_number.rb +0 -24
  453. data/lib/bandwidth/voice_lib/bxml/verbs/play_audio.rb +0 -17
  454. data/lib/bandwidth/voice_lib/bxml/verbs/record.rb +0 -33
  455. data/lib/bandwidth/voice_lib/bxml/verbs/redirect.rb +0 -24
  456. data/lib/bandwidth/voice_lib/bxml/verbs/resume_recording.rb +0 -14
  457. data/lib/bandwidth/voice_lib/bxml/verbs/ring.rb +0 -16
  458. data/lib/bandwidth/voice_lib/bxml/verbs/send_dtmf.rb +0 -16
  459. data/lib/bandwidth/voice_lib/bxml/verbs/sip_uri.rb +0 -25
  460. data/lib/bandwidth/voice_lib/bxml/verbs/speak_sentence.rb +0 -18
  461. data/lib/bandwidth/voice_lib/bxml/verbs/start_gather.rb +0 -20
  462. data/lib/bandwidth/voice_lib/bxml/verbs/start_recording.rb +0 -25
  463. data/lib/bandwidth/voice_lib/bxml/verbs/start_stream.rb +0 -41
  464. data/lib/bandwidth/voice_lib/bxml/verbs/stop_gather.rb +0 -14
  465. data/lib/bandwidth/voice_lib/bxml/verbs/stop_recording.rb +0 -14
  466. data/lib/bandwidth/voice_lib/bxml/verbs/stop_stream.rb +0 -16
  467. data/lib/bandwidth/voice_lib/bxml/verbs/stream_param.rb +0 -17
  468. data/lib/bandwidth/voice_lib/bxml/verbs/tag.rb +0 -13
  469. data/lib/bandwidth/voice_lib/bxml/verbs/transfer.rb +0 -48
  470. data/lib/bandwidth/voice_lib/bxml/verbs/xml_verb.rb +0 -26
  471. data/lib/bandwidth/voice_lib/voice/client.rb +0 -60
  472. data/lib/bandwidth/voice_lib/voice/controllers/api_controller.rb +0 -1820
  473. data/lib/bandwidth/voice_lib/voice/controllers/base_controller.rb +0 -47
  474. data/lib/bandwidth/voice_lib/voice/exceptions/api_error_exception.rb +0 -42
  475. data/lib/bandwidth/voice_lib/voice/models/answer_fallback_method_enum.rb +0 -17
  476. data/lib/bandwidth/voice_lib/voice/models/answer_method_enum.rb +0 -17
  477. data/lib/bandwidth/voice_lib/voice/models/call_callback.rb +0 -343
  478. data/lib/bandwidth/voice_lib/voice/models/call_recording_metadata.rb +0 -250
  479. data/lib/bandwidth/voice_lib/voice/models/call_state.rb +0 -301
  480. data/lib/bandwidth/voice_lib/voice/models/callback_method_enum.rb +0 -17
  481. data/lib/bandwidth/voice_lib/voice/models/conference_callback.rb +0 -211
  482. data/lib/bandwidth/voice_lib/voice/models/conference_event_method_enum.rb +0 -17
  483. data/lib/bandwidth/voice_lib/voice/models/conference_member_state.rb +0 -103
  484. data/lib/bandwidth/voice_lib/voice/models/conference_recording_metadata.rb +0 -173
  485. data/lib/bandwidth/voice_lib/voice/models/conference_state.rb +0 -153
  486. data/lib/bandwidth/voice_lib/voice/models/create_call_request.rb +0 -236
  487. data/lib/bandwidth/voice_lib/voice/models/create_call_response.rb +0 -266
  488. data/lib/bandwidth/voice_lib/voice/models/direction_enum.rb +0 -17
  489. data/lib/bandwidth/voice_lib/voice/models/disconnect_method_enum.rb +0 -17
  490. data/lib/bandwidth/voice_lib/voice/models/diversion.rb +0 -80
  491. data/lib/bandwidth/voice_lib/voice/models/fallback_method_enum.rb +0 -17
  492. data/lib/bandwidth/voice_lib/voice/models/file_format_enum.rb +0 -17
  493. data/lib/bandwidth/voice_lib/voice/models/machine_detection_configuration.rb +0 -231
  494. data/lib/bandwidth/voice_lib/voice/models/mode_enum.rb +0 -20
  495. data/lib/bandwidth/voice_lib/voice/models/modify_call_recording_request.rb +0 -48
  496. data/lib/bandwidth/voice_lib/voice/models/modify_call_request.rb +0 -156
  497. data/lib/bandwidth/voice_lib/voice/models/modify_conference_request.rb +0 -144
  498. data/lib/bandwidth/voice_lib/voice/models/redirect_fallback_method_enum.rb +0 -17
  499. data/lib/bandwidth/voice_lib/voice/models/redirect_method_enum.rb +0 -17
  500. data/lib/bandwidth/voice_lib/voice/models/state1_enum.rb +0 -20
  501. data/lib/bandwidth/voice_lib/voice/models/state_enum.rb +0 -17
  502. data/lib/bandwidth/voice_lib/voice/models/status_enum.rb +0 -17
  503. data/lib/bandwidth/voice_lib/voice/models/transcribe_recording_request.rb +0 -108
  504. data/lib/bandwidth/voice_lib/voice/models/transcript.rb +0 -60
  505. data/lib/bandwidth/voice_lib/voice/models/transcription.rb +0 -80
  506. data/lib/bandwidth/voice_lib/voice/models/transcription_metadata.rb +0 -89
  507. data/lib/bandwidth/voice_lib/voice/models/transcription_response.rb +0 -59
  508. data/lib/bandwidth/voice_lib/voice.rb +0 -48
  509. data/lib/bandwidth/web_rtc_lib/utils/web_rtc_transfer.rb +0 -18
  510. data/lib/bandwidth/web_rtc_lib/web_rtc/client.rb +0 -60
  511. data/lib/bandwidth/web_rtc_lib/web_rtc/controllers/api_controller.rb +0 -703
  512. data/lib/bandwidth/web_rtc_lib/web_rtc/controllers/base_controller.rb +0 -47
  513. data/lib/bandwidth/web_rtc_lib/web_rtc/exceptions/error_exception.rb +0 -37
  514. data/lib/bandwidth/web_rtc_lib/web_rtc/models/accounts_participants_response.rb +0 -62
  515. data/lib/bandwidth/web_rtc_lib/web_rtc/models/device_api_version_enum.rb +0 -17
  516. data/lib/bandwidth/web_rtc_lib/web_rtc/models/participant.rb +0 -115
  517. data/lib/bandwidth/web_rtc_lib/web_rtc/models/participant_subscription.rb +0 -48
  518. data/lib/bandwidth/web_rtc_lib/web_rtc/models/publish_permission_enum.rb +0 -17
  519. data/lib/bandwidth/web_rtc_lib/web_rtc/models/session.rb +0 -60
  520. data/lib/bandwidth/web_rtc_lib/web_rtc/models/subscriptions.rb +0 -71
  521. data/lib/bandwidth/web_rtc_lib/web_rtc.rb +0 -22
  522. data/lib/bandwidth.rb +0 -72
  523. data/test/controllers/controller_test_base.rb +0 -21
  524. data/test/http_response_catcher.rb +0 -19
  525. data/test/integration/test_integration.rb +0 -767
  526. data/test/test_helper.rb +0 -94
@@ -1,703 +0,0 @@
1
- # bandwidth
2
- #
3
- # This file was automatically generated by APIMATIC v2.0
4
- # ( https://apimatic.io ).
5
-
6
- module Bandwidth
7
- module WebRtc
8
- # APIController
9
- class APIController < BaseController
10
- def initialize(config, http_call_back: nil)
11
- super(config, http_call_back: http_call_back)
12
- end
13
-
14
- # Create a new participant under this account.
15
- # Participants are idempotent, so relevant parameters must be set in this
16
- # function if desired.
17
- # @param [String] account_id Required parameter: Account ID
18
- # @param [Participant] body Optional parameter: Participant parameters
19
- # @return [AccountsParticipantsResponse] response from the API call
20
- def create_participant(account_id,
21
- body: nil)
22
- # Prepare query url.
23
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
24
- _query_builder << '/accounts/{accountId}/participants'
25
- _query_builder = APIHelper.append_url_with_template_parameters(
26
- _query_builder,
27
- 'accountId' => { 'value' => account_id, 'encode' => false }
28
- )
29
- _query_url = APIHelper.clean_url _query_builder
30
-
31
- # Prepare headers.
32
- _headers = {
33
- 'accept' => 'application/json',
34
- 'content-type' => 'application/json; charset=utf-8'
35
- }
36
-
37
- # Prepare and execute HttpRequest.
38
- _request = config.http_client.post(
39
- _query_url,
40
- headers: _headers,
41
- parameters: body.to_json
42
- )
43
- WebRtcBasicAuth.apply(config, _request)
44
- _response = execute_request(_request)
45
-
46
- # Validate response against endpoint and global error codes.
47
- case _response.status_code
48
- when 400
49
- raise APIException.new(
50
- 'Bad Request',
51
- _response
52
- )
53
- when 401
54
- raise APIException.new(
55
- 'Unauthorized',
56
- _response
57
- )
58
- when 403
59
- raise APIException.new(
60
- 'Access Denied',
61
- _response
62
- )
63
- end
64
- unless _response.status_code.between?(200, 208)
65
- raise ErrorException.new(
66
- 'Unexpected Error',
67
- _response
68
- )
69
- end
70
- validate_response(_response)
71
-
72
- # Return appropriate response type.
73
- decoded = APIHelper.json_deserialize(_response.raw_body)
74
- ApiResponse.new(
75
- _response,
76
- data: AccountsParticipantsResponse.from_hash(decoded)
77
- )
78
- end
79
-
80
- # Get participant by ID.
81
- # @param [String] account_id Required parameter: Account ID
82
- # @param [String] participant_id Required parameter: Participant ID
83
- # @return [Participant] response from the API call
84
- def get_participant(account_id,
85
- participant_id)
86
- # Prepare query url.
87
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
88
- _query_builder << '/accounts/{accountId}/participants/{participantId}'
89
- _query_builder = APIHelper.append_url_with_template_parameters(
90
- _query_builder,
91
- 'accountId' => { 'value' => account_id, 'encode' => false },
92
- 'participantId' => { 'value' => participant_id, 'encode' => false }
93
- )
94
- _query_url = APIHelper.clean_url _query_builder
95
-
96
- # Prepare headers.
97
- _headers = {
98
- 'accept' => 'application/json'
99
- }
100
-
101
- # Prepare and execute HttpRequest.
102
- _request = config.http_client.get(
103
- _query_url,
104
- headers: _headers
105
- )
106
- WebRtcBasicAuth.apply(config, _request)
107
- _response = execute_request(_request)
108
-
109
- # Validate response against endpoint and global error codes.
110
- case _response.status_code
111
- when 401
112
- raise APIException.new(
113
- 'Unauthorized',
114
- _response
115
- )
116
- when 403
117
- raise APIException.new(
118
- 'Access Denied',
119
- _response
120
- )
121
- when 404
122
- raise APIException.new(
123
- 'Not Found',
124
- _response
125
- )
126
- end
127
- unless _response.status_code.between?(200, 208)
128
- raise ErrorException.new(
129
- 'Unexpected Error',
130
- _response
131
- )
132
- end
133
- validate_response(_response)
134
-
135
- # Return appropriate response type.
136
- decoded = APIHelper.json_deserialize(_response.raw_body)
137
- ApiResponse.new(
138
- _response, data: Participant.from_hash(decoded)
139
- )
140
- end
141
-
142
- # Delete participant by ID.
143
- # @param [String] account_id Required parameter: Account ID
144
- # @param [String] participant_id Required parameter: Example:
145
- # @return [void] response from the API call
146
- def delete_participant(account_id,
147
- participant_id)
148
- # Prepare query url.
149
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
150
- _query_builder << '/accounts/{accountId}/participants/{participantId}'
151
- _query_builder = APIHelper.append_url_with_template_parameters(
152
- _query_builder,
153
- 'accountId' => { 'value' => account_id, 'encode' => false },
154
- 'participantId' => { 'value' => participant_id, 'encode' => false }
155
- )
156
- _query_url = APIHelper.clean_url _query_builder
157
-
158
- # Prepare and execute HttpRequest.
159
- _request = config.http_client.delete(
160
- _query_url
161
- )
162
- WebRtcBasicAuth.apply(config, _request)
163
- _response = execute_request(_request)
164
-
165
- # Validate response against endpoint and global error codes.
166
- case _response.status_code
167
- when 401
168
- raise APIException.new(
169
- 'Unauthorized',
170
- _response
171
- )
172
- when 403
173
- raise APIException.new(
174
- 'Access Denied',
175
- _response
176
- )
177
- when 404
178
- raise APIException.new(
179
- 'Not Found',
180
- _response
181
- )
182
- end
183
- unless _response.status_code.between?(200, 208)
184
- raise ErrorException.new(
185
- 'Unexpected Error',
186
- _response
187
- )
188
- end
189
- validate_response(_response)
190
-
191
- # Return appropriate response type.
192
- ApiResponse.new(_response)
193
- end
194
-
195
- # Create a new session.
196
- # Sessions are idempotent, so relevant parameters must be set in this
197
- # function if desired.
198
- # @param [String] account_id Required parameter: Account ID
199
- # @param [Session] body Optional parameter: Session parameters
200
- # @return [Session] response from the API call
201
- def create_session(account_id,
202
- body: nil)
203
- # Prepare query url.
204
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
205
- _query_builder << '/accounts/{accountId}/sessions'
206
- _query_builder = APIHelper.append_url_with_template_parameters(
207
- _query_builder,
208
- 'accountId' => { 'value' => account_id, 'encode' => false }
209
- )
210
- _query_url = APIHelper.clean_url _query_builder
211
-
212
- # Prepare headers.
213
- _headers = {
214
- 'accept' => 'application/json',
215
- 'content-type' => 'application/json; charset=utf-8'
216
- }
217
-
218
- # Prepare and execute HttpRequest.
219
- _request = config.http_client.post(
220
- _query_url,
221
- headers: _headers,
222
- parameters: body.to_json
223
- )
224
- WebRtcBasicAuth.apply(config, _request)
225
- _response = execute_request(_request)
226
-
227
- # Validate response against endpoint and global error codes.
228
- case _response.status_code
229
- when 400
230
- raise APIException.new(
231
- 'Bad Request',
232
- _response
233
- )
234
- when 401
235
- raise APIException.new(
236
- 'Unauthorized',
237
- _response
238
- )
239
- when 403
240
- raise APIException.new(
241
- 'Access Denied',
242
- _response
243
- )
244
- end
245
- unless _response.status_code.between?(200, 208)
246
- raise ErrorException.new(
247
- 'Unexpected Error',
248
- _response
249
- )
250
- end
251
- validate_response(_response)
252
-
253
- # Return appropriate response type.
254
- decoded = APIHelper.json_deserialize(_response.raw_body)
255
- ApiResponse.new(
256
- _response, data: Session.from_hash(decoded)
257
- )
258
- end
259
-
260
- # Get session by ID.
261
- # @param [String] account_id Required parameter: Account ID
262
- # @param [String] session_id Required parameter: Session ID
263
- # @return [Session] response from the API call
264
- def get_session(account_id,
265
- session_id)
266
- # Prepare query url.
267
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
268
- _query_builder << '/accounts/{accountId}/sessions/{sessionId}'
269
- _query_builder = APIHelper.append_url_with_template_parameters(
270
- _query_builder,
271
- 'accountId' => { 'value' => account_id, 'encode' => false },
272
- 'sessionId' => { 'value' => session_id, 'encode' => false }
273
- )
274
- _query_url = APIHelper.clean_url _query_builder
275
-
276
- # Prepare headers.
277
- _headers = {
278
- 'accept' => 'application/json'
279
- }
280
-
281
- # Prepare and execute HttpRequest.
282
- _request = config.http_client.get(
283
- _query_url,
284
- headers: _headers
285
- )
286
- WebRtcBasicAuth.apply(config, _request)
287
- _response = execute_request(_request)
288
-
289
- # Validate response against endpoint and global error codes.
290
- case _response.status_code
291
- when 401
292
- raise APIException.new(
293
- 'Unauthorized',
294
- _response
295
- )
296
- when 403
297
- raise APIException.new(
298
- 'Access Denied',
299
- _response
300
- )
301
- when 404
302
- raise APIException.new(
303
- 'Not Found',
304
- _response
305
- )
306
- end
307
- unless _response.status_code.between?(200, 208)
308
- raise ErrorException.new(
309
- 'Unexpected Error',
310
- _response
311
- )
312
- end
313
- validate_response(_response)
314
-
315
- # Return appropriate response type.
316
- decoded = APIHelper.json_deserialize(_response.raw_body)
317
- ApiResponse.new(
318
- _response, data: Session.from_hash(decoded)
319
- )
320
- end
321
-
322
- # Delete session by ID.
323
- # @param [String] account_id Required parameter: Account ID
324
- # @param [String] session_id Required parameter: Session ID
325
- # @return [void] response from the API call
326
- def delete_session(account_id,
327
- session_id)
328
- # Prepare query url.
329
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
330
- _query_builder << '/accounts/{accountId}/sessions/{sessionId}'
331
- _query_builder = APIHelper.append_url_with_template_parameters(
332
- _query_builder,
333
- 'accountId' => { 'value' => account_id, 'encode' => false },
334
- 'sessionId' => { 'value' => session_id, 'encode' => false }
335
- )
336
- _query_url = APIHelper.clean_url _query_builder
337
-
338
- # Prepare and execute HttpRequest.
339
- _request = config.http_client.delete(
340
- _query_url
341
- )
342
- WebRtcBasicAuth.apply(config, _request)
343
- _response = execute_request(_request)
344
-
345
- # Validate response against endpoint and global error codes.
346
- case _response.status_code
347
- when 401
348
- raise APIException.new(
349
- 'Unauthorized',
350
- _response
351
- )
352
- when 403
353
- raise APIException.new(
354
- 'Access Denied',
355
- _response
356
- )
357
- when 404
358
- raise APIException.new(
359
- 'Not Found',
360
- _response
361
- )
362
- end
363
- unless _response.status_code.between?(200, 208)
364
- raise ErrorException.new(
365
- 'Unexpected Error',
366
- _response
367
- )
368
- end
369
- validate_response(_response)
370
-
371
- # Return appropriate response type.
372
- ApiResponse.new(_response)
373
- end
374
-
375
- # List participants in a session.
376
- # @param [String] account_id Required parameter: Account ID
377
- # @param [String] session_id Required parameter: Session ID
378
- # @return [List of Participant] response from the API call
379
- def list_session_participants(account_id,
380
- session_id)
381
- # Prepare query url.
382
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
383
- _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants'
384
- _query_builder = APIHelper.append_url_with_template_parameters(
385
- _query_builder,
386
- 'accountId' => { 'value' => account_id, 'encode' => false },
387
- 'sessionId' => { 'value' => session_id, 'encode' => false }
388
- )
389
- _query_url = APIHelper.clean_url _query_builder
390
-
391
- # Prepare headers.
392
- _headers = {
393
- 'accept' => 'application/json'
394
- }
395
-
396
- # Prepare and execute HttpRequest.
397
- _request = config.http_client.get(
398
- _query_url,
399
- headers: _headers
400
- )
401
- WebRtcBasicAuth.apply(config, _request)
402
- _response = execute_request(_request)
403
-
404
- # Validate response against endpoint and global error codes.
405
- case _response.status_code
406
- when 401
407
- raise APIException.new(
408
- 'Unauthorized',
409
- _response
410
- )
411
- when 403
412
- raise APIException.new(
413
- 'Access Denied',
414
- _response
415
- )
416
- when 404
417
- raise APIException.new(
418
- 'Not Found',
419
- _response
420
- )
421
- end
422
- unless _response.status_code.between?(200, 208)
423
- raise ErrorException.new(
424
- 'Unexpected Error',
425
- _response
426
- )
427
- end
428
- validate_response(_response)
429
-
430
- # Return appropriate response type.
431
- decoded = APIHelper.json_deserialize(_response.raw_body)
432
- ApiResponse.new(
433
- _response,
434
- data: decoded.map { |element| Participant.from_hash(element) }
435
- )
436
- end
437
-
438
- # Add a participant to a session.
439
- # Subscriptions can optionally be provided as part of this call.
440
- # @param [String] account_id Required parameter: Account ID
441
- # @param [String] session_id Required parameter: Session ID
442
- # @param [String] participant_id Required parameter: Participant ID
443
- # @param [Subscriptions] body Optional parameter: Subscriptions the
444
- # participant should be created with
445
- # @return [void] response from the API call
446
- def add_participant_to_session(account_id,
447
- session_id,
448
- participant_id,
449
- body: nil)
450
- # Prepare query url.
451
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
452
- _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants/{participantId}'
453
- _query_builder = APIHelper.append_url_with_template_parameters(
454
- _query_builder,
455
- 'accountId' => { 'value' => account_id, 'encode' => false },
456
- 'sessionId' => { 'value' => session_id, 'encode' => false },
457
- 'participantId' => { 'value' => participant_id, 'encode' => false }
458
- )
459
- _query_url = APIHelper.clean_url _query_builder
460
-
461
- # Prepare headers.
462
- _headers = {
463
- 'content-type' => 'application/json; charset=utf-8'
464
- }
465
-
466
- # Prepare and execute HttpRequest.
467
- _request = config.http_client.put(
468
- _query_url,
469
- headers: _headers,
470
- parameters: body.to_json
471
- )
472
- WebRtcBasicAuth.apply(config, _request)
473
- _response = execute_request(_request)
474
-
475
- # Validate response against endpoint and global error codes.
476
- case _response.status_code
477
- when 401
478
- raise APIException.new(
479
- 'Unauthorized',
480
- _response
481
- )
482
- when 403
483
- raise APIException.new(
484
- 'Access Denied',
485
- _response
486
- )
487
- when 404
488
- raise APIException.new(
489
- 'Not Found',
490
- _response
491
- )
492
- end
493
- unless _response.status_code.between?(200, 208)
494
- raise ErrorException.new(
495
- 'Unexpected Error',
496
- _response
497
- )
498
- end
499
- validate_response(_response)
500
-
501
- # Return appropriate response type.
502
- ApiResponse.new(_response)
503
- end
504
-
505
- # Remove a participant from a session.
506
- # This will automatically remove any subscriptions the participant has
507
- # associated with this session.
508
- # @param [String] account_id Required parameter: Account ID
509
- # @param [String] session_id Required parameter: Session ID
510
- # @param [String] participant_id Required parameter: Participant ID
511
- # @return [void] response from the API call
512
- def remove_participant_from_session(account_id,
513
- session_id,
514
- participant_id)
515
- # Prepare query url.
516
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
517
- _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants/{participantId}'
518
- _query_builder = APIHelper.append_url_with_template_parameters(
519
- _query_builder,
520
- 'accountId' => { 'value' => account_id, 'encode' => false },
521
- 'sessionId' => { 'value' => session_id, 'encode' => false },
522
- 'participantId' => { 'value' => participant_id, 'encode' => false }
523
- )
524
- _query_url = APIHelper.clean_url _query_builder
525
-
526
- # Prepare and execute HttpRequest.
527
- _request = config.http_client.delete(
528
- _query_url
529
- )
530
- WebRtcBasicAuth.apply(config, _request)
531
- _response = execute_request(_request)
532
-
533
- # Validate response against endpoint and global error codes.
534
- case _response.status_code
535
- when 401
536
- raise APIException.new(
537
- 'Unauthorized',
538
- _response
539
- )
540
- when 403
541
- raise APIException.new(
542
- 'Access Denied',
543
- _response
544
- )
545
- when 404
546
- raise APIException.new(
547
- 'Not Found',
548
- _response
549
- )
550
- end
551
- unless _response.status_code.between?(200, 208)
552
- raise ErrorException.new(
553
- 'Unexpected Error',
554
- _response
555
- )
556
- end
557
- validate_response(_response)
558
-
559
- # Return appropriate response type.
560
- ApiResponse.new(_response)
561
- end
562
-
563
- # Get a participant's subscriptions.
564
- # @param [String] account_id Required parameter: Account ID
565
- # @param [String] session_id Required parameter: Session ID
566
- # @param [String] participant_id Required parameter: Participant ID
567
- # @return [Subscriptions] response from the API call
568
- def get_participant_subscriptions(account_id,
569
- session_id,
570
- participant_id)
571
- # Prepare query url.
572
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
573
- _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants/{participantId}/subscriptions'
574
- _query_builder = APIHelper.append_url_with_template_parameters(
575
- _query_builder,
576
- 'accountId' => { 'value' => account_id, 'encode' => false },
577
- 'sessionId' => { 'value' => session_id, 'encode' => false },
578
- 'participantId' => { 'value' => participant_id, 'encode' => false }
579
- )
580
- _query_url = APIHelper.clean_url _query_builder
581
-
582
- # Prepare headers.
583
- _headers = {
584
- 'accept' => 'application/json'
585
- }
586
-
587
- # Prepare and execute HttpRequest.
588
- _request = config.http_client.get(
589
- _query_url,
590
- headers: _headers
591
- )
592
- WebRtcBasicAuth.apply(config, _request)
593
- _response = execute_request(_request)
594
-
595
- # Validate response against endpoint and global error codes.
596
- case _response.status_code
597
- when 401
598
- raise APIException.new(
599
- 'Unauthorized',
600
- _response
601
- )
602
- when 403
603
- raise APIException.new(
604
- 'Access Denied',
605
- _response
606
- )
607
- when 404
608
- raise APIException.new(
609
- 'Not Found',
610
- _response
611
- )
612
- end
613
- unless _response.status_code.between?(200, 208)
614
- raise ErrorException.new(
615
- 'Unexpected Error',
616
- _response
617
- )
618
- end
619
- validate_response(_response)
620
-
621
- # Return appropriate response type.
622
- decoded = APIHelper.json_deserialize(_response.raw_body)
623
- ApiResponse.new(
624
- _response, data: Subscriptions.from_hash(decoded)
625
- )
626
- end
627
-
628
- # Update a participant's subscriptions.
629
- # This is a full update that will replace the participant's subscriptions.
630
- # First call `getParticipantSubscriptions` if you need the current
631
- # subscriptions. Call this function with no `Subscriptions` object to remove
632
- # all subscriptions.
633
- # @param [String] account_id Required parameter: Account ID
634
- # @param [String] session_id Required parameter: Session ID
635
- # @param [String] participant_id Required parameter: Participant ID
636
- # @param [Subscriptions] body Optional parameter: Initial state
637
- # @return [void] response from the API call
638
- def update_participant_subscriptions(account_id,
639
- session_id,
640
- participant_id,
641
- body: nil)
642
- # Prepare query url.
643
- _query_builder = config.get_base_uri(Server::WEBRTCDEFAULT)
644
- _query_builder << '/accounts/{accountId}/sessions/{sessionId}/participants/{participantId}/subscriptions'
645
- _query_builder = APIHelper.append_url_with_template_parameters(
646
- _query_builder,
647
- 'accountId' => { 'value' => account_id, 'encode' => false },
648
- 'sessionId' => { 'value' => session_id, 'encode' => false },
649
- 'participantId' => { 'value' => participant_id, 'encode' => false }
650
- )
651
- _query_url = APIHelper.clean_url _query_builder
652
-
653
- # Prepare headers.
654
- _headers = {
655
- 'content-type' => 'application/json; charset=utf-8'
656
- }
657
-
658
- # Prepare and execute HttpRequest.
659
- _request = config.http_client.put(
660
- _query_url,
661
- headers: _headers,
662
- parameters: body.to_json
663
- )
664
- WebRtcBasicAuth.apply(config, _request)
665
- _response = execute_request(_request)
666
-
667
- # Validate response against endpoint and global error codes.
668
- case _response.status_code
669
- when 400
670
- raise APIException.new(
671
- 'Bad Request',
672
- _response
673
- )
674
- when 401
675
- raise APIException.new(
676
- 'Unauthorized',
677
- _response
678
- )
679
- when 403
680
- raise APIException.new(
681
- 'Access Denied',
682
- _response
683
- )
684
- when 404
685
- raise APIException.new(
686
- 'Not Found',
687
- _response
688
- )
689
- end
690
- unless _response.status_code.between?(200, 208)
691
- raise ErrorException.new(
692
- 'Unexpected Error',
693
- _response
694
- )
695
- end
696
- validate_response(_response)
697
-
698
- # Return appropriate response type.
699
- ApiResponse.new(_response)
700
- end
701
- end
702
- end
703
- end