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,28 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The Bridge verb allows you to connect 2 calls
6
- class Bridge
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.Bridge(call_id, compact_hash({
11
- 'bridgeCompleteUrl' => bridge_complete_url,
12
- 'bridgeCompleteMethod' => bridge_complete_method,
13
- 'bridgeTargetCompleteUrl' => bridge_target_complete_url,
14
- 'bridgeTargetCompleteMethod' => bridge_target_complete_method,
15
- 'username' => username,
16
- 'password' => password,
17
- 'tag' => tag,
18
- 'bridgeCompleteFallbackUrl' => bridge_complete_fallback_url,
19
- 'bridgeCompleteFallbackMethod' => bridge_complete_fallback_method,
20
- 'bridgeTargetCompleteFallbackUrl' => bridge_target_complete_fallback_url,
21
- 'bridgeTargetCompleteFallbackMethod' => bridge_target_complete_fallback_method,
22
- 'fallbackUsername' => fallback_username,
23
- 'fallbackPassword' => fallback_password
24
- }))
25
- end
26
- end
27
- end
28
- end
@@ -1,32 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The Conference verb is used to add callees to conferences
6
- class Conference
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- if not call_ids_to_coach.nil?
11
- coach_ids = call_ids_to_coach.instance_of?(String) ? call_ids_to_coach : call_ids_to_coach.join(",")
12
- else
13
- coach_ids = nil
14
- end
15
- xml.Conference(conference_name, compact_hash({
16
- 'mute' => mute,
17
- 'hold' => hold,
18
- 'callIdsToCoach' => coach_ids,
19
- 'conferenceEventUrl' => conference_event_url,
20
- 'conferenceEventMethod' => conference_event_method,
21
- 'username' => username,
22
- 'password' => password,
23
- 'tag' => tag,
24
- 'conferenceEventFallbackUrl' => conference_event_fallback_url,
25
- 'conferenceEventFallbackMethod' => conference_event_fallback_method,
26
- 'fallbackUsername' => fallback_username,
27
- 'fallbackPassword' => fallback_password
28
- }))
29
- end
30
- end
31
- end
32
- end
@@ -1,18 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- class Forward
6
- include XmlVerb
7
- def to_bxml(xml)
8
- xml.Forward(compact_hash({
9
- 'to' => to,
10
- 'from' => from,
11
- 'callTimeout' => call_timeout,
12
- 'diversionTreatment' => diversion_treatment,
13
- 'diversionReason' => diversion_reason
14
- }))
15
- end
16
- end
17
- end
18
- end
@@ -1,49 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The Gather verb is used to collect digits for some period of time
6
- class Gather
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.Gather(compact_hash({
11
- 'gatherUrl' => gather_url,
12
- 'gatherMethod' => gather_method,
13
- 'terminatingDigits' => terminating_digits,
14
- 'tag' => tag,
15
- 'maxDigits' => max_digits,
16
- 'interDigitTimeout' => inter_digit_timeout,
17
- 'username' => username,
18
- 'password' => password,
19
- 'firstDigitTimeout' => first_digit_timeout,
20
- 'repeatCount' => repeat_count,
21
- 'gatherFallbackUrl' => gather_fallback_url,
22
- 'gatherFallbackMethod' => gather_fallback_method,
23
- 'fallbackUsername' => fallback_username,
24
- 'fallbackPassword' => fallback_password
25
- })) do
26
- def embedded_xml(xml, property, type)
27
- if property
28
- s = if property.is_a?(type)
29
- then property
30
- else type.new(property)
31
- end
32
- s.to_bxml(xml)
33
- end
34
- end
35
- def nest_verbs_list(xml, property)
36
- if property
37
- property.each do |verb|
38
- verb.to_bxml(xml)
39
- end
40
- end
41
- end
42
- embedded_xml(xml, speak_sentence, SpeakSentence)
43
- embedded_xml(xml, play_audio, PlayAudio)
44
- nest_verbs_list(xml, nested_verbs)
45
- end
46
- end
47
- end
48
- end
49
- end
@@ -1,14 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The Hangup verb is used to hangup current call
6
- class Hangup
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.Hangup()
11
- end
12
- end
13
- end
14
- end
@@ -1,15 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- class Pause
6
- include XmlVerb
7
-
8
- def to_bxml(xml)
9
- xml.Pause(compact_hash({
10
- 'duration' => duration
11
- }))
12
- end
13
- end
14
- end
15
- end
@@ -1,14 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The PauseRecording verb is used to pause recording in a call
6
- class PauseRecording
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.PauseRecording()
11
- end
12
- end
13
- end
14
- end
@@ -1,24 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- class PhoneNumber
6
- include XmlVerb
7
- def to_bxml(xml)
8
- xml.PhoneNumber(number, compact_hash({
9
- 'transferAnswerUrl' => transfer_answer_url,
10
- 'transferAnswerMethod' => transfer_answer_method,
11
- 'transferDisconnectUrl' => transfer_disconnect_url,
12
- 'transferDisconnectMethod' => transfer_disconnect_method,
13
- 'username' => username,
14
- 'password' => password,
15
- 'tag' => tag,
16
- 'transferAnswerFallbackUrl' => transfer_answer_fallback_url,
17
- 'transferAnswerFallbackMethod' => transfer_answer_fallback_method,
18
- 'fallbackUsername' => fallback_username,
19
- 'fallbackPassword' => fallback_password
20
- }))
21
- end
22
- end
23
- end
24
- end
@@ -1,17 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The PlayAudio verb is used to play an audio file in the call
6
- class PlayAudio
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.PlayAudio(url, compact_hash({
11
- 'username' => username,
12
- 'password' => password
13
- }))
14
- end
15
- end
16
- end
17
- end
@@ -1,33 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The Record verb is used to trigger call recording
6
- class Record
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.Record(compact_hash({
11
- 'tag' => tag,
12
- 'username' => username,
13
- 'password' => password,
14
- 'recordCompleteUrl' => record_complete_url,
15
- 'recordCompleteMethod' => record_complete_method,
16
- 'recordingAvailableUrl' => recording_available_url,
17
- 'recordingAvailableMethod' => recording_available_method,
18
- 'terminatingDigits' => terminating_digits,
19
- 'maxDuration' => max_duration,
20
- 'fileFormat' => file_format,
21
- 'transcribe' => transcribe,
22
- 'transcriptionAvailableUrl' => transcription_available_url,
23
- 'transcriptionAvailableMethod' => transcription_available_method,
24
- 'silenceTimeout' => silence_timeout,
25
- 'recordCompleteFallbackUrl' => record_complete_fallback_url,
26
- 'recordCompleteFallbackMethod' => record_complete_fallback_method,
27
- 'fallbackUsername' => fallback_username,
28
- 'fallbackPassword' => fallback_password
29
- }))
30
- end
31
- end
32
- end
33
- end
@@ -1,24 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The Redirect verb is used to redirect the current XML execution to another URL
6
- class Redirect
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.Redirect(compact_hash({
11
- 'redirectUrl' => redirect_url,
12
- 'redirectMethod' => redirect_method,
13
- 'tag' => tag,
14
- 'username' => username,
15
- 'password' => password,
16
- 'redirectFallbackUrl' => redirect_fallback_url,
17
- 'redirectFallbackMethod' => redirect_fallback_method,
18
- 'fallbackUsername' => fallback_username,
19
- 'fallbackPassword' => fallback_password
20
- }))
21
- end
22
- end
23
- end
24
- end
@@ -1,14 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The ResumeRecording verb is used to resume recording in a call
6
- class ResumeRecording
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.ResumeRecording()
11
- end
12
- end
13
- end
14
- end
@@ -1,16 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- class Ring
6
- include XmlVerb
7
-
8
- def to_bxml(xml)
9
- xml.Ring(compact_hash({
10
- 'duration' => duration,
11
- 'answerCall' => answer_call
12
- }))
13
- end
14
- end
15
- end
16
- end
@@ -1,16 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- class SendDtmf
6
- include XmlVerb
7
-
8
- def to_bxml(xml)
9
- xml.SendDtmf(dtmf, compact_hash({
10
- 'toneDuration' => tone_duration,
11
- 'toneInterval' => tone_interval
12
- }))
13
- end
14
- end
15
- end
16
- end
@@ -1,25 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- class SipUri
6
- include XmlVerb
7
- def to_bxml(xml)
8
- xml.SipUri(uri, compact_hash({
9
- 'transferAnswerUrl' => transfer_answer_url,
10
- 'transferAnswerMethod' => transfer_answer_method,
11
- 'transferDisconnectUrl' => transfer_disconnect_url,
12
- 'transferDisconnectMethod' => transfer_disconnect_method,
13
- 'username' => username,
14
- 'password' => password,
15
- 'tag' => tag,
16
- 'uui' => uui,
17
- 'transferAnswerFallbackUrl' => transfer_answer_fallback_url,
18
- 'transferAnswerFallbackMethod' => transfer_answer_fallback_method,
19
- 'fallbackUsername' => fallback_username,
20
- 'fallbackPassword' => fallback_password
21
- }))
22
- end
23
- end
24
- end
25
- end
@@ -1,18 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The SpeakSentence verb is used to convert any text into speak for the caller
6
- class SpeakSentence
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.SpeakSentence(sentence, compact_hash({
11
- 'voice' => voice,
12
- 'locale' => locale,
13
- 'gender' => gender
14
- }))
15
- end
16
- end
17
- end
18
- end
@@ -1,20 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The StartGather verb is used to start a gather
6
- class StartGather
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.StartGather(compact_hash({
11
- 'username' => username,
12
- 'password' => password,
13
- 'tag' => tag,
14
- 'dtmfUrl' => dtmf_url,
15
- 'dtmfMethod' => dtmf_method,
16
- }))
17
- end
18
- end
19
- end
20
- end
@@ -1,25 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The StartRecording verb is used to trigger call recording
6
- class StartRecording
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.StartRecording(compact_hash({
11
- 'tag' => tag,
12
- 'username' => username,
13
- 'password' => password,
14
- 'recordingAvailableUrl' => recording_available_url,
15
- 'recordingAvailableMethod' => recording_available_method,
16
- 'fileFormat' => file_format,
17
- 'multiChannel' => multi_channel,
18
- 'transcribe' => transcribe,
19
- 'transcriptionAvailableUrl' => transcription_available_url,
20
- 'transcriptionAvailableMethod' => transcription_available_method
21
- }))
22
- end
23
- end
24
- end
25
- end
@@ -1,41 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The StartStream verb allows a segment of a call to be sent off to another destination for additional processing
6
- class StartStream
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.StartStream(compact_hash({
11
- 'destination' => destination,
12
- 'name' => name,
13
- 'tracks' => tracks,
14
- 'streamEventUrl' => streamEventUrl,
15
- 'streamEventMethod' => streamEventMethod,
16
- 'username' => username,
17
- 'password' => password
18
- })) do
19
- def embedded_xml(xml, property, type)
20
- if property
21
- s = if property.is_a?(type)
22
- then property
23
- else type.new(property)
24
- end
25
- s.to_bxml(xml)
26
- end
27
- end
28
- def nest_verbs_list(xml, property)
29
- if property
30
- property.each do |verb|
31
- verb.to_bxml(xml)
32
- end
33
- end
34
- end
35
- embedded_xml(xml, stream_params, StreamParam)
36
- nest_verbs_list(xml, nested_verbs)
37
- end
38
- end
39
- end
40
- end
41
- end
@@ -1,14 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The StopGather verb is used to complete a gather
6
- class StopGather
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.StopGather()
11
- end
12
- end
13
- end
14
- end
@@ -1,14 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The StopRecording verb is used to stop recording in a call
6
- class StopRecording
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.StopRecording()
11
- end
12
- end
13
- end
14
- end
@@ -1,16 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The StopStream verb is used to stop a stream that was started with a previous `<StartStream>` verb
6
- class StopStream
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.StopStream(compact_hash({
11
- 'name' => name
12
- }))
13
- end
14
- end
15
- end
16
- end
@@ -1,17 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The StartStream verb allows a segment of a call to be sent off to another destination for additional processing
6
- class StreamParam
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.StreamParam(compact_hash({
11
- 'name' => name,
12
- 'value' => value
13
- }))
14
- end
15
- end
16
- end
17
- end
@@ -1,13 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- class Tag
6
- include XmlVerb
7
-
8
- def to_bxml(xml)
9
- xml.Tag(tag)
10
- end
11
- end
12
- end
13
- end
@@ -1,48 +0,0 @@
1
- require_relative 'xml_verb'
2
-
3
- module Bandwidth
4
- module Voice
5
- # The Transfer verb is used to transfer the call to another number
6
- class Transfer
7
- include XmlVerb
8
-
9
- def to_bxml(xml)
10
- xml.Transfer(compact_hash({
11
- 'transferCallerId' => transfer_caller_id,
12
- 'callTimeout' => call_timeout,
13
- 'tag' => tag,
14
- 'transferCompleteUrl' => transfer_complete_url,
15
- 'transferCompleteMethod' => transfer_complete_method,
16
- 'username' => username,
17
- 'password' => password,
18
- 'diversionTreatment' => diversion_treatment,
19
- 'diversionReason' => diversion_reason,
20
- 'transferCompleteFallbackUrl' => transfer_complete_fallback_url,
21
- 'transferCompleteFallbackMethod' => transfer_complete_fallback_method,
22
- 'fallbackUsername' => fallback_username,
23
- 'fallbackPassword' => fallback_password
24
- })) do
25
- def embedded_xml(xml, property, type)
26
- if property
27
- s = if property.is_a?(type)
28
- then property
29
- else type.new(property)
30
- end
31
- s.to_bxml(xml)
32
- end
33
- end
34
- if not phone_numbers.nil?
35
- phone_numbers.each do |number|
36
- embedded_xml(xml, number, PhoneNumber)
37
- end
38
- end
39
- if not sip_uris.nil?
40
- sip_uris.each do |sip_uri|
41
- embedded_xml(xml, sip_uri, SipUri)
42
- end
43
- end
44
- end
45
- end
46
- end
47
- end
48
- end
@@ -1,26 +0,0 @@
1
- module Bandwidth
2
- module Voice
3
- module XmlVerb
4
- def initialize(data = nil)
5
- @data = (data || {}).clone()
6
- end
7
-
8
- def method_missing(name, *args, &block)
9
- if name[name.size - 1] == '='
10
- @data[name[0..-2].to_sym] = args[0]
11
- else
12
- @data[name]
13
- end
14
- end
15
-
16
- def compact_hash(hash)
17
- hash.inject({}) do |new_hash, (k,v)|
18
- if !v.nil?
19
- new_hash[k] = v.class == Hash ? compact_hash(v) : v
20
- end
21
- new_hash
22
- end
23
- end
24
- end
25
- end
26
- end