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
@@ -46,9 +46,13 @@ module Twilio
46
46
  # recording_status_callback_event:: Recording status callback events
47
47
  # answer_on_bridge:: Preserve the ringing behavior of the inbound call until the Dialed call picks up
48
48
  # ring_tone:: Ringtone allows you to override the ringback tone that Twilio will play back to the caller while executing the Dial
49
+ # recording_track:: To indicate which audio track should be recorded
50
+ # sequential:: Used to determine if child TwiML nouns should be dialed in order, one after the other (sequential) or dial all at once (parallel). Default is false, parallel
51
+ # refer_url:: Webhook that will receive future SIP REFER requests
52
+ # refer_method:: The HTTP method to use for the refer Webhook
49
53
  # keyword_args:: additional attributes
50
- def dial(number: nil, action: nil, method: nil, timeout: nil, hangup_on_star: nil, time_limit: nil, caller_id: nil, record: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, answer_on_bridge: nil, ring_tone: nil, **keyword_args)
51
- dial = Dial.new(number: number, action: action, method: method, timeout: timeout, hangup_on_star: hangup_on_star, time_limit: time_limit, caller_id: caller_id, record: record, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, answer_on_bridge: answer_on_bridge, ring_tone: ring_tone, **keyword_args)
54
+ def dial(number: nil, action: nil, method: nil, timeout: nil, hangup_on_star: nil, time_limit: nil, caller_id: nil, record: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, answer_on_bridge: nil, ring_tone: nil, recording_track: nil, sequential: nil, refer_url: nil, refer_method: nil, **keyword_args)
55
+ dial = Dial.new(number: number, action: action, method: method, timeout: timeout, hangup_on_star: hangup_on_star, time_limit: time_limit, caller_id: caller_id, record: record, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, answer_on_bridge: answer_on_bridge, ring_tone: ring_tone, recording_track: recording_track, sequential: sequential, refer_url: refer_url, refer_method: refer_method, **keyword_args)
52
56
 
53
57
  yield(dial) if block_given?
54
58
  append(dial)
@@ -65,13 +69,14 @@ module Twilio
65
69
  # Create a new <Enqueue> element
66
70
  # name:: Friendly name
67
71
  # action:: Action URL
72
+ # max_queue_size:: Maximum size of queue
68
73
  # method:: Action URL method
69
74
  # wait_url:: Wait URL
70
75
  # wait_url_method:: Wait URL method
71
76
  # workflow_sid:: TaskRouter Workflow SID
72
77
  # keyword_args:: additional attributes
73
- def enqueue(name: nil, action: nil, method: nil, wait_url: nil, wait_url_method: nil, workflow_sid: nil, **keyword_args)
74
- enqueue = Enqueue.new(name: name, action: action, method: method, wait_url: wait_url, wait_url_method: wait_url_method, workflow_sid: workflow_sid, **keyword_args)
78
+ def enqueue(name: nil, action: nil, max_queue_size: nil, method: nil, wait_url: nil, wait_url_method: nil, workflow_sid: nil, **keyword_args)
79
+ enqueue = Enqueue.new(name: name, action: action, max_queue_size: max_queue_size, method: method, wait_url: wait_url, wait_url_method: wait_url_method, workflow_sid: workflow_sid, **keyword_args)
75
80
 
76
81
  yield(enqueue) if block_given?
77
82
  append(enqueue)
@@ -190,7 +195,7 @@ module Twilio
190
195
  # message:: Message to say
191
196
  # voice:: Voice to use
192
197
  # loop:: Times to loop message
193
- # language:: Message langauge
198
+ # language:: Message language
194
199
  # keyword_args:: additional attributes
195
200
  def say(message: nil, voice: nil, loop: nil, language: nil, **keyword_args)
196
201
  say = Say.new(message: message, voice: voice, loop: loop, language: language, **keyword_args)
@@ -246,9 +251,10 @@ module Twilio
246
251
  # error_type:: Type of error
247
252
  # card_type:: Type of the credit card
248
253
  # attempt:: Current attempt count
254
+ # require_matching_inputs:: Require customer to input requested information twice and verify matching.
249
255
  # keyword_args:: additional attributes
250
- def prompt(for_: nil, error_type: nil, card_type: nil, attempt: nil, **keyword_args)
251
- prompt = Prompt.new(for_: for_, error_type: error_type, card_type: card_type, attempt: attempt, **keyword_args)
256
+ def prompt(for_: nil, error_type: nil, card_type: nil, attempt: nil, require_matching_inputs: nil, **keyword_args)
257
+ prompt = Prompt.new(for_: for_, error_type: error_type, card_type: card_type, attempt: attempt, require_matching_inputs: require_matching_inputs, **keyword_args)
252
258
 
253
259
  yield(prompt) if block_given?
254
260
  append(prompt)
@@ -335,9 +341,11 @@ module Twilio
335
341
  # connector_name:: Unique name for Stream Connector
336
342
  # url:: URL of the remote service where the Stream is routed
337
343
  # track:: Track to be streamed to remote service
344
+ # status_callback:: Status Callback URL
345
+ # status_callback_method:: Status Callback URL method
338
346
  # keyword_args:: additional attributes
339
- def stream(name: nil, connector_name: nil, url: nil, track: nil, **keyword_args)
340
- stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, **keyword_args)
347
+ def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
348
+ stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
341
349
 
342
350
  yield(stream) if block_given?
343
351
  append(stream)
@@ -424,9 +432,11 @@ module Twilio
424
432
  # connector_name:: Unique name for Stream Connector
425
433
  # url:: URL of the remote service where the Stream is routed
426
434
  # track:: Track to be streamed to remote service
435
+ # status_callback:: Status Callback URL
436
+ # status_callback_method:: Status Callback URL method
427
437
  # keyword_args:: additional attributes
428
- def stream(name: nil, connector_name: nil, url: nil, track: nil, **keyword_args)
429
- stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, **keyword_args)
438
+ def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
439
+ stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
430
440
 
431
441
  yield(stream) if block_given?
432
442
  append(stream)
@@ -461,63 +471,633 @@ module Twilio
461
471
  # message:: Message to say
462
472
  # voice:: Voice to use
463
473
  # loop:: Times to loop message
