twilio-ruby 5.40.3 → 5.74.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 (916) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/pr-lint.yml +21 -0
  3. data/.github/workflows/test-and-deploy.yml +129 -0
  4. data/.gitignore +5 -1
  5. data/.rubocop.yml +1 -1
  6. data/.rubocop_todo.yml +91 -28
  7. data/CHANGES.md +1145 -0
  8. data/Gemfile +1 -0
  9. data/{LICENSE.md → LICENSE} +1 -1
  10. data/Makefile +12 -11
  11. data/PULL_REQUEST_TEMPLATE.md +4 -4
  12. data/README.md +44 -6
  13. data/examples/examples.rb +1 -1
  14. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  15. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +0 -0
  16. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +0 -0
  17. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  18. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  19. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  20. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  21. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +0 -0
  22. data/lib/twilio-ruby/http/http_client.rb +20 -4
  23. data/lib/twilio-ruby/http.rb +5 -0
  24. data/lib/twilio-ruby/jwt/access_token.rb +20 -2
  25. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  26. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  27. data/lib/twilio-ruby/rest/accounts/v1.rb +14 -0
  28. data/lib/twilio-ruby/rest/accounts.rb +12 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +2 -2
  30. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +22 -6
  31. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +3 -3
  32. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +4 -4
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +31 -31
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +31 -31
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +31 -31
  36. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +31 -31
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +31 -31
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +31 -31
  39. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +31 -31
  40. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +3 -3
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +44 -44
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +13 -13
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +6 -6
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +23 -23
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +27 -15
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +674 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +674 -0
  49. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +160 -0
  50. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +251 -0
  51. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +183 -39
  52. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +102 -50
  53. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +5 -5
  54. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +7 -7
  55. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +6 -6
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +3 -3
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +3 -3
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +14 -7
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +14 -7
  60. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +14 -7
  61. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +27 -20
  62. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +1 -1
  63. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +4 -4
  64. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +3 -3
  65. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +63 -34
  66. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +3 -3
  67. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +3 -3
  68. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +7 -7
  69. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +6 -6
  70. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +3 -3
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +3 -3
  72. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +7 -7
  73. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +41 -14
  74. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +3 -3
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +3 -3
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +3 -3
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +2 -2
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +3 -3
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +2 -2
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +2 -2
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +12 -12
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +11 -11
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +7 -4
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +6 -6
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +4 -4
  86. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +3 -3
  87. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +4 -4
  88. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +7 -7
  89. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +7 -7
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +7 -7
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +7 -7
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +7 -7
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +7 -7
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +7 -7
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +7 -7
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +7 -7
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +18 -18
  98. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +3 -3
  99. data/lib/twilio-ruby/rest/api/v2010.rb +5 -4
  100. data/lib/twilio-ruby/rest/api.rb +2 -2
  101. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +3 -3
  102. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +3 -3
  103. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +11 -11
  104. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +3 -3
  105. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +3 -3
  106. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +26 -26
  107. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +3 -3
  108. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +9 -9
  109. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +24 -24
  110. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +8 -8
  111. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +8 -8
  112. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +6 -6
  113. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +3 -3
  114. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +12 -12
  115. data/lib/twilio-ruby/rest/autopilot/v1.rb +5 -4
  116. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +13 -35
  117. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +44 -49
  118. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +20 -12
  119. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +7 -12
  120. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +5 -11
  121. data/lib/twilio-ruby/rest/bulkexports/v1.rb +14 -10
  122. data/lib/twilio-ruby/rest/bulkexports.rb +4 -2
  123. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +22 -22
  124. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +31 -31
  125. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +8 -8
  126. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +11 -11
  127. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +14 -14
  128. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +2 -2
  129. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +9 -9
  130. data/lib/twilio-ruby/rest/chat/v1/service.rb +41 -41
  131. data/lib/twilio-ruby/rest/chat/v1.rb +10 -8
  132. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +25 -25
  133. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +22 -22
  134. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +57 -57
  135. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +26 -26
  136. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +39 -36
  137. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +23 -23
  138. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +14 -14
  139. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +25 -25
  140. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +30 -24
  141. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +9 -9
  142. data/lib/twilio-ruby/rest/chat/v2/service.rb +43 -43
  143. data/lib/twilio-ruby/rest/chat/v2.rb +10 -8
  144. data/lib/twilio-ruby/rest/chat/v3/channel.rb +275 -0
  145. data/lib/twilio-ruby/rest/chat/v3.rb +48 -0
  146. data/lib/twilio-ruby/rest/chat.rb +16 -0
  147. data/lib/twilio-ruby/rest/client.rb +85 -15
  148. data/lib/twilio-ruby/rest/{preview/trusted_comms/business/brand.rb → content/v1/content/approval_fetch.rb} +56 -94
  149. data/lib/twilio-ruby/rest/content/v1/content.rb +346 -0
  150. data/lib/twilio-ruby/rest/content/v1.rb +45 -0
  151. data/lib/twilio-ruby/rest/content.rb +47 -0
  152. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +454 -0
  153. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +9 -17
  154. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +10 -18
  155. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +8 -16
  156. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +35 -21
  157. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +44 -22
  158. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +12 -20
  159. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +24 -17
  160. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +0 -8
  161. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  162. data/lib/twilio-ruby/rest/conversations/v1/role.rb +13 -21
  163. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +28 -36
  164. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +20 -12
  165. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +269 -0
  166. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +39 -24
  167. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +14 -22
  168. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +40 -26
  169. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +50 -28
  170. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +18 -26
  171. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +31 -22
  172. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  173. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +19 -27
  174. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  175. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +93 -31
  176. data/lib/twilio-ruby/rest/conversations/v1/service.rb +24 -9
  177. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/user.rb +78 -25
  179. data/lib/twilio-ruby/rest/conversations/v1.rb +49 -20
  180. data/lib/twilio-ruby/rest/conversations.rb +15 -0
  181. data/lib/twilio-ruby/rest/events/v1/event_type.rb +16 -9
  182. data/lib/twilio-ruby/rest/events/v1/schema/{schema_version.rb → version.rb} +42 -42
  183. data/lib/twilio-ruby/rest/events/v1/schema.rb +16 -16
  184. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +3 -3
  185. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +3 -3
  186. data/lib/twilio-ruby/rest/events/v1/sink.rb +49 -11
  187. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +139 -9
  188. data/lib/twilio-ruby/rest/events/v1/subscription.rb +27 -13
  189. data/lib/twilio-ruby/rest/events/v1.rb +20 -16
  190. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +156 -0
  191. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +5 -5
  192. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +60 -4
  193. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +125 -92
  194. data/lib/twilio-ruby/rest/flex_api/v1/good_data.rb +190 -0
  195. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +236 -0
  196. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +330 -0
  197. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +405 -0
  198. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +233 -0
  199. data/lib/twilio-ruby/rest/flex_api/v1/user_roles.rb +166 -0
  200. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +2 -2
  201. data/lib/twilio-ruby/rest/flex_api/v1.rb +53 -13
  202. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +133 -0
  203. data/lib/twilio-ruby/rest/flex_api/v2.rb +35 -0
  204. data/lib/twilio-ruby/rest/flex_api.rb +41 -1
  205. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +258 -0
  206. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  207. data/lib/twilio-ruby/rest/{fax.rb → frontline_api.rb} +11 -11
  208. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +322 -0
  209. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +29 -9
  210. data/lib/twilio-ruby/rest/insights/v1/call.rb +16 -8
  211. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +441 -0
  212. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +474 -0
  213. data/lib/twilio-ruby/rest/insights/v1/conference.rb +512 -0
  214. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  215. data/lib/twilio-ruby/rest/insights/v1/room.rb +499 -0
  216. data/lib/twilio-ruby/rest/insights/v1/setting.rb +215 -0
  217. data/lib/twilio-ruby/rest/insights/v1.rb +51 -4
  218. data/lib/twilio-ruby/rest/insights.rb +28 -0
  219. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +29 -68
  220. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +23 -55
  221. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +28 -71
  222. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +32 -60
  223. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +34 -61
  224. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +19 -39
  225. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +12 -18
  226. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +30 -52
  227. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +200 -315
  228. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +16 -16
  229. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +29 -66
  230. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +23 -50
  231. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +23 -50
  232. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +42 -118
  233. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +47 -101
  234. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +36 -89
  235. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +43 -93
  236. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +19 -41
  237. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +23 -53
  238. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +27 -56
  239. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +30 -54
  240. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +120 -209
  241. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +16 -14
  242. data/lib/twilio-ruby/rest/ip_messaging.rb +8 -10
  243. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +24 -24
  244. data/lib/twilio-ruby/rest/lookups/v1.rb +6 -5
  245. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +336 -0
  246. data/lib/twilio-ruby/rest/lookups/v2.rb +45 -0
  247. data/lib/twilio-ruby/rest/lookups.rb +8 -1
  248. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +397 -0
  249. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -0
  250. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +221 -0
  251. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +403 -0
  252. data/lib/twilio-ruby/rest/media/v1.rb +76 -0
  253. data/lib/twilio-ruby/rest/media.rb +65 -0
  254. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +353 -0
  255. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +453 -0
  256. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +257 -0
  257. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +267 -0
  258. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  259. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +6 -6
  260. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +4 -4
  261. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +4 -4
  262. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +528 -0
  263. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  264. data/lib/twilio-ruby/rest/messaging/v1/service.rb +181 -63
  265. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +699 -0
  266. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  267. data/lib/twilio-ruby/rest/messaging/v1.rb +85 -4
  268. data/lib/twilio-ruby/rest/messaging.rb +46 -0
  269. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +305 -0
  270. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +339 -0
  271. data/lib/twilio-ruby/rest/microvisor/v1.rb +60 -0
  272. data/lib/twilio-ruby/rest/microvisor.rb +54 -0
  273. data/lib/twilio-ruby/rest/monitor/v1/event.rb +15 -15
  274. data/lib/twilio-ruby/rest/monitor/v1.rb +10 -8
  275. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +26 -25
  276. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +34 -34
  277. data/lib/twilio-ruby/rest/notify/v1/service.rb +24 -24
  278. data/lib/twilio-ruby/rest/notify/v1.rb +10 -8
  279. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +268 -0
  280. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +1 -1
  281. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +188 -0
  282. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +128 -26
  283. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +1 -1
  284. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +7 -0
  285. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +1 -1
  286. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +153 -0
  287. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +162 -0
  288. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +242 -0
  289. data/lib/twilio-ruby/rest/oauth/v1/token.rb +157 -0
  290. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +193 -0
  291. data/lib/twilio-ruby/rest/oauth/v1.rb +63 -0
  292. data/lib/twilio-ruby/rest/oauth.rb +68 -0
  293. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +5 -4
  294. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +10 -10
  295. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +23 -23
  296. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +11 -11
  297. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +10 -8
  298. data/lib/twilio-ruby/rest/preview/marketplace.rb +10 -8
  299. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +4 -8
  300. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +1 -1
  301. data/lib/twilio-ruby/rest/preview/sync.rb +5 -4
  302. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +2 -2
  303. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +2 -2
  304. data/lib/twilio-ruby/rest/preview/understand.rb +5 -4
  305. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +3 -3
  306. data/lib/twilio-ruby/rest/preview/wireless.rb +15 -12
  307. data/lib/twilio-ruby/rest/preview.rb +0 -69
  308. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +6 -6
  309. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +2 -2
  310. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +5 -5
  311. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +2 -2
  312. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +6 -6
  313. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +2 -2
  314. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  315. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  316. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +6 -6
  317. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +5 -5
  318. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +3 -3
  319. data/lib/twilio-ruby/rest/pricing/v2.rb +37 -0
  320. data/lib/twilio-ruby/rest/pricing.rb +19 -0
  321. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +12 -12
  322. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +6 -6
  323. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +10 -10
  324. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +8 -21
  325. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +12 -53
  326. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +8 -8
  327. data/lib/twilio-ruby/rest/proxy/v1/service.rb +16 -16
  328. data/lib/twilio-ruby/rest/proxy/v1.rb +5 -4
  329. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +235 -0
  330. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +231 -0
  331. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +235 -0
  332. data/lib/twilio-ruby/rest/routes/v2.rb +76 -0
  333. data/lib/twilio-ruby/rest/routes.rb +62 -0
  334. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +4 -4
  335. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +4 -4
  336. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  337. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +46 -11
  338. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +4 -4
  339. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +4 -4
  340. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +4 -4
  341. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +5 -5
  342. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +4 -4
  343. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +4 -4
  344. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +4 -4
  345. data/lib/twilio-ruby/rest/serverless/v1/service.rb +12 -5
  346. data/lib/twilio-ruby/rest/serverless/v1.rb +5 -4
  347. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +7 -7
  348. data/lib/twilio-ruby/rest/studio/v1/flow.rb +1 -1
  349. data/lib/twilio-ruby/rest/studio/v1.rb +5 -4
  350. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +0 -8
  351. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +0 -8
  352. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +0 -8
  353. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +7 -15
  354. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +3 -11
  355. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +10 -16
  356. data/lib/twilio-ruby/rest/studio/v2/flow.rb +7 -15
  357. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +6 -11
  358. data/lib/twilio-ruby/rest/studio/v2.rb +5 -4
  359. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +372 -0
  360. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +109 -37
  361. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +419 -0
  362. data/lib/twilio-ruby/rest/supersim/v1/network.rb +11 -11
  363. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +5 -5
  364. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +6 -6
  365. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -0
  366. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  367. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +195 -0
  368. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +76 -11
  369. data/lib/twilio-ruby/rest/supersim/v1/{command.rb → sms_command.rb} +85 -82
  370. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +32 -18
  371. data/lib/twilio-ruby/rest/supersim/v1.rb +69 -25
  372. data/lib/twilio-ruby/rest/supersim.rb +30 -6
  373. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +6 -14
  374. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +26 -43
  375. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +48 -55
  376. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +6 -14
  377. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +19 -31
  378. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +54 -63
  379. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +7 -15
  380. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +19 -31
  381. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +5 -11
  382. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +15 -29
  383. data/lib/twilio-ruby/rest/sync/v1/service.rb +4 -12
  384. data/lib/twilio-ruby/rest/sync/v1.rb +5 -4
  385. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +7 -0
  386. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +7 -7
  387. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +47 -30
  388. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +51 -24
  389. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +16 -16
  390. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +24 -20
  391. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +6 -6
  392. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +6 -6
  393. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +9 -9
  394. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +18 -12
  395. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +29 -25
  396. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +3 -3
  397. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +4 -4
  398. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +11 -11
  399. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +2 -2
  400. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +6 -6
  401. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +35 -17
  402. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +21 -19
  403. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +2 -2
  404. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +6 -6
  405. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +13 -13
  406. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +21 -19
  407. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +4 -4
  408. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +6 -6
  409. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +49 -34
  410. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -4
  411. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +2 -2
  412. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +2 -2
  413. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +2 -2
  414. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +2 -2
  415. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +21 -24
  416. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +47 -31
  417. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -4
  418. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  419. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  420. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  421. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  422. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  423. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  424. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  425. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  426. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  427. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  428. data/lib/twilio-ruby/rest/{fax/v1/fax/fax_media.rb → trusthub/v1/trust_products/trust_products_entity_assignments.rb} +101 -85
  429. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  430. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  431. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  432. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  433. data/lib/twilio-ruby/rest/verify/v2/form.rb +4 -4
  434. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +215 -0
  435. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +153 -16
  436. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +199 -0
  437. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +121 -63
  438. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +92 -94
  439. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +303 -0
  440. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +49 -41
  441. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +12 -12
  442. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +5 -5
  443. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +3 -3
  444. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +39 -20
  445. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +13 -6
  446. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +34 -23
  447. data/lib/twilio-ruby/rest/verify/v2/service.rb +144 -36
  448. data/lib/twilio-ruby/rest/verify/v2/template.rb +213 -0
  449. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +397 -0
  450. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +234 -0
  451. data/lib/twilio-ruby/rest/verify/v2.rb +58 -8
  452. data/lib/twilio-ruby/rest/verify.rb +29 -0
  453. data/lib/twilio-ruby/rest/video/v1/composition.rb +49 -35
  454. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +50 -58
  455. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +6 -6
  456. data/lib/twilio-ruby/rest/video/v1/recording.rb +35 -14
  457. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +6 -6
  458. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +15 -8
  459. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +240 -0
  460. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +3 -3
  461. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +25 -9
  462. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +144 -0
  463. data/lib/twilio-ruby/rest/video/v1/room.rb +102 -18
  464. data/lib/twilio-ruby/rest/video/v1.rb +20 -16
  465. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +184 -0
  466. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +9 -9
  467. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +2 -2
  468. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +1 -1
  469. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +4 -4
  470. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +23 -23
  471. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +2 -2
  472. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +3 -3
  473. data/lib/twilio-ruby/rest/voice/v1.rb +41 -16
  474. data/lib/twilio-ruby/rest/voice.rb +8 -0
  475. data/lib/twilio-ruby/rest/wireless/v1/command.rb +7 -7
  476. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +16 -16
  477. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +6 -6
  478. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +10 -10
  479. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +38 -48
  480. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +6 -6
  481. data/lib/twilio-ruby/rest/wireless/v1.rb +15 -12
  482. data/lib/twilio-ruby/rest.rb +13 -0
  483. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  484. data/lib/twilio-ruby/twiml/voice_response.rb +850 -157
  485. data/lib/twilio-ruby/util/configuration.rb +5 -1
  486. data/lib/twilio-ruby/version.rb +1 -1
  487. data/lib/twilio-ruby.rb +7 -17
  488. data/sonar-project.properties +13 -0
  489. data/twilio-ruby.gemspec +5 -5
  490. metadata +136 -860
  491. data/.travis.yml +0 -44
  492. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -536
  493. data/lib/twilio-ruby/rest/fax/v1.rb +0 -44
  494. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -308
  495. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -291
  496. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -247
  497. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -248
  498. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -232
  499. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -58
  500. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb +0 -243
  501. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  502. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel/channel.rb +0 -189
  503. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel.rb +0 -260
  504. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights/impressions_rate.rb +0 -260
  505. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb +0 -108
  506. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +0 -239
  507. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  508. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  509. data/lib/twilio-ruby/rest/preview/trusted_comms/phone_call.rb +0 -342
  510. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -79
  511. data/spec/framework/request_spec.rb +0 -36
  512. data/spec/framework/serialize_spec.rb +0 -80
  513. data/spec/framework/version_spec.rb +0 -219
  514. data/spec/holodeck/holodeck.rb +0 -66
  515. data/spec/holodeck/hologram.rb +0 -4
  516. data/spec/http/http_client_spec.rb +0 -122
  517. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  518. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  519. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  520. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  521. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  522. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  523. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  524. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  525. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  526. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  527. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  528. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  529. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  530. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  531. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  532. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  533. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  534. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  535. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  536. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  537. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -283
  538. data/spec/integration/api/v2010/account/call_spec.rb +0 -650
  539. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -708
  540. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  541. data/spec/integration/api/v2010/account/conference_spec.rb +0 -458
  542. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  543. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  544. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  545. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  546. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  547. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  548. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  549. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  550. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  551. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  552. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  553. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  554. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  555. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  556. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  557. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  558. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  559. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  560. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  561. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  562. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  563. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  564. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  565. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  566. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  567. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  568. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  569. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  570. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  571. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  572. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  573. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  574. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  575. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  576. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  577. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  578. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  579. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  580. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  581. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  582. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  583. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  584. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  585. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  586. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  587. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  588. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  589. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  590. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  591. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  592. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  593. data/spec/integration/api/v2010/account_spec.rb +0 -327
  594. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  595. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  596. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  597. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  598. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  599. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  600. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  601. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  602. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  603. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  604. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  605. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  606. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  607. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  608. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  609. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  610. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -127
  611. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  612. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  613. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  614. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  615. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  616. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  617. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  618. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  619. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  620. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  621. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  622. data/spec/integration/chat/v1/service_spec.rb +0 -295
  623. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  624. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  625. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  626. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  627. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  628. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  629. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  630. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  631. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  632. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  633. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  634. data/spec/integration/chat/v2/service_spec.rb +0 -350
  635. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  636. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  637. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  638. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  639. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -382
  640. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  641. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  642. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  643. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  644. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  645. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  646. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -87
  647. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  648. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  649. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -407
  650. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  651. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  652. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  653. data/spec/integration/conversations/v1/service/user_spec.rb +0 -230
  654. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  655. data/spec/integration/conversations/v1/user_spec.rb +0 -220
  656. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  657. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  658. data/spec/integration/events/v1/schema_spec.rb +0 -46
  659. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  660. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  661. data/spec/integration/events/v1/sink_spec.rb +0 -217
  662. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  663. data/spec/integration/events/v1/subscription_spec.rb +0 -243
  664. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  665. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  666. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  667. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -554
  668. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  669. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  670. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  671. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  672. data/spec/integration/insights/v1/call/summary_spec.rb +0 -62
  673. data/spec/integration/insights/v1/call_spec.rb +0 -46
  674. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  675. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  676. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  677. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  678. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  679. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  680. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  681. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  682. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  683. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  684. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  685. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  686. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  687. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  688. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  689. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  690. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  691. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  692. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  693. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  694. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  695. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  696. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  697. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  698. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  699. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  700. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  701. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  702. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  703. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  704. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  705. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  706. data/spec/integration/notify/v1/service_spec.rb +0 -289
  707. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  708. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  709. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  710. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  711. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  712. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  713. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  714. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  715. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  716. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  717. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -127
  718. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  719. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  720. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  721. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  722. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  723. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  724. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  725. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  726. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  727. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  728. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  729. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  730. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  731. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  732. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  733. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  734. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  735. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  736. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  737. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  738. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  739. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  740. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  741. data/spec/integration/preview/sync/service_spec.rb +0 -241
  742. data/spec/integration/preview/trusted_comms/branded_call_spec.rb +0 -59
  743. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  744. data/spec/integration/preview/trusted_comms/business/brand/branded_channel/channel_spec.rb +0 -54
  745. data/spec/integration/preview/trusted_comms/business/brand/branded_channel_spec.rb +0 -51
  746. data/spec/integration/preview/trusted_comms/business/brand_spec.rb +0 -48
  747. data/spec/integration/preview/trusted_comms/business/insights/impressions_rate_spec.rb +0 -56
  748. data/spec/integration/preview/trusted_comms/business/insights_spec.rb +0 -12
  749. data/spec/integration/preview/trusted_comms/business_spec.rb +0 -46
  750. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  751. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  752. data/spec/integration/preview/trusted_comms/phone_call_spec.rb +0 -59
  753. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  754. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  755. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  756. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  757. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  758. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  759. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  760. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  761. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  762. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  763. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  764. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  765. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  766. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  767. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  768. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  769. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  770. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  771. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  772. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  773. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  774. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  775. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  776. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  777. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  778. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  779. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  780. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  781. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  782. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  783. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  784. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  785. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  786. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  787. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  788. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  789. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  790. data/spec/integration/serverless/v1/service/build_spec.rb +0 -208
  791. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  792. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  793. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  794. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  795. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  796. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  797. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  798. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  799. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  800. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  801. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  802. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  803. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  804. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  805. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  806. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  807. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  808. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  809. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  810. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  811. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  812. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  813. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  814. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  815. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  816. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  817. data/spec/integration/supersim/v1/fleet_spec.rb +0 -214
  818. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  819. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  820. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  821. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  822. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  823. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  824. data/spec/integration/sync/v1/service/document_spec.rb +0 -256
  825. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  826. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  827. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  828. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  829. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  830. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  831. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  832. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  833. data/spec/integration/sync/v1/service_spec.rb +0 -261
  834. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  835. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  836. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  837. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  838. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  839. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  840. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  841. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  842. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  843. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  844. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  845. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  846. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  847. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  848. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  849. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  850. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  851. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  852. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  853. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  854. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  855. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  856. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  857. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  858. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  859. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  860. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  861. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  862. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  863. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -79
  864. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  865. data/spec/integration/verify/v2/form_spec.rb +0 -47
  866. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  867. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -252
  868. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -292
  869. data/spec/integration/verify/v2/service/entity_spec.rb +0 -209
  870. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  871. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  872. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  873. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  874. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  875. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  876. data/spec/integration/verify/v2/service_spec.rb +0 -275
  877. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  878. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  879. data/spec/integration/video/v1/composition_spec.rb +0 -347
  880. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  881. data/spec/integration/video/v1/recording_spec.rb +0 -176
  882. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  883. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  884. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  885. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  886. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  887. data/spec/integration/video/v1/room_spec.rb +0 -291
  888. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  889. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  890. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  891. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  892. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  893. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  894. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  895. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  896. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  897. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  898. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  899. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  900. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  901. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  902. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  903. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  904. data/spec/jwt/access_token_spec.rb +0 -151
  905. data/spec/jwt/client_capability_spec.rb +0 -104
  906. data/spec/jwt/task_router_spec.rb +0 -172
  907. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  908. data/spec/rest/client_spec.rb +0 -233
  909. data/spec/security/request_validator_spec.rb +0 -125
  910. data/spec/spec_helper.rb +0 -38
  911. data/spec/support/fakeweb.rb +0 -2
  912. data/spec/twilio_spec.rb +0 -17
  913. data/spec/twiml/messaging_response_spec.rb +0 -235
  914. data/spec/twiml/voice_response_spec.rb +0 -847
  915. data/spec/util/configuration_spec.rb +0 -33
  916. data/spec/util/url_encode_spec.rb +0 -12
