twilio-ruby 5.15.1 → 5.58.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 (848) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -0
  3. data/.gitignore +5 -0
  4. data/.rubocop.yml +22 -6
  5. data/.rubocop_todo.yml +86 -75
  6. data/.travis.yml +45 -19
  7. data/CHANGES.md +1553 -0
  8. data/CODE_OF_CONDUCT.md +73 -0
  9. data/CONTRIBUTING.md +4 -2
  10. data/Dockerfile +2 -2
  11. data/Gemfile +1 -9
  12. data/ISSUE_TEMPLATE.md +17 -13
  13. data/{LICENSE.md → LICENSE} +2 -2
  14. data/Makefile +6 -15
  15. data/PULL_REQUEST_TEMPLATE.md +30 -3
  16. data/README.md +120 -54
  17. data/Rakefile +0 -54
  18. data/VERSIONS.md +9 -10
  19. data/examples/examples.rb +1 -1
  20. data/githooks/pre-commit +0 -0
  21. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +1 -1
  22. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +3 -3
  23. data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  24. data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  25. data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  26. data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
  27. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +7 -11
  28. data/lib/twilio-ruby/http/http_client.rb +29 -14
  29. data/lib/twilio-ruby/http.rb +5 -0
  30. data/lib/twilio-ruby/jwt/access_token.rb +7 -2
  31. data/lib/twilio-ruby/jwt/jwt.rb +6 -0
  32. data/lib/twilio-ruby/jwt/task_router.rb +2 -2
  33. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  34. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +45 -46
  35. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +44 -52
  36. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +5 -4
  37. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  38. data/lib/twilio-ruby/rest/accounts/v1.rb +15 -1
  39. data/lib/twilio-ruby/rest/accounts.rb +13 -1
  40. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +40 -38
  41. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +115 -121
  42. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +162 -181
  43. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +35 -32
  44. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +169 -178
  45. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +187 -85
  46. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +166 -172
  47. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +187 -85
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +187 -85
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +166 -172
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +187 -85
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +28 -23
  52. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +125 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +75 -70
  55. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +59 -59
  56. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +72 -67
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +375 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +118 -103
  59. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +433 -313
  60. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +335 -201
  61. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +80 -79
  62. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +98 -81
  63. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +80 -71
  64. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +48 -41
  65. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +53 -54
  66. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +172 -127
  67. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +171 -127
  68. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +171 -127
  69. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +304 -289
  70. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +35 -36
  71. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +25 -20
  72. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +51 -47
  73. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +203 -203
  74. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +11 -15
  75. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +11 -15
  76. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +47 -55
  77. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +56 -61
  78. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +53 -38
  79. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +79 -78
  80. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +55 -48
  81. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +48 -42
  82. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +54 -41
  83. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +70 -61
  84. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +69 -70
  85. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +20 -25
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +45 -51
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +27 -36
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +48 -49
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +48 -49
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +15 -13
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +48 -49
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +13 -11
  93. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +11 -9
  94. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +47 -47
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +46 -47
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +179 -95
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +64 -52
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +31 -39
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +5 -4
  100. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +16 -19
  101. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +43 -40
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +70 -50
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +70 -50
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +70 -53
  105. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +70 -50
  106. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +70 -50
  107. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +70 -50
  108. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +70 -50
  109. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +70 -50
  110. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +67 -53
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +107 -114
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +3 -2
  113. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +40 -45
  114. data/lib/twilio-ruby/rest/api/v2010/account.rb +38 -28
  115. data/lib/twilio-ruby/rest/api/v2010.rb +10 -5
  116. data/lib/twilio-ruby/rest/api.rb +38 -27
  117. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +29 -24
  118. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +29 -20
  119. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +65 -59
  120. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +60 -59
  121. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +60 -58
  122. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +113 -87
  123. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +27 -24
  124. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +60 -51
  125. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +90 -76
  126. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +41 -30
  127. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +35 -22
  128. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +76 -66
  129. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +420 -0
  130. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +132 -88
  131. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +194 -0
  132. data/lib/twilio-ruby/rest/autopilot/v1.rb +15 -6
  133. data/lib/twilio-ruby/rest/autopilot.rb +8 -2
  134. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +286 -0
  135. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +286 -0
  136. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +255 -0
  137. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +243 -0
  138. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +226 -0
  139. data/lib/twilio-ruby/rest/bulkexports/v1.rb +62 -0
  140. data/lib/twilio-ruby/rest/bulkexports.rb +56 -0
  141. data/lib/twilio-ruby/rest/chat/v1/credential.rb +91 -80
  142. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +74 -68
  143. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +94 -97
  144. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +81 -73
  145. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +82 -74
  146. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +62 -62
  147. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +20 -18
  148. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +74 -81
  149. data/lib/twilio-ruby/rest/chat/v1/service.rb +338 -357
  150. data/lib/twilio-ruby/rest/chat/v1.rb +15 -11
  151. data/lib/twilio-ruby/rest/chat/v2/credential.rb +77 -84
  152. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +66 -56
  153. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +72 -74
  154. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +171 -141
  155. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +143 -135
  156. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +115 -69
  157. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +134 -117
  158. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +64 -59
  159. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +72 -67
  160. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +95 -53
  161. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +93 -88
  162. data/lib/twilio-ruby/rest/chat/v2/service.rb +224 -185
  163. data/lib/twilio-ruby/rest/chat/v2.rb +13 -11
  164. data/lib/twilio-ruby/rest/chat.rb +3 -3
  165. data/lib/twilio-ruby/rest/client.rb +196 -69
  166. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +260 -0
  168. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +355 -0
  169. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +502 -0
  170. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +502 -0
  171. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +410 -0
  172. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +562 -0
  173. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +419 -0
  174. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  175. data/lib/twilio-ruby/rest/conversations/v1/role.rb +366 -0
  176. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +380 -0
  177. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +307 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +278 -0
  179. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +386 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +548 -0
  181. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +541 -0
  182. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +449 -0
  183. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +595 -0
  184. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  185. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +387 -0
  186. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  187. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +481 -0
  188. data/lib/twilio-ruby/rest/{authy → conversations}/v1/service.rb +171 -92
  189. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  190. data/lib/twilio-ruby/rest/conversations/v1/user.rb +451 -0
  191. data/lib/twilio-ruby/rest/conversations/v1.rb +126 -0
  192. data/lib/twilio-ruby/rest/conversations.rb +95 -0
  193. data/lib/twilio-ruby/rest/events/v1/event_type.rb +298 -0
  194. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +290 -0
  195. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  196. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +115 -0
  197. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +119 -0
  198. data/lib/twilio-ruby/rest/events/v1/sink.rb +418 -0
  199. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +346 -0
  200. data/lib/twilio-ruby/rest/events/v1/subscription.rb +397 -0
  201. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  202. data/lib/twilio-ruby/rest/events.rb +72 -0
  203. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +35 -36
  204. data/lib/twilio-ruby/rest/fax/v1/fax.rb +113 -108
  205. data/lib/twilio-ruby/rest/fax/v1.rb +8 -6
  206. data/lib/twilio-ruby/rest/fax.rb +3 -2
  207. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +340 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +462 -0
  209. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -0
  210. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +341 -0
  211. data/lib/twilio-ruby/rest/flex_api/v1.rb +83 -0
  212. data/lib/twilio-ruby/rest/flex_api.rb +71 -0
  213. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +233 -0
  214. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  215. data/lib/twilio-ruby/rest/frontline_api.rb +47 -0
  216. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +262 -0
  217. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +252 -0
  218. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +307 -0
  219. data/lib/twilio-ruby/rest/insights/v1/call.rb +236 -0
  220. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +434 -0
  221. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  222. data/lib/twilio-ruby/rest/insights/v1/room.rb +499 -0
  223. data/lib/twilio-ruby/rest/insights/v1.rb +67 -0
  224. data/lib/twilio-ruby/rest/insights.rb +60 -0
  225. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +47 -75
  226. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +40 -66
  227. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +47 -93
  228. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +41 -61
  229. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +50 -69
  230. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +39 -59
  231. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +6 -10
  232. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +47 -76
  233. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +69 -203
  234. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +15 -13
  235. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +50 -94
  236. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +39 -56
  237. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +40 -69
  238. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +95 -141
  239. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +87 -133
  240. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +29 -39
  241. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +85 -118
  242. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +39 -56
  243. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +38 -63
  244. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +67 -54
  245. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +68 -87
  246. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +76 -126
  247. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +15 -13
  248. data/lib/twilio-ruby/rest/ip_messaging.rb +7 -9
  249. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +63 -56
  250. data/lib/twilio-ruby/rest/lookups/v1.rb +9 -6
  251. data/lib/twilio-ruby/rest/lookups.rb +4 -4
  252. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +346 -0
  253. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +164 -0
  254. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  255. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +44 -46
  256. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +44 -44
  257. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +44 -44
  258. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +426 -0
  259. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  260. data/lib/twilio-ruby/rest/messaging/v1/service.rb +245 -127
  261. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  262. data/lib/twilio-ruby/rest/messaging/v1.rb +44 -6
  263. data/lib/twilio-ruby/rest/messaging.rb +29 -2
  264. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +75 -88
  265. data/lib/twilio-ruby/rest/monitor/v1/event.rb +61 -65
  266. data/lib/twilio-ruby/rest/monitor/v1.rb +13 -11
  267. data/lib/twilio-ruby/rest/monitor.rb +5 -3
  268. data/lib/twilio-ruby/rest/notify/v1/credential.rb +82 -81
  269. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +100 -94
  270. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +126 -124
  271. data/lib/twilio-ruby/rest/notify/v1/service.rb +176 -142
  272. data/lib/twilio-ruby/rest/notify/v1.rb +15 -11
  273. data/lib/twilio-ruby/rest/notify.rb +5 -3
  274. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +309 -0
  275. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +320 -0
  276. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +512 -0
  277. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +358 -0
  278. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +273 -0
  279. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +314 -0
  280. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +371 -0
  281. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +273 -0
  282. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +189 -0
  283. data/lib/twilio-ruby/rest/numbers/v2.rb +35 -0
  284. data/lib/twilio-ruby/rest/numbers.rb +44 -0
  285. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +97 -14
  286. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +275 -0
  287. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +249 -0
  288. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +65 -17
  289. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +35 -28
  290. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +15 -11
  291. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +23 -33
  292. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +23 -33
  293. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +23 -33
  294. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +23 -33
  295. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +23 -33
  296. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +6 -5
  297. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +15 -14
  298. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +46 -51
  299. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +32 -42
  300. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +11 -9
  301. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +28 -26
  302. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +23 -26
  303. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +32 -34
  304. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +50 -63
  305. data/lib/twilio-ruby/rest/preview/marketplace.rb +20 -20
  306. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +20 -25
  307. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +29 -36
  308. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +36 -39
  309. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +20 -25
  310. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +22 -28
  311. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +36 -39
  312. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +20 -25
  313. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +22 -28
  314. data/lib/twilio-ruby/rest/preview/sync/service.rb +23 -33
  315. data/lib/twilio-ruby/rest/preview/sync.rb +6 -5
  316. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +165 -0
  317. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +225 -0
  318. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +195 -0
  319. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +186 -0
  320. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +277 -0
  321. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +65 -0
  322. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +12 -15
  323. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +12 -15
  324. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +11 -10
  325. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +22 -28
  326. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +23 -33
  327. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +23 -33
  328. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +23 -33
  329. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +12 -15
  330. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +24 -30
  331. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +23 -33
  332. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +12 -15
  333. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +11 -10
  334. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +23 -33
  335. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +23 -33
  336. data/lib/twilio-ruby/rest/preview/understand.rb +6 -5
  337. data/lib/twilio-ruby/rest/preview/wireless/command.rb +17 -23
  338. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +25 -35
  339. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +11 -8
  340. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +15 -20
  341. data/lib/twilio-ruby/rest/preview/wireless.rb +16 -13
  342. data/lib/twilio-ruby/rest/preview.rb +52 -30
  343. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +26 -23
  344. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +4 -2
  345. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +26 -23
  346. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +4 -2
  347. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +26 -23
  348. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +20 -19
  349. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +5 -3
  350. data/lib/twilio-ruby/rest/pricing/v1.rb +1 -1
  351. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  352. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  353. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +26 -25
  354. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +35 -22
  355. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +11 -8
  356. data/lib/twilio-ruby/rest/pricing/v2.rb +38 -1
  357. data/lib/twilio-ruby/rest/pricing.rb +20 -1
  358. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +72 -65
  359. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +61 -83
  360. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +62 -61
  361. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +79 -72
  362. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +127 -107
  363. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +55 -56
  364. data/lib/twilio-ruby/rest/proxy/v1/service.rb +167 -105
  365. data/lib/twilio-ruby/rest/proxy/v1.rb +8 -6
  366. data/lib/twilio-ruby/rest/proxy.rb +3 -2
  367. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +334 -0
  368. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +387 -0
  369. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  370. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +391 -0
  371. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +349 -0
  372. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +394 -0
  373. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +407 -0
  374. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +454 -0
  375. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +241 -0
  376. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +364 -0
  377. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +387 -0
  378. data/lib/twilio-ruby/rest/{verify → serverless}/v1/service.rb +182 -116
  379. data/lib/twilio-ruby/rest/serverless/v1.rb +44 -0
  380. data/lib/twilio-ruby/rest/serverless.rb +47 -0
  381. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +22 -21
  382. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +26 -27
  383. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +34 -35
  384. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +45 -50
  385. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +23 -21
  386. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +29 -27
  387. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +35 -35
  388. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +104 -58
  389. data/lib/twilio-ruby/rest/studio/v1/flow.rb +30 -31
  390. data/lib/twilio-ruby/rest/studio/v1.rb +7 -6
  391. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +211 -0
  392. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -0
  393. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +372 -0
  394. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +449 -0
  395. data/lib/twilio-ruby/rest/{preview/authy/service/entity.rb → studio/v2/flow/flow_revision.rb} +118 -117
  396. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +199 -0
  397. data/lib/twilio-ruby/rest/studio/v2/flow.rb +482 -0
  398. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +117 -0
  399. data/lib/twilio-ruby/rest/studio/v2.rb +51 -0
  400. data/lib/twilio-ruby/rest/studio.rb +19 -5
  401. data/lib/twilio-ruby/rest/supersim/v1/command.rb +368 -0
  402. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +494 -0
  403. data/lib/twilio-ruby/rest/supersim/v1/network.rb +307 -0
  404. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +339 -0
  405. data/lib/twilio-ruby/rest/{preview/acc_security/service.rb → supersim/v1/network_access_profile.rb} +116 -143
  406. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  407. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +443 -0
  408. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  409. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +338 -0
  410. data/lib/twilio-ruby/rest/supersim/v1.rb +131 -0
  411. data/lib/twilio-ruby/rest/supersim.rb +97 -0
  412. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +60 -69
  413. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +71 -75
  414. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +155 -107
  415. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +59 -69
  416. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +77 -73
  417. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +161 -109
  418. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +57 -69
  419. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +76 -73
  420. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +18 -27
  421. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +57 -67
  422. data/lib/twilio-ruby/rest/sync/v1/service.rb +141 -87
  423. data/lib/twilio-ruby/rest/sync/v1.rb +7 -6
  424. data/lib/twilio-ruby/rest/sync.rb +3 -2
  425. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +83 -77
  426. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +131 -85
  427. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +298 -194
  428. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +217 -176
  429. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +114 -26
  430. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +79 -69
  431. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +59 -29
  432. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +57 -54
  433. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +61 -70
  434. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +119 -122
  435. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +309 -155
  436. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +56 -59
  437. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +50 -41
  438. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +43 -39
  439. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +27 -19
  440. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +53 -50
  441. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +131 -117
  442. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +70 -59
  443. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +42 -26
  444. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +65 -54
  445. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +108 -107
  446. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +59 -54
  447. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +34 -24
  448. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +55 -50
  449. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +124 -128
  450. data/lib/twilio-ruby/rest/taskrouter/v1.rb +7 -6
  451. data/lib/twilio-ruby/rest/taskrouter.rb +3 -2
  452. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +42 -43
  453. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +40 -45
  454. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +74 -83
  455. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +65 -62
  456. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +198 -0
  457. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +149 -134
  458. data/lib/twilio-ruby/rest/trunking/v1.rb +8 -6
  459. data/lib/twilio-ruby/rest/trunking.rb +3 -3
  460. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  461. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  462. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  463. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  464. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  465. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  466. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  467. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  468. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  469. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  470. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  471. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  472. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  473. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  474. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  475. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/form.rb +30 -29
  476. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +124 -0
  477. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +201 -0
  478. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +529 -0
  479. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity/factor.rb +108 -129
  480. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +299 -0
  481. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity.rb +96 -43
  482. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +370 -0
  483. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +399 -0
  484. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +391 -0
  485. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +356 -0
  486. data/lib/twilio-ruby/rest/verify/{v1 → v2}/service/verification_check.rb +59 -36
  487. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +427 -0
  488. data/lib/twilio-ruby/rest/verify/v2/service.rb +761 -0
  489. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +329 -0
  490. data/lib/twilio-ruby/rest/verify/v2.rb +78 -0
  491. data/lib/twilio-ruby/rest/verify.rb +28 -9
  492. data/lib/twilio-ruby/rest/video/v1/composition.rb +125 -129
  493. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +260 -229
  494. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +54 -63
  495. data/lib/twilio-ruby/rest/video/v1/recording.rb +81 -69
  496. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +54 -63
  497. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +64 -53
  498. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +39 -37
  499. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +175 -0
  500. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +132 -105
  501. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +104 -77
  502. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +144 -0
  503. data/lib/twilio-ruby/rest/video/v1/room.rb +118 -85
  504. data/lib/twilio-ruby/rest/video/v1.rb +35 -34
  505. data/lib/twilio-ruby/rest/video.rb +16 -16
  506. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +496 -0
  507. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -0
  508. data/lib/twilio-ruby/rest/{preview/authy/service.rb → voice/v1/connection_policy.rb} +115 -117
  509. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/bulk_country_update.rb +8 -13
  510. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country/highrisk_special_prefix.rb +9 -11
  511. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country.rb +59 -58
  512. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +197 -0
  513. data/lib/twilio-ruby/rest/voice/v1/{voice_permission.rb → dialing_permissions.rb} +21 -23
  514. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +349 -0
  515. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +329 -0
  516. data/lib/twilio-ruby/rest/voice/v1.rb +73 -5
  517. data/lib/twilio-ruby/rest/voice.rb +40 -4
  518. data/lib/twilio-ruby/rest/wireless/v1/command.rb +86 -67
  519. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +86 -88
  520. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +37 -40
  521. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +42 -38
  522. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +198 -151
  523. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +229 -0
  524. data/lib/twilio-ruby/rest/wireless/v1.rb +26 -16
  525. data/lib/twilio-ruby/rest/wireless.rb +10 -4
  526. data/lib/twilio-ruby/rest.rb +13 -0
  527. data/lib/twilio-ruby/security/request_validator.rb +64 -11
  528. data/lib/twilio-ruby/twiml/fax_response.rb +6 -3
  529. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  530. data/lib/twilio-ruby/twiml/twiml.rb +4 -0
  531. data/lib/twilio-ruby/twiml/voice_response.rb +278 -34
  532. data/lib/twilio-ruby/util/configuration.rb +22 -5
  533. data/lib/twilio-ruby/version.rb +1 -1
  534. data/lib/twilio-ruby.rb +8 -24
  535. data/sonar-project.properties +13 -0
  536. data/twilio-ruby.gemspec +13 -8
  537. metadata +296 -647
  538. data/lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb +0 -405
  539. data/lib/twilio-ruby/rest/authy/v1.rb +0 -59
  540. data/lib/twilio-ruby/rest/authy.rb +0 -55
  541. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -185
  542. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +0 -182
  543. data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -43
  544. data/lib/twilio-ruby/rest/preview/authy.rb +0 -43
  545. data/lib/twilio-ruby/rest/verify/v1/service/verification.rb +0 -192
  546. data/lib/twilio-ruby/rest/verify/v1.rb +0 -43
  547. data/spec/framework/request_spec.rb +0 -36
  548. data/spec/framework/serialize_spec.rb +0 -80
  549. data/spec/holodeck/holodeck.rb +0 -61
  550. data/spec/holodeck/hologram.rb +0 -4
  551. data/spec/http/http_client_spec.rb +0 -122
  552. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -226
  553. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  554. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  555. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -107
  556. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  557. data/spec/integration/api/v2010/account/application_spec.rb +0 -280
  558. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -139
  559. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -103
  560. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -103
  561. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -102
  562. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -103
  563. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -103
  564. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -102
  565. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -103
  566. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -130
  567. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -139
  568. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -151
  569. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -181
  570. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  571. data/spec/integration/api/v2010/account/call_spec.rb +0 -314
  572. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -350
  573. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -237
  574. data/spec/integration/api/v2010/account/conference_spec.rb +0 -179
  575. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -179
  576. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -137
  577. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  578. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -185
  579. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -185
  580. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -185
  581. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -341
  582. data/spec/integration/api/v2010/account/key_spec.rb +0 -180
  583. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -50
  584. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -164
  585. data/spec/integration/api/v2010/account/message_spec.rb +0 -290
  586. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -47
  587. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -47
  588. data/spec/integration/api/v2010/account/notification_spec.rb +0 -174
  589. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -195
  590. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -169
  591. data/spec/integration/api/v2010/account/queue_spec.rb +0 -242
  592. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -177
  593. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -168
  594. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -176
  595. data/spec/integration/api/v2010/account/recording_spec.rb +0 -187
  596. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -182
  597. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -180
  598. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -256
  599. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -244
  600. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -220
  601. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -220
  602. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  603. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -220
  604. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  605. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  606. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -210
  607. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -220
  608. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -287
  609. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
  610. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -254
  611. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  612. data/spec/integration/api/v2010/account/token_spec.rb +0 -58
  613. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -169
  614. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  615. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  616. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  617. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  618. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  619. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  620. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  621. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  622. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  623. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -285
  624. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  625. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  626. data/spec/integration/api/v2010/account_spec.rb +0 -272
  627. data/spec/integration/authy/v1/form_spec.rb +0 -48
  628. data/spec/integration/authy/v1/service/entity/factor/challenge_spec.rb +0 -267
  629. data/spec/integration/authy/v1/service/entity/factor_spec.rb +0 -269
  630. data/spec/integration/authy/v1/service/entity_spec.rb +0 -201
  631. data/spec/integration/authy/v1/service_spec.rb +0 -227
  632. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -81
  633. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -47
  634. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -210
  635. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -246
  636. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -241
  637. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -306
  638. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -81
  639. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -207
  640. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -253
  641. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -87
  642. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -50
  643. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -262
  644. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -270
  645. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  646. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  647. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  648. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  649. data/spec/integration/chat/v1/service/channel_spec.rb +0 -277
  650. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  651. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -94
  652. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  653. data/spec/integration/chat/v1/service_spec.rb +0 -299
  654. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  655. data/spec/integration/chat/v2/service/binding_spec.rb +0 -177
  656. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  657. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -257
  658. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -405
  659. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -307
  660. data/spec/integration/chat/v2/service/channel_spec.rb +0 -281
  661. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  662. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -180
  663. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -192
  664. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  665. data/spec/integration/chat/v2/service_spec.rb +0 -354
  666. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -128
  667. data/spec/integration/fax/v1/fax_spec.rb +0 -271
  668. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -223
  669. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  670. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -284
  671. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -294
  672. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -277
  673. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -263
  674. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -94
  675. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -266
  676. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -299
  677. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  678. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -177
  679. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  680. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -257
  681. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -405
  682. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -307
  683. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -281
  684. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  685. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -180
  686. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -192
  687. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  688. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -354
  689. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -71
  690. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  691. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  692. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  693. data/spec/integration/messaging/v1/service_spec.rb +0 -263
  694. data/spec/integration/monitor/v1/alert_spec.rb +0 -163
  695. data/spec/integration/monitor/v1/event_spec.rb +0 -150
  696. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  697. data/spec/integration/notify/v1/service/binding_spec.rb +0 -225
  698. data/spec/integration/notify/v1/service/notification_spec.rb +0 -99
  699. data/spec/integration/notify/v1/service_spec.rb +0 -286
  700. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -52
  701. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -52
  702. data/spec/integration/preview/acc_security/service_spec.rb +0 -185
  703. data/spec/integration/preview/authy/service/entity_spec.rb +0 -173
  704. data/spec/integration/preview/authy/service_spec.rb +0 -201
  705. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -58
  706. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  707. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -45
  708. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -238
  709. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -233
  710. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -249
  711. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -237
  712. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -246
  713. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -111
  714. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -227
  715. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -393
  716. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -123
  717. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -144
  718. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  719. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -254
  720. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -204
  721. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  722. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -254
  723. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -204
  724. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -209
  725. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -254
  726. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -204
  727. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -209
  728. data/spec/integration/preview/sync/service_spec.rb +0 -246
  729. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -81
  730. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -81
  731. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -47
  732. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -210
  733. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -246
  734. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -241
  735. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -306
  736. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -81
  737. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -207
  738. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -253
  739. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -87
  740. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -50
  741. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -262
  742. data/spec/integration/preview/understand/assistant_spec.rb +0 -274
  743. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  744. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -262
  745. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -51
  746. data/spec/integration/preview/wireless/sim_spec.rb +0 -210
  747. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -139
  748. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  749. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -130
  750. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  751. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -140
  752. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -56
  753. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  754. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -181
  755. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -62
  756. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  757. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -232
  758. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -136
  759. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -166
  760. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -181
  761. data/spec/integration/proxy/v1/service/session_spec.rb +0 -230
  762. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -229
  763. data/spec/integration/proxy/v1/service_spec.rb +0 -215
  764. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -51
  765. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -54
  766. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -101
  767. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -171
  768. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -51
  769. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -54
  770. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -101
  771. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -171
  772. data/spec/integration/studio/v1/flow_spec.rb +0 -117
  773. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -204
  774. data/spec/integration/sync/v1/service/document_spec.rb +0 -257
  775. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  776. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -204
  777. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -257
  778. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  779. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -204
  780. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -257
  781. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  782. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -249
  783. data/spec/integration/sync/v1/service_spec.rb +0 -254
  784. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -236
  785. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -159
  786. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -225
  787. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -129
  788. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -96
  789. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -81
  790. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -108
  791. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -146
  792. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -294
  793. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -326
  794. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -194
  795. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -188
  796. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -92
  797. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -89
  798. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -70
  799. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -116
  800. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -294
  801. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -97
  802. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  803. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -71
  804. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -272
  805. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -94
  806. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  807. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -105
  808. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -295
  809. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -192
  810. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -192
  811. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -252
  812. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -267
  813. data/spec/integration/trunking/v1/trunk_spec.rb +0 -282
  814. data/spec/integration/verify/v1/service/verification_check_spec.rb +0 -52
  815. data/spec/integration/verify/v1/service/verification_spec.rb +0 -52
  816. data/spec/integration/verify/v1/service_spec.rb +0 -215
  817. data/spec/integration/video/v1/composition_hook_spec.rb +0 -410
  818. data/spec/integration/video/v1/composition_settings_spec.rb +0 -86
  819. data/spec/integration/video/v1/composition_spec.rb +0 -325
  820. data/spec/integration/video/v1/recording_settings_spec.rb +0 -86
  821. data/spec/integration/video/v1/recording_spec.rb +0 -179
  822. data/spec/integration/video/v1/room/recording_spec.rb +0 -188
  823. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -96
  824. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -134
  825. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  826. data/spec/integration/video/v1/room_spec.rb +0 -257
  827. data/spec/integration/voice/v1/voice_permission/bulk_country_update_spec.rb +0 -45
  828. data/spec/integration/voice/v1/voice_permission/country/highrisk_special_prefix_spec.rb +0 -61
  829. data/spec/integration/voice/v1/voice_permission/country_spec.rb +0 -112
  830. data/spec/integration/voice/v1/voice_permission_spec.rb +0 -12
  831. data/spec/integration/wireless/v1/command_spec.rb +0 -263
  832. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -270
  833. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -87
  834. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -67
  835. data/spec/integration/wireless/v1/sim_spec.rb +0 -216
  836. data/spec/jwt/access_token_spec.rb +0 -151
  837. data/spec/jwt/client_capability_spec.rb +0 -104
  838. data/spec/jwt/task_router_spec.rb +0 -172
  839. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  840. data/spec/rest/client_spec.rb +0 -61
  841. data/spec/security/request_validator_spec.rb +0 -86
  842. data/spec/spec_helper.rb +0 -38
  843. data/spec/support/fakeweb.rb +0 -2
  844. data/spec/twilio_spec.rb +0 -15
  845. data/spec/twiml/messaging_response_spec.rb +0 -235
  846. data/spec/twiml/voice_response_spec.rb +0 -847
  847. data/spec/util/configuration_spec.rb +0 -15
  848. data/spec/util/url_encode_spec.rb +0 -12