464
- # language:: Message langauge
474
+ # language:: Message language
475
+ # keyword_args:: additional attributes
476
+ def say(message: nil, voice: nil, loop: nil, language: nil, **keyword_args)
477
+ say = Say.new(message: message, voice: voice, loop: loop, language: language, **keyword_args)
478
+
479
+ yield(say) if block_given?
480
+ append(say)
481
+ end
482
+
483
+ ##
484
+ # Create a new <Play> element
485
+ # url:: Media URL
486
+ # loop:: Times to loop media
487
+ # digits:: Play DTMF tones for digits
488
+ # keyword_args:: additional attributes
489
+ def play(url: nil, loop: nil, digits: nil, **keyword_args)
490
+ append(Play.new(url: url, loop: loop, digits: digits, **keyword_args))
491
+ end
492
+
493
+ ##
494
+ # Create a new <Pause> element
495
+ # length:: Length in seconds to pause
496
+ # keyword_args:: additional attributes
497
+ def pause(length: nil, **keyword_args)
498
+ append(Pause.new(length: length, **keyword_args))
499
+ end
500
+ end
501
+
502
+ ##
503
+ # <Pause> TwiML Verb
504
+ class Pause < TwiML
505
+ def initialize(**keyword_args)
506
+ super(**keyword_args)
507
+ @name = 'Pause'
508
+
509
+ yield(self) if block_given?
510
+ end
511
+ end
512
+
513
+ ##
514
+ # <Play> TwiML Verb
515
+ class Play < TwiML
516
+ def initialize(url: nil, **keyword_args)
517
+ super(**keyword_args)
518
+ @name = 'Play'
519
+ @value = url unless url.nil?
520
+ yield(self) if block_given?
521
+ end
522
+ end
523
+
524
+ ##
525
+ # <Say> TwiML Verb
526
+ class Say < TwiML
527
+ def initialize(message: nil, **keyword_args)
528
+ super(**keyword_args)
529
+ @name = 'Say'
530
+ @value = message unless message.nil?
531
+ yield(self) if block_given?
532
+ end
533
+
534
+ ##
535
+ # Create a new <Break> element
536
+ # strength:: Set a pause based on strength
537
+ # time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
538
+ # keyword_args:: additional attributes
539
+ def break(strength: nil, time: nil, **keyword_args)
540
+ append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
541
+ end
542
+
543
+ ##
544
+ # Create a new <Emphasis> element
545
+ # words:: Words to emphasize
546
+ # level:: Specify the degree of emphasis
547
+ # keyword_args:: additional attributes
548
+ def emphasis(words: nil, level: nil, **keyword_args)
549
+ emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
550
+
551
+ yield(emphasis) if block_given?
552
+ append(emphasis)
553
+ end
554
+
555
+ ##
556
+ # Create a new <Lang> element
557
+ # words:: Words to speak
558
+ # xmlLang:: Specify the language
559
+ # keyword_args:: additional attributes
560
+ def lang(words: nil, xmlLang: nil, **keyword_args)
561
+ lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
562
+
563
+ yield(lang) if block_given?
564
+ append(lang)
565
+ end
566
+
567
+ ##
568
+ # Create a new <P> element
569
+ # words:: Words to speak
570
+ # keyword_args:: additional attributes
571
+ def p(words: nil, **keyword_args)
572
+ p = SsmlP.new(words: words, **keyword_args)
573
+
574
+ yield(p) if block_given?
575
+ append(p)
576
+ end
577
+
578
+ ##
579
+ # Create a new <Phoneme> element
580
+ # words:: Words to speak
581
+ # alphabet:: Specify the phonetic alphabet
582
+ # ph:: Specifiy the phonetic symbols for pronunciation
583
+ # keyword_args:: additional attributes
584
+ def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
585
+ append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
586
+ end
587
+
588
+ ##
589
+ # Create a new <Prosody> element
590
+ # words:: Words to speak
591
+ # volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
592
+ # rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
593
+ # pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
594
+ # keyword_args:: additional attributes
595
+ def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
596
+ prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
597
+
598
+ yield(prosody) if block_given?
599
+ append(prosody)
600
+ end
601
+
602
+ ##
603
+ # Create a new <S> element
604
+ # words:: Words to speak
605
+ # keyword_args:: additional attributes
606
+ def s(words: nil, **keyword_args)
607
+ s = SsmlS.new(words: words, **keyword_args)
608
+
609
+ yield(s) if block_given?
610
+ append(s)
611
+ end
612
+
613
+ ##
614
+ # Create a new <Say-As> element
615
+ # words:: Words to be interpreted
616
+ # interpretAs:: Specify the type of words are spoken
617
+ # format:: Specify the format of the date when interpret-as is set to date
618
+ # keyword_args:: additional attributes
619
+ def say_as(words, interpretAs: nil, format: nil, **keyword_args)
620
+ append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
621
+ end
622
+
623
+ ##
624
+ # Create a new <Sub> element
625
+ # words:: Words to be substituted
626
+ # aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
627
+ # keyword_args:: additional attributes
628
+ def sub(words, aliasAttribute: nil, **keyword_args)
629
+ append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
630
+ end
631
+
632
+ ##
633
+ # Create a new <W> element
634
+ # words:: Words to speak
635
+ # role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
636
+ # keyword_args:: additional attributes
637
+ def w(words: nil, role: nil, **keyword_args)
638
+ w = SsmlW.new(words: words, role: role, **keyword_args)
639
+
640
+ yield(w) if block_given?
641
+ append(w)
642
+ end
643
+ end
644
+
645
+ ##
646
+ # Improving Pronunciation by Specifying Parts of Speech in <Say>
647
+ class SsmlW < TwiML
648
+ def initialize(words: nil, **keyword_args)
649
+ super(**keyword_args)
650
+ @name = 'w'
651
+ @value = words unless words.nil?
652
+ yield(self) if block_given?
653
+ end
654
+
655
+ ##
656
+ # Create a new <Break> element
657
+ # strength:: Set a pause based on strength
658
+ # time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
659
+ # keyword_args:: additional attributes
660
+ def break(strength: nil, time: nil, **keyword_args)
661
+ append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
662
+ end
663
+
664
+ ##
665
+ # Create a new <Emphasis> element
666
+ # words:: Words to emphasize
667
+ # level:: Specify the degree of emphasis
668
+ # keyword_args:: additional attributes
669
+ def emphasis(words: nil, level: nil, **keyword_args)
670
+ emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
671
+
672
+ yield(emphasis) if block_given?
673
+ append(emphasis)
674
+ end
675
+
676
+ ##
677
+ # Create a new <Phoneme> element
678
+ # words:: Words to speak
679
+ # alphabet:: Specify the phonetic alphabet
680
+ # ph:: Specifiy the phonetic symbols for pronunciation
681
+ # keyword_args:: additional attributes
682
+ def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
683
+ append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
684
+ end
685
+
686
+ ##
687
+ # Create a new <Prosody> element
688
+ # words:: Words to speak
689
+ # volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
690
+ # rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
691
+ # pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
692
+ # keyword_args:: additional attributes
693
+ def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
694
+ prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
695
+
696
+ yield(prosody) if block_given?
697
+ append(prosody)
698
+ end
699
+
700
+ ##
701
+ # Create a new <Say-As> element
702
+ # words:: Words to be interpreted
703
+ # interpretAs:: Specify the type of words are spoken
704
+ # format:: Specify the format of the date when interpret-as is set to date
705
+ # keyword_args:: additional attributes
706
+ def say_as(words, interpretAs: nil, format: nil, **keyword_args)
707
+ append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
708
+ end
709
+
710
+ ##
711
+ # Create a new <Sub> element
712
+ # words:: Words to be substituted
713
+ # aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
714
+ # keyword_args:: additional attributes
715
+ def sub(words, aliasAttribute: nil, **keyword_args)
716
+ append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
717
+ end
718
+ end
719
+
720
+ ##
721
+ # Pronouncing Acronyms and Abbreviations in <Say>
722
+ class SsmlSub < TwiML
723
+ def initialize(words, **keyword_args)
724
+ super(**keyword_args)
725
+ @name = 'sub'
726
+ @value = words
727
+ yield(self) if block_given?
728
+ end
729
+ end
730
+
731
+ ##
732
+ # Controlling How Special Types of Words Are Spoken in <Say>
733
+ class SsmlSayAs < TwiML
734
+ def initialize(words, **keyword_args)
735
+ super(**keyword_args)
736
+ @name = 'say-as'
737
+ @value = words
738
+ yield(self) if block_given?
739
+ end
740
+ end
741
+
742
+ ##
743
+ # Controling Volume, Speaking Rate, and Pitch in <Say>
744
+ class SsmlProsody < TwiML
745
+ def initialize(words: nil, **keyword_args)
746
+ super(**keyword_args)
747
+ @name = 'prosody'
748
+ @value = words unless words.nil?
749
+ yield(self) if block_given?
750
+ end
751
+
752
+ ##
753
+ # Create a new <Break> element
754
+ # strength:: Set a pause based on strength
755
+ # time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
756
+ # keyword_args:: additional attributes
757
+ def break(strength: nil, time: nil, **keyword_args)
758
+ append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
759
+ end
760
+
761
+ ##
762
+ # Create a new <Emphasis> element
763
+ # words:: Words to emphasize
764
+ # level:: Specify the degree of emphasis
765
+ # keyword_args:: additional attributes
766
+ def emphasis(words: nil, level: nil, **keyword_args)
767
+ emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
768
+
769
+ yield(emphasis) if block_given?
770
+ append(emphasis)
771
+ end
772
+
773
+ ##
774
+ # Create a new <Lang> element
775
+ # words:: Words to speak
776
+ # xmlLang:: Specify the language
777
+ # keyword_args:: additional attributes
778
+ def lang(words: nil, xmlLang: nil, **keyword_args)
779
+ lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
780
+
781
+ yield(lang) if block_given?
782
+ append(lang)
783
+ end
784
+
785
+ ##
786
+ # Create a new <P> element
787
+ # words:: Words to speak
788
+ # keyword_args:: additional attributes
789
+ def p(words: nil, **keyword_args)
790
+ p = SsmlP.new(words: words, **keyword_args)
791
+
792
+ yield(p) if block_given?
793
+ append(p)
794
+ end
795
+
796
+ ##
797
+ # Create a new <Phoneme> element
798
+ # words:: Words to speak
799
+ # alphabet:: Specify the phonetic alphabet
800
+ # ph:: Specifiy the phonetic symbols for pronunciation
801
+ # keyword_args:: additional attributes
802
+ def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
803
+ append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
804
+ end
805
+
806
+ ##
807
+ # Create a new <Prosody> element
808
+ # words:: Words to speak
809
+ # volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
810
+ # rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
811
+ # pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
812
+ # keyword_args:: additional attributes
813
+ def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
814
+ prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
815
+
816
+ yield(prosody) if block_given?
817
+ append(prosody)
818
+ end
819
+
820
+ ##
821
+ # Create a new <S> element
822
+ # words:: Words to speak
823
+ # keyword_args:: additional attributes
824
+ def s(words: nil, **keyword_args)
825
+ s = SsmlS.new(words: words, **keyword_args)
826
+
827
+ yield(s) if block_given?
828
+ append(s)
829
+ end
830
+
831
+ ##
832
+ # Create a new <Say-As> element
833
+ # words:: Words to be interpreted
834
+ # interpretAs:: Specify the type of words are spoken
835
+ # format:: Specify the format of the date when interpret-as is set to date
836
+ # keyword_args:: additional attributes
837
+ def say_as(words, interpretAs: nil, format: nil, **keyword_args)
838
+ append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
839
+ end
840
+
841
+ ##
842
+ # Create a new <Sub> element
843
+ # words:: Words to be substituted
844
+ # aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
845
+ # keyword_args:: additional attributes
846
+ def sub(words, aliasAttribute: nil, **keyword_args)
847
+ append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
848
+ end
849
+
850
+ ##
851
+ # Create a new <W> element
852
+ # words:: Words to speak
853
+ # role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
854
+ # keyword_args:: additional attributes
855
+ def w(words: nil, role: nil, **keyword_args)
856
+ w = SsmlW.new(words: words, role: role, **keyword_args)
857
+
858
+ yield(w) if block_given?
859
+ append(w)
860
+ end
861
+ end
862
+
863
+ ##
864
+ # Adding A Pause Between Sentences in <Say>
865
+ class SsmlS < TwiML
866
+ def initialize(words: nil, **keyword_args)
867
+ super(**keyword_args)
868
+ @name = 's'
869
+ @value = words unless words.nil?
870
+ yield(self) if block_given?
871
+ end
872
+
873
+ ##
874
+ # Create a new <Break> element
875
+ # strength:: Set a pause based on strength
876
+ # time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
877
+ # keyword_args:: additional attributes
878
+ def break(strength: nil, time: nil, **keyword_args)
879
+ append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
880
+ end
881
+
882
+ ##
883
+ # Create a new <Emphasis> element
884
+ # words:: Words to emphasize
885
+ # level:: Specify the degree of emphasis
886
+ # keyword_args:: additional attributes
887
+ def emphasis(words: nil, level: nil, **keyword_args)
888
+ emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
889
+
890
+ yield(emphasis) if block_given?
891
+ append(emphasis)
892
+ end
893
+
894
+ ##
895
+ # Create a new <Lang> element
896
+ # words:: Words to speak
897
+ # xmlLang:: Specify the language
898
+ # keyword_args:: additional attributes
899
+ def lang(words: nil, xmlLang: nil, **keyword_args)
900
+ lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
901
+
902
+ yield(lang) if block_given?
903
+ append(lang)
904
+ end
905
+
906
+ ##
907
+ # Create a new <Phoneme> element
908
+ # words:: Words to speak
909
+ # alphabet:: Specify the phonetic alphabet
910
+ # ph:: Specifiy the phonetic symbols for pronunciation
911
+ # keyword_args:: additional attributes
912
+ def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
913
+ append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
914
+ end
915
+
916
+ ##
917
+ # Create a new <Prosody> element
918
+ # words:: Words to speak
919
+ # volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
920
+ # rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
921
+ # pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
922
+ # keyword_args:: additional attributes
923
+ def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
924
+ prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
925
+
926
+ yield(prosody) if block_given?
927
+ append(prosody)
928
+ end
929
+
930
+ ##
931
+ # Create a new <Say-As> element
932
+ # words:: Words to be interpreted
933
+ # interpretAs:: Specify the type of words are spoken
934
+ # format:: Specify the format of the date when interpret-as is set to date
935
+ # keyword_args:: additional attributes
936
+ def say_as(words, interpretAs: nil, format: nil, **keyword_args)
937
+ append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
938
+ end
939
+
940
+ ##
941
+ # Create a new <Sub> element
942
+ # words:: Words to be substituted
943
+ # aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
944
+ # keyword_args:: additional attributes
945
+ def sub(words, aliasAttribute: nil, **keyword_args)
946
+ append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
947
+ end
948
+
949
+ ##
950
+ # Create a new <W> element
951
+ # words:: Words to speak
952
+ # role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
953
+ # keyword_args:: additional attributes
954
+ def w(words: nil, role: nil, **keyword_args)
955
+ w = SsmlW.new(words: words, role: role, **keyword_args)
956
+
957
+ yield(w) if block_given?
958
+ append(w)
959
+ end
960
+ end
961
+
962
+ ##
963
+ # Using Phonetic Pronunciation in <Say>
964
+ class SsmlPhoneme < TwiML
965
+ def initialize(words, **keyword_args)
966
+ super(**keyword_args)
967
+ @name = 'phoneme'
968
+ @value = words
969
+ yield(self) if block_given?
970
+ end
971
+ end
972
+
973
+ ##
974
+ # Specifying Another Language for Specific Words in <Say>
975
+ class SsmlLang < TwiML
976
+ def initialize(words: nil, **keyword_args)
977
+ super(**keyword_args)
978
+ @name = 'lang'
979
+ @value = words unless words.nil?
980
+ yield(self) if block_given?
981
+ end
982
+
983
+ ##
984
+ # Create a new <Break> element
985
+ # strength:: Set a pause based on strength
986
+ # time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
987
+ # keyword_args:: additional attributes
988
+ def break(strength: nil, time: nil, **keyword_args)
989
+ append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
990
+ end
991
+
992
+ ##
993
+ # Create a new <Emphasis> element
994
+ # words:: Words to emphasize
995
+ # level:: Specify the degree of emphasis
996
+ # keyword_args:: additional attributes
997
+ def emphasis(words: nil, level: nil, **keyword_args)
998
+ emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
999
+
1000
+ yield(emphasis) if block_given?
1001
+ append(emphasis)
1002
+ end
1003
+
1004
+ ##
1005
+ # Create a new <Lang> element
1006
+ # words:: Words to speak
1007
+ # xmlLang:: Specify the language
1008
+ # keyword_args:: additional attributes
1009
+ def lang(words: nil, xmlLang: nil, **keyword_args)
1010
+ lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
1011
+
1012
+ yield(lang) if block_given?
1013
+ append(lang)
1014
+ end
1015
+
1016
+ ##
1017
+ # Create a new <P> element
1018
+ # words:: Words to speak
1019
+ # keyword_args:: additional attributes
1020
+ def p(words: nil, **keyword_args)
1021
+ p = SsmlP.new(words: words, **keyword_args)
1022
+
1023
+ yield(p) if block_given?
1024
+ append(p)
1025
+ end
1026
+
1027
+ ##
1028
+ # Create a new <Phoneme> element
1029
+ # words:: Words to speak
1030
+ # alphabet:: Specify the phonetic alphabet
1031
+ # ph:: Specifiy the phonetic symbols for pronunciation
1032
+ # keyword_args:: additional attributes
1033
+ def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
1034
+ append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
1035
+ end
1036
+
1037
+ ##
1038
+ # Create a new <Prosody> element
1039
+ # words:: Words to speak
1040
+ # volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
1041
+ # rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
1042
+ # pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
465
1043
  # keyword_args:: additional attributes
