twilio-ruby 5.31.1 → 7.1.0

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