@@ -1,847 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Twilio::TwiML::VoiceResponse do
4
- context 'Testing Response' do
5
- it 'should allow empty response' do
6
- expected_doc = parse <<-XML
7
- <Response/>
8
- XML
9
- response = Twilio::TwiML::VoiceResponse.new.to_s
10
- doc = parse(response)
11
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
12
- end
13
-
14
- it 'should allow using to_xml instead of to_s' do
15
- expected_doc = parse <<-XML
16
- <Response/>
17
- XML
18
- response = Twilio::TwiML::VoiceResponse.new.to_xml
19
- doc = parse(response)
20
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
21
- end
22
-
23
- it 'should have an xml declaration by default' do
24
- twiml = Twilio::TwiML::VoiceResponse.new.to_xml
25
- expect(twiml).to match(/\A<\?xml version="1.0" encoding="UTF-8"\?>/)
26
- end
27
-
28
- it 'should allow no xml_declaration' do
29
- twiml = Twilio::TwiML::VoiceResponse.new.to_xml(false)
30
- expect(twiml).not_to match(/\A<\?xml version="1.0" encoding="UTF-8"\?>/)
31
- end
32
-
33
- it 'should allow comments' do
34
- twiml = Twilio::TwiML::VoiceResponse.new
35
- twiml.comment 'This is awesome'
36
- expect(twiml.to_xml).to match(/<!--This is awesome-->/)
37
- end
38
-
39
- it 'should allow text nodes' do
40
- expected_doc = parse <<-XML
41
- <Response>Look no tags</Response>
42
- XML
43
- twiml = Twilio::TwiML::VoiceResponse.new
44
- twiml.add_text 'Look no tags'
45
- expect(parse(twiml)).to be_equivalent_to(expected_doc).respecting_element_order
46
- end
47
-
48
- it 'should allow generic child nodes' do
49
- expected_doc = parse <<-XML
50
- <Response>
51
- <alexa omnipresent="true">
52
- <purchase>Kindle</purchase>
53
- </alexa>
54
- </Response>
55
- XML
56
-
57
- twiml = Twilio::TwiML::VoiceResponse.new
58
- twiml.add_child('alexa', omnipresent: 'true') do |alexa|
59
- alexa.add_child('purchase', 'Kindle')
60
- end
61
-
62
- expect(parse(twiml)).to be_equivalent_to(expected_doc).respecting_element_order
63
- end
64
- it 'should allow populated response' do
65
- expected_doc = parse <<-XML
66
- <Response>
67
- <Hangup/>
68
- <Leave/>
69
- <Sms to="+11234567890" from="+10987654321">twilio sms</Sms>
70
- </Response>
71
- XML
72
- response = Twilio::TwiML::VoiceResponse.new
73
- response.hangup
74
- response.leave
75
- response.sms('twilio sms', to: '+11234567890', from: '+10987654321')
76
-
77
- doc = parse(response)
78
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
79
- end
80
-
81
- it 'should allow chaining' do
82
- expected_doc = parse <<-XML
83
- <Response>
84
- <Hangup/>
85
- <Leave/>
86
- <Sms to="+11234567890" from="+10987654321">twilio sms</Sms>
87
- </Response>
88
- XML
89
- response = Twilio::TwiML::VoiceResponse.new.hangup.leave.sms(
90
- 'twilio sms',
91
- to: '+11234567890',
92
- from: '+10987654321'
93
- )
94
-
95
- doc = parse(response)
96
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
97
- end
98
-
99
- it 'should allow nesting' do
100
- expected_doc = parse <<-XML
101
- <Response>
102
- <Hangup/>
103
- <Leave/>
104
- <Sms to="+11234567890" from="+10987654321">twilio sms</Sms>
105
- </Response>
106
- XML
107
- response = Twilio::TwiML::VoiceResponse.new do |r|
108
- r.hangup
109
- r.leave
110
- r.sms('twilio sms', to: '+11234567890', from: '+10987654321')
111
- end
112
-
113
- doc = parse(response)
114
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
115
- end
116
- end
117
-
118
- context 'Testing Say' do
119
- it 'should allow empty say' do
120
- expected_doc = parse <<-XML
121
- <Response>
122
- <Say></Say>
123
- </Response>
124
- XML
125
- response = Twilio::TwiML::VoiceResponse.new
126
- response.say(message: '')
127
-
128
- doc = parse(response)
129
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
130
- end
131
-
132
- it 'should allow populated say' do
133
- expected_doc = parse <<-XML
134
- <Response>
135
- <Say>Hello World</Say>
136
- </Response>
137
- XML
138
- response = Twilio::TwiML::VoiceResponse.new
139
- response.say(message: 'Hello World')
140
-
141
- doc = parse(response)
142
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
143
- end
144
-
145
- it 'should allow unicode say' do
146
- expected_doc = parse <<-XML
147
- <Response>
148
- <Say>nécessaire et d'autres</Say>
149
- </Response>
150
- XML
151
- response = Twilio::TwiML::VoiceResponse.new
152
- response.say(message: 'nécessaire et d\'autres')
153
-
154
- doc = parse(response)
155
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
156
- end
157
-
158
- it 'should allow looping' do
159
- expected_doc = parse <<-XML
160
- <Response>
161
- <Say loop="3">Hello Monkey</Say>
162
- </Response>
163
- XML
164
- response = Twilio::TwiML::VoiceResponse.new
165
- response.say(message: 'Hello Monkey', loop: 3)
166
-
167
- doc = parse(response)
168
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
169
- end
170
-
171
- it 'should allow languages' do
172
- expected_doc = parse <<-XML
173
- <Response>
174
- <Say language="en-gb">Hello Monkey</Say>
175
- </Response>
176
- XML
177
- response = Twilio::TwiML::VoiceResponse.new
178
- response.say(message: 'Hello Monkey', language: 'en-gb')
179
-
180
- doc = parse(response)
181
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
182
- end
183
-
184
- it 'should allow all attributes' do
185
- expected_doc = parse <<-XML
186
- <Response>
187
- <Say loop="3" voice="man" language="fr">Hello Monkey</Say>
188
- </Response>
189
- XML
190
- response = Twilio::TwiML::VoiceResponse.new
191
- response.say(message: 'Hello Monkey', loop: 3, voice: 'man', language: 'fr')
192
-
193
- doc = parse(response)
194
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
195
- end
196
- end
197
-
198
- context 'Testing Play' do
199
- it 'should allow empty play' do
200
- expected_doc = parse <<-XML
201
- <Response>
202
- <Play></Play>
203
- </Response>
204
- XML
205
- response = Twilio::TwiML::VoiceResponse.new
206
- response.play
207
-
208
- doc = parse(response)
209
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
210
- end
211
-
212
- it 'should play hello' do
213
- expected_doc = parse <<-XML
214
- <Response>
215
- <Play>http://hellomonkey.mp3</Play>
216
- </Response>
217
- XML
218
- response = Twilio::TwiML::VoiceResponse.new
219
- response.play(url: 'http://hellomonkey.mp3')
220
- doc = parse(response)
221
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
222
- end
223
-
224
- it 'should play hello on loop' do
225
- expected_doc = parse <<-XML
226
- <Response>
227
- <Play loop="3">http://hellomonkey.mp3</Play>
228
- </Response>
229
- XML
230
- response = Twilio::TwiML::VoiceResponse.new
231
- response.play(url: 'http://hellomonkey.mp3', loop: 3)
232
-
233
- doc = parse(response)
234
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
235
- end
236
-
237
- it 'should play digits' do
238
- expected_doc = parse <<-XML
239
- <Response>
240
- <Play digits="w123"></Play>
241
- </Response>
242
- XML
243
- response = Twilio::TwiML::VoiceResponse.new
244
- response.play(digits: 'w123')
245
-
246
- doc = parse(response)
247
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
248
- end
249
- end
250
-
251
- context 'Testing Record' do
252
- it 'should allow empty record' do
253
- expected_doc = parse <<-XML
254
- <Response>
255
- <Record/>
256
- </Response>
257
- XML
258
- response = Twilio::TwiML::VoiceResponse.new
259
- response.record
260
- doc = parse(response)
261
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
262
- end
263
-
264
- it 'should allow action and method' do
265
- expected_doc = parse <<-XML
266
- <Response>
267
- <Record action="example.com" method="GET" />
268
- </Response>
269
- XML
270
- response = Twilio::TwiML::VoiceResponse.new
271
- response.record(action: 'example.com', method: 'GET')
272
- doc = parse(response)
273
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
274
- end
275
-
276
- it 'should allow max_length, finish_on_key, and timeout' do
277
- expected_doc = parse <<-XML
278
- <Response>
279
- <Record timeout="4" finishOnKey="#" maxLength="30" />
280
- </Response>
281
- XML
282
- response = Twilio::TwiML::VoiceResponse.new
283
- response.record(timeout: 4, finish_on_key: '#', max_length: 30)
284
- doc = parse(response)
285
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
286
- end
287
-
288
- it 'should allow transcribe' do
289
- expected_doc = parse <<-XML
290
- <Response>
291
- <Record transcribeCallback="example.com" />
292
- </Response>
293
- XML
294
- response = Twilio::TwiML::VoiceResponse.new
295
- response.record(transcribe_callback: 'example.com')
296
- doc = parse(response)
297
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
298
- end
299
- end
300
-
301
- context 'Testing Redirect' do
302
- it 'should allow empty redirect' do
303
- expected_doc = parse <<-XML
304
- <Response>
305
- <Redirect/>
306
- </Response>
307
- XML
308
- response = Twilio::TwiML::VoiceResponse.new
309
- response.redirect ''
310
- doc = parse(response)
311
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
312
- end
313
-
314
- it 'should allow method' do
315
- expected_doc = parse <<-XML
316
- <Response>
317
- <Redirect method="POST">example.com</Redirect>
318
- </Response>
319
- XML
320
- response = Twilio::TwiML::VoiceResponse.new
321
- response.redirect('example.com', method: 'POST')
322
- doc = parse(response)
323
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
324
- end
325
-
326
- it 'should allow method and params' do
327
- expected_doc = parse <<-XML
328
- <Response>
329
- <Redirect method="POST">example.com?id=34&amp;action=hey</Redirect>
330
- </Response>
331
- XML
332
- response = Twilio::TwiML::VoiceResponse.new
333
- response.redirect('example.com?id=34&action=hey', method: 'POST')
334
- doc = parse(response)
335
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
336
- end
337
- end
338
-
339
- context 'Testing Hangup' do
340
- it 'should allow hangup' do
341
- expected_doc = parse <<-XML
342
- <Response>
343
- <Hangup/>
344
- </Response>
345
- XML
346
- response = Twilio::TwiML::VoiceResponse.new
347
- response.hangup
348
- doc = parse(response)
349
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
350
- end
351
-
352
- it 'should not allow content in the hangup' do
353
- response = Twilio::TwiML::VoiceResponse.new
354
- expect { response.hangup 'Goodbye' }.to raise_error(ArgumentError)
355
- end
356
- end
357
-
358
- context 'Testing Leave' do
359
- it 'should allow leave' do
360
- expected_doc = parse <<-XML
361
- <Response>
362
- <Leave/>
363
- </Response>
364
- XML
365
- response = Twilio::TwiML::VoiceResponse.new
366
- response.leave
367
- doc = parse(response)
368
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
369
- end
370
-
371
- it 'should not allow content in the leave' do
372
- response = Twilio::TwiML::VoiceResponse.new
373
- expect { response.leave 'Goodbye' }.to raise_error(ArgumentError)
374
- end
375
- end
376
-
377
- context 'Testing Reject' do
378
- it 'should reject with a default reason' do
379
- expected_doc = parse <<-XML
380
- <Response>
381
- <Reject/>
382
- </Response>
383
- XML
384
- response = Twilio::TwiML::VoiceResponse.new
385
- response.reject
386
- doc = parse(response)
387
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
388
- end
389
-
390
- it 'should not allow content in the reject' do
391
- response = Twilio::TwiML::VoiceResponse.new
392
- expect { response.reject 'Goodbye' }.to raise_error(ArgumentError)
393
- end
394
- end
395
-
396
- context 'Testing SMS' do
397
- it 'should allow empty SMS' do
398
- expected_doc = parse <<-XML
399
- <Response>
400
- <Sms/>
401
- </Response>
402
- XML
403
- response = Twilio::TwiML::VoiceResponse.new
404
- response.sms ''
405
- doc = parse(response)
406
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
407
- end
408
-
409
- it 'should allow SMS body' do
410
- expected_doc = parse <<-XML
411
- <Response>
412
- <Sms>Hello, World</Sms>
413
- </Response>
414
- XML
415
- response = Twilio::TwiML::VoiceResponse.new
416
- response.sms 'Hello, World'
417
- doc = parse(response)
418
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
419
- end
420
-
421
- it 'should allow to, from, action, and status_callback' do
422
- expected_doc = parse <<-XML
423
- <Response>
424
- <Sms to="1231231234" from="3453453456" statusCallback="example.com?id=34&amp;action=hey">Hello, World</Sms>
425
- </Response>
426
- XML
427
- response = Twilio::TwiML::VoiceResponse.new
428
- response.sms('Hello, World', to: 1_231_231_234, from: 3_453_453_456, status_callback: 'example.com?id=34&action=hey')
429
- doc = parse(response)
430
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
431
- end
432
-
433
- it 'should allow action and method' do
434
- expected_doc = parse <<-XML
435
- <Response>
436
- <Sms method="POST" action="example.com?id=34&amp;action=hey">Hello</Sms>
437
- </Response>
438
- XML
439
- response = Twilio::TwiML::VoiceResponse.new
440
- response.sms('Hello', method: 'POST', action: 'example.com?id=34&action=hey')
441
- doc = parse(response)
442
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
443
- end
444
- end
445
-
446
- context 'Testing Conference' do
447
- it 'should allow basic conferencing' do
448
- expected_doc = parse <<-XML
449
- <Response>
450
- <Dial>
451
- <Conference beep="false" waitUrl="" startConferenceOnEnter="true" endConferenceOnExit="true">
452
- TestConferenceAttributes
453
- </Conference>
454
- </Dial>
455
- </Response>
456
- XML
457
- dial = Twilio::TwiML::Dial.new
458
- dial.conference(
459
- 'TestConferenceAttributes',
460
- beep: false,
461
- wait_url: '',
462
- start_conference_on_enter: true,
463
- end_conference_on_exit: true
464
- )
465
-
466
- response = Twilio::TwiML::VoiceResponse.new
467
- response.append(dial)
468
- doc = parse(response)
469
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
470
- end
471
-
472
- it 'should allow muted conferencing' do
473
- expected_doc = parse <<-XML
474
- <Response>
475
- <Dial>
476
- <Conference beep="false" waitUrl="" startConferenceOnEnter="true" endConferenceOnExit="true" muted="true">
477
- TestConferenceMutedAttribute
478
- </Conference>
479
- </Dial>
480
- </Response>
481
- XML
482
- dial = Twilio::TwiML::Dial.new
483
- dial.conference(
484
- 'TestConferenceMutedAttribute',
485
- beep: false,
486
- muted: true,
487
- wait_url: '',
488
- start_conference_on_enter: true,
489
- end_conference_on_exit: true
490
- )
491
-
492
- response = Twilio::TwiML::VoiceResponse.new
493
- response.append(dial)
494
- doc = parse(response)
495
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
496
- end
497
- end
498
-
499
- context 'Testing Queue' do
500
- it 'should allow queues in VoiceResponse' do
501
- expected_doc = parse <<-XML
502
- <Response>
503
- <Dial>
504
- <Queue url="" method="GET">TestQueueAttribute</Queue>
505
- </Dial>
506
- </Response>
507
- XML
508
- dial = Twilio::TwiML::Dial.new
509
- dial.queue('TestQueueAttribute', url: '', method: 'GET')
510
-
511
- response = Twilio::TwiML::VoiceResponse.new
512
- response.append(dial)
513
- doc = parse(response)
514
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
515
- end
516
- end
517
-
518
- context 'Testing Echo' do
519
- it 'should allow VoiceResponse Echo' do
520
- expected_doc = parse <<-XML
521
- <Response>
522
- <Echo/>
523
- </Response>
524
- XML
525
- response = Twilio::TwiML::VoiceResponse.new
526
- response.echo
527
- doc = parse(response)
528
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
529
- end
530
- end
531
-
532
- context 'Testing Enqueue' do
533
- it 'should allow VoiceResponse.enqueue' do
534
- expected_doc = parse <<-XML
535
- <Response>
536
- <Enqueue action="act" method="GET" waitUrl="wait" waitUrlMethod="POST">TestEnqueueAttribute</Enqueue>
537
- </Response>
538
- XML
539
- response = Twilio::TwiML::VoiceResponse.new
540
- response.enqueue(
541
- name: 'TestEnqueueAttribute',
542
- action: 'act',
543
- method: 'GET',
544
- wait_url: 'wait',
545
- wait_url_method: 'POST'
546
- )
547
- doc = parse(response)
548
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
549
- end
550
-
551
- it 'should allow Enqueue.task and appending Enqueue' do
552
- task_json = '{"account_sid": "AC123123123"}'
553
- expected_doc = parse <<-XML
554
- <Response>
555
- <Enqueue workflowSid="123123123">
556
- <Task>#{task_json}</Task>
557
- </Enqueue>
558
- </Response>
559
- XML
560
- enqueue_elem = Twilio::TwiML::Enqueue.new(name: nil, workflow_sid: '123123123')
561
- enqueue_elem.task(task_json)
562
-
563
- response = Twilio::TwiML::VoiceResponse.new
564
- response.append(enqueue_elem)
565
- doc = parse(response)
566
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
567
- end
568
-
569
- it 'should allow Enqueue.task with a dictionary and appending Enqueue' do
570
- expected_doc = parse <<-XML
571
- <Response>
572
- <Enqueue workflowSid="123123123">
573
- <Task>{"account_sid":"AC123123123"}</Task>
574
- </Enqueue>
575
- </Response>
576
- XML
577
- enqueue_elem = Twilio::TwiML::Enqueue.new(name: nil, workflow_sid: '123123123')
578
- enqueue_elem.task(account_sid: 'AC123123123')
579
-
580
- response = Twilio::TwiML::VoiceResponse.new
581
- response.append(enqueue_elem)
582
-
583
- doc = parse(response)
584
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
585
- end
586
- end
587
-
588
- context 'Testing Dial' do
589
- it 'should allow VoiceResponse.dial' do
590
- expected_doc = parse <<-XML
591
- <Response>
592
- <Dial>1231231234</Dial>
593
- </Response>
594
- XML
595
- response = Twilio::TwiML::VoiceResponse.new
596
- response.dial(number: '1231231234')
597
- doc = parse(response)
598
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
599
- end
600
-
601
- it 'should allow Dial.sim' do
602
- expected_doc = parse <<-XML
603
- <Response>
604
- <Dial>
605
- <Sim>123123123</Sim>
606
- </Dial>
607
- </Response>
608
- XML
609
- dial = Twilio::TwiML::Dial.new
610
- dial.sim '123123123'
611
-
612
- response = Twilio::TwiML::VoiceResponse.new
613
- response.append(dial)
614
-
615
- doc = parse(response)
616
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
617
- end
618
-
619
- it 'should allow Dial.sip' do
620
- expected_doc = parse <<-XML
621
- <Response>
622
- <Dial>
623
- <Sip>foo@example.com</Sip>
624
- </Dial>
625
- </Response>
626
- XML
627
- dial = Twilio::TwiML::Dial.new
628
- dial.sip 'foo@example.com'
629
-
630
- response = Twilio::TwiML::VoiceResponse.new
631
- response.append(dial)
632
- doc = parse(response)
633
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
634
- end
635
-
636
- it 'should allow Dial.sip with username, password' do
637
- expected_doc = parse <<-XML
638
- <Response>
639
- <Dial>
640
- <Sip username="foo" password="bar">foo@example.com</Sip>
641
- </Dial>
642
- </Response>
643
- XML
644
- dial = Twilio::TwiML::Dial.new
645
- dial.sip('foo@example.com', username: 'foo', password: 'bar')
646
-
647
- response = Twilio::TwiML::VoiceResponse.new
648
- response.append(dial)
649
- doc = parse(response)
650
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
651
- end
652
-
653
- it 'should allow Dial.number' do
654
- expected_doc = parse <<-XML
655
- <Response>
656
- <Dial>
657
- <Number>1231231234</Number>
658
- </Dial>
659
- </Response>
660
- XML
661
- dial = Twilio::TwiML::Dial.new
662
- dial.number '1231231234'
663
-
664
- response = Twilio::TwiML::VoiceResponse.new
665
- response.append(dial)
666
- doc = parse(response)
667
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
668
- end
669
-
670
- it 'should allow Dial.number with params' do
671
- expected_doc = parse <<-XML
672
- <Response>
673
- <Dial>
674
- <Number statusCallback="http://example.com" statusCallbackEvent="initiated completed">1231231234</Number>
675
- </Dial>
676
- </Response>
677
- XML
678
- dial = Twilio::TwiML::Dial.new
679
- dial.number('1231231234', status_callback: 'http://example.com', status_callback_event: 'initiated completed')
680
-
681
- response = Twilio::TwiML::VoiceResponse.new
682
- response.append(dial)
683
- doc = parse(response)
684
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
685
- end
686
-
687
- it 'should allow Dial.conference' do
688
- expected_doc = parse <<-XML
689
- <Response>
690
- <Dial>
691
- <Conference>My Room</Conference>
692
- </Dial>
693
- </Response>
694
- XML
695
- dial = Twilio::TwiML::Dial.new
696
- dial.conference 'My Room'
697
-
698
- response = Twilio::TwiML::VoiceResponse.new
699
- response.append(dial)
700
- doc = parse(response)
701
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
702
- end
703
-
704
- it 'should allow Dial.queue' do
705
- expected_doc = parse <<-XML
706
- <Response>
707
- <Dial>
708
- <Queue>The Cute Queue</Queue>
709
- </Dial>
710
- </Response>
711
- XML
712
- dial = Twilio::TwiML::Dial.new
713
- dial.queue 'The Cute Queue'
714
-
715
- response = Twilio::TwiML::VoiceResponse.new
716
- response.append(dial)
717
- doc = parse(response)
718
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
719
- end
720
-
721
- it 'should allow empty Dial.client' do
722
- expected_doc = parse <<-XML
723
- <Response>
724
- <Dial>
725
- <Client></Client>
726
- </Dial>
727
- </Response>
728
- XML
729
- dial = Twilio::TwiML::Dial.new
730
- dial.client
731
-
732
- response = Twilio::TwiML::VoiceResponse.new
733
- response.append(dial)
734
- doc = parse(response)
735
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
736
- end
737
-
738
- it 'should allow populated Dial.client' do
739
- expected_doc = parse <<-XML
740
- <Response>
741
- <Dial>
742
- <Client>alice</Client>
743
- </Dial>
744
- </Response>
745
- XML
746
- dial = Twilio::TwiML::Dial.new
747
- dial.client identity: 'alice'
748
-
749
- response = Twilio::TwiML::VoiceResponse.new
750
- response.append(dial)
751
- doc = parse(response)
752
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
753
- end
754
-
755
- it 'should allow client identity and parameters' do
756
- expected_doc = parse <<-XML
757
- <Response>
758
- <Dial>
759
- <Client>
760
- <Identity>alice</Identity>
761
- <Parameter name="hello" value="world"/>
762
- </Client>
763
- </Dial>
764
- </Response>
765
- XML
766
- dial = Twilio::TwiML::Dial.new
767
- client = Twilio::TwiML::Client.new
768
- client.identity 'alice'
769
- client.parameter name: 'hello', value: 'world'
770
-
771
- response = Twilio::TwiML::VoiceResponse.new
772
- dial.append(client)
773
- response.append(dial)
774
- doc = parse(response)
775
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
776
- end
777
- end
778
-
779
- context 'Testing Gather' do
780
- it 'should allow empty Gather' do
781
- expected_doc = parse <<-XML
782
- <Response>
783
- <Gather></Gather>
784
- </Response>
785
- XML
786
- response = Twilio::TwiML::VoiceResponse.new
787
- response.gather
788
- doc = parse(response)
789
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
790
- end
791
-
792
- it 'should allow nested Say in Gather' do
793
- expected_doc = parse <<-XML
794
- <Response>
795
- <Gather>
796
- <Say>Hello</Say>
797
- </Gather>
798
- </Response>
799
- XML
800
- gather_elem = Twilio::TwiML::Gather.new
801
- gather_elem.say(message: 'Hello')
802
-
803
- response = Twilio::TwiML::VoiceResponse.new
804
- response.append(gather_elem)
805
- doc = parse(response)
806
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
807
- end
808
-
809
- it 'should allow nested play and pause' do
810
- expected_doc = parse <<-XML
811
- <Response>
812
- <Gather>
813
- <Say>Hey</Say>
814
- <Play>hey.mp3</Play>
815
- <Pause/>
816
- </Gather>
817
- </Response>
818
- XML
819
- gather = Twilio::TwiML::Gather.new
820
- gather.say(message: 'Hey')
821
- gather.play(url: 'hey.mp3')
822
- gather.pause
823
-
824
- response = Twilio::TwiML::VoiceResponse.new
825
- response.append(gather)
826
- doc = parse(response)
827
- expect(doc).to be_equivalent_to(expected_doc).respecting_element_order
828
- end
829
-
830
- it 'should render ssml attributes correctly' do
831
- expected_doc = parse <<-XML
832
- <Response>
833
- <Say>
834
- <say-as interpret-as="spell-out">Twilio</say-as>
835
- </Say>
836
- </Response>
837
- XML
838
-
839
- response = Twilio::TwiML::VoiceResponse.new
840
- response.say do |s|
841
- s.say_as('Twilio', interpretAs: 'spell-out')
842
- end
843
-
844
- expect(parse(response)).to be_equivalent_to(expected_doc).respecting_element_order
845
- end
846
- end
847
- end