twilio-ruby 5.31.1 → 7.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1097) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/pr-lint.yml +21 -0
  3. data/.github/workflows/test-and-deploy.yml +139 -0
  4. data/.gitignore +8 -1
  5. data/.rubocop.yml +20 -2
  6. data/.rubocop_todo.yml +90 -58
  7. data/CHANGES.md +2369 -1
  8. data/CODE_OF_CONDUCT.md +73 -0
  9. data/CONTRIBUTING.md +13 -11
  10. data/Gemfile +3 -8
  11. data/ISSUE_TEMPLATE.md +17 -13
  12. data/{LICENSE.md → LICENSE} +2 -2
  13. data/Makefile +22 -24
  14. data/PULL_REQUEST_TEMPLATE.md +31 -0
  15. data/README.md +174 -20
  16. data/Rakefile +0 -54
  17. data/UPGRADE.md +21 -0
  18. data/advanced-examples/custom-http-client.md +170 -0
  19. data/cluster_spec.rb +77 -0
  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/base/client_base.rb +124 -0
  24. data/lib/twilio-ruby/framework/request.rb +8 -1
  25. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +3 -15
  26. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +7 -11
  27. data/lib/twilio-ruby/http/http_client.rb +33 -9
  28. data/lib/twilio-ruby/http.rb +5 -0
  29. data/lib/twilio-ruby/jwt/access_token.rb +20 -61
  30. data/lib/twilio-ruby/jwt/jwt.rb +6 -0
  31. data/lib/twilio-ruby/jwt/task_router.rb +2 -2
  32. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +209 -0
  33. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +380 -349
  34. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +380 -349
  35. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +122 -114
  36. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +176 -0
  37. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +227 -0
  38. data/lib/twilio-ruby/rest/accounts/v1.rb +51 -28
  39. data/lib/twilio-ruby/rest/accounts.rb +10 -28
  40. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  41. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -367
  42. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +560 -531
  43. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +624 -601
  44. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +316 -328
  45. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +395 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +395 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +395 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +395 -0
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +395 -0
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +395 -0
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +395 -0
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +435 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +139 -124
  54. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +210 -0
  55. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +403 -439
  56. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +327 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +503 -516
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +877 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +877 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +901 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +166 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +244 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +955 -858
  64. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +668 -676
  65. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +458 -470
  66. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +494 -491
  67. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +433 -419
  68. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +323 -360
  69. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +403 -431
  70. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +539 -540
  71. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +539 -539
  72. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +539 -539
  73. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +850 -899
  74. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +342 -314
  75. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +170 -169
  76. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +345 -358
  77. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +624 -613
  78. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +160 -143
  79. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +160 -143
  80. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +403 -407
  81. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +375 -370
  82. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +345 -350
  83. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +435 -407
  84. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +363 -388
  85. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +373 -393
  86. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +369 -380
  87. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +512 -494
  88. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +422 -420
  89. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +342 -318
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +384 -385
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +408 -390
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +353 -0
  93. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +353 -0
  94. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +141 -0
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +353 -0
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +127 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +95 -103
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +346 -352
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +346 -351
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +658 -586
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +421 -438
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +408 -391
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +142 -150
  104. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +174 -159
  105. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +369 -358
  106. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +315 -341
  107. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +315 -341
  108. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +315 -341
  109. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +315 -341
  110. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +315 -341
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +315 -341
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +315 -341
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +315 -341
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +382 -418
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +494 -500
  116. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +113 -104
  117. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +175 -166
  118. data/lib/twilio-ruby/rest/api/v2010/account.rb +986 -960
  119. data/lib/twilio-ruby/rest/api/v2010.rb +126 -147
  120. data/lib/twilio-ruby/rest/api.rb +27 -36
  121. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  122. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +309 -0
  123. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +308 -0
  124. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +283 -0
  125. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +257 -0
  126. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +258 -0
  127. data/lib/twilio-ruby/rest/bulkexports/v1.rb +64 -0
  128. data/lib/twilio-ruby/rest/bulkexports.rb +25 -0
  129. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  130. data/lib/twilio-ruby/rest/chat/v1/credential.rb +428 -420
  131. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +381 -404
  132. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +431 -457
  133. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +447 -454
  134. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +543 -532
  135. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +405 -384
  136. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -241
  137. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +474 -457
  138. data/lib/twilio-ruby/rest/chat/v1/service.rb +870 -911
  139. data/lib/twilio-ruby/rest/chat/v1.rb +57 -53
  140. data/lib/twilio-ruby/rest/chat/v2/credential.rb +428 -418
  141. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +376 -378
  142. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +381 -399
  143. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +492 -529
  144. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +519 -535
  145. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +449 -481
  146. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +612 -607
  147. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +405 -386
  148. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +369 -389
  149. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +412 -425
  150. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +516 -495
  151. data/lib/twilio-ruby/rest/chat/v2/service.rb +773 -795
  152. data/lib/twilio-ruby/rest/chat/v2.rb +57 -51
  153. data/lib/twilio-ruby/rest/chat/v3/channel.rb +299 -0
  154. data/lib/twilio-ruby/rest/chat/v3.rb +71 -0
  155. data/lib/twilio-ruby/rest/chat.rb +10 -38
  156. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  157. data/lib/twilio-ruby/rest/client.rb +329 -467
  158. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +185 -0
  159. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +209 -0
  160. data/lib/twilio-ruby/rest/content/v1/content.rb +788 -0
  161. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +252 -0
  162. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +266 -0
  163. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  164. data/lib/twilio-ruby/rest/content/v2/content.rb +316 -0
  165. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +309 -0
  166. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  167. data/lib/twilio-ruby/rest/content.rb +15 -0
  168. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  169. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +491 -0
  170. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +286 -0
  171. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +292 -0
  172. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +348 -0
  173. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +543 -449
  174. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +504 -424
  175. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +434 -425
  176. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +626 -495
  177. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +444 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +313 -0
  179. data/lib/twilio-ruby/rest/conversations/v1/role.rb +403 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +376 -0
  181. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +339 -0
  182. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +285 -0
  183. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +319 -0
  184. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +359 -0
  185. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +563 -0
  186. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +524 -0
  187. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +454 -0
  188. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +645 -0
  189. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +318 -0
  190. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +412 -0
  191. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +464 -0
  192. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +497 -0
  193. data/lib/twilio-ruby/rest/conversations/v1/service.rb +493 -0
  194. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +459 -0
  195. data/lib/twilio-ruby/rest/conversations/v1/user.rb +488 -0
  196. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -44
  197. data/lib/twilio-ruby/rest/conversations.rb +54 -28
  198. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  199. data/lib/twilio-ruby/rest/events/v1/event_type.rb +329 -0
  200. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  201. data/lib/twilio-ruby/rest/events/v1/schema.rb +238 -0
  202. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +132 -0
  203. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +139 -0
  204. data/lib/twilio-ruby/rest/events/v1/sink.rb +453 -0
  205. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +381 -0
  206. data/lib/twilio-ruby/rest/events/v1/subscription.rb +435 -0
  207. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  208. data/lib/twilio-ruby/rest/events.rb +43 -0
  209. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  210. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +449 -0
  211. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +372 -342
  212. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +547 -437
  213. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +572 -539
  214. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +329 -0
  215. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +229 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +445 -0
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +360 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +445 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +362 -0
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +217 -0
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +157 -0
  222. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +143 -0
  223. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +196 -0
  224. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +254 -0
  225. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +354 -0
  226. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +411 -0
  227. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +272 -0
  228. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +397 -0
  229. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +446 -0
  230. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +247 -0
  231. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +393 -0
  232. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +386 -0
  233. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +233 -0
  234. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +332 -0
  235. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +256 -0
  236. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +188 -0
  237. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +387 -348
  238. data/lib/twilio-ruby/rest/flex_api/v1.rb +313 -73
  239. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +290 -0
  240. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +151 -0
  241. data/lib/twilio-ruby/rest/flex_api/v2.rb +77 -0
  242. data/lib/twilio-ruby/rest/flex_api.rb +34 -32
  243. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  244. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +278 -0
  245. data/lib/twilio-ruby/rest/frontline_api/v1.rb +49 -0
  246. data/lib/twilio-ruby/rest/frontline_api.rb +15 -0
  247. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  248. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +322 -0
  249. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +353 -0
  250. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +250 -237
  251. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +242 -227
  252. data/lib/twilio-ruby/rest/insights/v1/call.rb +263 -234
  253. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +494 -0
  254. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +491 -0
  255. data/lib/twilio-ruby/rest/insights/v1/conference.rb +508 -0
  256. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +386 -0
  257. data/lib/twilio-ruby/rest/insights/v1/room.rb +501 -0
  258. data/lib/twilio-ruby/rest/insights/v1/setting.rb +259 -0
  259. data/lib/twilio-ruby/rest/insights/v1.rb +84 -36
  260. data/lib/twilio-ruby/rest/insights.rb +28 -28
  261. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  262. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +447 -0
  263. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +356 -0
  264. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +217 -0
  265. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +197 -0
  266. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +358 -0
  267. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +356 -0
  268. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +517 -0
  269. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +227 -0
  270. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +389 -0
  271. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +249 -0
  272. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +525 -0
  273. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  274. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  275. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  276. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +428 -420
  277. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +381 -404
  278. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +431 -457
  279. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +447 -454
  280. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +543 -532
  281. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +405 -384
  282. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -241
  283. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +474 -457
  284. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +870 -911
  285. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  286. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +428 -418
  287. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +376 -378
  288. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +381 -399
  289. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +492 -529
  290. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +519 -535
  291. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +449 -481
  292. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +612 -607
  293. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +405 -386
  294. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +369 -389
  295. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +404 -425
  296. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +516 -495
  297. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +773 -795
  298. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -51
  299. data/lib/twilio-ruby/rest/ip_messaging.rb +9 -49
  300. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  301. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +246 -243
  302. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -38
  303. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +384 -0
  304. data/lib/twilio-ruby/rest/lookups/v2.rb +49 -0
  305. data/lib/twilio-ruby/rest/lookups.rb +3 -35
  306. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  307. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +309 -0
  308. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +336 -0
  309. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +352 -0
  310. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +170 -0
  311. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +465 -0
  312. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +284 -0
  313. data/lib/twilio-ruby/rest/marketplace/v1.rb +79 -0
  314. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  315. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  316. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +139 -0
  317. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +368 -0
  318. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +509 -0
  319. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +192 -0
  320. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +285 -0
  321. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +292 -0
  322. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +239 -0
  323. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +164 -0
  324. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +217 -0
  325. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +197 -0
  326. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +356 -348
  327. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +330 -0
  328. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +363 -354
  329. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +363 -349
  330. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +620 -0
  331. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +138 -0
  332. data/lib/twilio-ruby/rest/messaging/v1/service.rb +774 -659
  333. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +803 -0
  334. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +126 -0
  335. data/lib/twilio-ruby/rest/messaging/v1.rb +187 -58
  336. data/lib/twilio-ruby/rest/messaging.rb +48 -36
  337. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  338. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +365 -0
  339. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +358 -0
  340. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +209 -0
  341. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +352 -0
  342. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +381 -0
  343. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +374 -0
  344. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +430 -0
  345. data/lib/twilio-ruby/rest/microvisor/v1.rb +94 -0
  346. data/lib/twilio-ruby/rest/microvisor.rb +24 -0
  347. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  348. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +401 -403
  349. data/lib/twilio-ruby/rest/monitor/v1/event.rb +384 -398
  350. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -51
  351. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  352. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  353. data/lib/twilio-ruby/rest/notify/v1/credential.rb +428 -419
  354. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +442 -464
  355. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +316 -359
  356. data/lib/twilio-ruby/rest/notify/v1/service.rb +633 -620
  357. data/lib/twilio-ruby/rest/notify/v1.rb +57 -53
  358. data/lib/twilio-ruby/rest/notify.rb +3 -34
  359. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  360. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +241 -0
  361. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +128 -0
  362. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +294 -0
  363. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +315 -0
  364. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +250 -0
  365. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +149 -0
  366. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +168 -0
  367. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +177 -0
  368. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +161 -0
  369. data/lib/twilio-ruby/rest/numbers/v1.rb +155 -0
  370. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +344 -0
  371. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +408 -0
  372. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +266 -0
  373. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +507 -0
  374. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +288 -0
  375. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +340 -0
  376. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +351 -0
  377. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +204 -0
  378. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +617 -0
  379. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +407 -0
  380. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +300 -0
  381. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +349 -0
  382. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +428 -0
  383. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +300 -0
  384. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +186 -0
  385. data/lib/twilio-ruby/rest/numbers/v2.rb +85 -0
  386. data/lib/twilio-ruby/rest/numbers.rb +12 -0
  387. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  388. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +144 -0
  389. data/lib/twilio-ruby/rest/oauth/v1/token.rb +182 -0
  390. data/lib/twilio-ruby/rest/oauth/v1.rb +46 -0
  391. data/lib/twilio-ruby/rest/oauth.rb +6 -0
  392. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  393. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +417 -392
  394. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +401 -375
  395. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +456 -435
  396. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +414 -386
  397. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +501 -476
  398. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -37
  399. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +371 -395
  400. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +451 -458
  401. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +617 -642
  402. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -53
  403. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -306
  404. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -317
  405. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +345 -342
  406. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +436 -415
  407. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -51
  408. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +383 -386
  409. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +448 -413
  410. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +439 -417
  411. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +383 -386
  412. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +424 -411
  413. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +442 -414
  414. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +383 -386
  415. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +424 -411
  416. data/lib/twilio-ruby/rest/preview/sync/service.rb +502 -469
  417. data/lib/twilio-ruby/rest/preview/sync.rb +42 -36
  418. data/lib/twilio-ruby/rest/preview/wireless/command.rb +390 -377
  419. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +455 -415
  420. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +235 -211
  421. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +577 -535
  422. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -66
  423. data/lib/twilio-ruby/rest/preview.rb +11 -155
  424. data/lib/twilio-ruby/rest/preview_base.rb +58 -0
  425. data/lib/twilio-ruby/rest/preview_iam.rb +6 -0
  426. data/lib/twilio-ruby/rest/preview_iam_base.rb +33 -0
  427. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +300 -283
  428. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +108 -119
  429. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +293 -276
  430. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +108 -119
  431. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +300 -283
  432. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +223 -203
  433. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +122 -135
  434. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  435. data/lib/twilio-ruby/rest/pricing/v2/country.rb +302 -0
  436. data/lib/twilio-ruby/rest/pricing/v2/number.rb +243 -0
  437. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +300 -283
  438. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +241 -224
  439. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +122 -138
  440. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -28
  441. data/lib/twilio-ruby/rest/pricing.rb +22 -38
  442. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  443. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +426 -418
  444. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +411 -426
  445. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +433 -462
  446. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +426 -455
  447. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +529 -523
  448. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +406 -387
  449. data/lib/twilio-ruby/rest/proxy/v1/service.rb +566 -613
  450. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -37
  451. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  452. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  453. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +273 -0
  454. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +273 -0
  455. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +273 -0
  456. data/lib/twilio-ruby/rest/routes/v2.rb +79 -0
  457. data/lib/twilio-ruby/rest/routes.rb +32 -0
  458. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  459. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -331
  460. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +419 -397
  461. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +220 -0
  462. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +412 -362
  463. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +339 -351
  464. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +362 -359
  465. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +410 -413
  466. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +461 -462
  467. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +231 -0
  468. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -331
  469. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +419 -397
  470. data/lib/twilio-ruby/rest/serverless/v1/service.rb +530 -484
  471. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -36
  472. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  473. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  474. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +209 -205
  475. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +224 -224
  476. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +364 -363
  477. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +429 -407
  478. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +209 -206
  479. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +224 -227
  480. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +364 -369
  481. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +477 -440
  482. data/lib/twilio-ruby/rest/studio/v1/flow.rb +385 -363
  483. data/lib/twilio-ruby/rest/studio/v1.rb +42 -36
  484. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +220 -0
  485. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +231 -0
  486. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +375 -0
  487. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +477 -0
  488. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +351 -0
  489. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +237 -0
  490. data/lib/twilio-ruby/rest/studio/v2/flow.rb +538 -0
  491. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +142 -0
  492. data/lib/twilio-ruby/rest/studio/v2.rb +55 -0
  493. data/lib/twilio-ruby/rest/studio.rb +9 -34
  494. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  495. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +406 -0
  496. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +487 -0
  497. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +411 -0
  498. data/lib/twilio-ruby/rest/supersim/v1/network.rb +313 -0
  499. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +349 -0
  500. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +395 -0
  501. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +257 -0
  502. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +250 -0
  503. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +208 -0
  504. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +475 -0
  505. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  506. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +314 -0
  507. data/lib/twilio-ruby/rest/supersim/v1.rb +151 -0
  508. data/lib/twilio-ruby/rest/supersim.rb +88 -0
  509. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  510. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +383 -391
  511. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +464 -450
  512. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +473 -501
  513. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +383 -390
  514. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +479 -474
  515. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +476 -508
  516. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +383 -388
  517. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +479 -473
  518. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +142 -143
  519. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +428 -431
  520. data/lib/twilio-ruby/rest/sync/v1/service.rb +584 -592
  521. data/lib/twilio-ruby/rest/sync/v1.rb +42 -36
  522. data/lib/twilio-ruby/rest/sync.rb +2 -34
  523. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  524. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +414 -404
  525. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +445 -466
  526. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +709 -740
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +659 -643
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +418 -399
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +164 -0
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +362 -362
  531. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +282 -265
  532. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +233 -240
  533. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +240 -260
  534. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +583 -583
  535. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +691 -736
  536. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +394 -400
  537. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +238 -243
  538. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +284 -269
  539. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +218 -197
  540. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +254 -238
  541. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +630 -639
  542. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +362 -377
  543. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +230 -227
  544. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +233 -248
  545. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +532 -527
  546. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +356 -358
  547. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +235 -211
  548. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +244 -238
  549. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +729 -732
  550. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -36
  551. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  552. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  553. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +349 -333
  554. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +349 -329
  555. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +449 -436
  556. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +482 -463
  557. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +236 -0
  558. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +632 -642
  559. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -37
  560. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  561. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  562. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +240 -0
  563. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +357 -0
  564. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +220 -0
  565. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +371 -0
  566. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +355 -0
  567. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +345 -0
  568. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +551 -0
  569. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +402 -0
  570. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +295 -0
  571. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +288 -0
  572. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +416 -0
  573. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +295 -0
  574. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +371 -0
  575. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +355 -0
  576. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +345 -0
  577. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +551 -0
  578. data/lib/twilio-ruby/rest/trusthub/v1.rb +175 -0
  579. data/lib/twilio-ruby/rest/trusthub.rb +74 -0
  580. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  581. data/lib/twilio-ruby/rest/verify/v2/form.rb +204 -0
  582. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +236 -0
  583. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +284 -0
  584. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +201 -0
  585. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +515 -0
  586. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +465 -0
  587. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +272 -0
  588. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +436 -0
  589. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +388 -380
  590. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +410 -405
  591. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +429 -401
  592. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +387 -346
  593. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +221 -204
  594. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +463 -0
  595. data/lib/twilio-ruby/rest/verify/v2/service.rb +816 -546
  596. data/lib/twilio-ruby/rest/verify/v2/template.rb +230 -0
  597. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +385 -0
  598. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +250 -0
  599. data/lib/twilio-ruby/rest/verify/v2.rb +99 -37
  600. data/lib/twilio-ruby/rest/verify.rb +36 -25
  601. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  602. data/lib/twilio-ruby/rest/video/v1/composition.rb +484 -501
  603. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +534 -663
  604. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +286 -277
  605. data/lib/twilio-ruby/rest/video/v1/recording.rb +431 -413
  606. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +286 -277
  607. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +262 -0
  608. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +334 -0
  609. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +186 -0
  610. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +341 -0
  611. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
  612. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +175 -0
  613. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  614. data/lib/twilio-ruby/rest/video/v1/room.rb +613 -534
  615. data/lib/twilio-ruby/rest/video/v1.rb +99 -95
  616. data/lib/twilio-ruby/rest/video.rb +7 -34
  617. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  618. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +169 -0
  619. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +520 -0
  620. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +456 -0
  621. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +410 -0
  622. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +138 -126
  623. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -185
  624. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +376 -405
  625. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +220 -200
  626. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +123 -124
  627. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +396 -0
  628. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +379 -0
  629. data/lib/twilio-ruby/rest/voice/v1.rb +130 -28
  630. data/lib/twilio-ruby/rest/voice.rb +41 -24
  631. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  632. data/lib/twilio-ruby/rest/wireless/v1/command.rb +415 -419
  633. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +472 -452
  634. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -300
  635. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +240 -245
  636. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +641 -669
  637. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +227 -223
  638. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -73
  639. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  640. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  641. data/lib/twilio-ruby/rest.rb +14 -0
  642. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  643. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  644. data/lib/twilio-ruby/twiml/twiml.rb +4 -0
  645. data/lib/twilio-ruby/twiml/voice_response.rb +989 -131
  646. data/lib/twilio-ruby/util/configuration.rb +13 -1
  647. data/lib/twilio-ruby/version.rb +1 -1
  648. data/lib/twilio-ruby.rb +8 -26
  649. data/sonar-project.properties +13 -0
  650. data/twilio-ruby.gemspec +14 -8
  651. metadata +416 -812
  652. data/.travis.yml +0 -35
  653. data/conf/cacert.pem +0 -3376
  654. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  655. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -493
  656. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -493
  657. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -493
  658. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -493
  659. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -493
  660. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -493
  661. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -493
  662. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -472
  663. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -317
  664. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -325
  665. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -361
  666. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +0 -361
  667. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  668. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -361
  669. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  670. data/lib/twilio-ruby/rest/authy/v1/form.rb +0 -197
  671. data/lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb +0 -412
  672. data/lib/twilio-ruby/rest/authy/v1/service/entity/factor.rb +0 -486
  673. data/lib/twilio-ruby/rest/authy/v1/service/entity.rb +0 -379
  674. data/lib/twilio-ruby/rest/authy/v1/service.rb +0 -385
  675. data/lib/twilio-ruby/rest/authy/v1.rb +0 -59
  676. data/lib/twilio-ruby/rest/authy.rb +0 -55
  677. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -230
  678. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -220
  679. data/lib/twilio-ruby/rest/autopilot/v1/assistant/export_assistant.rb +0 -222
  680. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -408
  681. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -435
  682. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -409
  683. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -463
  684. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -228
  685. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -399
  686. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -466
  687. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -265
  688. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -243
  689. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -524
  690. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -437
  691. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -683
  692. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -44
  693. data/lib/twilio-ruby/rest/autopilot.rb +0 -47
  694. data/lib/twilio-ruby/rest/conversations/v1/webhook.rb +0 -272
  695. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -322
  696. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -552
  697. data/lib/twilio-ruby/rest/fax/v1.rb +0 -44
  698. data/lib/twilio-ruby/rest/fax.rb +0 -47
  699. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -305
  700. data/lib/twilio-ruby/rest/messaging/v1/session/message.rb +0 -439
  701. data/lib/twilio-ruby/rest/messaging/v1/session/participant.rb +0 -458
  702. data/lib/twilio-ruby/rest/messaging/v1/session/webhook.rb +0 -444
  703. data/lib/twilio-ruby/rest/messaging/v1/session.rb +0 -513
  704. data/lib/twilio-ruby/rest/messaging/v1/webhook.rb +0 -299
  705. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -185
  706. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +0 -182
  707. data/lib/twilio-ruby/rest/preview/acc_security/service.rb +0 -395
  708. data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -43
  709. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -211
  710. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -298
  711. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -232
  712. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -248
  713. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  714. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -58
  715. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb +0 -248
  716. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights/success_rate.rb +0 -264
  717. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb +0 -111
  718. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +0 -219
  719. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  720. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -263
  721. data/lib/twilio-ruby/rest/preview/trusted_comms/device.rb +0 -146
  722. data/lib/twilio-ruby/rest/preview/trusted_comms/phone_call.rb +0 -347
  723. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -79
  724. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -222
  725. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -222
  726. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -212
  727. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -399
  728. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -424
  729. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -397
  730. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -454
  731. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -222
  732. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -386
  733. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -445
  734. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -251
  735. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -231
  736. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -512
  737. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -646
  738. data/lib/twilio-ruby/rest/preview/understand.rb +0 -44
  739. data/lib/twilio-ruby/rest/trunking/v1/trunk/terminating_sip_domain.rb +0 -418
  740. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -414
  741. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -343
  742. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -191
  743. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -348
  744. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -495
  745. data/spec/framework/request_spec.rb +0 -36
  746. data/spec/framework/serialize_spec.rb +0 -80
  747. data/spec/holodeck/holodeck.rb +0 -61
  748. data/spec/holodeck/hologram.rb +0 -4
  749. data/spec/http/http_client_spec.rb +0 -122
  750. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -226
  751. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  752. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  753. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -107
  754. data/spec/integration/api/v2010/account/address_spec.rb +0 -273
  755. data/spec/integration/api/v2010/account/application_spec.rb +0 -279
  756. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -139
  757. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -103
  758. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -103
  759. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -102
  760. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -103
  761. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -103
  762. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -102
  763. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -103
  764. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -130
  765. data/spec/integration/api/v2010/account/balance_spec.rb +0 -45
  766. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -139
  767. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -151
  768. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -181
  769. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  770. data/spec/integration/api/v2010/account/call_spec.rb +0 -624
  771. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -477
  772. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -237
  773. data/spec/integration/api/v2010/account/conference_spec.rb +0 -433
  774. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -201
  775. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -137
  776. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  777. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -191
  778. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -191
  779. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -191
  780. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -345
  781. data/spec/integration/api/v2010/account/key_spec.rb +0 -180
  782. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -50
  783. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -164
  784. data/spec/integration/api/v2010/account/message_spec.rb +0 -473
  785. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -47
  786. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -47
  787. data/spec/integration/api/v2010/account/notification_spec.rb +0 -140
  788. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -195
  789. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -210
  790. data/spec/integration/api/v2010/account/queue_spec.rb +0 -248
  791. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -177
  792. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -168
  793. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -176
  794. data/spec/integration/api/v2010/account/recording_spec.rb +0 -187
  795. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -182
  796. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -180
  797. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -256
  798. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -244
  799. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -220
  800. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -220
  801. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  802. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -220
  803. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  804. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  805. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -210
  806. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -220
  807. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -295
  808. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
  809. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -254
  810. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  811. data/spec/integration/api/v2010/account/token_spec.rb +0 -60
  812. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -169
  813. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -114
  814. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -114
  815. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -114
  816. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -114
  817. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -114
  818. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -114
  819. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -114
  820. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -114
  821. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -111
  822. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -285
  823. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  824. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  825. data/spec/integration/api/v2010/account_spec.rb +0 -286
  826. data/spec/integration/authy/v1/form_spec.rb +0 -48
  827. data/spec/integration/authy/v1/service/entity/factor/challenge_spec.rb +0 -267
  828. data/spec/integration/authy/v1/service/entity/factor_spec.rb +0 -273
  829. data/spec/integration/authy/v1/service/entity_spec.rb +0 -201
  830. data/spec/integration/authy/v1/service_spec.rb +0 -227
  831. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -81
  832. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -47
  833. data/spec/integration/autopilot/v1/assistant/export_assistant_spec.rb +0 -49
  834. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -210
  835. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -246
  836. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -241
  837. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  838. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -81
  839. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -207
  840. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -253
  841. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -87
  842. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -50
  843. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -262
  844. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -246
  845. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -286
  846. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  847. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  848. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  849. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  850. data/spec/integration/chat/v1/service/channel_spec.rb +0 -277
  851. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  852. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -94
  853. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  854. data/spec/integration/chat/v1/service_spec.rb +0 -299
  855. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  856. data/spec/integration/chat/v2/service/binding_spec.rb +0 -177
  857. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  858. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -261
  859. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -405
  860. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -307
  861. data/spec/integration/chat/v2/service/channel_spec.rb +0 -281
  862. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  863. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -180
  864. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -251
  865. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  866. data/spec/integration/chat/v2/service_spec.rb +0 -354
  867. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -293
  868. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -290
  869. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -286
  870. data/spec/integration/conversations/v1/conversation_spec.rb +0 -222
  871. data/spec/integration/conversations/v1/webhook_spec.rb +0 -88
  872. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -128
  873. data/spec/integration/fax/v1/fax_spec.rb +0 -271
  874. data/spec/integration/flex_api/v1/channel_spec.rb +0 -191
  875. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -449
  876. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -263
  877. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -220
  878. data/spec/integration/insights/v1/call/event_spec.rb +0 -167
  879. data/spec/integration/insights/v1/call/metric_spec.rb +0 -155
  880. data/spec/integration/insights/v1/call/summary_spec.rb +0 -63
  881. data/spec/integration/insights/v1/call_spec.rb +0 -47
  882. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -223
  883. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  884. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -284
  885. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -294
  886. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -277
  887. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -263
  888. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -94
  889. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -266
  890. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -299
  891. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  892. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -177
  893. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  894. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -261
  895. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -405
  896. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -307
  897. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -281
  898. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  899. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -180
  900. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -251
  901. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  902. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -354
  903. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -337
  904. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  905. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  906. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -179
  907. data/spec/integration/messaging/v1/service_spec.rb +0 -271
  908. data/spec/integration/messaging/v1/session/message_spec.rb +0 -238
  909. data/spec/integration/messaging/v1/session/participant_spec.rb +0 -256
  910. data/spec/integration/messaging/v1/session/webhook_spec.rb +0 -300
  911. data/spec/integration/messaging/v1/session_spec.rb +0 -227
  912. data/spec/integration/messaging/v1/webhook_spec.rb +0 -94
  913. data/spec/integration/monitor/v1/alert_spec.rb +0 -140
  914. data/spec/integration/monitor/v1/event_spec.rb +0 -150
  915. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  916. data/spec/integration/notify/v1/service/binding_spec.rb +0 -225
  917. data/spec/integration/notify/v1/service/notification_spec.rb +0 -99
  918. data/spec/integration/notify/v1/service_spec.rb +0 -294
  919. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -52
  920. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -52
  921. data/spec/integration/preview/acc_security/service_spec.rb +0 -185
  922. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -58
  923. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  924. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -77
  925. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  926. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -45
  927. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -238
  928. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -233
  929. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -249
  930. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -237
  931. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -246
  932. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -111
  933. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -227
  934. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -393
  935. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -123
  936. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -144
  937. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  938. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -254
  939. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -204
  940. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  941. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -254
  942. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -204
  943. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -209
  944. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -254
  945. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -204
  946. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -209
  947. data/spec/integration/preview/sync/service_spec.rb +0 -246
  948. data/spec/integration/preview/trusted_comms/branded_call_spec.rb +0 -59
  949. data/spec/integration/preview/trusted_comms/business/insights/success_rate_spec.rb +0 -58
  950. data/spec/integration/preview/trusted_comms/business/insights_spec.rb +0 -12
  951. data/spec/integration/preview/trusted_comms/business_spec.rb +0 -46
  952. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -43
  953. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -54
  954. data/spec/integration/preview/trusted_comms/device_spec.rb +0 -45
  955. data/spec/integration/preview/trusted_comms/phone_call_spec.rb +0 -59
  956. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -81
  957. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -81
  958. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -47
  959. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -210
  960. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -246
  961. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -241
  962. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -306
  963. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -81
  964. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -207
  965. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -253
  966. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -87
  967. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -50
  968. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -262
  969. data/spec/integration/preview/understand/assistant_spec.rb +0 -274
  970. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  971. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -262
  972. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -51
  973. data/spec/integration/preview/wireless/sim_spec.rb +0 -210
  974. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -139
  975. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  976. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -130
  977. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  978. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -140
  979. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -56
  980. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  981. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -181
  982. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -62
  983. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  984. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -236
  985. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -136
  986. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -166
  987. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -243
  988. data/spec/integration/proxy/v1/service/session_spec.rb +0 -230
  989. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -229
  990. data/spec/integration/proxy/v1/service_spec.rb +0 -218
  991. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -95
  992. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -205
  993. data/spec/integration/serverless/v1/service/build_spec.rb +0 -212
  994. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -137
  995. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -98
  996. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -211
  997. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -173
  998. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -95
  999. data/spec/integration/serverless/v1/service/function_spec.rb +0 -205
  1000. data/spec/integration/serverless/v1/service_spec.rb +0 -206
  1001. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -51
  1002. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -54
  1003. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -101
  1004. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -171
  1005. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -51
  1006. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -54
  1007. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -101
  1008. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -171
  1009. data/spec/integration/studio/v1/flow_spec.rb +0 -117
  1010. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -204
  1011. data/spec/integration/sync/v1/service/document_spec.rb +0 -257
  1012. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  1013. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -204
  1014. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -257
  1015. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  1016. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -204
  1017. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -257
  1018. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  1019. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -249
  1020. data/spec/integration/sync/v1/service_spec.rb +0 -266
  1021. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -236
  1022. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -165
  1023. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -225
  1024. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -316
  1025. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -96
  1026. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -82
  1027. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -108
  1028. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -146
  1029. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -294
  1030. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -326
  1031. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -194
  1032. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -188
  1033. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -92
  1034. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -89
  1035. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -70
  1036. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -116
  1037. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -294
  1038. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -97
  1039. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -58
  1040. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -71
  1041. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -270
  1042. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -94
  1043. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -73
  1044. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -105
  1045. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -295
  1046. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -192
  1047. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -192
  1048. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -252
  1049. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -267
  1050. data/spec/integration/trunking/v1/trunk/terminating_sip_domain_spec.rb +0 -231
  1051. data/spec/integration/trunking/v1/trunk_spec.rb +0 -368
  1052. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -231
  1053. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -249
  1054. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -221
  1055. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -54
  1056. data/spec/integration/verify/v2/service/verification_spec.rb +0 -277
  1057. data/spec/integration/verify/v2/service_spec.rb +0 -243
  1058. data/spec/integration/video/v1/composition_hook_spec.rb +0 -410
  1059. data/spec/integration/video/v1/composition_settings_spec.rb +0 -86
  1060. data/spec/integration/video/v1/composition_spec.rb +0 -350
  1061. data/spec/integration/video/v1/recording_settings_spec.rb +0 -86
  1062. data/spec/integration/video/v1/recording_spec.rb +0 -179
  1063. data/spec/integration/video/v1/room/recording_spec.rb +0 -188
  1064. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -96
  1065. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -105
  1066. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -97
  1067. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -190
  1068. data/spec/integration/video/v1/room_spec.rb +0 -257
  1069. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  1070. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -61
  1071. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -112
  1072. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -77
  1073. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  1074. data/spec/integration/wireless/v1/command_spec.rb +0 -289
  1075. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -282
  1076. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -89
  1077. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -115
  1078. data/spec/integration/wireless/v1/sim_spec.rb +0 -329
  1079. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -111
  1080. data/spec/jwt/access_token_spec.rb +0 -151
  1081. data/spec/jwt/client_capability_spec.rb +0 -104
  1082. data/spec/jwt/task_router_spec.rb +0 -172
  1083. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  1084. data/spec/rest/client_spec.rb +0 -83
  1085. data/spec/security/request_validator_spec.rb +0 -125
  1086. data/spec/spec_helper.rb +0 -38
  1087. data/spec/support/fakeweb.rb +0 -2
  1088. data/spec/twilio_spec.rb +0 -17
  1089. data/spec/twiml/messaging_response_spec.rb +0 -235
  1090. data/spec/twiml/voice_response_spec.rb +0 -847
  1091. data/spec/util/configuration_spec.rb +0 -21
  1092. data/spec/util/url_encode_spec.rb +0 -12
  1093. /data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +0 -0
  1094. /data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  1095. /data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  1096. /data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  1097. /data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
