twilio-ruby 5.19.0 → 5.74.2

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