466
- def say(message: nil, voice: nil, loop: nil, language: nil, **keyword_args)
467
- say = Say.new(message: message, voice: voice, loop: loop, language: language, **keyword_args)
1044
+ def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
1045
+ prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
468
1046
 
469
- yield(say) if block_given?
470
- append(say)
1047
+ yield(prosody) if block_given?
1048
+ append(prosody)
471
1049
  end
472
1050
 
473
1051
  ##
474
- # Create a new <Play> element
475
- # url:: Media URL
476
- # loop:: Times to loop media
477
- # digits:: Play DTMF tones for digits
1052
+ # Create a new <S> element
1053
+ # words:: Words to speak
478
1054
  # keyword_args:: additional attributes
479
- def play(url: nil, loop: nil, digits: nil, **keyword_args)
480
- append(Play.new(url: url, loop: loop, digits: digits, **keyword_args))
1055
+ def s(words: nil, **keyword_args)
1056
+ s = SsmlS.new(words: words, **keyword_args)
1057
+
1058
+ yield(s) if block_given?
1059
+ append(s)
481
1060
  end
482
1061
 
483
1062
  ##
484
- # Create a new <Pause> element
485
- # length:: Length in seconds to pause
1063
+ # Create a new <Say-As> element
1064
+ # words:: Words to be interpreted
1065
+ # interpretAs:: Specify the type of words are spoken
1066
+ # format:: Specify the format of the date when interpret-as is set to date
486
1067
  # keyword_args:: additional attributes