@@ -3,7 +3,7 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
- #
6
+ #
7
7
  # frozen_string_literal: true
8
8
 
9
9
  module Twilio
@@ -16,11 +16,10 @@ module Twilio
16
16
  ##
17
17
  # Initialize the ParticipantList
18
18
  # @param [Version] version Version that contains the resource
19
- # @param [String] account_sid The unique id of the
20
- # [Account](https://www.twilio.com/docs/iam/api/account) that created this
21
- # conference
22
- # @param [String] conference_sid A 34 character string that identifies the
23
- # conference this participant is in
19
+ # @param [String] account_sid The SID of the
20
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created the
21
+ # Participant resource.
22
+ # @param [String] conference_sid The SID of the conference the participant is in.
24
23
  # @return [ParticipantList] ParticipantList
25
24
  def initialize(version, account_sid: nil, conference_sid: nil)
26
25
  super(version)
@@ -31,107 +30,154 @@ module Twilio
31
30
  end
32
31
 
33
32
  ##
34
- # Retrieve a single page of ParticipantInstance records from the API.
35
- # Request is executed immediately.
36
- # @param [String] from The `from` phone number that will dial the new conference
37
- # participant. Values may be a phone number or client id.
38
- # @param [String] to The phone number, client id, or sip address you are inviting
39
- # to this conference.
40
- # @param [String] status_callback The absolute URL where Twilio should send a
41
- # webhook with conference event information that you request with the
42
- # `StatusCallbackEvent` parameter.
43
- # @param [String] status_callback_method The method Twilio should use when
44
- # requesting your `StatusCallback` URL. Options are `GET` and `POST`. Defaults to
45
- # `POST`.
46
- # @param [String] status_callback_event Specifies which conference state changes
47
- # should generate a webhook to the `StatusCallback` URL. Options are `initiated`,
48
- # `ringing`, `answered`, and `completed`. To specify multiple values, separate
49
- # each with a space. Defaults to `completed`.
50
- # @param [String] timeout The number of seconds (integer) that Twilio should allow
51
- # the phone to ring before assuming there is no answer. Defaults to 60 seconds.
52
- # Minimum allowed timeout is `5`, max is `600`. Twilio always adds a 5-second
53
- # timeout buffer to outgoing calls, so if you enter a timeout value of 10 seconds,
54
- # you will see an actual timeout closer to 15 seconds.
55
- # @param [Boolean] record Records the agent and their conferences, including
56
- # downtime between conferences. Values may be `true` or `false`. Defaults to
57
- # `false`.
58
- # @param [Boolean] muted Specify whether the agent can speak in the conference.
59
- # Values can be `true` or `false`. Defaults to `false`.
60
- # @param [String] beep Play a notification beep to the conference when this
61
- # participant joins. Options are `true`, `false`, `onEnter`, or `onExit`. Defaults
62
- # to `true`.
63
- # @param [Boolean] start_conference_on_enter If the conference has not already
64
- # begun, `true` will start the conference when this participant joins. Specifying
65
- # `false` will mute the participant and play background music until the conference
66
- # begins. Defaults to `true`.
67
- # @param [Boolean] end_conference_on_exit If `true`, will end the conference when
68
- # this participant leaves. Defaults to `false`.
69
- # @param [String] wait_url Specify an absolute URL that hosts music to play before
70
- # the conference starts. Defualts to Twilio's standard [hold
71
- # music](https://www.twilio.com/labs/twimlets/holdmusic).
72
- # @param [String] wait_method Specify which method, `GET` or `POST`, Twilio should
73
- # use to request the `WaitUrl` for this conference. Be sure to use `GET` if you
74
- # are directly requesting static audio files so that Twilio properly caches the
75
- # files. Defaults to `POST`.
76
- # @param [Boolean] early_media Allow an agent to hear the state of the outbound
77
- # call, including ringing or disconnect messages. Can be `true` or `false`.
78
- # Defaults to `true`.
79
- # @param [String] max_participants The maximum number of participants within this
80
- # agent conference. Values can be positive integers from `2`-`10`. Defaults to
81
- # `10`.
82
- # @param [String] conference_record Records the conference that this participant
83
- # is joining. Options are `true`, `false`, `record-from-start`, and
84
- # `do-not-record`. Deafults to `false`
85
- # @param [String] conference_trim Specify whether to trim leading and trailing
86
- # silence from your recorded conference audio files. Options are `trim-silence`
87
- # and `do-not-trim`. Defaults to `trim-silence`
88
- # @param [String] conference_status_callback The absolute URL Twilio should
89
- # request with conference events specified in `ConferenceStatusCallbackEvent`.
90
- # This value is set by the first Participant to join the conference, and
91
- # subsequent callback URLs will be ignored.
92
- # @param [String] conference_status_callback_method The HTTP method Twilio should
93
- # use when requesting the `ConferenceStatusCallback` URL. Either `GET` or `POST`.
94
- # Defaults to `POST`.
95
- # @param [String] conference_status_callback_event Specifies which conference
96
- # state changes should generate a webhook to the URL specified in the
97
- # `ConferenceStatusCallback` attribute. Available values are `start`, `end`,
98
- # `join`, `leave`, `mute`, `hold`, and `speaker`. To specify multiple values,
99
- # separate them with a space. Defaults to `start` and `end`.
100
- # @param [String] recording_channels Set the recording channels for the final
101
- # agent/conference recording. Either `mono` or `dual`. Defaults to `mono`.
102
- # @param [String] recording_status_callback Specifies the `absolute URL` that
103
- # Twilio should request when the recording is available if the agent and
104
- # conference are recorded.
105
- # @param [String] recording_status_callback_method The HTTP method Twilio should
106
- # use when requesting the `RecordingStatusCallback`. `GET` or `POST`. Defaults to
33
+ # Create the ParticipantInstance
34
+ # @param [String] from The phone number, Client identifier, or username portion of
35
+ # SIP address that made this call. Phone numbers are in
36
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format (e.g.,
37
+ # +16175551212). Client identifiers are formatted `client:name`. If using a phone
38
+ # number, it must be a Twilio number or a Verified {outgoing caller
39
+ # id}[https://www.twilio.com/docs/voice/api/outgoing-caller-ids] for your account.
40
+ # If the `to` parameter is a phone number, `from` must also be a phone number. If
41
+ # `to` is sip address, this value of `from` should be a username portion to be
42
+ # used to populate the P-Asserted-Identity header that is passed to the SIP
43
+ # endpoint.
44
+ # @param [String] to The phone number, SIP address, or Client identifier that
45
+ # received this call. Phone numbers are in
46
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format (e.g.,
47
+ # +16175551212). SIP addresses are formatted as `sip:name@company.com`. Client
48
+ # identifiers are formatted `client:name`. {Custom
49
+ # parameters}[https://www.twilio.com/docs/voice/api/conference-participant-resource#custom-parameters]
50
+ # may also be specified.
51
+ # @param [String] status_callback The URL we should call using the
52
+ # `status_callback_method` to send status information to your application.
53
+ # @param [String] status_callback_method The HTTP method we should use to call
54
+ # `status_callback`. Can be: `GET` and `POST` and defaults to `POST`.
55
+ # @param [Array[String]] status_callback_event The conference state changes that
56
+ # should generate a call to `status_callback`. Can be: `initiated`, `ringing`,
57
+ # `answered`, and `completed`. Separate multiple values with a space. The default
58
+ # value is `completed`.
59
+ # @param [String] label A label for this participant. If one is supplied, it may
60
+ # subsequently be used to fetch, update or delete the participant.
61
+ # @param [String] timeout The number of seconds that we should allow the phone to
62
+ # ring before assuming there is no answer. Can be an integer between `5` and
63
+ # `600`, inclusive. The default value is `60`. We always add a 5-second timeout
64
+ # buffer to outgoing calls, so value of 10 would result in an actual timeout that
65
+ # was closer to 15 seconds.
66
+ # @param [Boolean] record Whether to record the participant and their conferences,
67
+ # including the time between conferences. Can be `true` or `false` and the default
68
+ # is `false`.
69
+ # @param [Boolean] muted Whether the agent is muted in the conference. Can be
70
+ # `true` or `false` and the default is `false`.
71
+ # @param [String] beep Whether to play a notification beep to the conference when
72
+ # the participant joins. Can be: `true`, `false`, `onEnter`, or `onExit`. The
73
+ # default value is `true`.
74
+ # @param [Boolean] start_conference_on_enter Whether to start the conference when
75
+ # the participant joins, if it has not already started. Can be: `true` or `false`
76
+ # and the default is `true`. If `false` and the conference has not started, the
77
+ # participant is muted and hears background music until another participant starts
78
+ # the conference.
79
+ # @param [Boolean] end_conference_on_exit Whether to end the conference when the
80
+ # participant leaves. Can be: `true` or `false` and defaults to `false`.
81
+ # @param [String] wait_url The URL we should call using the `wait_method` for the
82
+ # music to play while participants are waiting for the conference to start. The
83
+ # default value is the URL of our standard hold music. {Learn more about hold
84
+ # music}[https://www.twilio.com/labs/twimlets/holdmusic].
85
+ # @param [String] wait_method The HTTP method we should use to call `wait_url`.
86
+ # Can be `GET` or `POST` and the default is `POST`. When using a static audio
87
+ # file, this should be `GET` so that we can cache the file.
88
+ # @param [Boolean] early_media Whether to allow an agent to hear the state of the
89
+ # outbound call, including ringing or disconnect messages. Can be: `true` or
90
+ # `false` and defaults to `true`.
91
+ # @param [String] max_participants The maximum number of participants in the
92
+ # conference. Can be a positive integer from `2` to `250`. The default value is
93
+ # `250`.
94
+ # @param [String] conference_record Whether to record the conference the
95
+ # participant is joining. Can be: `true`, `false`, `record-from-start`, and
96
+ # `do-not-record`. The default value is `false`.
97
+ # @param [String] conference_trim Whether to trim leading and trailing silence
98
+ # from your recorded conference audio files. Can be: `trim-silence` or
99
+ # `do-not-trim` and defaults to `trim-silence`.
100
+ # @param [String] conference_status_callback The URL we should call using the
101
+ # `conference_status_callback_method` when the conference events in
102
+ # `conference_status_callback_event` occur. Only the value set by the first
103
+ # participant to join the conference is used. Subsequent
104
+ # `conference_status_callback` values are ignored.
105
+ # @param [String] conference_status_callback_method The HTTP method we should use
106
+ # to call `conference_status_callback`. Can be: `GET` or `POST` and defaults to
107
107
  # `POST`.
108
- # @param [String] sip_auth_username SIP username used for authenticating.
109
- # @param [String] sip_auth_password SIP password for authentication.
110
- # @param [String] region Specifies the
111
- # [region](https://support.twilio.com/hc/en-us/articles/223132167-How-global-low-latency-routing-and-region-selection-work-for-conferences-and-Client-calls) where Twilio should mix the recorded audio. Options are `us1`, `ie1`, `de1`, `sg1`, `br1`, `au1`, `jp1`.
112
- # @param [String] conference_recording_status_callback The `absolute URL` Twilio
113
- # should request when the conference recording is available.
114
- # @param [String] conference_recording_status_callback_method The HTTP method
115
- # Twilio should use when requesting your recording status callback URL, either
116
- # `GET` or `POST`. Defaults to `POST`.
117
- # @param [String] recording_status_callback_event Specifies which recording state
118
- # changes should generate a webhook to the URL specified in the
119
- # `RecordingStatusCallback` attribute. Available values are `in-progress`,
120
- # `completed`, `failed`. To specify multiple values, separate them with a space.
121
- # Defaults to `in-progress`, `completed`, `failed`.
122
- # @param [String] conference_recording_status_callback_event Specifies which
123
- # conference recording state changes should generate a webhook to the URL
124
- # specified in the `ConferenceRecordingStatusCallback` attribute. Available values
125
- # are `in-progress`, `completed`, `failed`. To specify multiple values, separate
126
- # them with a space. Defaults to `in-progress`, `completed`, `failed`.
127
- # @return [ParticipantInstance] Newly created ParticipantInstance
128
- def create(from: nil, to: nil, status_callback: :unset, status_callback_method: :unset, status_callback_event: :unset, timeout: :unset, record: :unset, muted: :unset, beep: :unset, start_conference_on_enter: :unset, end_conference_on_exit: :unset, wait_url: :unset, wait_method: :unset, early_media: :unset, max_participants: :unset, conference_record: :unset, conference_trim: :unset, conference_status_callback: :unset, conference_status_callback_method: :unset, conference_status_callback_event: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, region: :unset, conference_recording_status_callback: :unset, conference_recording_status_callback_method: :unset, recording_status_callback_event: :unset, conference_recording_status_callback_event: :unset)
108
+ # @param [Array[String]] conference_status_callback_event The conference state
109
+ # changes that should generate a call to `conference_status_callback`. Can be:
110
+ # `start`, `end`, `join`, `leave`, `mute`, `hold`, `modify`, `speaker`, and
111
+ # `announcement`. Separate multiple values with a space. Defaults to `start end`.
112
+ # @param [String] recording_channels The recording channels for the final
113
+ # recording. Can be: `mono` or `dual` and the default is `mono`.
114
+ # @param [String] recording_status_callback The URL that we should call using the
115
+ # `recording_status_callback_method` when the recording status changes.
116
+ # @param [String] recording_status_callback_method The HTTP method we should use
117
+ # when we call `recording_status_callback`. Can be: `GET` or `POST` and defaults
118
+ # to `POST`.
119
+ # @param [String] sip_auth_username The SIP username used for authentication.
120
+ # @param [String] sip_auth_password The SIP password for authentication.
121
+ # @param [String] region The
122
+ # {region}[https://support.twilio.com/hc/en-us/articles/223132167-How-global-low-latency-routing-and-region-selection-work-for-conferences-and-Client-calls]
123
+ # where we should mix the recorded audio. Can be:`us1`, `ie1`, `de1`, `sg1`,
124
+ # `br1`, `au1`, or `jp1`.
125
+ # @param [String] conference_recording_status_callback The URL we should call
126
+ # using the `conference_recording_status_callback_method` when the conference
127
+ # recording is available.
128
+ # @param [String] conference_recording_status_callback_method The HTTP method we
129
+ # should use to call `conference_recording_status_callback`. Can be: `GET` or
130
+ # `POST` and defaults to `POST`.
131
+ # @param [Array[String]] recording_status_callback_event The recording state
132
+ # changes that should generate a call to `recording_status_callback`. Can be:
133
+ # `started`, `in-progress`, `paused`, `resumed`, `stopped`, `completed`, `failed`,
134
+ # and `absent`. Separate multiple values with a space, ex: `'in-progress completed
135
+ # failed'`.
136
+ # @param [Array[String]] conference_recording_status_callback_event The conference
137
+ # recording state changes that generate a call to
138
+ # `conference_recording_status_callback`. Can be: `in-progress`, `completed`,
139
+ # `failed`, and `absent`. Separate multiple values with a space, ex: `'in-progress
140
+ # completed failed'`
141
+ # @param [Boolean] coaching Whether the participant is coaching another call. Can
142
+ # be: `true` or `false`. If not present, defaults to `false` unless
143
+ # `call_sid_to_coach` is defined. If `true`, `call_sid_to_coach` must be defined.
144
+ # @param [String] call_sid_to_coach The SID of the participant who is being
145
+ # `coached`. The participant being coached is the only participant who can hear
146
+ # the participant who is `coaching`.
147
+ # @param [String] jitter_buffer_size Jitter buffer size for the connecting
148
+ # participant. Twilio will use this setting to apply Jitter Buffer before
149
+ # participant's audio is mixed into the conference. Can be: `off`, `small`,
150
+ # `medium`, and `large`. Default to `large`.
151
+ # @param [String] byoc The SID of a BYOC (Bring Your Own Carrier) trunk to route
152
+ # this call with. Note that `byoc` is only meaningful when `to` is a phone number;
153
+ # it will otherwise be ignored. (Beta)
154
+ # @param [String] caller_id The phone number, Client identifier, or username
155
+ # portion of SIP address that made this call. Phone numbers are in
156
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format (e.g.,
157
+ # +16175551212). Client identifiers are formatted `client:name`. If using a phone
158
+ # number, it must be a Twilio number or a Verified {outgoing caller
159
+ # id}[https://www.twilio.com/docs/voice/api/outgoing-caller-ids] for your account.
160
+ # If the `to` parameter is a phone number, `callerId` must also be a phone number.
161
+ # If `to` is sip address, this value of `callerId` should be a username portion to
162
+ # be used to populate the From header that is passed to the SIP endpoint.
163
+ # @param [String] call_reason The Reason for the outgoing call. Use it to specify
164
+ # the purpose of the call that is presented on the called party's phone. (Branded
165
+ # Calls Beta)
166
+ # @param [String] recording_track The audio track to record for the call. Can be:
167
+ # `inbound`, `outbound` or `both`. The default is `both`. `inbound` records the
168
+ # audio that is received by Twilio. `outbound` records the audio that is sent from
169
+ # Twilio. `both` records the audio that is received and sent by Twilio.
170
+ # @param [String] time_limit The maximum duration of the call in seconds.
171
+ # Constraints depend on account and configuration.
172
+ # @return [ParticipantInstance] Created ParticipantInstance
173
+ def create(from: nil, to: nil, status_callback: :unset, status_callback_method: :unset, status_callback_event: :unset, label: :unset, timeout: :unset, record: :unset, muted: :unset, beep: :unset, start_conference_on_enter: :unset, end_conference_on_exit: :unset, wait_url: :unset, wait_method: :unset, early_media: :unset, max_participants: :unset, conference_record: :unset, conference_trim: :unset, conference_status_callback: :unset, conference_status_callback_method: :unset, conference_status_callback_event: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, sip_auth_username: :unset, sip_auth_password: :unset, region: :unset, conference_recording_status_callback: :unset, conference_recording_status_callback_method: :unset, recording_status_callback_event: :unset, conference_recording_status_callback_event: :unset, coaching: :unset, call_sid_to_coach: :unset, jitter_buffer_size: :unset, byoc: :unset, caller_id: :unset, call_reason: :unset, recording_track: :unset, time_limit: :unset)
129
174
  data = Twilio::Values.of({
130
175
  'From' => from,
131
176
  'To' => to,
132
177
  'StatusCallback' => status_callback,
133
178
  'StatusCallbackMethod' => status_callback_method,
134
179
  'StatusCallbackEvent' => Twilio.serialize_list(status_callback_event) { |e| e },
180
+ 'Label' => label,
135
181
  'Timeout' => timeout,
136
182
  'Record' => record,
137
183
  'Muted' => muted,
@@ -157,13 +203,17 @@ module Twilio
157
203
  'ConferenceRecordingStatusCallbackMethod' => conference_recording_status_callback_method,
158
204
  'RecordingStatusCallbackEvent' => Twilio.serialize_list(recording_status_callback_event) { |e| e },
159
205
  'ConferenceRecordingStatusCallbackEvent' => Twilio.serialize_list(conference_recording_status_callback_event) { |e| e },
206
+ 'Coaching' => coaching,
207
+ 'CallSidToCoach' => call_sid_to_coach,
208
+ 'JitterBufferSize' => jitter_buffer_size,
209
+ 'Byoc' => byoc,
210
+ 'CallerId' => caller_id,
211
+ 'CallReason' => call_reason,
212
+ 'RecordingTrack' => recording_track,
213
+ 'TimeLimit' => time_limit,
160
214
  })
161
215
 
162
- payload = @version.create(
163
- 'POST',
164
- @uri,
165
- data: data
166
- )
216
+ payload = @version.create('POST', @uri, data: data)
167
217
 
168
218
  ParticipantInstance.new(
169
219
  @version,
@@ -177,10 +227,12 @@ module Twilio
177
227
  # Lists ParticipantInstance records from the API as a list.
178
228
  # Unlike stream(), this operation is eager and will load `limit` records into
179
229
  # memory before returning.
180
- # @param [Boolean] muted Only return participants that are muted or unmuted.
181
- # Either `true` or `false`.
182
- # @param [Boolean] hold Only return participants that are on hold or not on hold.
183
- # Either `true` or `false`.
230
+ # @param [Boolean] muted Whether to return only participants that are muted. Can
231
+ # be: `true` or `false`.
232
+ # @param [Boolean] hold Whether to return only participants that are on hold. Can
233
+ # be: `true` or `false`.
234
+ # @param [Boolean] coaching Whether to return only participants who are coaching
235
+ # another call. Can be: `true` or `false`.
184
236
  # @param [Integer] limit Upper limit for the number of records to return. stream()
185
237
  # guarantees to never return more than limit. Default is no limit
186
238
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -188,18 +240,26 @@ module Twilio
188
240
  # but a limit is defined, stream() will attempt to read the limit with the most
189
241
  # efficient page size, i.e. min(limit, 1000)
190
242
  # @return [Array] Array of up to limit results
191
- def list(muted: :unset, hold: :unset, limit: nil, page_size: nil)
192
- self.stream(muted: muted, hold: hold, limit: limit, page_size: page_size).entries
243
+ def list(muted: :unset, hold: :unset, coaching: :unset, limit: nil, page_size: nil)
244
+ self.stream(
245
+ muted: muted,
246
+ hold: hold,
247
+ coaching: coaching,
248
+ limit: limit,
249
+ page_size: page_size
250
+ ).entries
193
251
  end
194
252
 
195
253
  ##
196
254
  # Streams ParticipantInstance records from the API as an Enumerable.
197
255
  # This operation lazily loads records as efficiently as possible until the limit
198
256
  # is reached.
199
- # @param [Boolean] muted Only return participants that are muted or unmuted.
200
- # Either `true` or `false`.
201
- # @param [Boolean] hold Only return participants that are on hold or not on hold.
202
- # Either `true` or `false`.
257
+ # @param [Boolean] muted Whether to return only participants that are muted. Can
258
+ # be: `true` or `false`.
259
+ # @param [Boolean] hold Whether to return only participants that are on hold. Can
260
+ # be: `true` or `false`.
261
+ # @param [Boolean] coaching Whether to return only participants who are coaching
262
+ # another call. Can be: `true` or `false`.
203
263
  # @param [Integer] limit Upper limit for the number of records to return. stream()
204
264
  # guarantees to never return more than limit. Default is no limit.
205
265
  # @param [Integer] page_size Number of records to fetch per request, when
@@ -207,10 +267,10 @@ module Twilio
207
267
  # but a limit is defined, stream() will attempt to read the limit with the most
208
268
  # efficient page size, i.e. min(limit, 1000)
209
269
  # @return [Enumerable] Enumerable that will yield up to limit results
210
- def stream(muted: :unset, hold: :unset, limit: nil, page_size: nil)
270
+ def stream(muted: :unset, hold: :unset, coaching: :unset, limit: nil, page_size: nil)
211
271
  limits = @version.read_limits(limit, page_size)
212
272
 
213
- page = self.page(muted: muted, hold: hold, page_size: limits[:page_size], )
273
+ page = self.page(muted: muted, hold: hold, coaching: coaching, page_size: limits[:page_size], )
214
274
 
215
275
  @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
216
276
  end
@@ -232,27 +292,28 @@ module Twilio
232
292
  ##
233
293
  # Retrieve a single page of ParticipantInstance records from the API.
234
294
  # Request is executed immediately.
235
- # @param [Boolean] muted Only return participants that are muted or unmuted.
236
- # Either `true` or `false`.
237
- # @param [Boolean] hold Only return participants that are on hold or not on hold.
238
- # Either `true` or `false`.
295
+ # @param [Boolean] muted Whether to return only participants that are muted. Can
296
+ # be: `true` or `false`.
297
+ # @param [Boolean] hold Whether to return only participants that are on hold. Can
298
+ # be: `true` or `false`.
299
+ # @param [Boolean] coaching Whether to return only participants who are coaching
300
+ # another call. Can be: `true` or `false`.
239
301
  # @param [String] page_token PageToken provided by the API
240
302
  # @param [Integer] page_number Page Number, this value is simply for client state
241
303
  # @param [Integer] page_size Number of records to return, defaults to 50
242
304
  # @return [Page] Page of ParticipantInstance
243
- def page(muted: :unset, hold: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
305
+ def page(muted: :unset, hold: :unset, coaching: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
244
306
  params = Twilio::Values.of({
245
307
  'Muted' => muted,
246
308
  'Hold' => hold,
309
+ 'Coaching' => coaching,
247
310
  'PageToken' => page_token,
248
311
  'Page' => page_number,
249
312
  'PageSize' => page_size,
250
313
  })
251
- response = @version.page(
252
- 'GET',
253
- @uri,
254
- params
255
- )
314
+
315
+ response = @version.page('GET', @uri, params: params)
316
+
256
317
  ParticipantPage.new(@version, response, @solution)
257
318
  end
258
319
 
@@ -314,12 +375,15 @@ module Twilio
314
375
  ##
315
376
  # Initialize the ParticipantContext
316
377
  # @param [Version] version Version that contains the resource
317
- # @param [String] account_sid The unique id of the
318
- # [Account](https://www.twilio.com/docs/iam/api/account) that created this
319
- # conference
320
- # @param [String] conference_sid The string that uniquely identifies the
321
- # conference this participant is in.
322
- # @param [String] call_sid The Participant's unique Call SID.
378
+ # @param [String] account_sid The SID of the
379
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created the
380
+ # Participant resource to fetch.
381
+ # @param [String] conference_sid The SID of the conference with the participant to
382
+ # fetch.
383
+ # @param [String] call_sid The
384
+ # {Call}[https://www.twilio.com/docs/voice/api/call-resource] SID or label of the
385
+ # participant to fetch. Non URL safe characters in a label must be percent
386
+ # encoded, for example, a space character is represented as %20.
323
387
  # @return [ParticipantContext] ParticipantContext
324
388
  def initialize(version, account_sid, conference_sid, call_sid)
325
389
  super(version)
@@ -330,16 +394,10 @@ module Twilio
330
394
  end
331
395
 
332
396
  ##
333
- # Fetch a ParticipantInstance
397
+ # Fetch the ParticipantInstance
334
398
  # @return [ParticipantInstance] Fetched ParticipantInstance
335
399
  def fetch
336
- params = Twilio::Values.of({})
337
-
338
- payload = @version.fetch(
339
- 'GET',
340
- @uri,
341
- params,
342
- )
400
+ payload = @version.fetch('GET', @uri)
343
401
 
344
402
  ParticipantInstance.new(
345
403
  @version,
@@ -352,23 +410,42 @@ module Twilio
352
410
 
353
411
  ##
354
412
  # Update the ParticipantInstance
355
- # @param [Boolean] muted Specifying `true` will mute the participant, while
356
- # `false` will un-mute. Anything other than `true` or `false` is interpreted as
357
- # `false`.
358
- # @param [Boolean] hold Specifying `true` will hold the participant, while `false`
359
- # will remove them from hold.
360
- # @param [String] hold_url The 'HoldUrl' attribute lets you specify a URL for
361
- # music that plays when a participant is on hold. The URL may be an MP3, a WAV or
362
- # a TwiML document that uses `<Play>`, `<Say>` or `<Redirect>`.
363
- # @param [String] hold_method Specify the HTTP method Twilio should use to request
364
- # your `HoldUrl`, either `GET` or `POST`. Defaults to `GET`.
365
- # @param [String] announce_url The 'AnnounceUrl' attribute lets you specify a URL
366
- # for announcing something to the participant. The URL may return an MP3, a WAV or
367
- # a TwiML document with `<Play>` or `<Say>`.
368
- # @param [String] announce_method Specify the HTTP method Twilio should use to
369
- # request your `AnnounceUrl`, either `GET` or `POST`. Defaults to `POST`.
413
+ # @param [Boolean] muted Whether the participant should be muted. Can be `true` or
414
+ # `false`. `true` will mute the participant, and `false` will un-mute them.
415
+ # Anything value other than `true` or `false` is interpreted as `false`.
416
+ # @param [Boolean] hold Whether the participant should be on hold. Can be: `true`
417
+ # or `false`. `true` puts the participant on hold, and `false` lets them rejoin
418
+ # the conference.
419
+ # @param [String] hold_url The URL we call using the `hold_method` for music that
420
+ # plays when the participant is on hold. The URL may return an MP3 file, a WAV
421
+ # file, or a TwiML document that contains the `<Play>`, `<Say>` or `<Redirect>`
422
+ # commands.
423
+ # @param [String] hold_method The HTTP method we should use to call `hold_url`.
424
+ # Can be: `GET` or `POST` and the default is `GET`.
425
+ # @param [String] announce_url The URL we call using the `announce_method` for an
426
+ # announcement to the participant. The URL must return an MP3 file, a WAV file, or
427
+ # a TwiML document that contains `<Play>` or `<Say>` commands.
428
+ # @param [String] announce_method The HTTP method we should use to call
429
+ # `announce_url`. Can be: `GET` or `POST` and defaults to `POST`.
430
+ # @param [String] wait_url The URL we should call using the `wait_method` for the
431
+ # music to play while participants are waiting for the conference to start. The
432
+ # default value is the URL of our standard hold music. {Learn more about hold
433
+ # music}[https://www.twilio.com/labs/twimlets/holdmusic].
434
+ # @param [String] wait_method The HTTP method we should use to call `wait_url`.
435
+ # Can be `GET` or `POST` and the default is `POST`. When using a static audio
436
+ # file, this should be `GET` so that we can cache the file.
437
+ # @param [Boolean] beep_on_exit Whether to play a notification beep to the
438
+ # conference when the participant exits. Can be: `true` or `false`.
439
+ # @param [Boolean] end_conference_on_exit Whether to end the conference when the
440
+ # participant leaves. Can be: `true` or `false` and defaults to `false`.
441
+ # @param [Boolean] coaching Whether the participant is coaching another call. Can
442
+ # be: `true` or `false`. If not present, defaults to `false` unless
443
+ # `call_sid_to_coach` is defined. If `true`, `call_sid_to_coach` must be defined.
444
+ # @param [String] call_sid_to_coach The SID of the participant who is being
445
+ # `coached`. The participant being coached is the only participant who can hear
446
+ # the participant who is `coaching`.
370
447
  # @return [ParticipantInstance] Updated ParticipantInstance
371
- def update(muted: :unset, hold: :unset, hold_url: :unset, hold_method: :unset, announce_url: :unset, announce_method: :unset)
448
+ def update(muted: :unset, hold: :unset, hold_url: :unset, hold_method: :unset, announce_url: :unset, announce_method: :unset, wait_url: :unset, wait_method: :unset, beep_on_exit: :unset, end_conference_on_exit: :unset, coaching: :unset, call_sid_to_coach: :unset)
372
449
  data = Twilio::Values.of({
373
450
  'Muted' => muted,
374
451
  'Hold' => hold,
@@ -376,13 +453,15 @@ module Twilio
376
453
  'HoldMethod' => hold_method,
377
454
  'AnnounceUrl' => announce_url,
378
455
  'AnnounceMethod' => announce_method,
456
+ 'WaitUrl' => wait_url,
457
+ 'WaitMethod' => wait_method,
458
+ 'BeepOnExit' => beep_on_exit,
459
+ 'EndConferenceOnExit' => end_conference_on_exit,
460
+ 'Coaching' => coaching,
461
+ 'CallSidToCoach' => call_sid_to_coach,
379
462
  })
380
463
 
381
- payload = @version.update(
382
- 'POST',
383
- @uri,
384
- data: data,
385
- )
464
+ payload = @version.update('POST', @uri, data: data)
386
465
 
387
466
  ParticipantInstance.new(
388
467
  @version,
@@ -394,10 +473,10 @@ module Twilio
394
473
  end
395
474
 
396
475
  ##
397
- # Deletes the ParticipantInstance
398
- # @return [Boolean] true if delete succeeds, true otherwise
476
+ # Delete the ParticipantInstance
477
+ # @return [Boolean] true if delete succeeds, false otherwise
399
478
  def delete
400
- @version.delete('delete', @uri)
479
+ @version.delete('DELETE', @uri)
401
480
  end
402
481
 
403
482
  ##
@@ -406,6 +485,13 @@ module Twilio
406
485
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
407
486
  "#<Twilio.Api.V2010.ParticipantContext #{context}>"
408
487
  end
488
+
489
+ ##
490
+ # Provide a detailed, user friendly representation
491
+ def inspect
492
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
493
+ "#<Twilio.Api.V2010.ParticipantContext #{context}>"
494
+ end
409
495
  end
410
496
 
411
497
  class ParticipantInstance < InstanceResource
@@ -413,12 +499,14 @@ module Twilio
413
499
  # Initialize the ParticipantInstance
414
500
  # @param [Version] version Version that contains the resource
415
501
  # @param [Hash] payload payload that contains response from Twilio
416
- # @param [String] account_sid The unique id of the
417
- # [Account](https://www.twilio.com/docs/iam/api/account) that created this
418
- # conference
419
- # @param [String] conference_sid A 34 character string that identifies the
420
- # conference this participant is in
421
- # @param [String] call_sid The Participant's unique Call SID.
502
+ # @param [String] account_sid The SID of the
503
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created the
504
+ # Participant resource.
505
+ # @param [String] conference_sid The SID of the conference the participant is in.
506
+ # @param [String] call_sid The
507
+ # {Call}[https://www.twilio.com/docs/voice/api/call-resource] SID or label of the
508
+ # participant to fetch. Non URL safe characters in a label must be percent
509
+ # encoded, for example, a space character is represented as %20.
422
510
  # @return [ParticipantInstance] ParticipantInstance
423
511
  def initialize(version, payload, account_sid: nil, conference_sid: nil, call_sid: nil)
424
512
  super(version)
@@ -427,6 +515,9 @@ module Twilio
427
515
  @properties = {
428
516
  'account_sid' => payload['account_sid'],
429
517
  'call_sid' => payload['call_sid'],
518
+ 'label' => payload['label'],
519
+ 'call_sid_to_coach' => payload['call_sid_to_coach'],
520
+ 'coaching' => payload['coaching'],
430
521
  'conference_sid' => payload['conference_sid'],
431
522
  'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
432
523
  'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
@@ -464,73 +555,91 @@ module Twilio
464
555
  end
465
556
 
466
557
  ##
467
- # @return [String] The unique sid that identifies this account
558
+ # @return [String] The SID of the Account that created the resource
468
559
  def account_sid
469
560
  @properties['account_sid']
470
561
  end
471
562
 
472
563
  ##
473
- # @return [String] A string that uniquely identifies this call
564
+ # @return [String] The SID of the Call the resource is associated with
474
565
  def call_sid
475
566
  @properties['call_sid']
476
567
  end
477
568
 
478
569
  ##
479
- # @return [String] A string that uniquely identifies this conference
570
+ # @return [String] The label of this participant
571
+ def label
572
+ @properties['label']
573
+ end
574
+
575
+ ##
576
+ # @return [String] The SID of the participant who is being `coached`
577
+ def call_sid_to_coach
578
+ @properties['call_sid_to_coach']
579
+ end
580
+
581
+ ##
582
+ # @return [Boolean] Indicates if the participant changed to coach
583
+ def coaching
584
+ @properties['coaching']
585
+ end
586
+
587
+ ##
588
+ # @return [String] The SID of the conference the participant is in
480
589
  def conference_sid
481
590
  @properties['conference_sid']
482
591
  end
483
592
 
484
593
  ##
485
- # @return [Time] The date this resource was created
594
+ # @return [Time] The RFC 2822 date and time in GMT that the resource was created
486
595
  def date_created
487
596
  @properties['date_created']
488
597
  end
489
598
 
490
599
  ##
491
- # @return [Time] The date this resource was last updated
600
+ # @return [Time] The RFC 2822 date and time in GMT that the resource was last updated
492
601
  def date_updated
493
602
  @properties['date_updated']
494
603
  end
495
604
 
496
605
  ##
497
- # @return [Boolean] Indicates if the endConferenceOnExit was set
606
+ # @return [Boolean] Whether the conference ends when the participant leaves
498
607
  def end_conference_on_exit
499
608
  @properties['end_conference_on_exit']
500
609
  end
501
610
 
502
611
  ##
503
- # @return [Boolean] Indicates if the participant is muted
612
+ # @return [Boolean] Whether the participant is muted
504
613
  def muted
505
614
  @properties['muted']
506
615
  end
507
616
 
508
617
  ##
509
- # @return [Boolean] true if this participant is currently held.
618
+ # @return [Boolean] Whether the participant is on hold
510
619
  def hold
511
620
  @properties['hold']
512
621
  end
513
622
 
514
623
  ##
515
- # @return [Boolean] Indicates if the startConferenceOnEnter attribute was set
624
+ # @return [Boolean] Whether the conference starts when the participant joins the conference
516
625
  def start_conference_on_enter
517
626
  @properties['start_conference_on_enter']
518
627
  end
519
628
 
520
629
  ##
521
- # @return [participant.Status] The status
630
+ # @return [participant.Status] The status of the participant's call in a session
522
631
  def status
523
632
  @properties['status']
524
633
  end
525
634
 
526
635
  ##
527
- # @return [String] The URI for this resource
636
+ # @return [String] The URI of the resource, relative to `https://api.twilio.com`
528
637
  def uri
529
638
  @properties['uri']
530
639
  end
531
640
 
532
641
  ##
533
- # Fetch a ParticipantInstance
642
+ # Fetch the ParticipantInstance
534
643
  # @return [ParticipantInstance] Fetched ParticipantInstance
535
644
  def fetch
536
645
  context.fetch
@@ -538,23 +647,42 @@ module Twilio
538
647
 
539
648
  ##
540
649
  # Update the ParticipantInstance
541
- # @param [Boolean] muted Specifying `true` will mute the participant, while
542
- # `false` will un-mute. Anything other than `true` or `false` is interpreted as
543
- # `false`.
544
- # @param [Boolean] hold Specifying `true` will hold the participant, while `false`
545
- # will remove them from hold.
546
- # @param [String] hold_url The 'HoldUrl' attribute lets you specify a URL for
547
- # music that plays when a participant is on hold. The URL may be an MP3, a WAV or
548
- # a TwiML document that uses `<Play>`, `<Say>` or `<Redirect>`.
549
- # @param [String] hold_method Specify the HTTP method Twilio should use to request
550
- # your `HoldUrl`, either `GET` or `POST`. Defaults to `GET`.
551
- # @param [String] announce_url The 'AnnounceUrl' attribute lets you specify a URL
552
- # for announcing something to the participant. The URL may return an MP3, a WAV or
553
- # a TwiML document with `<Play>` or `<Say>`.
554
- # @param [String] announce_method Specify the HTTP method Twilio should use to
555
- # request your `AnnounceUrl`, either `GET` or `POST`. Defaults to `POST`.
650
+ # @param [Boolean] muted Whether the participant should be muted. Can be `true` or
651
+ # `false`. `true` will mute the participant, and `false` will un-mute them.
652
+ # Anything value other than `true` or `false` is interpreted as `false`.
653
+ # @param [Boolean] hold Whether the participant should be on hold. Can be: `true`
654
+ # or `false`. `true` puts the participant on hold, and `false` lets them rejoin
655
+ # the conference.
656
+ # @param [String] hold_url The URL we call using the `hold_method` for music that
657
+ # plays when the participant is on hold. The URL may return an MP3 file, a WAV
658
+ # file, or a TwiML document that contains the `<Play>`, `<Say>` or `<Redirect>`
659
+ # commands.
660
+ # @param [String] hold_method The HTTP method we should use to call `hold_url`.
661
+ # Can be: `GET` or `POST` and the default is `GET`.
662
+ # @param [String] announce_url The URL we call using the `announce_method` for an
663
+ # announcement to the participant. The URL must return an MP3 file, a WAV file, or
664
+ # a TwiML document that contains `<Play>` or `<Say>` commands.
665
+ # @param [String] announce_method The HTTP method we should use to call
666
+ # `announce_url`. Can be: `GET` or `POST` and defaults to `POST`.
667
+ # @param [String] wait_url The URL we should call using the `wait_method` for the
668
+ # music to play while participants are waiting for the conference to start. The
669
+ # default value is the URL of our standard hold music. {Learn more about hold
670
+ # music}[https://www.twilio.com/labs/twimlets/holdmusic].
671
+ # @param [String] wait_method The HTTP method we should use to call `wait_url`.
672
+ # Can be `GET` or `POST` and the default is `POST`. When using a static audio
673
+ # file, this should be `GET` so that we can cache the file.
674
+ # @param [Boolean] beep_on_exit Whether to play a notification beep to the
675
+ # conference when the participant exits. Can be: `true` or `false`.
676
+ # @param [Boolean] end_conference_on_exit Whether to end the conference when the
677
+ # participant leaves. Can be: `true` or `false` and defaults to `false`.
678
+ # @param [Boolean] coaching Whether the participant is coaching another call. Can
679
+ # be: `true` or `false`. If not present, defaults to `false` unless
680
+ # `call_sid_to_coach` is defined. If `true`, `call_sid_to_coach` must be defined.
681
+ # @param [String] call_sid_to_coach The SID of the participant who is being
682
+ # `coached`. The participant being coached is the only participant who can hear
683
+ # the participant who is `coaching`.
556
684
  # @return [ParticipantInstance] Updated ParticipantInstance
557
- def update(muted: :unset, hold: :unset, hold_url: :unset, hold_method: :unset, announce_url: :unset, announce_method: :unset)
685
+ def update(muted: :unset, hold: :unset, hold_url: :unset, hold_method: :unset, announce_url: :unset, announce_method: :unset, wait_url: :unset, wait_method: :unset, beep_on_exit: :unset, end_conference_on_exit: :unset, coaching: :unset, call_sid_to_coach: :unset)
558
686
  context.update(
559
687
  muted: muted,
560
688
  hold: hold,
@@ -562,12 +690,18 @@ module Twilio
562
690
  hold_method: hold_method,
563
691
  announce_url: announce_url,
564
692
  announce_method: announce_method,
693
+ wait_url: wait_url,
694
+ wait_method: wait_method,
695
+ beep_on_exit: beep_on_exit,
696
+ end_conference_on_exit: end_conference_on_exit,
697
+ coaching: coaching,
698
+ call_sid_to_coach: call_sid_to_coach,
565
699
  )
566
700
  end
567
701
 
568
702
  ##
569
- # Deletes the ParticipantInstance
570
- # @return [Boolean] true if delete succeeds, true otherwise
703
+ # Delete the ParticipantInstance
704
+ # @return [Boolean] true if delete succeeds, false otherwise
571
705
  def delete
572
706
  context.delete
573
707
  end