twilio-ruby 5.74.5 → 6.0.0.pre.rc.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (628) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test-and-deploy.yml +10 -0
  3. data/.gitignore +3 -0
  4. data/CHANGES.md +34 -51
  5. data/Makefile +3 -0
  6. data/README.md +8 -2
  7. data/UPGRADE.md +7 -0
  8. data/cluster_spec.rb +77 -0
  9. data/lib/twilio-ruby/base/client_base.rb +124 -0
  10. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +198 -178
  11. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +372 -332
  12. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +372 -332
  13. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +121 -114
  14. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +214 -192
  15. data/lib/twilio-ruby/rest/accounts/v1.rb +45 -42
  16. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  17. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  18. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  19. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +560 -530
  20. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +617 -605
  21. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +328 -320
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +413 -0
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +413 -0
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +413 -0
  25. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +413 -0
  26. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +413 -0
  27. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +413 -0
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +413 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +468 -0
  30. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +136 -118
  31. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  32. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +252 -289
  33. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -303
  34. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +405 -417
  35. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +291 -342
  36. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +498 -511
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +839 -641
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +839 -641
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +156 -153
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +228 -240
  41. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +997 -1050
  42. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +650 -756
  43. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +455 -458
  44. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +506 -493
  45. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +427 -407
  46. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +322 -351
  47. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +404 -418
  48. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +541 -554
  49. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +541 -553
  50. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +541 -553
  51. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +850 -903
  52. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +336 -302
  53. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +167 -166
  54. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +344 -350
  55. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +627 -641
  56. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +157 -138
  57. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +157 -138
  58. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +405 -399
  59. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +371 -358
  60. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +341 -338
  61. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +431 -390
  62. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +359 -380
  63. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +374 -385
  64. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +365 -372
  65. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +522 -513
  66. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +420 -408
  67. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +336 -306
  68. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +376 -368
  69. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +404 -373
  70. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +347 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_calls_mapping → auth_type_calls}/auth_calls_ip_access_control_list_mapping.rb +194 -195
  72. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +140 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_registrations_mapping → auth_type_registrations}/auth_registrations_credential_list_mapping.rb +194 -195
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +126 -0
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +94 -103
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +340 -339
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +340 -338
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +663 -645
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +413 -421
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +404 -374
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +141 -150
  82. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +171 -154
  83. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +365 -350
  84. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +319 -339
  85. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +319 -339
  86. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +319 -339
  87. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +319 -339
  88. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +319 -339
  89. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +319 -339
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +319 -339
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +319 -339
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +386 -416
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +489 -484
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +112 -104
  95. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +172 -161
  96. data/lib/twilio-ruby/rest/api/v2010/account.rb +1061 -943
  97. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  98. data/lib/twilio-ruby/rest/api.rb +25 -34
  99. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  100. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +234 -213
  101. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +210 -207
  102. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +380 -388
  103. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +433 -411
  104. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +403 -385
  105. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +471 -462
  106. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +234 -211
  107. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +363 -375
  108. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +427 -445
  109. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +242 -244
  110. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +215 -226
  111. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +527 -500
  112. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +427 -413
  113. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +692 -640
  114. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +201 -188
  115. data/lib/twilio-ruby/rest/autopilot/v1.rb +48 -45
  116. data/lib/twilio-ruby/rest/autopilot.rb +3 -34
  117. data/lib/twilio-ruby/rest/autopilot_base.rb +38 -0
  118. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +300 -279
  119. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +299 -279
  120. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +271 -248
  121. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +253 -235
  122. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +245 -218
  123. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  124. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  125. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  126. data/lib/twilio-ruby/rest/chat/v1/credential.rb +420 -403
  127. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +375 -391
  128. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +423 -440
  129. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +440 -437
  130. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +547 -515
  131. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +397 -367
  132. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  133. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +471 -440
  134. data/lib/twilio-ruby/rest/chat/v1/service.rb +871 -894
  135. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  136. data/lib/twilio-ruby/rest/chat/v2/credential.rb +420 -401
  137. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +372 -370
  138. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +375 -386
  139. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +487 -527
  140. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +515 -533
  141. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +441 -467
  142. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +623 -605
  143. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +397 -369
  144. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +365 -381
  145. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +407 -419
  146. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +518 -491
  147. data/lib/twilio-ruby/rest/chat/v2/service.rb +777 -778
  148. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  149. data/lib/twilio-ruby/rest/chat/v3/channel.rb +289 -267
  150. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  151. data/lib/twilio-ruby/rest/chat.rb +4 -48
  152. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  153. data/lib/twilio-ruby/rest/client.rb +314 -574
  154. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +201 -188
  155. data/lib/twilio-ruby/rest/content/v1/content.rb +354 -336
  156. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +252 -0
  157. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +258 -246
  158. data/lib/twilio-ruby/rest/content/v1.rb +54 -45
  159. data/lib/twilio-ruby/rest/content.rb +2 -40
  160. data/lib/twilio-ruby/rest/content_base.rb +38 -0
  161. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +464 -444
  162. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -227
  163. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +279 -252
  164. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +335 -344
  165. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +534 -510
  166. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +499 -495
  167. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +426 -403
  168. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +594 -552
  169. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +426 -409
  170. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +307 -304
  171. data/lib/twilio-ruby/rest/conversations/v1/role.rb +385 -356
  172. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +365 -373
  173. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +300 -289
  174. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +246 -235
  175. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +307 -279
  176. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +342 -371
  177. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +542 -550
  178. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +508 -530
  179. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +435 -438
  180. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +609 -588
  181. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +313 -317
  182. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +397 -380
  183. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +447 -455
  184. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +489 -474
  185. data/lib/twilio-ruby/rest/conversations/v1/service.rb +493 -447
  186. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +446 -435
  187. data/lib/twilio-ruby/rest/conversations/v1/user.rb +476 -441
  188. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  189. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  190. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  191. data/lib/twilio-ruby/rest/events/v1/event_type.rb +306 -288
  192. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  193. data/lib/twilio-ruby/rest/events/v1/schema.rb +232 -218
  194. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +114 -100
  195. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +120 -103
  196. data/lib/twilio-ruby/rest/events/v1/sink.rb +447 -408
  197. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +368 -339
  198. data/lib/twilio-ruby/rest/events/v1/subscription.rb +423 -387
  199. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  200. data/lib/twilio-ruby/rest/events.rb +5 -34
  201. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  202. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +447 -387
  203. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +366 -330
  204. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +489 -496
  205. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -570
  206. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +329 -306
  207. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +231 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +435 -384
  209. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +350 -303
  210. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +435 -380
  211. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +427 -403
  212. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +209 -190
  213. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +155 -0
  214. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +135 -124
  215. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +188 -166
  216. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +245 -229
  217. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +329 -319
  218. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +409 -398
  219. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +252 -225
  220. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +379 -331
  221. data/lib/twilio-ruby/rest/flex_api/v1.rb +205 -208
  222. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +140 -127
  223. data/lib/twilio-ruby/rest/flex_api/v2.rb +33 -28
  224. data/lib/twilio-ruby/rest/flex_api.rb +21 -111
  225. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  226. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +244 -227
  227. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  228. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  229. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  230. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +312 -315
  231. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +350 -0
  232. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +271 -255
  233. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +244 -225
  234. data/lib/twilio-ruby/rest/insights/v1/call.rb +268 -236
  235. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +461 -433
  236. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +485 -467
  237. data/lib/twilio-ruby/rest/insights/v1/conference.rb +509 -502
  238. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  239. data/lib/twilio-ruby/rest/insights/v1/room.rb +497 -489
  240. data/lib/twilio-ruby/rest/insights/v1/setting.rb +246 -207
  241. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  242. data/lib/twilio-ruby/rest/insights.rb +6 -34
  243. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  244. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +420 -364
  245. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +375 -359
  246. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +423 -397
  247. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +440 -409
  248. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +547 -488
  249. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +397 -347
  250. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  251. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +471 -418
  252. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +871 -779
  253. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  254. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +420 -364
  255. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +372 -343
  256. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +375 -359
  257. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +487 -451
  258. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +515 -479
  259. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +441 -411
  260. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +623 -555
  261. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +397 -347
  262. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +365 -351
  263. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +398 -384
  264. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +518 -467
  265. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +777 -689
  266. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  267. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  268. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  269. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +243 -239
  270. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  271. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +349 -342
  272. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  273. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  274. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  275. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +413 -387
  276. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -389
  277. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +245 -214
  278. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +425 -393
  279. data/lib/twilio-ruby/rest/media/v1.rb +72 -69
  280. data/lib/twilio-ruby/rest/media.rb +4 -34
  281. data/lib/twilio-ruby/rest/media_base.rb +38 -0
  282. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +360 -346
  283. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +472 -443
  284. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +189 -0
  285. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +280 -0
  286. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +274 -259
  287. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +231 -0
  288. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +155 -144
  289. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +214 -0
  290. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +352 -335
  291. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +359 -341
  292. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +359 -336
  293. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +500 -521
  294. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +121 -115
  295. data/lib/twilio-ruby/rest/messaging/v1/service.rb +757 -763
  296. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +720 -699
  297. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +106 -94
  298. data/lib/twilio-ruby/rest/messaging/v1.rb +172 -124
  299. data/lib/twilio-ruby/rest/messaging.rb +9 -34
  300. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  301. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +349 -307
  302. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +342 -300
  303. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +201 -185
  304. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +340 -320
  305. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +368 -335
  306. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +361 -328
  307. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +418 -383
  308. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -85
  309. data/lib/twilio-ruby/rest/microvisor.rb +3 -50
  310. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  311. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +402 -395
  312. data/lib/twilio-ruby/rest/monitor/v1/event.rb +388 -390
  313. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  314. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  315. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  316. data/lib/twilio-ruby/rest/notify/v1/credential.rb +422 -408
  317. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +440 -452
  318. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +313 -362
  319. data/lib/twilio-ruby/rest/notify/v1/service.rb +635 -622
  320. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  321. data/lib/twilio-ruby/rest/notify.rb +3 -34
  322. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  323. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +279 -261
  324. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +325 -298
  325. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +334 -309
  326. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +194 -181
  327. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +627 -607
  328. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +392 -351
  329. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +291 -266
  330. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +326 -307
  331. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +413 -371
  332. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +291 -266
  333. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +177 -181
  334. data/lib/twilio-ruby/rest/numbers/v2.rb +33 -28
  335. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  336. data/lib/twilio-ruby/rest/numbers_base.rb +38 -0
  337. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +165 -147
  338. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +177 -154
  339. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +254 -234
  340. data/lib/twilio-ruby/rest/oauth/v1/token.rb +173 -151
  341. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +205 -185
  342. data/lib/twilio-ruby/rest/oauth/v1.rb +57 -56
  343. data/lib/twilio-ruby/rest/oauth.rb +5 -40
  344. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  345. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +412 -375
  346. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +395 -358
  347. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +451 -418
  348. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +409 -369
  349. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +507 -459
  350. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -38
  351. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +376 -396
  352. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +453 -446
  353. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +616 -625
  354. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  355. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  356. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +329 -309
  357. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +343 -330
  358. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +433 -398
  359. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  360. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +379 -374
  361. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +447 -399
  362. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +438 -407
  363. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +379 -374
  364. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +428 -398
  365. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +441 -404
  366. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +379 -374
  367. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +428 -398
  368. data/lib/twilio-ruby/rest/preview/sync/service.rb +505 -452
  369. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  370. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +234 -205
  371. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +234 -205
  372. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +210 -199
  373. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +380 -375
  374. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +433 -400
  375. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +403 -373
  376. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +460 -430
  377. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +234 -205
  378. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +363 -362
  379. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +427 -417
  380. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +242 -230
  381. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +215 -214
  382. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +527 -488
  383. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +669 -619
  384. data/lib/twilio-ruby/rest/preview/understand.rb +42 -38
  385. data/lib/twilio-ruby/rest/preview/wireless/command.rb +392 -364
  386. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +449 -398
  387. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +232 -205
  388. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +580 -523
  389. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  390. data/lib/twilio-ruby/rest/preview.rb +11 -69
  391. data/lib/twilio-ruby/rest/preview_base.rb +63 -0
  392. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +298 -275
  393. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +107 -119
  394. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +291 -268
  395. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +107 -119
  396. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +298 -275
  397. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +220 -197
  398. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +121 -135
  399. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  400. data/lib/twilio-ruby/rest/pricing/v2/country.rb +290 -270
  401. data/lib/twilio-ruby/rest/pricing/v2/number.rb +232 -217
  402. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +298 -275
  403. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +238 -220
  404. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +121 -138
  405. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  406. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  407. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  408. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +420 -403
  409. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +409 -418
  410. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +431 -449
  411. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +427 -442
  412. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +531 -506
  413. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +400 -370
  414. data/lib/twilio-ruby/rest/proxy/v1/service.rb +569 -596
  415. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  416. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  417. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  418. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +260 -227
  419. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +260 -223
  420. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +260 -227
  421. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  422. data/lib/twilio-ruby/rest/routes.rb +4 -34
  423. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  424. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  425. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +417 -380
  426. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +208 -208
  427. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +408 -384
  428. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +337 -338
  429. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +365 -383
  430. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +404 -396
  431. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +469 -447
  432. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +223 -234
  433. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  434. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +417 -380
  435. data/lib/twilio-ruby/rest/serverless/v1/service.rb +536 -493
  436. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  437. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  438. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  439. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +206 -199
  440. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +221 -218
  441. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +362 -355
  442. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +427 -394
  443. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +206 -200
  444. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +221 -221
  445. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +362 -361
  446. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +475 -449
  447. data/lib/twilio-ruby/rest/studio/v1/flow.rb +387 -355
  448. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  449. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +206 -200
  450. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +221 -221
  451. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +362 -361
  452. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +468 -442
  453. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +342 -320
  454. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +232 -0
  455. data/lib/twilio-ruby/rest/studio/v2/flow.rb +526 -472
  456. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +121 -99
  457. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  458. data/lib/twilio-ruby/rest/studio.rb +3 -41
  459. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  460. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +397 -382
  461. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +474 -483
  462. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +403 -409
  463. data/lib/twilio-ruby/rest/supersim/v1/network.rb +306 -297
  464. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +338 -332
  465. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +384 -351
  466. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +249 -237
  467. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  468. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  469. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +472 -453
  470. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +362 -361
  471. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +314 -344
  472. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  473. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  474. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  475. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +377 -371
  476. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +461 -423
  477. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +470 -490
  478. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +377 -370
  479. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +479 -445
  480. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +473 -495
  481. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +377 -368
  482. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +479 -444
  483. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +139 -132
  484. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +425 -400
  485. data/lib/twilio-ruby/rest/sync/v1/service.rb +588 -567
  486. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  487. data/lib/twilio-ruby/rest/sync.rb +2 -34
  488. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  489. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +408 -395
  490. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +454 -464
  491. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +702 -749
  492. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +620 -661
  493. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +410 -382
  494. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +359 -369
  495. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +279 -275
  496. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -236
  497. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +246 -258
  498. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +571 -572
  499. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +683 -732
  500. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +390 -388
  501. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +235 -239
  502. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +281 -265
  503. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +215 -193
  504. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +251 -234
  505. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +640 -637
  506. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +359 -375
  507. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +245 -241
  508. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -244
  509. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +525 -510
  510. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +353 -356
  511. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +231 -206
  512. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +241 -234
  513. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +743 -730
  514. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  515. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  516. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  517. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +343 -320
  518. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +343 -317
  519. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +441 -419
  520. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +476 -451
  521. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +224 -191
  522. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +636 -630
  523. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  524. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  525. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  526. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +360 -352
  527. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +336 -323
  528. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +334 -321
  529. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +538 -513
  530. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +384 -346
  531. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +283 -261
  532. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +276 -252
  533. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +398 -359
  534. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +283 -261
  535. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +360 -352
  536. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +336 -323
  537. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +334 -321
  538. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +538 -513
  539. data/lib/twilio-ruby/rest/trusthub/v1.rb +132 -139
  540. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  541. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  542. data/lib/twilio-ruby/rest/verify/v2/form.rb +195 -183
  543. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +223 -207
  544. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +272 -254
  545. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +191 -192
  546. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +506 -531
  547. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +448 -453
  548. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +249 -283
  549. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +436 -414
  550. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +380 -363
  551. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +402 -388
  552. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +425 -384
  553. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +374 -371
  554. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +218 -205
  555. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +448 -412
  556. data/lib/twilio-ruby/rest/verify/v2/service.rb +789 -780
  557. data/lib/twilio-ruby/rest/verify/v2/template.rb +223 -205
  558. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +381 -387
  559. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +239 -226
  560. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  561. data/lib/twilio-ruby/rest/verify.rb +7 -34
  562. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  563. data/lib/twilio-ruby/rest/video/v1/composition.rb +482 -507
  564. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +530 -647
  565. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +281 -261
  566. data/lib/twilio-ruby/rest/video/v1/recording.rb +432 -426
  567. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +281 -261
  568. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +259 -0
  569. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +332 -0
  570. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +181 -0
  571. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +339 -0
  572. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +516 -0
  573. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +170 -0
  574. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  575. data/lib/twilio-ruby/rest/video/v1/room.rb +621 -602
  576. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  577. data/lib/twilio-ruby/rest/video.rb +7 -34
  578. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  579. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +160 -176
  580. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +502 -486
  581. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -434
  582. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +395 -352
  583. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +135 -121
  584. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  585. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +386 -397
  586. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +217 -190
  587. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +122 -121
  588. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +378 -339
  589. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +361 -319
  590. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  591. data/lib/twilio-ruby/rest/voice.rb +7 -34
  592. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  593. data/lib/twilio-ruby/rest/wireless/v1/command.rb +413 -406
  594. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +464 -436
  595. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  596. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +243 -243
  597. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +648 -647
  598. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +230 -221
  599. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  600. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  601. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  602. data/lib/twilio-ruby/rest.rb +1 -0
  603. data/lib/twilio-ruby/version.rb +1 -1
  604. metadata +71 -30
  605. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  606. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  607. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  608. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  609. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  610. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  611. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  612. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  613. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  614. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  615. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  616. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  617. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +0 -144
  618. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  619. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  620. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  621. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  622. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  623. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  624. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  625. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  626. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  627. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  628. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,517 +1,492 @@
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
- class CompositionList < ListResource
14
- ##
15
- # Initialize the CompositionList
16
- # @param [Version] version Version that contains the resource
17
- # @return [CompositionList] CompositionList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Compositions"
24
- end
25
-
26
- ##
27
- # Lists CompositionInstance records from the API as a list.
28
- # Unlike stream(), this operation is eager and will load `limit` records into
29
- # memory before returning.
30
- # @param [composition.Status] status Read only Composition resources with this
31
- # status. Can be: `enqueued`, `processing`, `completed`, `deleted`, or `failed`.
32
- # @param [Time] date_created_after Read only Composition resources created on or
33
- # after this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time with
34
- # time zone.
35
- # @param [Time] date_created_before Read only Composition resources created before
36
- # this ISO 8601 date-time with time zone.
37
- # @param [String] room_sid Read only Composition resources with this Room SID.
38
- # @param [Integer] limit Upper limit for the number of records to return. stream()
39
- # guarantees to never return more than limit. Default is no limit
40
- # @param [Integer] page_size Number of records to fetch per request, when
41
- # not set will use the default value of 50 records. If no page_size is defined
42
- # but a limit is defined, stream() will attempt to read the limit with the most
43
- # efficient page size, i.e. min(limit, 1000)
44
- # @return [Array] Array of up to limit results
45
- def list(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, limit: nil, page_size: nil)
46
- self.stream(
47
- status: status,
48
- date_created_after: date_created_after,
49
- date_created_before: date_created_before,
50
- room_sid: room_sid,
51
- limit: limit,
52
- page_size: page_size
53
- ).entries
54
- end
55
-
56
- ##
57
- # Streams CompositionInstance records from the API as an Enumerable.
58
- # This operation lazily loads records as efficiently as possible until the limit
59
- # is reached.
60
- # @param [composition.Status] status Read only Composition resources with this
61
- # status. Can be: `enqueued`, `processing`, `completed`, `deleted`, or `failed`.
62
- # @param [Time] date_created_after Read only Composition resources created on or
63
- # after this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time with
64
- # time zone.
65
- # @param [Time] date_created_before Read only Composition resources created before
66
- # this ISO 8601 date-time with time zone.
67
- # @param [String] room_sid Read only Composition resources with this Room SID.
68
- # @param [Integer] limit Upper limit for the number of records to return. stream()
69
- # guarantees to never return more than limit. Default is no limit.
70
- # @param [Integer] page_size Number of records to fetch per request, when
71
- # not set will use the default value of 50 records. If no page_size is defined
72
- # but a limit is defined, stream() will attempt to read the limit with the most
73
- # efficient page size, i.e. min(limit, 1000)
74
- # @return [Enumerable] Enumerable that will yield up to limit results
75
- def stream(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, limit: nil, page_size: nil)
76
- limits = @version.read_limits(limit, page_size)
77
-
78
- page = self.page(
79
- status: status,
80
- date_created_after: date_created_after,
81
- date_created_before: date_created_before,
82
- room_sid: room_sid,
83
- page_size: limits[:page_size],
84
- )
85
-
86
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
87
- end
88
-
89
- ##
90
- # When passed a block, yields CompositionInstance records from the API.
91
- # This operation lazily loads records as efficiently as possible until the limit
92
- # is reached.
93
- def each
94
- limits = @version.read_limits
95
-
96
- page = self.page(page_size: limits[:page_size], )
97
-
98
- @version.stream(page,
17
+ module REST
18
+ class Video < VideoBase
19
+ class V1 < Version
20
+ class CompositionList < ListResource
21
+ ##
22
+ # Initialize the CompositionList
23
+ # @param [Version] version Version that contains the resource
24
+ # @return [CompositionList] CompositionList
25
+ def initialize(version)
26
+ super(version)
27
+ # Path Solution
28
+ @solution = { }
29
+ @uri = "/Compositions"
30
+
31
+ end
32
+ ##
33
+ # Create the CompositionInstance
34
+ # @param [String] room_sid The SID of the Group Room with the media tracks to be used as composition sources.
35
+ # @param [Object] video_layout An object that describes the video layout of the composition in terms of regions. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info. Please, be aware that either video_layout or audio_sources have to be provided to get a valid creation request
36
+ # @param [Array[String]] audio_sources An array of track names from the same group room to merge into the new composition. Can include zero or more track names. The new composition 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 will match zero or more characters in a track name. For example, `student*` includes `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
37
+ # @param [Array[String]] audio_sources_excluded An array of track names to exclude. The new composition 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 will match zero or more characters in a track name. For example, `student*` excludes `student` as well as `studentTeam`. This parameter can also be empty.
38
+ # @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.
39
+ # @param [Format] format
40
+ # @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.
41
+ # @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`.
42
+ # @param [Boolean] trim Whether to clip the intervals where there is no active media in the composition. 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.
43
+ # @return [CompositionInstance] Created CompositionInstance
44
+ def create(
45
+ room_sid: nil,
46
+ video_layout: :unset,
47
+ audio_sources: :unset,
48
+ audio_sources_excluded: :unset,
49
+ resolution: :unset,
50
+ format: :unset,
51
+ status_callback: :unset,
52
+ status_callback_method: :unset,
53
+ trim: :unset
54
+ )
55
+
56
+ data = Twilio::Values.of({
57
+ 'RoomSid' => room_sid,
58
+ 'VideoLayout' => Twilio.serialize_object(video_layout),
59
+ 'AudioSources' => Twilio.serialize_list(audio_sources) { |e| e },
60
+ 'AudioSourcesExcluded' => Twilio.serialize_list(audio_sources_excluded) { |e| e },
61
+ 'Resolution' => resolution,
62
+ 'Format' => format,
63
+ 'StatusCallback' => status_callback,
64
+ 'StatusCallbackMethod' => status_callback_method,
65
+ 'Trim' => trim,
66
+ })
67
+
68
+ payload = @version.create('POST', @uri, data: data)
69
+ CompositionInstance.new(
70
+ @version,
71
+ payload,
72
+ )
73
+ end
74
+
75
+
76
+ ##
77
+ # Lists CompositionInstance records from the API as a list.
78
+ # Unlike stream(), this operation is eager and will load `limit` records into
79
+ # memory before returning.
80
+ # @param [Status] status Read only Composition resources with this status. Can be: `enqueued`, `processing`, `completed`, `deleted`, or `failed`.
81
+ # @param [Time] date_created_after Read only Composition resources created on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time with time zone.
82
+ # @param [Time] date_created_before Read only Composition resources created before this ISO 8601 date-time with time zone.
83
+ # @param [String] room_sid Read only Composition resources with this Room SID.
84
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
85
+ # guarantees to never return more than limit. Default is no limit
86
+ # @param [Integer] page_size Number of records to fetch per request, when
87
+ # not set will use the default value of 50 records. If no page_size is defined
88
+ # but a limit is defined, stream() will attempt to read the limit with the most
89
+ # efficient page size, i.e. min(limit, 1000)
90
+ # @return [Array] Array of up to limit results
91
+ def list(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, limit: nil, page_size: nil)
92
+ self.stream(
93
+ status: status,
94
+ date_created_after: date_created_after,
95
+ date_created_before: date_created_before,
96
+ room_sid: room_sid,
97
+ limit: limit,
98
+ page_size: page_size
99
+ ).entries
100
+ end
101
+
102
+ ##
103
+ # Streams Instance records from the API as an Enumerable.
104
+ # This operation lazily loads records as efficiently as possible until the limit
105
+ # is reached.
106
+ # @param [Status] status Read only Composition resources with this status. Can be: `enqueued`, `processing`, `completed`, `deleted`, or `failed`.
107
+ # @param [Time] date_created_after Read only Composition resources created on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time with time zone.
108
+ # @param [Time] date_created_before Read only Composition resources created before this ISO 8601 date-time with time zone.
109
+ # @param [String] room_sid Read only Composition resources with this Room SID.
110
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
111
+ # guarantees to never return more than limit. Default is no limit
112
+ # @param [Integer] page_size Number of records to fetch per request, when
113
+ # not set will use the default value of 50 records. If no page_size is defined
114
+ # but a limit is defined, stream() will attempt to read the limit with the most
115
+ # efficient page size, i.e. min(limit, 1000)
116
+ # @return [Enumerable] Enumerable that will yield up to limit results
117
+ def stream(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, limit: nil, page_size: nil)
118
+ limits = @version.read_limits(limit, page_size)
119
+
120
+ page = self.page(
121
+ status: status,
122
+ date_created_after: date_created_after,
123
+ date_created_before: date_created_before,
124
+ room_sid: room_sid,
125
+ page_size: limits[:page_size], )
126
+
127
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
128
+ end
129
+
130
+ ##
131
+ # When passed a block, yields CompositionInstance records from the API.
132
+ # This operation lazily loads records as efficiently as possible until the limit
133
+ # is reached.
134
+ def each
135
+ limits = @version.read_limits
136
+
137
+ page = self.page(page_size: limits[:page_size], )
138
+
139
+ @version.stream(page,
99
140
  limit: limits[:limit],
100
141
  page_limit: limits[:page_limit]).each {|x| yield x}
101
- end
102
-
103
- ##
104
- # Retrieve a single page of CompositionInstance records from the API.
105
- # Request is executed immediately.
106
- # @param [composition.Status] status Read only Composition resources with this
107
- # status. Can be: `enqueued`, `processing`, `completed`, `deleted`, or `failed`.
108
- # @param [Time] date_created_after Read only Composition resources created on or
109
- # after this {ISO 8601}[https://en.wikipedia.org/wiki/ISO_8601] date-time with
110
- # time zone.
111
- # @param [Time] date_created_before Read only Composition resources created before
112
- # this ISO 8601 date-time with time zone.
113
- # @param [String] room_sid Read only Composition resources with this Room SID.
114
- # @param [String] page_token PageToken provided by the API
115
- # @param [Integer] page_number Page Number, this value is simply for client state
116
- # @param [Integer] page_size Number of records to return, defaults to 50
117
- # @return [Page] Page of CompositionInstance
118
- def page(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
119
- params = Twilio::Values.of({
120
- 'Status' => status,
121
- 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
122
- 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
123
- 'RoomSid' => room_sid,
124
- 'PageToken' => page_token,
125
- 'Page' => page_number,
126
- 'PageSize' => page_size,
127
- })
128
-
129
- response = @version.page('GET', @uri, params: params)
130
-
131
- CompositionPage.new(@version, response, @solution)
132
- end
133
-
134
- ##
135
- # Retrieve a single page of CompositionInstance records from the API.
136
- # Request is executed immediately.
137
- # @param [String] target_url API-generated URL for the requested results page
138
- # @return [Page] Page of CompositionInstance
139
- def get_page(target_url)
140
- response = @version.domain.request(
141
- 'GET',
142
- target_url
143
- )
144
- CompositionPage.new(@version, response, @solution)
145
- end
146
-
147
- ##
148
- # Create the CompositionInstance
149
- # @param [String] room_sid The SID of the Group Room with the media tracks to be
150
- # used as composition sources.
151
- # @param [Hash] video_layout An object that describes the video layout of the
152
- # composition in terms of regions. See {Specifying Video
153
- # Layouts}[https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts]
154
- # for more info. Please, be aware that either video_layout or audio_sources have
155
- # to be provided to get a valid creation request
156
- # @param [Array[String]] audio_sources An array of track names from the same group
157
- # room to merge into the new composition. Can include zero or more track names.
158
- # The new composition includes all audio sources specified in `audio_sources`
159
- # except for those specified in `audio_sources_excluded`. The track names in this
160
- # parameter can include an asterisk as a wild card character, which will match
161
- # zero or more characters in a track name. For example, `student*` includes
162
- # `student` as well as `studentTeam`. Please, be aware that either video_layout or
163
- # audio_sources have to be provided to get a valid creation request
164
- # @param [Array[String]] audio_sources_excluded An array of track names to
165
- # exclude. The new composition includes all audio sources specified in
166
- # `audio_sources` except for those specified in `audio_sources_excluded`. The
167
- # track names in this parameter can include an asterisk as a wild card character,
168
- # which will match zero or more characters in a track name. For example,
169
- # `student*` excludes `student` as well as `studentTeam`. This parameter can also
170
- # be empty.
171
- # @param [String] resolution A string that describes the columns (width) and rows
172
- # (height) of the generated composed video in pixels. Defaults to `640x480`.
173
- # The string's format is `{width}x{height}` where:
174
- #
175
- # * 16 <= `{width}` <= 1280
176
- # * 16 <= `{height}` <= 1280
177
- # * `{width}` * `{height}` <= 921,600
178
- #
179
- # Typical values are:
180
- #
181
- # * HD = `1280x720`
182
- # * PAL = `1024x576`
183
- # * VGA = `640x480`
184
- # * CIF = `320x240`
185
- #
186
- # Note that the `resolution` imposes an aspect ratio to the resulting composition.
187
- # When the original video tracks are constrained by the aspect ratio, they are
188
- # scaled to fit. See {Specifying Video
189
- # Layouts}[https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts]
190
- # for more info.
191
- # @param [composition.Format] format The container format of the composition's
192
- # media files. Can be: `mp4` or `webm` and the default is `webm`. If you specify
193
- # `mp4` or `webm`, you must also specify one or more `audio_sources` and/or a
194
- # `video_layout` element that contains a valid `video_sources` list, otherwise an
195
- # error occurs.
196
- # @param [String] status_callback The URL we should call using the
197
- # `status_callback_method` to send status information to your application on every
198
- # composition event. If not provided, status callback events will not be
199
- # dispatched.
200
- # @param [String] status_callback_method The HTTP method we should use to call
201
- # `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
202
- # @param [Boolean] trim Whether to clip the intervals where there is no active
203
- # media in the composition. The default is `true`. Compositions with `trim`
204
- # enabled are shorter when the Room is created and no Participant joins for a
205
- # while as well as if all the Participants leave the room and join later, because
206
- # those gaps will be removed. See {Specifying Video
207
- # Layouts}[https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts]
208
- # for more info.
209
- # @return [CompositionInstance] Created CompositionInstance
210
- def create(room_sid: nil, video_layout: :unset, audio_sources: :unset, audio_sources_excluded: :unset, resolution: :unset, format: :unset, status_callback: :unset, status_callback_method: :unset, trim: :unset)
211
- data = Twilio::Values.of({
212
- 'RoomSid' => room_sid,
213
- 'VideoLayout' => Twilio.serialize_object(video_layout),
214
- 'AudioSources' => Twilio.serialize_list(audio_sources) { |e| e },
215
- 'AudioSourcesExcluded' => Twilio.serialize_list(audio_sources_excluded) { |e| e },
216
- 'Resolution' => resolution,
217
- 'Format' => format,
218
- 'StatusCallback' => status_callback,
219
- 'StatusCallbackMethod' => status_callback_method,
220
- 'Trim' => trim,
221
- })
222
-
223
- payload = @version.create('POST', @uri, data: data)
224
-
225
- CompositionInstance.new(@version, payload, )
226
- end
227
-
228
- ##
229
- # Provide a user friendly representation
230
- def to_s
231
- '#<Twilio.Video.V1.CompositionList>'
232
- end
233
- end
234
-
235
- class CompositionPage < Page
236
- ##
237
- # Initialize the CompositionPage
238
- # @param [Version] version Version that contains the resource
239
- # @param [Response] response Response from the API
240
- # @param [Hash] solution Path solution for the resource
241
- # @return [CompositionPage] CompositionPage
242
- def initialize(version, response, solution)
243
- super(version, response)
244
-
245
- # Path Solution
246
- @solution = solution
247
- end
248
-
249
- ##
250
- # Build an instance of CompositionInstance
251
- # @param [Hash] payload Payload response from the API
252
- # @return [CompositionInstance] CompositionInstance
253
- def get_instance(payload)
254
- CompositionInstance.new(@version, payload, )
255
- end
256
-
257
- ##
258
- # Provide a user friendly representation
259
- def to_s
260
- '<Twilio.Video.V1.CompositionPage>'
261
- end
262
- end
263
-
264
- class CompositionContext < InstanceContext
265
- ##
266
- # Initialize the CompositionContext
267
- # @param [Version] version Version that contains the resource
268
- # @param [String] sid The SID of the Composition resource to fetch.
269
- # @return [CompositionContext] CompositionContext
270
- def initialize(version, sid)
271
- super(version)
272
-
273
- # Path Solution
274
- @solution = {sid: sid, }
275
- @uri = "/Compositions/#{@solution[:sid]}"
276
- end
277
-
278
- ##
279
- # Fetch the CompositionInstance
280
- # @return [CompositionInstance] Fetched CompositionInstance
281
- def fetch
282
- payload = @version.fetch('GET', @uri)
283
-
284
- CompositionInstance.new(@version, payload, sid: @solution[:sid], )
285
- end
286
-
287
- ##
288
- # Delete the CompositionInstance
289
- # @return [Boolean] true if delete succeeds, false otherwise
290
- def delete
291
- @version.delete('DELETE', @uri)
292
- end
293
-
294
- ##
295
- # Provide a user friendly representation
296
- def to_s
297
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
298
- "#<Twilio.Video.V1.CompositionContext #{context}>"
299
- end
300
-
301
- ##
302
- # Provide a detailed, user friendly representation
303
- def inspect
304
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
305
- "#<Twilio.Video.V1.CompositionContext #{context}>"
306
- end
307
- end
142
+ end
143
+
144
+ ##
145
+ # Retrieve a single page of CompositionInstance records from the API.
146
+ # Request is executed immediately.
147
+ # @param [Status] status Read only Composition resources with this status. Can be: `enqueued`, `processing`, `completed`, `deleted`, or `failed`.
148
+ # @param [Time] date_created_after Read only Composition resources created on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time with time zone.
149
+ # @param [Time] date_created_before Read only Composition resources created before this ISO 8601 date-time with time zone.
150
+ # @param [String] room_sid Read only Composition resources with this Room SID.
151
+ # @param [String] page_token PageToken provided by the API
152
+ # @param [Integer] page_number Page Number, this value is simply for client state
153
+ # @param [Integer] page_size Number of records to return, defaults to 50
154
+ # @return [Page] Page of CompositionInstance
155
+ def page(status: :unset, date_created_after: :unset, date_created_before: :unset, room_sid: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
156
+ params = Twilio::Values.of({
157
+
158
+ 'Status' => status,
159
+
160
+ 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
161
+
162
+ 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
163
+
164
+ 'RoomSid' => room_sid,
165
+
166
+ 'PageToken' => page_token,
167
+ 'Page' => page_number,
168
+ 'PageSize' => page_size,
169
+ })
170
+
171
+ response = @version.page('GET', @uri, params: params)
172
+
173
+ CompositionPage.new(@version, response, @solution)
174
+ end
175
+
176
+ ##
177
+ # Retrieve a single page of CompositionInstance 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 CompositionInstance
181
+ def get_page(target_url)
182
+ response = @version.domain.request(
183
+ 'GET',
184
+ target_url
185
+ )
186
+ CompositionPage.new(@version, response, @solution)
187
+ end
188
+
189
+
190
+
191
+ # Provide a user friendly representation
192
+ def to_s
193
+ '#<Twilio.Video.V1.CompositionList>'
194
+ end
195
+ end
196
+
197
+
198
+ class CompositionContext < InstanceContext
199
+ ##
200
+ # Initialize the CompositionContext
201
+ # @param [Version] version Version that contains the resource
202
+ # @param [String] sid The SID of the Composition resource to fetch.
203
+ # @return [CompositionContext] CompositionContext
204
+ def initialize(version, sid)
205
+ super(version)
206
+
207
+ # Path Solution
208
+ @solution = { sid: sid, }
209
+ @uri = "/Compositions/#{@solution[:sid]}"
210
+
211
+
212
+ end
213
+ ##
214
+ # Delete the CompositionInstance
215
+ # @return [Boolean] True if delete succeeds, false otherwise
216
+ def delete
217
+
218
+ @version.delete('DELETE', @uri)
219
+ end
220
+
221
+ ##
222
+ # Fetch the CompositionInstance
223
+ # @return [CompositionInstance] Fetched CompositionInstance
224
+ def fetch
225
+
226
+ payload = @version.fetch('GET', @uri)
227
+ CompositionInstance.new(
228
+ @version,
229
+ payload,
230
+ sid: @solution[:sid],
231
+ )
232
+ end
233
+
234
+
235
+ ##
236
+ # Provide a user friendly representation
237
+ def to_s
238
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
239
+ "#<Twilio.Video.V1.CompositionContext #{context}>"
240
+ end
241
+
242
+ ##
243
+ # Provide a detailed, user friendly representation
244
+ def inspect
245
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
246
+ "#<Twilio.Video.V1.CompositionContext #{context}>"
247
+ end
248
+ end
249
+
250
+ class CompositionPage < Page
251
+ ##
252
+ # Initialize the CompositionPage
253
+ # @param [Version] version Version that contains the resource
254
+ # @param [Response] response Response from the API
255
+ # @param [Hash] solution Path solution for the resource
256
+ # @return [CompositionPage] CompositionPage
257
+ def initialize(version, response, solution)
258
+ super(version, response)
259
+
260
+ # Path Solution
261
+ @solution = solution
262
+ end
263
+
264
+ ##
265
+ # Build an instance of CompositionInstance
266
+ # @param [Hash] payload Payload response from the API
267
+ # @return [CompositionInstance] CompositionInstance
268
+ def get_instance(payload)
269
+ CompositionInstance.new(@version, payload)
270
+ end
271
+
272
+ ##
273
+ # Provide a user friendly representation
274
+ def to_s
275
+ '<Twilio.Video.V1.CompositionPage>'
276
+ end
277
+ end
278
+ class CompositionInstance < InstanceResource
279
+ ##
280
+ # Initialize the CompositionInstance
281
+ # @param [Version] version Version that contains the resource
282
+ # @param [Hash] payload payload that contains response from Twilio
283
+ # @param [String] account_sid The SID of the
284
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Composition
285
+ # resource.
286
+ # @param [String] sid The SID of the Call resource to fetch.
287
+ # @return [CompositionInstance] CompositionInstance
288
+ def initialize(version, payload , sid: nil)
289
+ super(version)
290
+
291
+ # Marshaled Properties
292
+ @properties = {
293
+ 'account_sid' => payload['account_sid'],
294
+ 'status' => payload['status'],
295
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
296
+ 'date_completed' => Twilio.deserialize_iso8601_datetime(payload['date_completed']),
297
+ 'date_deleted' => Twilio.deserialize_iso8601_datetime(payload['date_deleted']),
298
+ 'sid' => payload['sid'],
299
+ 'room_sid' => payload['room_sid'],
300
+ 'audio_sources' => payload['audio_sources'],
301
+ 'audio_sources_excluded' => payload['audio_sources_excluded'],
302
+ 'video_layout' => payload['video_layout'],
303
+ 'resolution' => payload['resolution'],
304
+ 'trim' => payload['trim'],
305
+ 'format' => payload['format'],
306
+ 'bitrate' => payload['bitrate'] == nil ? payload['bitrate'] : payload['bitrate'].to_i,
307
+ 'size' => payload['size'],
308
+ 'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
309
+ 'media_external_location' => payload['media_external_location'],
310
+ 'status_callback' => payload['status_callback'],
311
+ 'status_callback_method' => payload['status_callback_method'],
312
+ 'url' => payload['url'],
313
+ 'links' => payload['links'],
314
+ }
315
+
316
+ # Context
317
+ @instance_context = nil
318
+ @params = { 'sid' => sid || @properties['sid'] , }
319
+ end
320
+
321
+ ##
322
+ # Generate an instance context for the instance, the context is capable of
323
+ # performing various actions. All instance actions are proxied to the context
324
+ # @return [CompositionContext] CallContext for this CallInstance
325
+ def context
326
+ unless @instance_context
327
+ @instance_context = CompositionContext.new(@version , @params['sid'])
328
+ end
329
+ @instance_context
330
+ end
331
+
332
+ ##
333
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Composition resource.
334
+ def account_sid
335
+ @properties['account_sid']
336
+ end
337
+
338
+ ##
339
+ # @return [Status]
340
+ def status
341
+ @properties['status']
342
+ end
343
+
344
+ ##
345
+ # @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.
346
+ def date_created
347
+ @properties['date_created']
348
+ end
349
+
350
+ ##
351
+ # @return [Time] The date and time in GMT when the composition's media processing task finished, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
352
+ def date_completed
353
+ @properties['date_completed']
354
+ end
355
+
356
+ ##
357
+ # @return [Time] The date and time in GMT when the composition generated media was deleted, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
358
+ def date_deleted
359
+ @properties['date_deleted']
360
+ end
361
+
362
+ ##
363
+ # @return [String] The unique string that we created to identify the Composition resource.
364
+ def sid
365
+ @properties['sid']
366
+ end
367
+
368
+ ##
369
+ # @return [String] The SID of the Group Room that generated the audio and video tracks used in the composition. All media sources included in a composition must belong to the same Group Room.
370
+ def room_sid
371
+ @properties['room_sid']
372
+ end
373
+
374
+ ##
375
+ # @return [Array<String>] The array of track names to include in the composition. The composition 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`.
376
+ def audio_sources
377
+ @properties['audio_sources']
378
+ end
379
+
380
+ ##
381
+ # @return [Array<String>] The array of track names to exclude from the composition. The composition 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.
382
+ def audio_sources_excluded
383
+ @properties['audio_sources_excluded']
384
+ end
385
+
386
+ ##
387
+ # @return [Hash] An object that describes the video layout of the composition in terms of regions. See [Specifying Video Layouts](https://www.twilio.com/docs/video/api/compositions-resource#specifying-video-layouts) for more info.
388
+ def video_layout
389
+ @properties['video_layout']
390
+ end
391
+
392
+ ##
393
+ # @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`.
394
+ def resolution
395
+ @properties['resolution']
396
+ end
397
+
398
+ ##
399
+ # @return [Boolean] Whether to remove intervals with no media, as specified in the POST request that created the composition. 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.
400
+ def trim
401
+ @properties['trim']
402
+ end
403
+
404
+ ##
405
+ # @return [Format]
406
+ def format
407
+ @properties['format']
408
+ end
409
+
410
+ ##
411
+ # @return [String] The average bit rate of the composition's media.
412
+ def bitrate
413
+ @properties['bitrate']
414
+ end
415
+
416
+ ##
417
+ # @return [String] The size of the composed media file in bytes.
418
+ def size
419
+ @properties['size']
420
+ end
421
+
422
+ ##
423
+ # @return [String] The duration of the composition's media file in seconds.
424
+ def duration
425
+ @properties['duration']
426
+ end
427
+
428
+ ##
429
+ # @return [String] The URL of the media file associated with the composition when stored externally. See [External S3 Compositions](/docs/video/api/external-s3-compositions) for more details.
430
+ def media_external_location
431
+ @properties['media_external_location']
432
+ end
433
+
434
+ ##
435
+ # @return [String] The URL called using the `status_callback_method` to send status information on every composition event.
436
+ def status_callback
437
+ @properties['status_callback']
438
+ end
439
+
440
+ ##
441
+ # @return [String] The HTTP method used to call `status_callback`. Can be: `POST` or `GET`, defaults to `POST`.
442
+ def status_callback_method
443
+ @properties['status_callback_method']
444
+ end
445
+
446
+ ##
447
+ # @return [String] The absolute URL of the resource.
448
+ def url
449
+ @properties['url']
450
+ end
451
+
452
+ ##
453
+ # @return [Hash] The URL of the media file associated with the composition.
454
+ def links
455
+ @properties['links']
456
+ end
457
+
458
+ ##
459
+ # Delete the CompositionInstance
460
+ # @return [Boolean] True if delete succeeds, false otherwise
461
+ def delete
462
+
463
+ context.delete
464
+ end
465
+
466
+ ##
467
+ # Fetch the CompositionInstance
468
+ # @return [CompositionInstance] Fetched CompositionInstance
469
+ def fetch
470
+
471
+ context.fetch
472
+ end
473
+
474
+ ##
475
+ # Provide a user friendly representation
476
+ def to_s
477
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
478
+ "<Twilio.Video.V1.CompositionInstance #{values}>"
479
+ end
480
+
481
+ ##
482
+ # Provide a detailed, user friendly representation
483
+ def inspect
484
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
485
+ "<Twilio.Video.V1.CompositionInstance #{values}>"
486
+ end
487
+ end
308
488
 
309
- class CompositionInstance < InstanceResource
310
- ##
311
- # Initialize the CompositionInstance
312
- # @param [Version] version Version that contains the resource
313
- # @param [Hash] payload payload that contains response from Twilio
314
- # @param [String] sid The SID of the Composition resource to fetch.
315
- # @return [CompositionInstance] CompositionInstance
316
- def initialize(version, payload, sid: nil)
317
- super(version)
318
-
319
- # Marshaled Properties
320
- @properties = {
321
- 'account_sid' => payload['account_sid'],
322
- 'status' => payload['status'],
323
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
324
- 'date_completed' => Twilio.deserialize_iso8601_datetime(payload['date_completed']),
325
- 'date_deleted' => Twilio.deserialize_iso8601_datetime(payload['date_deleted']),
326
- 'sid' => payload['sid'],
327
- 'room_sid' => payload['room_sid'],
328
- 'audio_sources' => payload['audio_sources'],
329
- 'audio_sources_excluded' => payload['audio_sources_excluded'],
330
- 'video_layout' => payload['video_layout'],
331
- 'resolution' => payload['resolution'],
332
- 'trim' => payload['trim'],
333
- 'format' => payload['format'],
334
- 'bitrate' => payload['bitrate'] == nil ? payload['bitrate'] : payload['bitrate'].to_i,
335
- 'size' => payload['size'] == nil ? payload['size'] : payload['size'].to_i,
336
- 'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
337
- 'media_external_location' => payload['media_external_location'],
338
- 'status_callback' => payload['status_callback'],
339
- 'status_callback_method' => payload['status_callback_method'],
340
- 'url' => payload['url'],
341
- 'links' => payload['links'],
342
- }
343
-
344
- # Context
345
- @instance_context = nil
346
- @params = {'sid' => sid || @properties['sid'], }
347
- end
348
-
349
- ##
350
- # Generate an instance context for the instance, the context is capable of
351
- # performing various actions. All instance actions are proxied to the context
352
- # @return [CompositionContext] CompositionContext for this CompositionInstance
353
- def context
354
- unless @instance_context
355
- @instance_context = CompositionContext.new(@version, @params['sid'], )
356
489
  end
357
- @instance_context
358
- end
359
-
360
- ##
361
- # @return [String] The SID of the Account that created the resource
362
- def account_sid
363
- @properties['account_sid']
364
- end
365
-
366
- ##
367
- # @return [composition.Status] The status of the composition
368
- def status
369
- @properties['status']
370
- end
371
-
372
- ##
373
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
374
- def date_created
375
- @properties['date_created']
376
- end
377
-
378
- ##
379
- # @return [Time] Date when the media processing task finished
380
- def date_completed
381
- @properties['date_completed']
382
- end
383
-
384
- ##
385
- # @return [Time] The ISO 8601 date and time in GMT when the composition generated media was deleted
386
- def date_deleted
387
- @properties['date_deleted']
388
- end
389
-
390
- ##
391
- # @return [String] The unique string that identifies the resource
392
- def sid
393
- @properties['sid']
394
- end
395
-
396
- ##
397
- # @return [String] The SID of the Group Room that generated the audio and video tracks used in the composition
398
- def room_sid
399
- @properties['room_sid']
400
- end
401
-
402
- ##
403
- # @return [Array[String]] The array of track names to include in the composition
404
- def audio_sources
405
- @properties['audio_sources']
406
- end
407
-
408
- ##
409
- # @return [Array[String]] The array of track names to exclude from the composition
410
- def audio_sources_excluded
411
- @properties['audio_sources_excluded']
412
- end
413
-
414
- ##
415
- # @return [Hash] An object that describes the video layout of the composition
416
- def video_layout
417
- @properties['video_layout']
418
- end
419
-
420
- ##
421
- # @return [String] The dimensions of the video image in pixels expressed as columns (width) and rows (height)
422
- def resolution
423
- @properties['resolution']
424
- end
425
-
426
- ##
427
- # @return [Boolean] Whether to remove intervals with no media
428
- def trim
429
- @properties['trim']
430
- end
431
-
432
- ##
433
- # @return [composition.Format] The container format of the composition's media files as specified in the POST request that created the Composition resource
434
- def format
435
- @properties['format']
436
- end
437
-
438
- ##
439
- # @return [String] The average bit rate of the composition's media
440
- def bitrate
441
- @properties['bitrate']
442
- end
443
-
444
- ##
445
- # @return [String] The size of the composed media file in bytes
446
- def size
447
- @properties['size']
448
- end
449
-
450
- ##
451
- # @return [String] The duration of the composition's media file in seconds
452
- def duration
453
- @properties['duration']
454
- end
455
-
456
- ##
457
- # @return [String] The URL of the media file associated with the composition when stored externally
458
- def media_external_location
459
- @properties['media_external_location']
460
- end
461
-
462
- ##
463
- # @return [String] The URL called to send status information on every composition event.
464
- def status_callback
465
- @properties['status_callback']
466
- end
467
-
468
- ##
469
- # @return [String] The HTTP method used to call `status_callback`
470
- def status_callback_method
471
- @properties['status_callback_method']
472
- end
473
-
474
- ##
475
- # @return [String] The absolute URL of the resource
476
- def url
477
- @properties['url']
478
- end
479
-
480
- ##
481
- # @return [String] The URL of the media file associated with the composition
482
- def links
483
- @properties['links']
484
- end
485
-
486
- ##
487
- # Fetch the CompositionInstance
488
- # @return [CompositionInstance] Fetched CompositionInstance
489
- def fetch
490
- context.fetch
491
- end
492
-
493
- ##
494
- # Delete the CompositionInstance
495
- # @return [Boolean] true if delete succeeds, false otherwise
496
- def delete
497
- context.delete
498
- end
499
-
500
- ##
501
- # Provide a user friendly representation
502
- def to_s
503
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
504
- "<Twilio.Video.V1.CompositionInstance #{values}>"
505
- end
506
-
507
- ##
508
- # Provide a detailed, user friendly representation
509
- def inspect
510
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
511
- "<Twilio.Video.V1.CompositionInstance #{values}>"
512
- end
513
490
  end
514
- end
515
491
  end
516
- end
517
- end
492
+ end