487
- def pause(length: nil, **keyword_args)
488
- append(Pause.new(length: length, **keyword_args))
1068
+ def say_as(words, interpretAs: nil, format: nil, **keyword_args)
1069
+ append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
489
1070
  end
490
- end
491
-
492
- ##
493
- # <Pause> TwiML Verb
494
- class Pause < TwiML
495
- def initialize(**keyword_args)
496
- super(**keyword_args)
497
- @name = 'Pause'
498
1071
 
499
- yield(self) if block_given?
1072
+ ##
1073
+ # Create a new <Sub> element
1074
+ # words:: Words to be substituted
1075
+ # aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
1076
+ # keyword_args:: additional attributes
1077
+ def sub(words, aliasAttribute: nil, **keyword_args)
1078
+ append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
500
1079
  end
501
- end
502
1080
 
503
- ##
504
- # <Play> TwiML Verb
505
- class Play < TwiML
506
- def initialize(url: nil, **keyword_args)
507
- super(**keyword_args)
508
- @name = 'Play'
509
- @value = url unless url.nil?
510
- yield(self) if block_given?
1081
+ ##
1082
+ # Create a new <W> element
1083
+ # words:: Words to speak
1084
+ # role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
1085
+ # keyword_args:: additional attributes
1086
+ def w(words: nil, role: nil, **keyword_args)
1087
+ w = SsmlW.new(words: words, role: role, **keyword_args)
1088
+
1089
+ yield(w) if block_given?
1090
+ append(w)
511
1091
  end