@@ -1,673 +1,544 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Video
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
6
13
  #
7
- # frozen_string_literal: true
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Video < Domain
12
- class V1 < Version
13
- ##
14
- # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
15
- class CompositionHookList < ListResource
16
- ##
17
- # Initialize the CompositionHookList
18
- # @param [Version] version Version that contains the resource
19
- # @return [CompositionHookList] CompositionHookList
20
- def initialize(version)
21
- super(version)
22
-
23
- # Path Solution
24
- @solution = {}
25
- @uri = "/CompositionHooks"
26
- end
27
-
28
- ##
29
- # Lists CompositionHookInstance records from the API as a list.
30
- # Unlike stream(), this operation is eager and will load `limit` records into
31
- # memory before returning.
32
- # @param [Boolean] enabled Read only CompositionHook resources with an `enabled`
33
- # value that matches this parameter.
34
- # @param [Time] date_created_after Read only CompositionHook resources created on
35
- # or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with
36
- # time zone.
37
- # @param [Time] date_created_before Read only CompositionHook resources created
38
- # before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with
39
- # time zone.
40
- # @param [String] friendly_name Read only CompositionHook resources with friendly
41
- # names that match this string. The match is not case sensitive and can include
42
- # asterisk `*` characters as wildcard match.
43
- # @param [Integer] limit Upper limit for the number of records to return. stream()
44
- # guarantees to never return more than limit. Default is no limit
45
- # @param [Integer] page_size Number of records to fetch per request, when
46
- # not set will use the default value of 50 records. If no page_size is defined
47
- # but a limit is defined, stream() will attempt to read the limit with the most
48
- # efficient page size, i.e. min(limit, 1000)
49
- # @return [Array] Array of up to limit results
50
- def list(enabled: :unset, date_created_after: :unset, date_created_before: :unset, friendly_name: :unset, limit: nil, page_size: nil)
51
- self.stream(
52
- enabled: enabled,
53
- date_created_after: date_created_after,
54
- date_created_before: date_created_before,
55
- friendly_name: friendly_name,
56
- limit: limit,
57
- page_size: page_size
58
- ).entries
59
- end
60
-
61
- ##
62
- # Streams CompositionHookInstance records from the API as an Enumerable.
63
- # This operation lazily loads records as efficiently as possible until the limit
64
- # is reached.
65
- # @param [Boolean] enabled Read only CompositionHook resources with an `enabled`
66
- # value that matches this parameter.
67
- # @param [Time] date_created_after Read only CompositionHook resources created on
68
- # or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with
69
- # time zone.
70
- # @param [Time] date_created_before Read only CompositionHook resources created
71
- # before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with
72
- # time zone.
73
- # @param [String] friendly_name Read only CompositionHook resources with friendly
74
- # names that match this string. The match is not case sensitive and can include
75
- # asterisk `*` characters as wildcard match.
76
- # @param [Integer] limit Upper limit for the number of records to return. stream()
77
- # guarantees to never return more than limit. Default is no limit.
78
- # @param [Integer] page_size Number of records to fetch per request, when
79
- # not set will use the default value of 50 records. If no page_size is defined
80
- # but a limit is defined, stream() will attempt to read the limit with the most
81
- # efficient page size, i.e. min(limit, 1000)
82
- # @return [Enumerable] Enumerable that will yield up to limit results
83
- def stream(enabled: :unset, date_created_after: :unset, date_created_before: :unset, friendly_name: :unset, limit: nil, page_size: nil)
84
- limits = @version.read_limits(limit, page_size)
85
-
86
- page = self.page(
87
- enabled: enabled,
88
- date_created_after: date_created_after,
89
- date_created_before: date_created_before,
90
- friendly_name: friendly_name,
91
- page_size: limits[:page_size],
92
- )
93
-
94
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
95
- end
96
-
97
- ##
98
- # When passed a block, yields CompositionHookInstance records from the API.
99
- # This operation lazily loads records as efficiently as possible until the limit
100
- # is reached.
101
- def each
102
- limits = @version.read_limits
103
-
104
- page = self.page(page_size: limits[:page_size], )
105
-
106
- @version.stream(page,
17
+ module REST
18
+ class Video < VideoBase
19
+ class V1 < Version
20
+ class CompositionHookList < ListResource
21
+
22
+ ##
23
+ # Initialize the CompositionHookList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [CompositionHookList] CompositionHookList
26
+ def initialize(version)
27
+ super(version)
28
+ # Path Solution
29
+ @solution = { }
30
+ @uri = "/CompositionHooks"
31
+
32
+ end
33
+ ##
34
+ # Create the CompositionHookInstance
35
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 100 characters long and it must be unique within the account.
36
+ # @param [Boolean] enabled Whether the composition hook is active. When `true`, the composition hook will be triggered for every completed Group Room in the account. When `false`, the composition hook will never be triggered.
37
+ # @param [Object] video_layout An object that describes the video layout of the composition hook in terms of regions. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
38
+ # @param [Array[String]] audio_sources An array of track names from the same group room to merge into the compositions created by the composition hook. Can include zero or more track names. A composition triggered by the composition hook includes all audio sources specified in `audio_sources` except those specified in `audio_sources_excluded`. The track names in this parameter can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` includes tracks named `student` as well as `studentTeam`.
39
+ # @param [Array[String]] audio_sources_excluded An array of track names to exclude. A composition triggered by the composition hook includes all audio sources specified in `audio_sources` except for those specified in `audio_sources_excluded`. The track names in this parameter can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` excludes `student` as well as `studentTeam`. This parameter can also be empty.
40
+ # @param [String] resolution A string that describes the columns (width) and rows (height) of the generated composed video in pixels. Defaults to `640x480`. The string's format is `{width}x{height}` where: * 16 <= `{width}` <= 1280 * 16 <= `{height}` <= 1280 * `{width}` * `{height}` <= 921,600 Typical values are: * HD = `1280x720` * PAL = `1024x576` * VGA = `640x480` * CIF = `320x240` Note that the `resolution` imposes an aspect ratio to the resulting composition. When the original video tracks are constrained by the aspect ratio, they are scaled to fit. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
41
+ # @param [Format] format
42
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application on every composition event. If not provided, status callback events will not be dispatched.
43
+ # @param [String] status_callback_method The HTTP method we should use to call `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
44
+ # @param [Boolean] trim Whether to clip the intervals where there is no active media in the Compositions triggered by the composition hook. The default is `true`. Compositions with `trim` enabled are shorter when the Room is created and no Participant joins for a while as well as if all the Participants leave the room and join later, because those gaps will be removed. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
45
+ # @return [CompositionHookInstance] Created CompositionHookInstance
46
+ def create(
47
+ friendly_name: nil,
48
+ enabled: :unset,
49
+ video_layout: :unset,
50
+ audio_sources: :unset,
51
+ audio_sources_excluded: :unset,
52
+ resolution: :unset,
53
+ format: :unset,
54
+ status_callback: :unset,
55
+ status_callback_method: :unset,
56
+ trim: :unset
57
+ )
58
+
59
+ data = Twilio::Values.of({
60
+ 'FriendlyName' => friendly_name,
61
+ 'Enabled' => enabled,
62
+ 'VideoLayout' => Twilio.serialize_object(video_layout),
63
+ 'AudioSources' => Twilio.serialize_list(audio_sources) { |e| e },
64
+ 'AudioSourcesExcluded' => Twilio.serialize_list(audio_sources_excluded) { |e| e },
65
+ 'Resolution' => resolution,
66
+ 'Format' => format,
67
+ 'StatusCallback' => status_callback,
68
+ 'StatusCallbackMethod' => status_callback_method,
69
+ 'Trim' => trim,
70
+ })
71
+
72
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
73
+
74
+ payload = @version.create('POST', @uri, data: data, headers: headers)
75
+ CompositionHookInstance.new(
76
+ @version,
77
+ payload,
78
+ )
79
+ end
80
+
81
+
82
+ ##
83
+ # Lists CompositionHookInstance records from the API as a list.
84
+ # Unlike stream(), this operation is eager and will load `limit` records into
85
+ # memory before returning.
86
+ # @param [Boolean] enabled Read only CompositionHook resources with an `enabled` value that matches this parameter.
87
+ # @param [Time] date_created_after Read only CompositionHook resources created on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with time zone.
88
+ # @param [Time] date_created_before Read only CompositionHook resources created before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with time zone.
89
+ # @param [String] friendly_name Read only CompositionHook resources with friendly names that match this string. The match is not case sensitive and can include asterisk `*` characters as wildcard match.
90
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
91
+ # guarantees to never return more than limit. Default is no limit
92
+ # @param [Integer] page_size Number of records to fetch per request, when
93
+ # not set will use the default value of 50 records. If no page_size is defined
94
+ # but a limit is defined, stream() will attempt to read the limit with the most
95
+ # efficient page size, i.e. min(limit, 1000)
96
+ # @return [Array] Array of up to limit results
97
+ def list(enabled: :unset, date_created_after: :unset, date_created_before: :unset, friendly_name: :unset, limit: nil, page_size: nil)
98
+ self.stream(
99
+ enabled: enabled,
100
+ date_created_after: date_created_after,
101
+ date_created_before: date_created_before,
102
+ friendly_name: friendly_name,
103
+ limit: limit,
104
+ page_size: page_size
105
+ ).entries
106
+ end
107
+
108
+ ##
109
+ # Streams Instance records from the API as an Enumerable.
110
+ # This operation lazily loads records as efficiently as possible until the limit
111
+ # is reached.
112
+ # @param [Boolean] enabled Read only CompositionHook resources with an `enabled` value that matches this parameter.
113
+ # @param [Time] date_created_after Read only CompositionHook resources created on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with time zone.
114
+ # @param [Time] date_created_before Read only CompositionHook resources created before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with time zone.
115
+ # @param [String] friendly_name Read only CompositionHook resources with friendly names that match this string. The match is not case sensitive and can include asterisk `*` characters as wildcard match.
116
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
117
+ # guarantees to never return more than limit. Default is no limit
118
+ # @param [Integer] page_size Number of records to fetch per request, when
119
+ # not set will use the default value of 50 records. If no page_size is defined
120
+ # but a limit is defined, stream() will attempt to read the limit with the most
121
+ # efficient page size, i.e. min(limit, 1000)
122
+ # @return [Enumerable] Enumerable that will yield up to limit results
123
+ def stream(enabled: :unset, date_created_after: :unset, date_created_before: :unset, friendly_name: :unset, limit: nil, page_size: nil)
124
+ limits = @version.read_limits(limit, page_size)
125
+
126
+ page = self.page(
127
+ enabled: enabled,
128
+ date_created_after: date_created_after,
129
+ date_created_before: date_created_before,
130
+ friendly_name: friendly_name,
131
+ page_size: limits[:page_size], )
132
+
133
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
134
+ end
135
+
136
+ ##
137
+ # When passed a block, yields CompositionHookInstance records from the API.
138
+ # This operation lazily loads records as efficiently as possible until the limit
139
+ # is reached.
140
+ def each
141
+ limits = @version.read_limits
142
+
143
+ page = self.page(page_size: limits[:page_size], )
144
+
145
+ @version.stream(page,
107
146
  limit: limits[:limit],
108
147
  page_limit: limits[:page_limit]).each {|x| yield x}
109
- end
110
-
111
- ##
112
- # Retrieve a single page of CompositionHookInstance records from the API.
113
- # Request is executed immediately.
114
- # @param [Boolean] enabled Read only CompositionHook resources with an `enabled`
115
- # value that matches this parameter.
116
- # @param [Time] date_created_after Read only CompositionHook resources created on
117
- # or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with
118
- # time zone.
119
- # @param [Time] date_created_before Read only CompositionHook resources created
120
- # before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with
121
- # time zone.
122
- # @param [String] friendly_name Read only CompositionHook resources with friendly
123
- # names that match this string. The match is not case sensitive and can include
124
- # asterisk `*` characters as wildcard match.
125
- # @param [String] page_token PageToken provided by the API
126
- # @param [Integer] page_number Page Number, this value is simply for client state
127
- # @param [Integer] page_size Number of records to return, defaults to 50
128
- # @return [Page] Page of CompositionHookInstance
129
- def page(enabled: :unset, date_created_after: :unset, date_created_before: :unset, friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
130
- params = Twilio::Values.of({
131
- 'Enabled' => enabled,
132
- 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
133
- 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
134
- 'FriendlyName' => friendly_name,
135
- 'PageToken' => page_token,
136
- 'Page' => page_number,
137
- 'PageSize' => page_size,
138
- })
139
- response = @version.page(
140
- 'GET',
141
- @uri,
142
- params
143
- )
144
- CompositionHookPage.new(@version, response, @solution)
145
- end
146
-
147
- ##
148
- # Retrieve a single page of CompositionHookInstance records from the API.
149
- # Request is executed immediately.
150
- # @param [String] target_url API-generated URL for the requested results page
151
- # @return [Page] Page of CompositionHookInstance
152
- def get_page(target_url)
153
- response = @version.domain.request(
154
- 'GET',
155
- target_url
156
- )
157
- CompositionHookPage.new(@version, response, @solution)
158
- end
159
-
160
- ##
161
- # Retrieve a single page of CompositionHookInstance records from the API.
162
- # Request is executed immediately.
163
- # @param [String] friendly_name A descriptive string that you create to describe
164
- # the resource. It can be up to 100 characters long and it must be unique within
165
- # the account.
166
- # @param [Boolean] enabled Whether the composition hook is active. When `true`,
167
- # the composition hook will be triggered for every completed Group Room in the
168
- # account. When `false`, the composition hook will never be triggered.
169
- # @param [Hash] video_layout An object that describes the video layout of the
170
- # composition hook in terms of regions. See [Specifying Video
171
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
172
- # @param [String] audio_sources An array of track names from the same group room
173
- # to merge into the compositions created by the composition hook. Can include zero
174
- # or more track names. A composition triggered by the composition hook includes
175
- # all audio sources specified in `audio_sources` except those specified in
176
- # `audio_sources_excluded`. The track names in this parameter can include an
177
- # asterisk as a wild card character, which matches zero or more characters in a
178
- # track name. For example, `student*` includes tracks named `student` as well as
179
- # `studentTeam`.
180
- # @param [String] audio_sources_excluded An array of track names to exclude. A
181
- # composition triggered by the composition hook includes all audio sources
182
- # specified in `audio_sources` except for those specified in
183
- # `audio_sources_excluded`. The track names in this parameter can include an
184
- # asterisk as a wild card character, which matches zero or more characters in a
185
- # track name. For example, `student*` excludes `student` as well as `studentTeam`.
186
- # This parameter can also be empty.
187
- # @param [String] resolution A string that describes the columns (width) and rows
188
- # (height) of the generated composed video in pixels. Defaults to `640x480`.
189
- # The string's format is `{width}x{height}` where:
190
- #
191
- # * 16 <= `{width}` <= 1280
192
- # * 16 <= `{height}` <= 1280
193
- # * `{width}` * `{height}` <= 921,600
194
- #
195
- # Typical values are:
196
- #
197
- # * HD = `1280x720`
198
- # * PAL = `1024x576`
199
- # * VGA = `640x480`
200
- # * CIF = `320x240`
201
- #
202
- # Note that the `resolution` imposes an aspect ratio to the resulting composition.
203
- # When the original video tracks are constrained by the aspect ratio, they are
204
- # scaled to fit. See [Specifying Video
205
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
206
- # @param [composition_hook.Format] format The container format of the media files
207
- # used by the compositions created by the composition hook. Can be: `mp4` or
208
- # `webm` and the default is `webm`. If `mp4` or `webm`, `audio_sources` must have
209
- # one or more tracks and/or a `video_layout` element must contain a valid
210
- # `video_sources` list, otherwise an error occurs.
211
- # @param [String] status_callback The URL we should call using the
212
- # `status_callback_method` to send status information to your application on every
213
- # composition event. If not provided, status callback events will not be
214
- # dispatched.
215
- # @param [String] status_callback_method The HTTP method we should use to call
216
- # `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
217
- # @param [Boolean] trim Whether to clip the intervals where there is no active
218
- # media in the Compositions triggered by the composition hook. The default is
219
- # `true`. Compositions with `trim` enabled are shorter when the Room is created
220
- # and no Participant joins for a while as well as if all the Participants leave
221
- # the room and join later, because those gaps will be removed. See [Specifying
222
- # Video
223
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
224
- # @return [CompositionHookInstance] Newly created CompositionHookInstance
225
- def create(friendly_name: nil, enabled: :unset, video_layout: :unset, audio_sources: :unset, audio_sources_excluded: :unset, resolution: :unset, format: :unset, status_callback: :unset, status_callback_method: :unset, trim: :unset)
226
- data = Twilio::Values.of({
227
- 'FriendlyName' => friendly_name,
228
- 'Enabled' => enabled,
229
- 'VideoLayout' => Twilio.serialize_object(video_layout),
230
- 'AudioSources' => Twilio.serialize_list(audio_sources) { |e| e },
231
- 'AudioSourcesExcluded' => Twilio.serialize_list(audio_sources_excluded) { |e| e },
232
- 'Resolution' => resolution,
233
- 'Format' => format,
234
- 'StatusCallback' => status_callback,
235
- 'StatusCallbackMethod' => status_callback_method,
236
- 'Trim' => trim,
237
- })
238
-
239
- payload = @version.create(
240
- 'POST',
241
- @uri,
242
- data: data
243
- )
244
-
245
- CompositionHookInstance.new(@version, payload, )
246
- end
247
-
248
- ##
249
- # Provide a user friendly representation
250
- def to_s
251
- '#<Twilio.Video.V1.CompositionHookList>'
252
- end
253
- end
254
-
255
- ##
256
- # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
257
- class CompositionHookPage < Page
258
- ##
259
- # Initialize the CompositionHookPage
260
- # @param [Version] version Version that contains the resource
261
- # @param [Response] response Response from the API
262
- # @param [Hash] solution Path solution for the resource
263
- # @return [CompositionHookPage] CompositionHookPage
264
- def initialize(version, response, solution)
265
- super(version, response)
266
-
267
- # Path Solution
268
- @solution = solution
269
- end
270
-
271
- ##
272
- # Build an instance of CompositionHookInstance
273
- # @param [Hash] payload Payload response from the API
274
- # @return [CompositionHookInstance] CompositionHookInstance
275
- def get_instance(payload)
276
- CompositionHookInstance.new(@version, payload, )
277
- end
278
-
279
- ##
280
- # Provide a user friendly representation
281
- def to_s
282
- '<Twilio.Video.V1.CompositionHookPage>'
283
- end
284
- end
285
-
286
- ##
287
- # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
288
- class CompositionHookContext < InstanceContext
289
- ##
290
- # Initialize the CompositionHookContext
291
- # @param [Version] version Version that contains the resource
292
- # @param [String] sid The SID of the CompositionHook resource to fetch.
293
- # @return [CompositionHookContext] CompositionHookContext
294
- def initialize(version, sid)
295
- super(version)
296
-
297
- # Path Solution
298
- @solution = {sid: sid, }
299
- @uri = "/CompositionHooks/#{@solution[:sid]}"
300
- end
301
-
302
- ##
303
- # Fetch a CompositionHookInstance
304
- # @return [CompositionHookInstance] Fetched CompositionHookInstance
305
- def fetch
306
- params = Twilio::Values.of({})
307
-
308
- payload = @version.fetch(
309
- 'GET',
310
- @uri,
311
- params,
312
- )
313
-
314
- CompositionHookInstance.new(@version, payload, sid: @solution[:sid], )
315
- end
316
-
317
- ##
318
- # Deletes the CompositionHookInstance
319
- # @return [Boolean] true if delete succeeds, false otherwise
320
- def delete
321
- @version.delete('delete', @uri)
322
- end
323
-
324
- ##
325
- # Update the CompositionHookInstance
326
- # @param [String] friendly_name A descriptive string that you create to describe
327
- # the resource. It can be up to 100 characters long and it must be unique within
328
- # the account.
329
- # @param [Boolean] enabled Whether the composition hook is active. When `true`,
330
- # the composition hook will be triggered for every completed Group Room in the
331
- # account. When `false`, the composition hook never triggers.
332
- # @param [Hash] video_layout A JSON object that describes the video layout of the
333
- # composition hook in terms of regions. See [Specifying Video
334
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
335
- # @param [String] audio_sources An array of track names from the same group room
336
- # to merge into the compositions created by the composition hook. Can include zero
337
- # or more track names. A composition triggered by the composition hook includes
338
- # all audio sources specified in `audio_sources` except those specified in
339
- # `audio_sources_excluded`. The track names in this parameter can include an
340
- # asterisk as a wild card character, which matches zero or more characters in a
341
- # track name. For example, `student*` includes tracks named `student` as well as
342
- # `studentTeam`.
343
- # @param [String] audio_sources_excluded An array of track names to exclude. A
344
- # composition triggered by the composition hook includes all audio sources
345
- # specified in `audio_sources` except for those specified in
346
- # `audio_sources_excluded`. The track names in this parameter can include an
347
- # asterisk as a wild card character, which matches zero or more characters in a
348
- # track name. For example, `student*` excludes `student` as well as `studentTeam`.
349
- # This parameter can also be empty.
350
- # @param [Boolean] trim Whether to clip the intervals where there is no active
351
- # media in the compositions triggered by the composition hook. The default is
352
- # `true`. Compositions with `trim` enabled are shorter when the Room is created
353
- # and no Participant joins for a while as well as if all the Participants leave
354
- # the room and join later, because those gaps will be removed. See [Specifying
355
- # Video
356
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
357
- # @param [composition_hook.Format] format The container format of the media files
358
- # used by the compositions created by the composition hook. Can be: `mp4` or
359
- # `webm` and the default is `webm`. If `mp4` or `webm`, `audio_sources` must have
360
- # one or more tracks and/or a `video_layout` element must contain a valid
361
- # `video_sources` list, otherwise an error occurs.
362
- # @param [String] resolution A string that describes the columns (width) and rows
363
- # (height) of the generated composed video in pixels. Defaults to `640x480`.
364
- # The string's format is `{width}x{height}` where:
365
- #
366
- # * 16 <= `{width}` <= 1280
367
- # * 16 <= `{height}` <= 1280
368
- # * `{width}` * `{height}` <= 921,600
369
- #
370
- # Typical values are:
371
- #
372
- # * HD = `1280x720`
373
- # * PAL = `1024x576`
374
- # * VGA = `640x480`
375
- # * CIF = `320x240`
376
- #
377
- # Note that the `resolution` imposes an aspect ratio to the resulting composition.
378
- # When the original video tracks are constrained by the aspect ratio, they are
379
- # scaled to fit. See [Specifying Video
380
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
381
- # @param [String] status_callback The URL we should call using the
382
- # `status_callback_method` to send status information to your application on every
383
- # composition event. If not provided, status callback events will not be
384
- # dispatched.
385
- # @param [String] status_callback_method The HTTP method we should use to call
386
- # `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
387
- # @return [CompositionHookInstance] Updated CompositionHookInstance
388
- def update(friendly_name: nil, enabled: :unset, video_layout: :unset, audio_sources: :unset, audio_sources_excluded: :unset, trim: :unset, format: :unset, resolution: :unset, status_callback: :unset, status_callback_method: :unset)
389
- data = Twilio::Values.of({
390
- 'FriendlyName' => friendly_name,
391
- 'Enabled' => enabled,
392
- 'VideoLayout' => Twilio.serialize_object(video_layout),
393
- 'AudioSources' => Twilio.serialize_list(audio_sources) { |e| e },
394
- 'AudioSourcesExcluded' => Twilio.serialize_list(audio_sources_excluded) { |e| e },
395
- 'Trim' => trim,
396
- 'Format' => format,
397
- 'Resolution' => resolution,
398
- 'StatusCallback' => status_callback,
399
- 'StatusCallbackMethod' => status_callback_method,
400
- })
401
-
402
- payload = @version.update(
403
- 'POST',
404
- @uri,
405
- data: data,
406
- )
407
-
408
- CompositionHookInstance.new(@version, payload, sid: @solution[:sid], )
409
- end
410
-
411
- ##
412
- # Provide a user friendly representation
413
- def to_s
414
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
415
- "#<Twilio.Video.V1.CompositionHookContext #{context}>"
416
- end
417
-
418
- ##
419
- # Provide a detailed, user friendly representation
420
- def inspect
421
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
422
- "#<Twilio.Video.V1.CompositionHookContext #{context}>"
423
- end
424
- end
148
+ end
149
+
150
+ ##
151
+ # Retrieve a single page of CompositionHookInstance records from the API.
152
+ # Request is executed immediately.
153
+ # @param [Boolean] enabled Read only CompositionHook resources with an `enabled` value that matches this parameter.
154
+ # @param [Time] date_created_after Read only CompositionHook resources created on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with time zone.
155
+ # @param [Time] date_created_before Read only CompositionHook resources created before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) datetime with time zone.
156
+ # @param [String] friendly_name Read only CompositionHook resources with friendly names that match this string. The match is not case sensitive and can include asterisk `*` characters as wildcard match.
157
+ # @param [String] page_token PageToken provided by the API
158
+ # @param [Integer] page_number Page Number, this value is simply for client state
159
+ # @param [Integer] page_size Number of records to return, defaults to 50
160
+ # @return [Page] Page of CompositionHookInstance
161
+ def page(enabled: :unset, date_created_after: :unset, date_created_before: :unset, friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
162
+ params = Twilio::Values.of({
163
+ 'Enabled' => enabled,
164
+ 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
165
+ 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
166
+ 'FriendlyName' => friendly_name,
167
+ 'PageToken' => page_token,
168
+ 'Page' => page_number,
169
+ 'PageSize' => page_size,
170
+ })
171
+
172
+ response = @version.page('GET', @uri, params: params)
173
+
174
+ CompositionHookPage.new(@version, response, @solution)
175
+ end
176
+
177
+ ##
178
+ # Retrieve a single page of CompositionHookInstance records from the API.
179
+ # Request is executed immediately.
180
+ # @param [String] target_url API-generated URL for the requested results page
181
+ # @return [Page] Page of CompositionHookInstance
182
+ def get_page(target_url)
183
+ response = @version.domain.request(
184
+ 'GET',
185
+ target_url
186
+ )
187
+ CompositionHookPage.new(@version, response, @solution)
188
+ end
189
+
190
+
191
+
192
+ # Provide a user friendly representation
193
+ def to_s
194
+ '#<Twilio.Video.V1.CompositionHookList>'
195
+ end
196
+ end
197
+
198
+
199
+ class CompositionHookContext < InstanceContext
200
+ ##
201
+ # Initialize the CompositionHookContext
202
+ # @param [Version] version Version that contains the resource
203
+ # @param [String] sid The SID of the CompositionHook resource to update.
204
+ # @return [CompositionHookContext] CompositionHookContext
205
+ def initialize(version, sid)
206
+ super(version)
207
+
208
+ # Path Solution
209
+ @solution = { sid: sid, }
210
+ @uri = "/CompositionHooks/#{@solution[:sid]}"
211
+
212
+
213
+ end
214
+ ##
215
+ # Delete the CompositionHookInstance
216
+ # @return [Boolean] True if delete succeeds, false otherwise
217
+ def delete
218
+
219
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
220
+
221
+ @version.delete('DELETE', @uri, headers: headers)
222
+ end
223
+
224
+ ##
225
+ # Fetch the CompositionHookInstance
226
+ # @return [CompositionHookInstance] Fetched CompositionHookInstance
227
+ def fetch
228
+
229
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
230
+
231
+ payload = @version.fetch('GET', @uri, headers: headers)
232
+ CompositionHookInstance.new(
233
+ @version,
234
+ payload,
235
+ sid: @solution[:sid],
236
+ )
237
+ end
238
+
239
+ ##
240
+ # Update the CompositionHookInstance
241
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 100 characters long and it must be unique within the account.
242
+ # @param [Boolean] enabled Whether the composition hook is active. When `true`, the composition hook will be triggered for every completed Group Room in the account. When `false`, the composition hook never triggers.
243
+ # @param [Object] video_layout A JSON object that describes the video layout of the composition hook in terms of regions. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
244
+ # @param [Array[String]] audio_sources An array of track names from the same group room to merge into the compositions created by the composition hook. Can include zero or more track names. A composition triggered by the composition hook includes all audio sources specified in `audio_sources` except those specified in `audio_sources_excluded`. The track names in this parameter can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` includes tracks named `student` as well as `studentTeam`.
245
+ # @param [Array[String]] audio_sources_excluded An array of track names to exclude. A composition triggered by the composition hook includes all audio sources specified in `audio_sources` except for those specified in `audio_sources_excluded`. The track names in this parameter can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` excludes `student` as well as `studentTeam`. This parameter can also be empty.
246
+ # @param [Boolean] trim Whether to clip the intervals where there is no active media in the compositions triggered by the composition hook. The default is `true`. Compositions with `trim` enabled are shorter when the Room is created and no Participant joins for a while as well as if all the Participants leave the room and join later, because those gaps will be removed. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
247
+ # @param [Format] format
248
+ # @param [String] resolution A string that describes the columns (width) and rows (height) of the generated composed video in pixels. Defaults to `640x480`. The string's format is `{width}x{height}` where: * 16 <= `{width}` <= 1280 * 16 <= `{height}` <= 1280 * `{width}` * `{height}` <= 921,600 Typical values are: * HD = `1280x720` * PAL = `1024x576` * VGA = `640x480` * CIF = `320x240` Note that the `resolution` imposes an aspect ratio to the resulting composition. When the original video tracks are constrained by the aspect ratio, they are scaled to fit. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
249
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application on every composition event. If not provided, status callback events will not be dispatched.
250
+ # @param [String] status_callback_method The HTTP method we should use to call `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
251
+ # @return [CompositionHookInstance] Updated CompositionHookInstance
252
+ def update(
253
+ friendly_name: nil,
254
+ enabled: :unset,
255
+ video_layout: :unset,
256
+ audio_sources: :unset,
257
+ audio_sources_excluded: :unset,
258
+ trim: :unset,
259
+ format: :unset,
260
+ resolution: :unset,
261
+ status_callback: :unset,
262
+ status_callback_method: :unset
263
+ )
264
+
265
+ data = Twilio::Values.of({
266
+ 'FriendlyName' => friendly_name,
267
+ 'Enabled' => enabled,
268
+ 'VideoLayout' => Twilio.serialize_object(video_layout),
269
+ 'AudioSources' => Twilio.serialize_list(audio_sources) { |e| e },
270
+ 'AudioSourcesExcluded' => Twilio.serialize_list(audio_sources_excluded) { |e| e },
271
+ 'Trim' => trim,
272
+ 'Format' => format,
273
+ 'Resolution' => resolution,
274
+ 'StatusCallback' => status_callback,
275
+ 'StatusCallbackMethod' => status_callback_method,
276
+ })
277
+
278
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
279
+
280
+ payload = @version.update('POST', @uri, data: data, headers: headers)
281
+ CompositionHookInstance.new(
282
+ @version,
283
+ payload,
284
+ sid: @solution[:sid],
285
+ )
286
+ end
287
+
288
+
289
+ ##
290
+ # Provide a user friendly representation
291
+ def to_s
292
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
293
+ "#<Twilio.Video.V1.CompositionHookContext #{context}>"
294
+ end
295
+
296
+ ##
297
+ # Provide a detailed, user friendly representation
298
+ def inspect
299
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
300
+ "#<Twilio.Video.V1.CompositionHookContext #{context}>"
301
+ end
302
+ end
303
+
304
+ class CompositionHookPage < Page
305
+ ##
306
+ # Initialize the CompositionHookPage
307
+ # @param [Version] version Version that contains the resource
308
+ # @param [Response] response Response from the API
309
+ # @param [Hash] solution Path solution for the resource
310
+ # @return [CompositionHookPage] CompositionHookPage
311
+ def initialize(version, response, solution)
312
+ super(version, response)
313
+
314
+ # Path Solution
315
+ @solution = solution
316
+ end
317
+
318
+ ##
319
+ # Build an instance of CompositionHookInstance
320
+ # @param [Hash] payload Payload response from the API
321
+ # @return [CompositionHookInstance] CompositionHookInstance
322
+ def get_instance(payload)
323
+ CompositionHookInstance.new(@version, payload)
324
+ end
325
+
326
+ ##
327
+ # Provide a user friendly representation
328
+ def to_s
329
+ '<Twilio.Video.V1.CompositionHookPage>'
330
+ end
331
+ end
332
+ class CompositionHookInstance < InstanceResource
333
+ ##
334
+ # Initialize the CompositionHookInstance
335
+ # @param [Version] version Version that contains the resource
336
+ # @param [Hash] payload payload that contains response from Twilio
337
+ # @param [String] account_sid The SID of the
338
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this CompositionHook
339
+ # resource.
340
+ # @param [String] sid The SID of the Call resource to fetch.
341
+ # @return [CompositionHookInstance] CompositionHookInstance
342
+ def initialize(version, payload , sid: nil)
343
+ super(version)
344
+
345
+ # Marshaled Properties
346
+ @properties = {
347
+ 'account_sid' => payload['account_sid'],
348
+ 'friendly_name' => payload['friendly_name'],
349
+ 'enabled' => payload['enabled'],
350
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
351
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
352
+ 'sid' => payload['sid'],
353
+ 'audio_sources' => payload['audio_sources'],
354
+ 'audio_sources_excluded' => payload['audio_sources_excluded'],
355
+ 'video_layout' => payload['video_layout'],
356
+ 'resolution' => payload['resolution'],
357
+ 'trim' => payload['trim'],
358
+ 'format' => payload['format'],
359
+ 'status_callback' => payload['status_callback'],
360
+ 'status_callback_method' => payload['status_callback_method'],
361
+ 'url' => payload['url'],
362
+ }
363
+
364
+ # Context
365
+ @instance_context = nil
366
+ @params = { 'sid' => sid || @properties['sid'] , }
367
+ end
368
+
369
+ ##
370
+ # Generate an instance context for the instance, the context is capable of
371
+ # performing various actions. All instance actions are proxied to the context
372
+ # @return [CompositionHookContext] CallContext for this CallInstance
373
+ def context
374
+ unless @instance_context
375
+ @instance_context = CompositionHookContext.new(@version , @params['sid'])
376
+ end
377
+ @instance_context
378
+ end
379
+
380
+ ##
381
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the CompositionHook resource.
382
+ def account_sid
383
+ @properties['account_sid']
384
+ end
385
+
386
+ ##
387
+ # @return [String] The string that you assigned to describe the resource. Can be up to 100 characters long and must be unique within the account.
388
+ def friendly_name
389
+ @properties['friendly_name']
390
+ end
391
+
392
+ ##
393
+ # @return [Boolean] Whether the CompositionHook is active. When `true`, the CompositionHook is triggered for every completed Group Room on the account. When `false`, the CompositionHook is never triggered.
394
+ def enabled
395
+ @properties['enabled']
396
+ end
397
+
398
+ ##
399
+ # @return [Time] The date and time in GMT when the resource was created specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
400
+ def date_created
401
+ @properties['date_created']
402
+ end
403
+
404
+ ##
405
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
406
+ def date_updated
407
+ @properties['date_updated']
408
+ end
409
+
410
+ ##
411
+ # @return [String] The unique string that we created to identify the CompositionHook resource.
412
+ def sid
413
+ @properties['sid']
414
+ end
415
+
416
+ ##
417
+ # @return [Array<String>] The array of track names to include in the compositions created by the composition hook. A composition triggered by the composition hook includes all audio sources specified in `audio_sources` except those specified in `audio_sources_excluded`. The track names in this property can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` includes tracks named `student` as well as `studentTeam`. Please, be aware that either video_layout or audio_sources have to be provided to get a valid creation request
418
+ def audio_sources
419
+ @properties['audio_sources']
420
+ end
421
+
422
+ ##
423
+ # @return [Array<String>] The array of track names to exclude from the compositions created by the composition hook. A composition triggered by the composition hook includes all audio sources specified in `audio_sources` except for those specified in `audio_sources_excluded`. The track names in this property can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` excludes `student` as well as `studentTeam`. This parameter can also be empty.
424
+ def audio_sources_excluded
425
+ @properties['audio_sources_excluded']
426
+ end
427
+
428
+ ##
429
+ # @return [Hash] A JSON object that describes the video layout of the composition in terms of regions as specified in the HTTP POST request that created the CompositionHook resource. See [POST Parameters](https://www.twilio.com/docs/video/api/compositions-resource#http-post-parameters) for more information. Please, be aware that either video_layout or audio_sources have to be provided to get a valid creation request
430
+ def video_layout
431
+ @properties['video_layout']
432
+ end
433
+
434
+ ##
435
+ # @return [String] The dimensions of the video image in pixels expressed as columns (width) and rows (height). The string's format is `{width}x{height}`, such as `640x480`.
436
+ def resolution
437
+ @properties['resolution']
438
+ end
439
+
440
+ ##
441
+ # @return [Boolean] Whether intervals with no media are clipped, as specified in the POST request that created the CompositionHook resource. Compositions with `trim` enabled are shorter when the Room is created and no Participant joins for a while as well as if all the Participants leave the room and join later, because those gaps will be removed. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
442
+ def trim
443
+ @properties['trim']
444
+ end
445
+
446
+ ##
447
+ # @return [Format]
448
+ def format
449
+ @properties['format']
450
+ end
451
+
452
+ ##
453
+ # @return [String] The URL we call using the `status_callback_method` to send status information to your application.
454
+ def status_callback
455
+ @properties['status_callback']
456
+ end
457
+
458
+ ##
459
+ # @return [String] The HTTP method we should use to call `status_callback`. Can be `POST` or `GET` and defaults to `POST`.
460
+ def status_callback_method
461
+ @properties['status_callback_method']
462
+ end
463
+
464
+ ##
465
+ # @return [String] The absolute URL of the resource.
466
+ def url
467
+ @properties['url']
468
+ end
469
+
470
+ ##
471
+ # Delete the CompositionHookInstance
472
+ # @return [Boolean] True if delete succeeds, false otherwise
473
+ def delete
474
+
475
+ context.delete
476
+ end
477
+
478
+ ##
479
+ # Fetch the CompositionHookInstance
480
+ # @return [CompositionHookInstance] Fetched CompositionHookInstance
481
+ def fetch
482
+
483
+ context.fetch
484
+ end
485
+
486
+ ##
487
+ # Update the CompositionHookInstance
488
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 100 characters long and it must be unique within the account.
489
+ # @param [Boolean] enabled Whether the composition hook is active. When `true`, the composition hook will be triggered for every completed Group Room in the account. When `false`, the composition hook never triggers.
490
+ # @param [Object] video_layout A JSON object that describes the video layout of the composition hook in terms of regions. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
491
+ # @param [Array[String]] audio_sources An array of track names from the same group room to merge into the compositions created by the composition hook. Can include zero or more track names. A composition triggered by the composition hook includes all audio sources specified in `audio_sources` except those specified in `audio_sources_excluded`. The track names in this parameter can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` includes tracks named `student` as well as `studentTeam`.
492
+ # @param [Array[String]] audio_sources_excluded An array of track names to exclude. A composition triggered by the composition hook includes all audio sources specified in `audio_sources` except for those specified in `audio_sources_excluded`. The track names in this parameter can include an asterisk as a wild card character, which matches zero or more characters in a track name. For example, `student*` excludes `student` as well as `studentTeam`. This parameter can also be empty.
493
+ # @param [Boolean] trim Whether to clip the intervals where there is no active media in the compositions triggered by the composition hook. The default is `true`. Compositions with `trim` enabled are shorter when the Room is created and no Participant joins for a while as well as if all the Participants leave the room and join later, because those gaps will be removed. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
494
+ # @param [Format] format
495
+ # @param [String] resolution A string that describes the columns (width) and rows (height) of the generated composed video in pixels. Defaults to `640x480`. The string's format is `{width}x{height}` where: * 16 <= `{width}` <= 1280 * 16 <= `{height}` <= 1280 * `{width}` * `{height}` <= 921,600 Typical values are: * HD = `1280x720` * PAL = `1024x576` * VGA = `640x480` * CIF = `320x240` Note that the `resolution` imposes an aspect ratio to the resulting composition. When the original video tracks are constrained by the aspect ratio, they are scaled to fit. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
496
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application on every composition event. If not provided, status callback events will not be dispatched.
497
+ # @param [String] status_callback_method The HTTP method we should use to call `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
498
+ # @return [CompositionHookInstance] Updated CompositionHookInstance
499
+ def update(
500
+ friendly_name: nil,
501
+ enabled: :unset,
502
+ video_layout: :unset,
503
+ audio_sources: :unset,
504
+ audio_sources_excluded: :unset,
505
+ trim: :unset,
506
+ format: :unset,
507
+ resolution: :unset,
508
+ status_callback: :unset,
509
+ status_callback_method: :unset
510
+ )
511
+
512
+ context.update(
513
+ friendly_name: friendly_name,
514
+ enabled: enabled,
515
+ video_layout: video_layout,
516
+ audio_sources: audio_sources,
517
+ audio_sources_excluded: audio_sources_excluded,
518
+ trim: trim,
519
+ format: format,
520
+ resolution: resolution,
521
+ status_callback: status_callback,
522
+ status_callback_method: status_callback_method,
523
+ )
524
+ end
525
+
526
+ ##
527
+ # Provide a user friendly representation
528
+ def to_s
529
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
530
+ "<Twilio.Video.V1.CompositionHookInstance #{values}>"
531
+ end
532
+
533
+ ##
534
+ # Provide a detailed, user friendly representation
535
+ def inspect
536
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
537
+ "<Twilio.Video.V1.CompositionHookInstance #{values}>"
538
+ end
539
+ end
425
540
 
426
- ##
427
- # PLEASE NOTE that this class contains preview products that are subject to change. Use them with caution. If you currently do not have developer preview access, please contact help@twilio.com.
428
- class CompositionHookInstance < InstanceResource
429
- ##
430
- # Initialize the CompositionHookInstance
431
- # @param [Version] version Version that contains the resource
432
- # @param [Hash] payload payload that contains response from Twilio
433
- # @param [String] sid The SID of the CompositionHook resource to fetch.
434
- # @return [CompositionHookInstance] CompositionHookInstance
435
- def initialize(version, payload, sid: nil)
436
- super(version)
437
-
438
- # Marshaled Properties
439
- @properties = {
440
- 'account_sid' => payload['account_sid'],
441
- 'friendly_name' => payload['friendly_name'],
442
- 'enabled' => payload['enabled'],
443
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
444
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
445
- 'sid' => payload['sid'],
446
- 'audio_sources' => payload['audio_sources'],
447
- 'audio_sources_excluded' => payload['audio_sources_excluded'],
448
- 'video_layout' => payload['video_layout'],
449
- 'resolution' => payload['resolution'],
450
- 'trim' => payload['trim'],
451
- 'format' => payload['format'],
452
- 'status_callback' => payload['status_callback'],
453
- 'status_callback_method' => payload['status_callback_method'],
454
- 'url' => payload['url'],
455
- }
456
-
457
- # Context
458
- @instance_context = nil
459
- @params = {'sid' => sid || @properties['sid'], }
460
- end
461
-
462
- ##
463
- # Generate an instance context for the instance, the context is capable of
464
- # performing various actions. All instance actions are proxied to the context
465
- # @return [CompositionHookContext] CompositionHookContext for this CompositionHookInstance
466
- def context
467
- unless @instance_context
468
- @instance_context = CompositionHookContext.new(@version, @params['sid'], )
469
541
  end
470
- @instance_context
471
- end
472
-
473
- ##
474
- # @return [String] The SID of the Account that created the resource
475
- def account_sid
476
- @properties['account_sid']
477
- end
478
-
479
- ##
480
- # @return [String] The string that you assigned to describe the resource
481
- def friendly_name
482
- @properties['friendly_name']
483
- end
484
-
485
- ##
486
- # @return [Boolean] Whether the CompositionHook is active
487
- def enabled
488
- @properties['enabled']
489
- end
490
-
491
- ##
492
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
493
- def date_created
494
- @properties['date_created']
495
- end
496
-
497
- ##
498
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
499
- def date_updated
500
- @properties['date_updated']
501
- end
502
-
503
- ##
504
- # @return [String] The unique string that identifies the resource
505
- def sid
506
- @properties['sid']
507
- end
508
-
509
- ##
510
- # @return [String] The array of track names to include in the compositions created by the composition hook
511
- def audio_sources
512
- @properties['audio_sources']
513
- end
514
-
515
- ##
516
- # @return [String] The array of track names to exclude from the compositions created by the composition hook
517
- def audio_sources_excluded
518
- @properties['audio_sources_excluded']
519
- end
520
-
521
- ##
522
- # @return [Hash] A JSON object that describes the video layout of the Composition
523
- def video_layout
524
- @properties['video_layout']
525
- end
526
-
527
- ##
528
- # @return [String] The dimensions of the video image in pixels expressed as columns (width) and rows (height)
529
- def resolution
530
- @properties['resolution']
531
- end
532
-
533
- ##
534
- # @return [Boolean] Whether intervals with no media are clipped
535
- def trim
536
- @properties['trim']
537
- end
538
-
539
- ##
540
- # @return [composition_hook.Format] The container format of the media files used by the compositions created by the composition hook
541
- def format
542
- @properties['format']
543
- end
544
-
545
- ##
546
- # @return [String] The URL to send status information to your application
547
- def status_callback
548
- @properties['status_callback']
549
- end
550
-
551
- ##
552
- # @return [String] The HTTP method we should use to call status_callback
553
- def status_callback_method
554
- @properties['status_callback_method']
555
- end
556
-
557
- ##
558
- # @return [String] The absolute URL of the resource
559
- def url
560
- @properties['url']
561
- end
562
-
563
- ##
564
- # Fetch a CompositionHookInstance
565
- # @return [CompositionHookInstance] Fetched CompositionHookInstance
566
- def fetch
567
- context.fetch
568
- end
569
-
570
- ##
571
- # Deletes the CompositionHookInstance
572
- # @return [Boolean] true if delete succeeds, false otherwise
573
- def delete
574
- context.delete
575
- end
576
-
577
- ##
578
- # Update the CompositionHookInstance
579
- # @param [String] friendly_name A descriptive string that you create to describe
580
- # the resource. It can be up to 100 characters long and it must be unique within
581
- # the account.
582
- # @param [Boolean] enabled Whether the composition hook is active. When `true`,
583
- # the composition hook will be triggered for every completed Group Room in the
584
- # account. When `false`, the composition hook never triggers.
585
- # @param [Hash] video_layout A JSON object that describes the video layout of the
586
- # composition hook in terms of regions. See [Specifying Video
587
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
588
- # @param [String] audio_sources An array of track names from the same group room
589
- # to merge into the compositions created by the composition hook. Can include zero
590
- # or more track names. A composition triggered by the composition hook includes
591
- # all audio sources specified in `audio_sources` except those specified in
592
- # `audio_sources_excluded`. The track names in this parameter can include an
593
- # asterisk as a wild card character, which matches zero or more characters in a
594
- # track name. For example, `student*` includes tracks named `student` as well as
595
- # `studentTeam`.
596
- # @param [String] audio_sources_excluded An array of track names to exclude. A
597
- # composition triggered by the composition hook includes all audio sources
598
- # specified in `audio_sources` except for those specified in
599
- # `audio_sources_excluded`. The track names in this parameter can include an
600
- # asterisk as a wild card character, which matches zero or more characters in a
601
- # track name. For example, `student*` excludes `student` as well as `studentTeam`.
602
- # This parameter can also be empty.
603
- # @param [Boolean] trim Whether to clip the intervals where there is no active
604
- # media in the compositions triggered by the composition hook. The default is
605
- # `true`. Compositions with `trim` enabled are shorter when the Room is created
606
- # and no Participant joins for a while as well as if all the Participants leave
607
- # the room and join later, because those gaps will be removed. See [Specifying
608
- # Video
609
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
610
- # @param [composition_hook.Format] format The container format of the media files
611
- # used by the compositions created by the composition hook. Can be: `mp4` or
612
- # `webm` and the default is `webm`. If `mp4` or `webm`, `audio_sources` must have
613
- # one or more tracks and/or a `video_layout` element must contain a valid
614
- # `video_sources` list, otherwise an error occurs.
615
- # @param [String] resolution A string that describes the columns (width) and rows
616
- # (height) of the generated composed video in pixels. Defaults to `640x480`.
617
- # The string's format is `{width}x{height}` where:
618
- #
619
- # * 16 <= `{width}` <= 1280
620
- # * 16 <= `{height}` <= 1280
621
- # * `{width}` * `{height}` <= 921,600
622
- #
623
- # Typical values are:
624
- #
625
- # * HD = `1280x720`
626
- # * PAL = `1024x576`
627
- # * VGA = `640x480`
628
- # * CIF = `320x240`
629
- #
630
- # Note that the `resolution` imposes an aspect ratio to the resulting composition.
631
- # When the original video tracks are constrained by the aspect ratio, they are
632
- # scaled to fit. See [Specifying Video
633
- # Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
634
- # @param [String] status_callback The URL we should call using the
635
- # `status_callback_method` to send status information to your application on every
636
- # composition event. If not provided, status callback events will not be
637
- # dispatched.
638
- # @param [String] status_callback_method The HTTP method we should use to call
639
- # `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
640
- # @return [CompositionHookInstance] Updated CompositionHookInstance
641
- def update(friendly_name: nil, enabled: :unset, video_layout: :unset, audio_sources: :unset, audio_sources_excluded: :unset, trim: :unset, format: :unset, resolution: :unset, status_callback: :unset, status_callback_method: :unset)
642
- context.update(
643
- friendly_name: friendly_name,
644
- enabled: enabled,
645
- video_layout: video_layout,
646
- audio_sources: audio_sources,
647
- audio_sources_excluded: audio_sources_excluded,
648
- trim: trim,
649
- format: format,
650
- resolution: resolution,
651
- status_callback: status_callback,
652
- status_callback_method: status_callback_method,
653
- )
654
- end
655
-
656
- ##
657
- # Provide a user friendly representation
658
- def to_s
659
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
660
- "<Twilio.Video.V1.CompositionHookInstance #{values}>"
661
- end
662
-
663
- ##
664
- # Provide a detailed, user friendly representation
665
- def inspect
666
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
667
- "<Twilio.Video.V1.CompositionHookInstance #{values}>"
668
- end
669
542
  end
670
- end
671
543
  end
672
- end
673
- end
544
+ end