512
1092
  end
513
1093
 
514
1094
  ##
515
- # <Say> TwiML Verb
516
- class Say < TwiML
517
- def initialize(message: nil, **keyword_args)
1095
+ # Adding a Pause Between Paragraphs in <Say>
1096
+ class SsmlP < TwiML
1097
+ def initialize(words: nil, **keyword_args)
518
1098
  super(**keyword_args)
519
- @name = 'Say'
520
- @value = message unless message.nil?
1099
+ @name = 'p'
1100
+ @value = words unless words.nil?
521
1101
  yield(self) if block_given?
522
1102
  end
523
1103
 
@@ -535,8 +1115,11 @@ module Twilio
535
1115
  # words:: Words to emphasize
536
1116
  # level:: Specify the degree of emphasis
537
1117
  # keyword_args:: additional attributes
538
- def emphasis(words, level: nil, **keyword_args)
539
- append(SsmlEmphasis.new(words, level: level, **keyword_args))
1118
+ def emphasis(words: nil, level: nil, **keyword_args)
1119
+ emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
1120
+
1121
+ yield(emphasis) if block_given?
1122
+ append(emphasis)
540
1123
  end
541
1124
 
542
1125
  ##
@@ -544,16 +1127,11 @@ module Twilio
544
1127
  # words:: Words to speak
545
1128
  # xmlLang:: Specify the language
546
1129
  # keyword_args:: additional attributes
547
- def lang(words, xmlLang: nil, **keyword_args)
548
- append(SsmlLang.new(words, xmlLang: xmlLang, **keyword_args))
549
- end
1130
+ def lang(words: nil, xmlLang: nil, **keyword_args)
1131
+ lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
550
1132
 
551
- ##
552
- # Create a new <P> element
553
- # words:: Words to speak
554
- # keyword_args:: additional attributes
555
- def p(words, **keyword_args)
556
- append(SsmlP.new(words, **keyword_args))
1133
+ yield(lang) if block_given?
1134
+ append(lang)
557
1135
  end
558
1136
 
559
1137
  ##
@@ -573,26 +1151,32 @@ module Twilio
573
1151
  # rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
574
1152
  # pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
575
1153
  # keyword_args:: additional attributes
576
- def prosody(words, volume: nil, rate: nil, pitch: nil, **keyword_args)
577
- append(SsmlProsody.new(words, volume: volume, rate: rate, pitch: pitch, **keyword_args))
1154
+ def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
1155
+ prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
1156
+
1157
+ yield(prosody) if block_given?
1158
+ append(prosody)
578
1159
  end
579
1160
 
580
1161
  ##
581
1162
  # Create a new <S> element
582
1163
  # words:: Words to speak
583
1164
  # keyword_args:: additional attributes
584
- def s(words, **keyword_args)
585
- append(SsmlS.new(words, **keyword_args))
1165
+ def s(words: nil, **keyword_args)
1166
+ s = SsmlS.new(words: words, **keyword_args)
1167
+
1168
+ yield(s) if block_given?
1169
+ append(s)
586
1170
  end
587
1171
 
588
1172
  ##
589
1173
  # Create a new <Say-As> element
590
1174
  # words:: Words to be interpreted
591
1175
  # interpretAs:: Specify the type of words are spoken
592
- # role:: Specify the format of the date when interpret-as is set to date
1176
+ # format:: Specify the format of the date when interpret-as is set to date
593
1177
  # keyword_args:: additional attributes
594
- def say_as(words, interpretAs: nil, role: nil, **keyword_args)
595
- append(SsmlSayAs.new(words, interpretAs: interpretAs, role: role, **keyword_args))
1178
+ def say_as(words, interpretAs: nil, format: nil, **keyword_args)
1179
+ append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
596
1180
  end
597
1181
 
598
1182
  ##
@@ -609,107 +1193,110 @@ module Twilio
609
1193
  # words:: Words to speak
610
1194
  # role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
611
1195
  # keyword_args:: additional attributes
612
- def w(words, role: nil, **keyword_args)
613
- append(SsmlW.new(words, role: role, **keyword_args))
1196
+ def w(words: nil, role: nil, **keyword_args)
1197
+ w = SsmlW.new(words: words, role: role, **keyword_args)
1198
+
1199
+ yield(w) if block_given?
1200
+ append(w)
614
1201
  end
615
1202
  end
616
1203
 
617
1204
  ##
618
- # Improving Pronunciation by Specifying Parts of Speech in <Say>
619
- class SsmlW < TwiML
620
- def initialize(words, **keyword_args)
1205
+ # Emphasizing Words in <Say>
1206
+ class SsmlEmphasis < TwiML
1207
+ def initialize(words: nil, **keyword_args)
621
1208
  super(**keyword_args)
622
- @name = 'w'
623
- @value = words
1209
+ @name = 'emphasis'
1210
+ @value = words unless words.nil?
624
1211
  yield(self) if block_given?
625
1212
  end
626
- end
627
1213
 
628
- ##
629
- # Pronouncing Acronyms and Abbreviations in <Say>
630
- class SsmlSub < TwiML
631
- def initialize(words, **keyword_args)
632
- super(**keyword_args)
633
- @name = 'sub'
634
- @value = words
635
- yield(self) if block_given?
1214
+ ##
1215
+ # Create a new <Break> element
1216
+ # strength:: Set a pause based on strength
1217
+ # time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
1218
+ # keyword_args:: additional attributes
1219
+ def break(strength: nil, time: nil, **keyword_args)
1220
+ append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
636
1221
  end
637
- end
638
1222
 
639
- ##
640
- # Controlling How Special Types of Words Are Spoken in <Say>
641
- class SsmlSayAs < TwiML
642
- def initialize(words, **keyword_args)
643
- super(**keyword_args)
644
- @name = 'say-as'
645
- @value = words
646
- yield(self) if block_given?
1223
+ ##
1224
+ # Create a new <Emphasis> element
1225
+ # words:: Words to emphasize
1226
+ # level:: Specify the degree of emphasis
1227
+ # keyword_args:: additional attributes
1228
+ def emphasis(words: nil, level: nil, **keyword_args)
1229
+ emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
1230
+
1231
+ yield(emphasis) if block_given?
1232
+ append(emphasis)
647
1233
  end
648
- end
649
1234
 
650
- ##
651
- # Adding A Pause Between Sentences in <Say>
652
- class SsmlS < TwiML
653
- def initialize(words, **keyword_args)
654
- super(**keyword_args)
655
- @name = 's'
656
- @value = words
657
- yield(self) if block_given?
1235
+ ##
1236
+ # Create a new <Lang> element
1237
+ # words:: Words to speak
1238
+ # xmlLang:: Specify the language
1239
+ # keyword_args:: additional attributes
1240
+ def lang(words: nil, xmlLang: nil, **keyword_args)
1241
+ lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
1242
+
1243
+ yield(lang) if block_given?
1244
+ append(lang)
658
1245
  end
659
- end
660
1246
 
661
- ##
662
- # Controling Volume, Speaking Rate, and Pitch in <Say>
663
- class SsmlProsody < TwiML
664
- def initialize(words, **keyword_args)
665
- super(**keyword_args)
666
- @name = 'prosody'
667
- @value = words
668
- yield(self) if block_given?
1247
+ ##
1248
+ # Create a new <Phoneme> element
1249
+ # words:: Words to speak
1250
+ # alphabet:: Specify the phonetic alphabet
1251
+ # ph:: Specifiy the phonetic symbols for pronunciation
1252
+ # keyword_args:: additional attributes
1253
+ def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
1254
+ append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
669
1255
  end
670
- end
671
1256
 
672
- ##
673
- # Using Phonetic Pronunciation in <Say>
674
- class SsmlPhoneme < TwiML
675
- def initialize(words, **keyword_args)
676
- super(**keyword_args)
677
- @name = 'phoneme'
678
- @value = words
679
- yield(self) if block_given?
1257
+ ##
1258
+ # Create a new <Prosody> element
1259
+ # words:: Words to speak
1260
+ # volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
1261
+ # rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
1262
+ # pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
1263
+ # keyword_args:: additional attributes
1264
+ def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
1265
+ prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
1266
+
1267
+ yield(prosody) if block_given?
1268
+ append(prosody)
680
1269
  end
681
- end
682
1270
 
683
- ##
684
- # Adding a Pause Between Paragraphs in <Say>
685
- class SsmlP < TwiML
686
- def initialize(words, **keyword_args)
687
- super(**keyword_args)
688
- @name = 'p'
689
- @value = words
690
- yield(self) if block_given?
1271
+ ##
1272
+ # Create a new <Say-As> element
1273
+ # words:: Words to be interpreted
1274
+ # interpretAs:: Specify the type of words are spoken
1275
+ # format:: Specify the format of the date when interpret-as is set to date
1276
+ # keyword_args:: additional attributes
1277
+ def say_as(words, interpretAs: nil, format: nil, **keyword_args)
1278
+ append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
691
1279
  end
692
- end
693
1280
 
694
- ##
695
- # Specifying Another Language for Specific Words in <Say>
696
- class SsmlLang < TwiML
697
- def initialize(words, **keyword_args)
698
- super(**keyword_args)
699
- @name = 'lang'
700
- @value = words
701
- yield(self) if block_given?
1281
+ ##
1282
+ # Create a new <Sub> element
1283
+ # words:: Words to be substituted
1284
+ # aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
1285
+ # keyword_args:: additional attributes
1286
+ def sub(words, aliasAttribute: nil, **keyword_args)
1287
+ append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
702
1288
  end
703
- end
704
1289
 
705
- ##
706
- # Emphasizing Words in <Say>
707
- class SsmlEmphasis < TwiML
708
- def initialize(words, **keyword_args)
709
- super(**keyword_args)
710
- @name = 'emphasis'
711
- @value = words
712
- yield(self) if block_given?
1290
+ ##
1291
+ # Create a new <W> element
1292
+ # words:: Words to speak
1293
+ # role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
1294
+ # keyword_args:: additional attributes
1295
+ def w(words: nil, role: nil, **keyword_args)
1296
+ w = SsmlW.new(words: words, role: role, **keyword_args)
1297
+
1298
+ yield(w) if block_given?
1299
+ append(w)
713
1300
  end
714
1301
  end
715
1302
 
@@ -740,9 +1327,10 @@ module Twilio
740
1327
  # error_type:: Type of error
741
1328
  # card_type:: Type of the credit card
742
1329
  # attempt:: Current attempt count
1330
+ # require_matching_inputs:: Require customer to input requested information twice and verify matching.
743
1331
  # keyword_args:: additional attributes
744
- def prompt(for_: nil, error_type: nil, card_type: nil, attempt: nil, **keyword_args)
745
- prompt = Prompt.new(for_: for_, error_type: error_type, card_type: card_type, attempt: attempt, **keyword_args)
1332
+ def prompt(for_: nil, error_type: nil, card_type: nil, attempt: nil, require_matching_inputs: nil, **keyword_args)
1333
+ prompt = Prompt.new(for_: for_, error_type: error_type, card_type: card_type, attempt: attempt, require_matching_inputs: require_matching_inputs, **keyword_args)
746
1334
 
747
1335
  yield(prompt) if block_given?
748
1336
  append(prompt)
@@ -850,7 +1438,7 @@ module Twilio
850
1438
  # message:: Message to say
851
1439
  # voice:: Voice to use
852
1440
  # loop:: Times to loop message
853
- # language:: Message langauge
1441
+ # language:: Message language
854
1442
  # keyword_args:: additional attributes
855
1443
  def say(message: nil, voice: nil, loop: nil, language: nil, **keyword_args)
856
1444
  say = Say.new(message: message, voice: voice, loop: loop, language: language, **keyword_args)
@@ -968,9 +1556,11 @@ module Twilio
968
1556
  # recording_status_callback_method:: Recording status callback URL method
969
1557
  # recording_status_callback_event:: Recording status callback events
970
1558
  # event_callback_url:: Event callback URL
1559
+ # jitter_buffer_size:: Size of jitter buffer for participant
1560
+ # participant_label:: A label for participant
971
1561
  # keyword_args:: additional attributes
972
- def conference(name, muted: nil, beep: nil, start_conference_on_enter: nil, end_conference_on_exit: nil, wait_url: nil, wait_method: nil, max_participants: nil, record: nil, region: nil, coach: nil, trim: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, event_callback_url: nil, **keyword_args)
973
- append(Conference.new(name, muted: muted, beep: beep, start_conference_on_enter: start_conference_on_enter, end_conference_on_exit: end_conference_on_exit, wait_url: wait_url, wait_method: wait_method, max_participants: max_participants, record: record, region: region, coach: coach, trim: trim, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, event_callback_url: event_callback_url, **keyword_args))
1562
+ def conference(name, muted: nil, beep: nil, start_conference_on_enter: nil, end_conference_on_exit: nil, wait_url: nil, wait_method: nil, max_participants: nil, record: nil, region: nil, coach: nil, trim: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, event_callback_url: nil, jitter_buffer_size: nil, participant_label: nil, **keyword_args)
1563
+ append(Conference.new(name, muted: muted, beep: beep, start_conference_on_enter: start_conference_on_enter, end_conference_on_exit: end_conference_on_exit, wait_url: wait_url, wait_method: wait_method, max_participants: max_participants, record: record, region: region, coach: coach, trim: trim, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, event_callback_url: event_callback_url, jitter_buffer_size: jitter_buffer_size, participant_label: participant_label, **keyword_args))
974
1564
  end
975
1565
 
976
1566
  ##
@@ -983,9 +1573,16 @@ module Twilio
983
1573
  # status_callback:: Status callback URL
984
1574
  # status_callback_method:: Status callback URL method
985
1575
  # byoc:: BYOC trunk SID (Beta)
1576
+ # machine_detection:: Enable machine detection or end of greeting detection
1577
+ # amd_status_callback_method:: HTTP Method to use with amd_status_callback
1578
+ # amd_status_callback:: The URL we should call to send amd status information to your application
1579
+ # machine_detection_timeout:: Number of seconds to wait for machine detection
1580
+ # machine_detection_speech_threshold:: Number of milliseconds for measuring stick for the length of the speech activity
1581
+ # machine_detection_speech_end_threshold:: Number of milliseconds of silence after speech activity
1582
+ # machine_detection_silence_timeout:: Number of milliseconds of initial silence
986
1583
  # keyword_args:: additional attributes
987
- def number(phone_number, send_digits: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, byoc: nil, **keyword_args)
988
- append(Number.new(phone_number, send_digits: send_digits, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, byoc: byoc, **keyword_args))
1584
+ def number(phone_number, send_digits: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, byoc: nil, machine_detection: nil, amd_status_callback_method: nil, amd_status_callback: nil, machine_detection_timeout: nil, machine_detection_speech_threshold: nil, machine_detection_speech_end_threshold: nil, machine_detection_silence_timeout: nil, **keyword_args)
1585
+ append(Number.new(phone_number, send_digits: send_digits, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, byoc: byoc, machine_detection: machine_detection, amd_status_callback_method: amd_status_callback_method, amd_status_callback: amd_status_callback, machine_detection_timeout: machine_detection_timeout, machine_detection_speech_threshold: machine_detection_speech_threshold, machine_detection_speech_end_threshold: machine_detection_speech_end_threshold, machine_detection_silence_timeout: machine_detection_silence_timeout, **keyword_args))
989
1586
  end
990
1587
 
991
1588
  ##
@@ -1018,9 +1615,16 @@ module Twilio
1018
1615
  # status_callback_event:: Status callback events
1019
1616
  # status_callback:: Status callback URL
1020
1617
  # status_callback_method:: Status callback URL method
1618
+ # machine_detection:: Enable machine detection or end of greeting detection
1619
+ # amd_status_callback_method:: HTTP Method to use with amd_status_callback
1620
+ # amd_status_callback:: The URL we should call to send amd status information to your application
1621
+ # machine_detection_timeout:: Number of seconds to wait for machine detection
1622
+ # machine_detection_speech_threshold:: Number of milliseconds for measuring stick for the length of the speech activity
1623
+ # machine_detection_speech_end_threshold:: Number of milliseconds of silence after speech activity
1624
+ # machine_detection_silence_timeout:: Number of milliseconds of initial silence
1021
1625
  # keyword_args:: additional attributes
1022
- def sip(sip_url, username: nil, password: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
1023
- append(Sip.new(sip_url, username: username, password: password, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args))
1626
+ def sip(sip_url, username: nil, password: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, machine_detection: nil, amd_status_callback_method: nil, amd_status_callback: nil, machine_detection_timeout: nil, machine_detection_speech_threshold: nil, machine_detection_speech_end_threshold: nil, machine_detection_silence_timeout: nil, **keyword_args)
1627
+ append(Sip.new(sip_url, username: username, password: password, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, machine_detection: machine_detection, amd_status_callback_method: amd_status_callback_method, amd_status_callback: amd_status_callback, machine_detection_timeout: machine_detection_timeout, machine_detection_speech_threshold: machine_detection_speech_threshold, machine_detection_speech_end_threshold: machine_detection_speech_end_threshold, machine_detection_silence_timeout: machine_detection_silence_timeout, **keyword_args))
1024
1628
  end
1025
1629
  end
1026
1630
 
@@ -1140,13 +1744,102 @@ module Twilio
1140
1744
  # connector_name:: Unique name for Stream Connector
1141
1745
  # url:: URL of the remote service where the Stream is routed
1142
1746
  # track:: Track to be streamed to remote service
1747
+ # status_callback:: Status Callback URL
1748
+ # status_callback_method:: Status Callback URL method
1143
1749
  # keyword_args:: additional attributes
1144
- def stream(name: nil, connector_name: nil, url: nil, track: nil, **keyword_args)
1145
- stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, **keyword_args)
1750
+ def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
1751
+ stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
1146
1752
 
1147
1753
  yield(stream) if block_given?
1148
1754
  append(stream)
1149
1755
  end
1756
+
1757
+ ##
1758
+ # Create a new <VirtualAgent> element
1759
+ # connector_name:: Defines the conversation profile Dialogflow needs to use
1760
+ # language:: Language to be used by Dialogflow to transcribe speech
1761
+ # sentiment_analysis:: Whether sentiment analysis needs to be enabled or not
1762
+ # status_callback:: URL to post status callbacks from Twilio
1763
+ # status_callback_method:: HTTP method to use when requesting the status callback URL
1764
+ # keyword_args:: additional attributes
1765
+ def virtual_agent(connector_name: nil, language: nil, sentiment_analysis: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
1766
+ virtual_agent = VirtualAgent.new(connector_name: connector_name, language: language, sentiment_analysis: sentiment_analysis, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
1767
+
1768
+ yield(virtual_agent) if block_given?
1769
+ append(virtual_agent)
1770
+ end
1771
+
1772
+ ##
1773
+ # Create a new <Conversation> element
1774
+ # service_instance_sid:: Service instance Sid
1775
+ # inbound_autocreation:: Inbound autocreation
1776
+ # routing_assignment_timeout:: Routing assignment timeout
1777
+ # inbound_timeout:: Inbound timeout
1778
+ # url:: TwiML URL
1779
+ # method:: TwiML URL method
1780
+ # record:: Record
1781
+ # trim:: Trim
1782
+ # recording_status_callback:: Recording status callback URL
1783
+ # recording_status_callback_method:: Recording status callback URL method
1784
+ # recording_status_callback_event:: Recording status callback events
1785
+ # status_callback:: Status callback URL
1786
+ # status_callback_method:: Status callback URL method
1787
+ # status_callback_event:: Events to call status callback URL
1788
+ # keyword_args:: additional attributes
1789
+ def conversation(service_instance_sid: nil, inbound_autocreation: nil, routing_assignment_timeout: nil, inbound_timeout: nil, url: nil, method: nil, record: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, status_callback: nil, status_callback_method: nil, status_callback_event: nil, **keyword_args)
1790
+ append(Conversation.new(service_instance_sid: service_instance_sid, inbound_autocreation: inbound_autocreation, routing_assignment_timeout: routing_assignment_timeout, inbound_timeout: inbound_timeout, url: url, method: method, record: record, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, status_callback_event: status_callback_event, **keyword_args))
1791
+ end
1792
+ end
1793
+
1794
+ ##
1795
+ # <Conversation> TwiML Noun
1796
+ class Conversation < TwiML
1797
+ def initialize(**keyword_args)
1798
+ super(**keyword_args)
1799
+ @name = 'Conversation'
1800
+
1801
+ yield(self) if block_given?
1802
+ end
1803
+ end
1804
+
1805
+ ##
1806
+ # <VirtualAgent> TwiML Noun
1807
+ class VirtualAgent < TwiML
1808
+ def initialize(**keyword_args)
1809
+ super(**keyword_args)
1810
+ @name = 'VirtualAgent'
1811
+
1812
+ yield(self) if block_given?
1813
+ end
1814
+
1815
+ ##
1816
+ # Create a new <Config> element
1817
+ # name:: The name of the custom config
1818
+ # value:: The value of the custom config
1819
+ # keyword_args:: additional attributes
1820
+ def config(name: nil, value: nil, **keyword_args)
1821
+ append(Config.new(name: name, value: value, **keyword_args))
1822
+ end
1823
+
1824
+ ##
1825
+ # Create a new <Parameter> element
1826
+ # name:: The name of the custom parameter
1827
+ # value:: The value of the custom parameter
1828
+ # keyword_args:: additional attributes
1829
+ def parameter(name: nil, value: nil, **keyword_args)
1830
+ append(Parameter.new(name: name, value: value, **keyword_args))
1831
+ end
1832
+ end
1833
+
1834
+ ##
1835
+ # <Config> TwiML Noun
1836
+ class Config < TwiML
1837
+ def initialize(**keyword_args)
1838
+ super(**keyword_args)
1839
+ @name = 'Config'
1840
+
1841
+ yield(self) if block_given?
1842
+ end
1150
1843
  end
1151
1844
 
1152
1845
  ##