twilio-ruby 5.77.0 → 7.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (728) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test-and-deploy.yml +11 -1
  3. data/.gitignore +3 -0
  4. data/CHANGES.md +722 -0
  5. data/CONTRIBUTING.md +10 -2
  6. data/Gemfile +3 -0
  7. data/LICENSE +1 -1
  8. data/Makefile +6 -0
  9. data/README.md +15 -9
  10. data/UPGRADE.md +21 -0
  11. data/cluster_spec.rb +77 -0
  12. data/lib/twilio-ruby/base/client_base.rb +124 -0
  13. data/lib/twilio-ruby/framework/request.rb +8 -1
  14. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  15. data/lib/twilio-ruby/http/http_client.rb +13 -5
  16. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  17. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +201 -178
  18. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +133 -0
  19. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +133 -0
  20. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +380 -332
  21. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +380 -332
  22. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +122 -114
  23. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +176 -0
  24. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +219 -192
  25. data/lib/twilio-ruby/rest/accounts/v1.rb +63 -42
  26. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  27. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  28. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  29. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +560 -530
  30. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +624 -605
  31. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +316 -320
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +395 -0
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +395 -0
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +395 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +395 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +395 -0
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +395 -0
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +395 -0
  39. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +435 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +139 -118
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +403 -417
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +294 -342
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +503 -511
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +844 -641
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +844 -641
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +307 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +159 -153
  49. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +233 -240
  50. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +955 -1050
  51. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +668 -756
  52. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +458 -458
  53. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +494 -493
  54. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +433 -407
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +323 -352
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +403 -418
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +539 -554
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +539 -553
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +539 -553
  60. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +850 -903
  61. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +342 -302
  62. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +170 -166
  63. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +345 -350
  64. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +624 -641
  65. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +160 -138
  66. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +160 -138
  67. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +403 -399
  68. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +375 -358
  69. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +345 -338
  70. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +435 -390
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +200 -0
  72. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +384 -380
  73. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +373 -385
  74. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +369 -372
  75. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +512 -513
  76. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +422 -408
  77. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +342 -306
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +384 -368
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +408 -373
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +353 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +353 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +141 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +353 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +127 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +95 -103
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +346 -339
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +346 -338
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +658 -645
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +421 -421
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +408 -374
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +142 -150
  92. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +174 -154
  93. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +369 -350
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +315 -339
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +315 -339
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +315 -339
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +315 -339
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +315 -339
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +315 -339
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +315 -339
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +315 -339
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +382 -416
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +494 -484
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +113 -104
  105. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +175 -161
  106. data/lib/twilio-ruby/rest/api/v2010/account.rb +986 -943
  107. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  108. data/lib/twilio-ruby/rest/api.rb +25 -34
  109. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  110. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +355 -0
  111. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +362 -0
  112. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +303 -0
  113. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +201 -0
  114. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +668 -0
  115. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +229 -0
  116. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +209 -0
  117. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +591 -0
  118. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +264 -0
  119. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +264 -0
  120. data/lib/twilio-ruby/rest/assistants/v1/session.rb +328 -0
  121. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +586 -0
  122. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  123. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  124. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  125. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +302 -279
  126. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +301 -279
  127. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +276 -248
  128. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +249 -235
  129. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +248 -216
  130. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  131. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  132. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  133. data/lib/twilio-ruby/rest/chat/v1/credential.rb +428 -403
  134. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +381 -391
  135. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +431 -440
  136. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +447 -437
  137. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +543 -515
  138. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +405 -367
  139. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  140. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +474 -440
  141. data/lib/twilio-ruby/rest/chat/v1/service.rb +870 -894
  142. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  143. data/lib/twilio-ruby/rest/chat/v2/credential.rb +428 -401
  144. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +376 -370
  145. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +381 -386
  146. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +492 -527
  147. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +519 -533
  148. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +449 -467
  149. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +612 -605
  150. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +405 -369
  151. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +369 -381
  152. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +412 -419
  153. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +516 -491
  154. data/lib/twilio-ruby/rest/chat/v2/service.rb +773 -778
  155. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  156. data/lib/twilio-ruby/rest/chat/v3/channel.rb +291 -267
  157. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  158. data/lib/twilio-ruby/rest/chat.rb +4 -48
  159. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  160. data/lib/twilio-ruby/rest/client.rb +333 -584
  161. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +185 -0
  162. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +202 -188
  163. data/lib/twilio-ruby/rest/content/v1/content.rb +941 -336
  164. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +244 -232
  165. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +258 -246
  166. data/lib/twilio-ruby/rest/content/v1.rb +54 -52
  167. data/lib/twilio-ruby/rest/content/v2/content.rb +316 -0
  168. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +309 -0
  169. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  170. data/lib/twilio-ruby/rest/content.rb +2 -46
  171. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  172. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +481 -444
  173. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +259 -227
  174. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +284 -252
  175. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +337 -344
  176. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +543 -510
  177. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +504 -495
  178. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +434 -403
  179. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +626 -590
  180. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +434 -409
  181. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +305 -304
  182. data/lib/twilio-ruby/rest/conversations/v1/role.rb +393 -356
  183. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +369 -373
  184. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +305 -289
  185. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +251 -235
  186. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +312 -279
  187. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +344 -371
  188. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +550 -550
  189. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +513 -530
  190. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +443 -438
  191. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +638 -626
  192. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +311 -317
  193. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +405 -380
  194. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +453 -455
  195. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +490 -474
  196. data/lib/twilio-ruby/rest/conversations/v1/service.rb +483 -447
  197. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +452 -435
  198. data/lib/twilio-ruby/rest/conversations/v1/user.rb +478 -441
  199. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  200. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  201. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  202. data/lib/twilio-ruby/rest/events/v1/event_type.rb +319 -288
  203. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  204. data/lib/twilio-ruby/rest/events/v1/schema.rb +230 -218
  205. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +117 -100
  206. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +123 -103
  207. data/lib/twilio-ruby/rest/events/v1/sink.rb +443 -408
  208. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +374 -339
  209. data/lib/twilio-ruby/rest/events/v1/subscription.rb +425 -387
  210. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  211. data/lib/twilio-ruby/rest/events.rb +5 -34
  212. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +439 -387
  214. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +372 -330
  215. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +547 -496
  216. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +572 -570
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +321 -306
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +221 -208
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +435 -384
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +350 -303
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +435 -380
  222. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +352 -403
  223. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +209 -190
  224. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +157 -0
  225. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +137 -124
  226. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +188 -166
  227. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +247 -229
  228. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +343 -319
  229. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +404 -398
  230. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +264 -225
  231. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +397 -0
  232. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +446 -0
  233. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +247 -0
  234. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +393 -0
  235. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +386 -0
  236. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +233 -0
  237. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +332 -0
  238. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +256 -0
  239. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +188 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +387 -331
  241. data/lib/twilio-ruby/rest/flex_api/v1.rb +313 -214
  242. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +370 -0
  243. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +145 -127
  244. data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
  245. data/lib/twilio-ruby/rest/flex_api.rb +21 -117
  246. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  247. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +247 -227
  248. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  249. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  250. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  251. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +270 -0
  252. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +223 -0
  253. data/lib/twilio-ruby/rest/iam/v1/key.rb +177 -0
  254. data/lib/twilio-ruby/rest/iam/v1.rb +61 -0
  255. data/lib/twilio-ruby/rest/iam.rb +6 -0
  256. data/lib/twilio-ruby/rest/iam_base.rb +38 -0
  257. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +315 -315
  258. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +353 -0
  259. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +270 -255
  260. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +242 -225
  261. data/lib/twilio-ruby/rest/insights/v1/call.rb +263 -236
  262. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +534 -439
  263. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +484 -467
  264. data/lib/twilio-ruby/rest/insights/v1/conference.rb +498 -502
  265. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  266. data/lib/twilio-ruby/rest/insights/v1/room.rb +491 -489
  267. data/lib/twilio-ruby/rest/insights/v1/setting.rb +249 -205
  268. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  269. data/lib/twilio-ruby/rest/insights.rb +6 -34
  270. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  271. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +447 -0
  272. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +356 -0
  273. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +217 -0
  274. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +197 -0
  275. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +358 -0
  276. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +356 -0
  277. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +517 -0
  278. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +227 -0
  279. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +389 -0
  280. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +262 -0
  281. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +525 -0
  282. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  283. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  284. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  285. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +428 -364
  286. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +381 -359
  287. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +431 -397
  288. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +447 -409
  289. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +543 -488
  290. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +405 -347
  291. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  292. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +474 -418
  293. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +870 -779
  294. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  295. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +428 -364
  296. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +376 -343
  297. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +381 -359
  298. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +492 -451
  299. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +519 -479
  300. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +449 -411
  301. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +612 -555
  302. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +405 -347
  303. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +369 -351
  304. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +404 -384
  305. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +516 -467
  306. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +773 -689
  307. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  308. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  309. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  310. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +246 -239
  311. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  312. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +376 -335
  313. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  314. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  315. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  316. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +309 -0
  317. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +336 -0
  318. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +352 -0
  319. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +157 -0
  320. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +465 -0
  321. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +310 -0
  322. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +199 -0
  323. data/lib/twilio-ruby/rest/marketplace/v1.rb +85 -0
  324. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  325. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  326. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +124 -119
  327. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +361 -346
  328. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +499 -466
  329. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +192 -0
  330. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +285 -0
  331. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +282 -232
  332. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +231 -218
  333. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +161 -144
  334. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +209 -210
  335. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +197 -0
  336. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +356 -335
  337. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +370 -0
  338. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +363 -341
  339. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +363 -336
  340. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +613 -521
  341. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +124 -115
  342. data/lib/twilio-ruby/rest/messaging/v1/service.rb +774 -763
  343. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +793 -713
  344. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +109 -94
  345. data/lib/twilio-ruby/rest/messaging/v1.rb +187 -165
  346. data/lib/twilio-ruby/rest/messaging.rb +10 -53
  347. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  348. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +355 -307
  349. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +348 -300
  350. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +202 -185
  351. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +342 -320
  352. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +374 -335
  353. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +367 -328
  354. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +420 -383
  355. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -85
  356. data/lib/twilio-ruby/rest/microvisor.rb +4 -50
  357. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  358. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +401 -395
  359. data/lib/twilio-ruby/rest/monitor/v1/event.rb +384 -390
  360. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  361. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  362. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  363. data/lib/twilio-ruby/rest/notify/v1/credential.rb +428 -408
  364. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +442 -452
  365. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +316 -362
  366. data/lib/twilio-ruby/rest/notify/v1/service.rb +633 -622
  367. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  368. data/lib/twilio-ruby/rest/notify.rb +3 -34
  369. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  370. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +241 -0
  371. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +111 -94
  372. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +294 -0
  373. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +322 -0
  374. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +256 -0
  375. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +149 -0
  376. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +168 -0
  377. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +273 -0
  378. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +161 -0
  379. data/lib/twilio-ruby/rest/numbers/v1.rb +148 -28
  380. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +344 -0
  381. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +408 -0
  382. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +266 -0
  383. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +277 -0
  384. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +507 -0
  385. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +281 -261
  386. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +329 -298
  387. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +340 -309
  388. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +197 -181
  389. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +613 -607
  390. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +400 -351
  391. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +293 -266
  392. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +342 -307
  393. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +428 -371
  394. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +293 -266
  395. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +178 -181
  396. data/lib/twilio-ruby/rest/numbers/v2.rb +93 -28
  397. data/lib/twilio-ruby/rest/numbers.rb +2 -47
  398. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  399. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +144 -0
  400. data/lib/twilio-ruby/rest/oauth/v1/token.rb +176 -151
  401. data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
  402. data/lib/twilio-ruby/rest/oauth.rb +3 -65
  403. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  404. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +371 -396
  405. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +451 -446
  406. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +617 -625
  407. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  408. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  409. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -309
  410. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +345 -330
  411. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +436 -398
  412. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  413. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +383 -374
  414. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +448 -399
  415. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +439 -407
  416. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +383 -374
  417. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +424 -398
  418. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +442 -404
  419. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +383 -374
  420. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +424 -398
  421. data/lib/twilio-ruby/rest/preview/sync/service.rb +502 -452
  422. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  423. data/lib/twilio-ruby/rest/preview/wireless/command.rb +390 -364
  424. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +455 -398
  425. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +233 -205
  426. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +577 -523
  427. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  428. data/lib/twilio-ruby/rest/preview.rb +11 -79
  429. data/lib/twilio-ruby/rest/preview_base.rb +53 -0
  430. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +300 -275
  431. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +108 -119
  432. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +293 -268
  433. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +108 -119
  434. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +300 -275
  435. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +223 -197
  436. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +122 -135
  437. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  438. data/lib/twilio-ruby/rest/pricing/v2/country.rb +292 -270
  439. data/lib/twilio-ruby/rest/pricing/v2/number.rb +235 -217
  440. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +300 -275
  441. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +241 -220
  442. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +122 -138
  443. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  444. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  445. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  446. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +426 -403
  447. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +411 -418
  448. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +433 -449
  449. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +426 -442
  450. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +529 -506
  451. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +406 -370
  452. data/lib/twilio-ruby/rest/proxy/v1/service.rb +566 -596
  453. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  454. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  455. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  456. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +265 -227
  457. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +265 -223
  458. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +265 -227
  459. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  460. data/lib/twilio-ruby/rest/routes.rb +4 -34
  461. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  462. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  463. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +419 -380
  464. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +209 -208
  465. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +412 -384
  466. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +342 -338
  467. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +362 -383
  468. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +410 -396
  469. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +461 -447
  470. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +224 -234
  471. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  472. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +419 -380
  473. data/lib/twilio-ruby/rest/serverless/v1/service.rb +530 -493
  474. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  475. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  476. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  477. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +209 -199
  478. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +224 -218
  479. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +364 -355
  480. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +429 -394
  481. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +209 -200
  482. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +224 -221
  483. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +364 -361
  484. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +477 -449
  485. data/lib/twilio-ruby/rest/studio/v1/flow.rb +385 -355
  486. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  487. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +209 -200
  488. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +224 -221
  489. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +364 -361
  490. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +470 -442
  491. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +344 -320
  492. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +237 -0
  493. data/lib/twilio-ruby/rest/studio/v2/flow.rb +528 -472
  494. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +124 -99
  495. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  496. data/lib/twilio-ruby/rest/studio.rb +3 -41
  497. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  498. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +396 -382
  499. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +477 -483
  500. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +401 -409
  501. data/lib/twilio-ruby/rest/supersim/v1/network.rb +303 -297
  502. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +342 -332
  503. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +385 -351
  504. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -237
  505. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  506. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  507. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +465 -453
  508. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +361 -361
  509. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +306 -344
  510. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  511. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  512. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  513. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +383 -371
  514. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +464 -423
  515. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +473 -490
  516. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +383 -370
  517. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +479 -445
  518. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +476 -495
  519. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +383 -368
  520. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +479 -444
  521. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +142 -132
  522. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +428 -400
  523. data/lib/twilio-ruby/rest/sync/v1/service.rb +584 -567
  524. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  525. data/lib/twilio-ruby/rest/sync.rb +2 -34
  526. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +414 -395
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +445 -464
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +709 -749
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +659 -661
  531. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +418 -382
  532. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +164 -0
  533. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +362 -369
  534. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +282 -275
  535. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +233 -236
  536. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +240 -258
  537. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +583 -572
  538. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +691 -732
  539. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +394 -388
  540. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +238 -239
  541. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +284 -265
  542. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +218 -193
  543. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +254 -234
  544. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +630 -637
  545. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +362 -375
  546. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +248 -241
  547. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +233 -244
  548. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +532 -510
  549. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +356 -356
  550. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +234 -206
  551. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +244 -234
  552. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +729 -730
  553. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  554. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  555. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  556. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +349 -320
  557. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +349 -317
  558. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +449 -419
  559. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +482 -451
  560. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +229 -191
  561. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +632 -630
  562. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  563. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  564. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  565. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +249 -0
  566. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +357 -0
  567. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +220 -0
  568. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +364 -352
  569. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +348 -323
  570. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +338 -321
  571. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +541 -513
  572. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +392 -346
  573. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +285 -261
  574. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +278 -252
  575. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +406 -359
  576. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +285 -261
  577. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +364 -352
  578. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +348 -323
  579. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +338 -321
  580. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +541 -513
  581. data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
  582. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  583. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  584. data/lib/twilio-ruby/rest/verify/v2/form.rb +196 -183
  585. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +228 -207
  586. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +277 -254
  587. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +194 -192
  588. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +503 -531
  589. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +454 -453
  590. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +252 -283
  591. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +429 -414
  592. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +388 -363
  593. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +410 -388
  594. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +429 -384
  595. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +390 -372
  596. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +224 -205
  597. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +456 -412
  598. data/lib/twilio-ruby/rest/verify/v2/service.rb +816 -780
  599. data/lib/twilio-ruby/rest/verify/v2/template.rb +222 -205
  600. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +375 -387
  601. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +242 -226
  602. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  603. data/lib/twilio-ruby/rest/verify.rb +7 -34
  604. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  605. data/lib/twilio-ruby/rest/video/v1/composition.rb +484 -507
  606. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +534 -647
  607. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +286 -261
  608. data/lib/twilio-ruby/rest/video/v1/recording.rb +431 -426
  609. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +286 -261
  610. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +262 -0
  611. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +334 -0
  612. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +186 -0
  613. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +341 -0
  614. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
  615. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +175 -0
  616. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  617. data/lib/twilio-ruby/rest/video/v1/room.rb +613 -602
  618. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  619. data/lib/twilio-ruby/rest/video.rb +7 -34
  620. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  621. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +161 -176
  622. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +510 -486
  623. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +449 -434
  624. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +400 -352
  625. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +138 -121
  626. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  627. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +376 -397
  628. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +220 -190
  629. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +123 -121
  630. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +386 -339
  631. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +369 -319
  632. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  633. data/lib/twilio-ruby/rest/voice.rb +7 -34
  634. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  635. data/lib/twilio-ruby/rest/wireless/v1/command.rb +415 -406
  636. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +472 -436
  637. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  638. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +240 -243
  639. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +641 -647
  640. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +227 -221
  641. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  642. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  643. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  644. data/lib/twilio-ruby/rest.rb +1 -0
  645. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  646. data/lib/twilio-ruby/twiml/voice_response.rb +97 -18
  647. data/lib/twilio-ruby/version.rb +1 -1
  648. data/sonar-project.properties +1 -1
  649. data/twilio-ruby.gemspec +2 -1
  650. metadata +148 -80
  651. data/conf/cacert.pem +0 -3376
  652. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  653. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  654. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  655. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  656. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  657. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  658. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  659. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  660. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  661. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  662. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  663. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  664. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +0 -348
  665. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  666. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  667. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  668. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  669. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  670. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  671. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  672. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  673. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  674. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  675. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  676. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  677. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  678. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  679. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  680. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  681. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  682. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  683. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  684. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  685. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  686. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +0 -144
  687. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  688. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
  689. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
  690. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
  691. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
  692. data/lib/twilio-ruby/rest/media/v1.rb +0 -76
  693. data/lib/twilio-ruby/rest/media.rb +0 -65
  694. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  695. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  696. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
  697. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
  698. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
  699. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
  700. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  701. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  702. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  703. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  704. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  705. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
  706. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  707. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  708. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  709. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  710. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  711. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  712. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  713. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  714. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  715. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  716. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  717. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  718. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  719. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  720. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  721. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  722. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  723. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  724. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  725. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  726. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  727. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  728. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,612 +1,623 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
- # frozen_string_literal: true
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.
13
+ #
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Video < Domain
12
- class V1 < Version
13
- class RoomList < ListResource
14
- ##
15
- # Initialize the RoomList
16
- # @param [Version] version Version that contains the resource
17
- # @return [RoomList] RoomList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Rooms"
24
- end
25
-
26
- ##
27
- # Create the RoomInstance
28
- # @param [Boolean] enable_turn Deprecated, now always considered to be true.
29
- # @param [room.RoomType] type The type of room. Can be: `go`, `peer-to-peer`,
30
- # `group-small`, or `group`. The default value is `group`.
31
- # @param [String] unique_name An application-defined string that uniquely
32
- # identifies the resource. It can be used as a `room_sid` in place of the
33
- # resource's `sid` in the URL to address the resource, assuming it does not
34
- # contain any {reserved
35
- # characters}[https://tools.ietf.org/html/rfc3986#section-2.2] that would need to
36
- # be URL encoded. This value is unique for `in-progress` rooms. SDK clients can
37
- # use this name to connect to the room. REST API clients can use this name in
38
- # place of the Room SID to interact with the room as long as the room is
39
- # `in-progress`.
40
- # @param [String] status_callback The URL we should call using the
41
- # `status_callback_method` to send status information to your application on every
42
- # room event. See {Status
43
- # Callbacks}[https://www.twilio.com/docs/video/api/status-callbacks] for more
44
- # info.
45
- # @param [String] status_callback_method The HTTP method we should use to call
46
- # `status_callback`. Can be `POST` or `GET`.
47
- # @param [String] max_participants The maximum number of concurrent Participants
48
- # allowed in the room. Peer-to-peer rooms can have up to 10 Participants. Small
49
- # Group rooms can have up to 4 Participants. Group rooms can have up to 50
50
- # Participants.
51
- # @param [Boolean] record_participants_on_connect Whether to start recording when
52
- # Participants connect. ***This feature is not available in `peer-to-peer`
53
- # rooms.***
54
- # @param [Array[room.VideoCodec]] video_codecs An array of the video codecs that
55
- # are supported when publishing a track in the room. Can be: `VP8` and `H264`.
56
- # ***This feature is not available in `peer-to-peer` rooms***
57
- # @param [String] media_region The region for the media server in Group Rooms.
58
- # Can be: one of the {available Media
59
- # Regions}[https://www.twilio.com/docs/video/ip-address-whitelisting#group-rooms-media-servers].
60
- # ***This feature is not available in `peer-to-peer` rooms.***
61
- # @param [Hash] recording_rules A collection of Recording Rules that describe how
62
- # to include or exclude matching tracks for recording
63
- # @param [Boolean] audio_only When set to true, indicates that the participants in
64
- # the room will only publish audio. No video tracks will be allowed. Group rooms
65
- # only.
66
- # @param [String] max_participant_duration The maximum number of seconds a
67
- # Participant can be connected to the room. The maximum possible value is 86400
68
- # seconds (24 hours). The default is 14400 seconds (4 hours).
69
- # @param [String] empty_room_timeout Configures how long (in minutes) a room will
70
- # remain active after last participant leaves. Valid values range from 1 to 60
71
- # minutes (no fractions).
72
- # @param [String] unused_room_timeout Configures how long (in minutes) a room will
73
- # remain active if no one joins. Valid values range from 1 to 60 minutes (no
74
- # fractions).
75
- # @param [Boolean] large_room When set to true, indicated that this is the large
76
- # room.
77
- # @return [RoomInstance] Created RoomInstance
78
- def create(enable_turn: :unset, type: :unset, unique_name: :unset, status_callback: :unset, status_callback_method: :unset, max_participants: :unset, record_participants_on_connect: :unset, video_codecs: :unset, media_region: :unset, recording_rules: :unset, audio_only: :unset, max_participant_duration: :unset, empty_room_timeout: :unset, unused_room_timeout: :unset, large_room: :unset)
79
- data = Twilio::Values.of({
80
- 'EnableTurn' => enable_turn,
81
- 'Type' => type,
82
- 'UniqueName' => unique_name,
83
- 'StatusCallback' => status_callback,
84
- 'StatusCallbackMethod' => status_callback_method,
85
- 'MaxParticipants' => max_participants,
86
- 'RecordParticipantsOnConnect' => record_participants_on_connect,
87
- 'VideoCodecs' => Twilio.serialize_list(video_codecs) { |e| e },
88
- 'MediaRegion' => media_region,
89
- 'RecordingRules' => Twilio.serialize_object(recording_rules),
90
- 'AudioOnly' => audio_only,
91
- 'MaxParticipantDuration' => max_participant_duration,
92
- 'EmptyRoomTimeout' => empty_room_timeout,
93
- 'UnusedRoomTimeout' => unused_room_timeout,
94
- 'LargeRoom' => large_room,
95
- })
96
-
97
- payload = @version.create('POST', @uri, data: data)
98
-
99
- RoomInstance.new(@version, payload, )
100
- end
101
-
102
- ##
103
- # Lists RoomInstance records from the API as a list.
104
- # Unlike stream(), this operation is eager and will load `limit` records into
105
- # memory before returning.
106
- # @param [room.RoomStatus] status Read only the rooms with this status. Can be:
107
- # `in-progress` (default) or `completed`
108
- # @param [String] unique_name Read only rooms with the this `unique_name`.
109
- # @param [Time] date_created_after Read only rooms that started on or after this
110
- # date, given as `YYYY-MM-DD`.
111
- # @param [Time] date_created_before Read only rooms that started before this date,
112
- # given as `YYYY-MM-DD`.
113
- # @param [Integer] limit Upper limit for the number of records to return. stream()
114
- # guarantees to never return more than limit. Default is no limit
115
- # @param [Integer] page_size Number of records to fetch per request, when
116
- # not set will use the default value of 50 records. If no page_size is defined
117
- # but a limit is defined, stream() will attempt to read the limit with the most
118
- # efficient page size, i.e. min(limit, 1000)
119
- # @return [Array] Array of up to limit results
120
- def list(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil)
121
- self.stream(
122
- status: status,
123
- unique_name: unique_name,
124
- date_created_after: date_created_after,
125
- date_created_before: date_created_before,
126
- limit: limit,
127
- page_size: page_size
128
- ).entries
129
- end
130
-
131
- ##
132
- # Streams RoomInstance records from the API as an Enumerable.
133
- # This operation lazily loads records as efficiently as possible until the limit
134
- # is reached.
135
- # @param [room.RoomStatus] status Read only the rooms with this status. Can be:
136
- # `in-progress` (default) or `completed`
137
- # @param [String] unique_name Read only rooms with the this `unique_name`.
138
- # @param [Time] date_created_after Read only rooms that started on or after this
139
- # date, given as `YYYY-MM-DD`.
140
- # @param [Time] date_created_before Read only rooms that started before this date,
141
- # given as `YYYY-MM-DD`.
142
- # @param [Integer] limit Upper limit for the number of records to return. stream()
143
- # guarantees to never return more than limit. Default is no limit.
144
- # @param [Integer] page_size Number of records to fetch per request, when
145
- # not set will use the default value of 50 records. If no page_size is defined
146
- # but a limit is defined, stream() will attempt to read the limit with the most
147
- # efficient page size, i.e. min(limit, 1000)
148
- # @return [Enumerable] Enumerable that will yield up to limit results
149
- def stream(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil)
150
- limits = @version.read_limits(limit, page_size)
151
-
152
- page = self.page(
153
- status: status,
154
- unique_name: unique_name,
155
- date_created_after: date_created_after,
156
- date_created_before: date_created_before,
157
- page_size: limits[:page_size],
158
- )
159
-
160
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
161
- end
162
-
163
- ##
164
- # When passed a block, yields RoomInstance records from the API.
165
- # This operation lazily loads records as efficiently as possible until the limit
166
- # is reached.
167
- def each
168
- limits = @version.read_limits
169
-
170
- page = self.page(page_size: limits[:page_size], )
171
-
172
- @version.stream(page,
17
+ module REST
18
+ class Video < VideoBase
19
+ class V1 < Version
20
+ class RoomList < ListResource
21
+
22
+ ##
23
+ # Initialize the RoomList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [RoomList] RoomList
26
+ def initialize(version)
27
+ super(version)
28
+ # Path Solution
29
+ @solution = { }
30
+ @uri = "/Rooms"
31
+
32
+ end
33
+ ##
34
+ # Create the RoomInstance
35
+ # @param [Boolean] enable_turn Deprecated, now always considered to be true.
36
+ # @param [RoomType] type
37
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used as a `room_sid` in place of the resource's `sid` in the URL to address the resource, assuming it does not contain any [reserved characters](https://tools.ietf.org/html/rfc3986#section-2.2) that would need to be URL encoded. This value is unique for `in-progress` rooms. SDK clients can use this name to connect to the room. REST API clients can use this name in place of the Room SID to interact with the room as long as the room is `in-progress`.
38
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application on every room event. See [Status Callbacks](https://www.twilio.com/docs/video/api/status-callbacks) for more info.
39
+ # @param [String] status_callback_method The HTTP method we should use to call `status_callback`. Can be `POST` or `GET`.
40
+ # @param [String] max_participants The maximum number of concurrent Participants allowed in the room. Peer-to-peer rooms can have up to 10 Participants. Small Group rooms can have up to 4 Participants. Group rooms can have up to 50 Participants.
41
+ # @param [Boolean] record_participants_on_connect Whether to start recording when Participants connect. ***This feature is not available in `peer-to-peer` rooms.***
42
+ # @param [Array[VideoCodec]] video_codecs An array of the video codecs that are supported when publishing a track in the room. Can be: `VP8` and `H264`. ***This feature is not available in `peer-to-peer` rooms***
43
+ # @param [String] media_region The region for the media server in Group Rooms. Can be: one of the [available Media Regions](https://www.twilio.com/docs/video/ip-addresses#group-rooms-media-servers). ***This feature is not available in `peer-to-peer` rooms.***
44
+ # @param [Object] recording_rules A collection of Recording Rules that describe how to include or exclude matching tracks for recording
45
+ # @param [Boolean] audio_only When set to true, indicates that the participants in the room will only publish audio. No video tracks will be allowed. Group rooms only.
46
+ # @param [String] max_participant_duration The maximum number of seconds a Participant can be connected to the room. The maximum possible value is 86400 seconds (24 hours). The default is 14400 seconds (4 hours).
47
+ # @param [String] empty_room_timeout Configures how long (in minutes) a room will remain active after last participant leaves. Valid values range from 1 to 60 minutes (no fractions).
48
+ # @param [String] unused_room_timeout Configures how long (in minutes) a room will remain active if no one joins. Valid values range from 1 to 60 minutes (no fractions).
49
+ # @param [Boolean] large_room When set to true, indicated that this is the large room.
50
+ # @return [RoomInstance] Created RoomInstance
51
+ def create(
52
+ enable_turn: :unset,
53
+ type: :unset,
54
+ unique_name: :unset,
55
+ status_callback: :unset,
56
+ status_callback_method: :unset,
57
+ max_participants: :unset,
58
+ record_participants_on_connect: :unset,
59
+ video_codecs: :unset,
60
+ media_region: :unset,
61
+ recording_rules: :unset,
62
+ audio_only: :unset,
63
+ max_participant_duration: :unset,
64
+ empty_room_timeout: :unset,
65
+ unused_room_timeout: :unset,
66
+ large_room: :unset
67
+ )
68
+
69
+ data = Twilio::Values.of({
70
+ 'EnableTurn' => enable_turn,
71
+ 'Type' => type,
72
+ 'UniqueName' => unique_name,
73
+ 'StatusCallback' => status_callback,
74
+ 'StatusCallbackMethod' => status_callback_method,
75
+ 'MaxParticipants' => max_participants,
76
+ 'RecordParticipantsOnConnect' => record_participants_on_connect,
77
+ 'VideoCodecs' => Twilio.serialize_list(video_codecs) { |e| e },
78
+ 'MediaRegion' => media_region,
79
+ 'RecordingRules' => Twilio.serialize_object(recording_rules),
80
+ 'AudioOnly' => audio_only,
81
+ 'MaxParticipantDuration' => max_participant_duration,
82
+ 'EmptyRoomTimeout' => empty_room_timeout,
83
+ 'UnusedRoomTimeout' => unused_room_timeout,
84
+ 'LargeRoom' => large_room,
85
+ })
86
+
87
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
88
+
89
+ payload = @version.create('POST', @uri, data: data, headers: headers)
90
+ RoomInstance.new(
91
+ @version,
92
+ payload,
93
+ )
94
+ end
95
+
96
+
97
+ ##
98
+ # Lists RoomInstance records from the API as a list.
99
+ # Unlike stream(), this operation is eager and will load `limit` records into
100
+ # memory before returning.
101
+ # @param [RoomStatus] status Read only the rooms with this status. Can be: `in-progress` (default) or `completed`
102
+ # @param [String] unique_name Read only rooms with the this `unique_name`.
103
+ # @param [Time] date_created_after Read only rooms that started on or after this date, given as `YYYY-MM-DD`.
104
+ # @param [Time] date_created_before Read only rooms that started before this date, given as `YYYY-MM-DD`.
105
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
106
+ # guarantees to never return more than limit. Default is no limit
107
+ # @param [Integer] page_size Number of records to fetch per request, when
108
+ # not set will use the default value of 50 records. If no page_size is defined
109
+ # but a limit is defined, stream() will attempt to read the limit with the most
110
+ # efficient page size, i.e. min(limit, 1000)
111
+ # @return [Array] Array of up to limit results
112
+ def list(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil)
113
+ self.stream(
114
+ status: status,
115
+ unique_name: unique_name,
116
+ date_created_after: date_created_after,
117
+ date_created_before: date_created_before,
118
+ limit: limit,
119
+ page_size: page_size
120
+ ).entries
121
+ end
122
+
123
+ ##
124
+ # Streams Instance records from the API as an Enumerable.
125
+ # This operation lazily loads records as efficiently as possible until the limit
126
+ # is reached.
127
+ # @param [RoomStatus] status Read only the rooms with this status. Can be: `in-progress` (default) or `completed`
128
+ # @param [String] unique_name Read only rooms with the this `unique_name`.
129
+ # @param [Time] date_created_after Read only rooms that started on or after this date, given as `YYYY-MM-DD`.
130
+ # @param [Time] date_created_before Read only rooms that started before this date, given as `YYYY-MM-DD`.
131
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
132
+ # guarantees to never return more than limit. Default is no limit
133
+ # @param [Integer] page_size Number of records to fetch per request, when
134
+ # not set will use the default value of 50 records. If no page_size is defined
135
+ # but a limit is defined, stream() will attempt to read the limit with the most
136
+ # efficient page size, i.e. min(limit, 1000)
137
+ # @return [Enumerable] Enumerable that will yield up to limit results
138
+ def stream(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, limit: nil, page_size: nil)
139
+ limits = @version.read_limits(limit, page_size)
140
+
141
+ page = self.page(
142
+ status: status,
143
+ unique_name: unique_name,
144
+ date_created_after: date_created_after,
145
+ date_created_before: date_created_before,
146
+ page_size: limits[:page_size], )
147
+
148
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
149
+ end
150
+
151
+ ##
152
+ # When passed a block, yields RoomInstance records from the API.
153
+ # This operation lazily loads records as efficiently as possible until the limit
154
+ # is reached.
155
+ def each
156
+ limits = @version.read_limits
157
+
158
+ page = self.page(page_size: limits[:page_size], )
159
+
160
+ @version.stream(page,
173
161
  limit: limits[:limit],
174
162
  page_limit: limits[:page_limit]).each {|x| yield x}
175
- end
176
-
177
- ##
178
- # Retrieve a single page of RoomInstance records from the API.
179
- # Request is executed immediately.
180
- # @param [room.RoomStatus] status Read only the rooms with this status. Can be:
181
- # `in-progress` (default) or `completed`
182
- # @param [String] unique_name Read only rooms with the this `unique_name`.
183
- # @param [Time] date_created_after Read only rooms that started on or after this
184
- # date, given as `YYYY-MM-DD`.
185
- # @param [Time] date_created_before Read only rooms that started before this date,
186
- # given as `YYYY-MM-DD`.
187
- # @param [String] page_token PageToken provided by the API
188
- # @param [Integer] page_number Page Number, this value is simply for client state
189
- # @param [Integer] page_size Number of records to return, defaults to 50
190
- # @return [Page] Page of RoomInstance
191
- def page(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
192
- params = Twilio::Values.of({
193
- 'Status' => status,
194
- 'UniqueName' => unique_name,
195
- 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
196
- 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
197
- 'PageToken' => page_token,
198
- 'Page' => page_number,
199
- 'PageSize' => page_size,
200
- })
201
-
202
- response = @version.page('GET', @uri, params: params)
203
-
204
- RoomPage.new(@version, response, @solution)
205
- end
206
-
207
- ##
208
- # Retrieve a single page of RoomInstance records from the API.
209
- # Request is executed immediately.
210
- # @param [String] target_url API-generated URL for the requested results page
211
- # @return [Page] Page of RoomInstance
212
- def get_page(target_url)
213
- response = @version.domain.request(
214
- 'GET',
215
- target_url
216
- )
217
- RoomPage.new(@version, response, @solution)
218
- end
219
-
220
- ##
221
- # Provide a user friendly representation
222
- def to_s
223
- '#<Twilio.Video.V1.RoomList>'
224
- end
225
- end
226
-
227
- class RoomPage < Page
228
- ##
229
- # Initialize the RoomPage
230
- # @param [Version] version Version that contains the resource
231
- # @param [Response] response Response from the API
232
- # @param [Hash] solution Path solution for the resource
233
- # @return [RoomPage] RoomPage
234
- def initialize(version, response, solution)
235
- super(version, response)
236
-
237
- # Path Solution
238
- @solution = solution
239
- end
240
-
241
- ##
242
- # Build an instance of RoomInstance
243
- # @param [Hash] payload Payload response from the API
244
- # @return [RoomInstance] RoomInstance
245
- def get_instance(payload)
246
- RoomInstance.new(@version, payload, )
247
- end
248
-
249
- ##
250
- # Provide a user friendly representation
251
- def to_s
252
- '<Twilio.Video.V1.RoomPage>'
253
- end
254
- end
255
-
256
- class RoomContext < InstanceContext
257
- ##
258
- # Initialize the RoomContext
259
- # @param [Version] version Version that contains the resource
260
- # @param [String] sid The SID of the Room resource to fetch.
261
- # @return [RoomContext] RoomContext
262
- def initialize(version, sid)
263
- super(version)
264
-
265
- # Path Solution
266
- @solution = {sid: sid, }
267
- @uri = "/Rooms/#{@solution[:sid]}"
268
-
269
- # Dependents
270
- @recordings = nil
271
- @participants = nil
272
- @recording_rules = nil
273
- end
274
-
275
- ##
276
- # Fetch the RoomInstance
277
- # @return [RoomInstance] Fetched RoomInstance
278
- def fetch
279
- payload = @version.fetch('GET', @uri)
280
-
281
- RoomInstance.new(@version, payload, sid: @solution[:sid], )
282
- end
283
-
284
- ##
285
- # Update the RoomInstance
286
- # @param [room.RoomStatus] status The new status of the resource. Set to
287
- # `completed` to end the room.
288
- # @return [RoomInstance] Updated RoomInstance
289
- def update(status: nil)
290
- data = Twilio::Values.of({'Status' => status, })
291
-
292
- payload = @version.update('POST', @uri, data: data)
293
-
294
- RoomInstance.new(@version, payload, sid: @solution[:sid], )
295
- end
296
-
297
- ##
298
- # Access the recordings
299
- # @return [RoomRecordingList]
300
- # @return [RoomRecordingContext] if sid was passed.
301
- def recordings(sid=:unset)
302
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
303
-
304
- if sid != :unset
305
- return RoomRecordingContext.new(@version, @solution[:sid], sid, )
306
- end
307
-
308
- unless @recordings
309
- @recordings = RoomRecordingList.new(@version, room_sid: @solution[:sid], )
310
- end
311
-
312
- @recordings
313
- end
314
-
315
- ##
316
- # Access the participants
317
- # @return [ParticipantList]
318
- # @return [ParticipantContext] if sid was passed.
319
- def participants(sid=:unset)
320
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
321
-
322
- if sid != :unset
323
- return ParticipantContext.new(@version, @solution[:sid], sid, )
324
- end
325
-
326
- unless @participants
327
- @participants = ParticipantList.new(@version, room_sid: @solution[:sid], )
328
- end
329
-
330
- @participants
331
- end
332
-
333
- ##
334
- # Access the recording_rules
335
- # @return [RecordingRulesList]
336
- # @return [RecordingRulesContext]
337
- def recording_rules
338
- unless @recording_rules
339
- @recording_rules = RecordingRulesList.new(@version, room_sid: @solution[:sid], )
340
- end
341
-
342
- @recording_rules
343
- end
344
-
345
- ##
346
- # Provide a user friendly representation
347
- def to_s
348
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
349
- "#<Twilio.Video.V1.RoomContext #{context}>"
350
- end
351
-
352
- ##
353
- # Provide a detailed, user friendly representation
354
- def inspect
355
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
356
- "#<Twilio.Video.V1.RoomContext #{context}>"
357
- end
358
- end
163
+ end
164
+
165
+ ##
166
+ # Retrieve a single page of RoomInstance records from the API.
167
+ # Request is executed immediately.
168
+ # @param [RoomStatus] status Read only the rooms with this status. Can be: `in-progress` (default) or `completed`
169
+ # @param [String] unique_name Read only rooms with the this `unique_name`.
170
+ # @param [Time] date_created_after Read only rooms that started on or after this date, given as `YYYY-MM-DD`.
171
+ # @param [Time] date_created_before Read only rooms that started before this date, given as `YYYY-MM-DD`.
172
+ # @param [String] page_token PageToken provided by the API
173
+ # @param [Integer] page_number Page Number, this value is simply for client state
174
+ # @param [Integer] page_size Number of records to return, defaults to 50
175
+ # @return [Page] Page of RoomInstance
176
+ def page(status: :unset, unique_name: :unset, date_created_after: :unset, date_created_before: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
177
+ params = Twilio::Values.of({
178
+ 'Status' => status,
179
+ 'UniqueName' => unique_name,
180
+ 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
181
+ 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
182
+ 'PageToken' => page_token,
183
+ 'Page' => page_number,
184
+ 'PageSize' => page_size,
185
+ })
186
+
187
+ response = @version.page('GET', @uri, params: params)
188
+
189
+ RoomPage.new(@version, response, @solution)
190
+ end
191
+
192
+ ##
193
+ # Retrieve a single page of RoomInstance records from the API.
194
+ # Request is executed immediately.
195
+ # @param [String] target_url API-generated URL for the requested results page
196
+ # @return [Page] Page of RoomInstance
197
+ def get_page(target_url)
198
+ response = @version.domain.request(
199
+ 'GET',
200
+ target_url
201
+ )
202
+ RoomPage.new(@version, response, @solution)
203
+ end
204
+
205
+
206
+
207
+ # Provide a user friendly representation
208
+ def to_s
209
+ '#<Twilio.Video.V1.RoomList>'
210
+ end
211
+ end
212
+
213
+
214
+ class RoomContext < InstanceContext
215
+ ##
216
+ # Initialize the RoomContext
217
+ # @param [Version] version Version that contains the resource
218
+ # @param [String] sid The SID of the Room resource to update.
219
+ # @return [RoomContext] RoomContext
220
+ def initialize(version, sid)
221
+ super(version)
222
+
223
+ # Path Solution
224
+ @solution = { sid: sid, }
225
+ @uri = "/Rooms/#{@solution[:sid]}"
226
+
227
+ # Dependents
228
+ @recording_rules = nil
229
+ @participants = nil
230
+ @recordings = nil
231
+ end
232
+ ##
233
+ # Fetch the RoomInstance
234
+ # @return [RoomInstance] Fetched RoomInstance
235
+ def fetch
236
+
237
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
238
+
239
+ payload = @version.fetch('GET', @uri, headers: headers)
240
+ RoomInstance.new(
241
+ @version,
242
+ payload,
243
+ sid: @solution[:sid],
244
+ )
245
+ end
246
+
247
+ ##
248
+ # Update the RoomInstance
249
+ # @param [RoomStatus] status
250
+ # @return [RoomInstance] Updated RoomInstance
251
+ def update(
252
+ status: nil
253
+ )
254
+
255
+ data = Twilio::Values.of({
256
+ 'Status' => status,
257
+ })
258
+
259
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
260
+
261
+ payload = @version.update('POST', @uri, data: data, headers: headers)
262
+ RoomInstance.new(
263
+ @version,
264
+ payload,
265
+ sid: @solution[:sid],
266
+ )
267
+ end
268
+
269
+ ##
270
+ # Access the recording_rules
271
+ # @return [RecordingRulesList]
272
+ # @return [RecordingRulesContext]
273
+ def recording_rules
274
+ unless @recording_rules
275
+ @recording_rules = RecordingRulesList.new(
276
+ @version, room_sid: @solution[:sid], )
277
+ end
278
+ @recording_rules
279
+ end
280
+ ##
281
+ # Access the participants
282
+ # @return [ParticipantList]
283
+ # @return [ParticipantContext] if sid was passed.
284
+ def participants(sid=:unset)
285
+
286
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
287
+
288
+ if sid != :unset
289
+ return ParticipantContext.new(@version, @solution[:sid],sid )
290
+ end
291
+
292
+ unless @participants
293
+ @participants = ParticipantList.new(
294
+ @version, room_sid: @solution[:sid], )
295
+ end
296
+
297
+ @participants
298
+ end
299
+ ##
300
+ # Access the recordings
301
+ # @return [RoomRecordingList]
302
+ # @return [RoomRecordingContext] if sid was passed.
303
+ def recordings(sid=:unset)
304
+
305
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
306
+
307
+ if sid != :unset
308
+ return RoomRecordingContext.new(@version, @solution[:sid],sid )
309
+ end
310
+
311
+ unless @recordings
312
+ @recordings = RoomRecordingList.new(
313
+ @version, room_sid: @solution[:sid], )
314
+ end
315
+
316
+ @recordings
317
+ end
318
+
319
+ ##
320
+ # Provide a user friendly representation
321
+ def to_s
322
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
323
+ "#<Twilio.Video.V1.RoomContext #{context}>"
324
+ end
325
+
326
+ ##
327
+ # Provide a detailed, user friendly representation
328
+ def inspect
329
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
330
+ "#<Twilio.Video.V1.RoomContext #{context}>"
331
+ end
332
+ end
333
+
334
+ class RoomPage < Page
335
+ ##
336
+ # Initialize the RoomPage
337
+ # @param [Version] version Version that contains the resource
338
+ # @param [Response] response Response from the API
339
+ # @param [Hash] solution Path solution for the resource
340
+ # @return [RoomPage] RoomPage
341
+ def initialize(version, response, solution)
342
+ super(version, response)
343
+
344
+ # Path Solution
345
+ @solution = solution
346
+ end
347
+
348
+ ##
349
+ # Build an instance of RoomInstance
350
+ # @param [Hash] payload Payload response from the API
351
+ # @return [RoomInstance] RoomInstance
352
+ def get_instance(payload)
353
+ RoomInstance.new(@version, payload)
354
+ end
355
+
356
+ ##
357
+ # Provide a user friendly representation
358
+ def to_s
359
+ '<Twilio.Video.V1.RoomPage>'
360
+ end
361
+ end
362
+ class RoomInstance < InstanceResource
363
+ ##
364
+ # Initialize the RoomInstance
365
+ # @param [Version] version Version that contains the resource
366
+ # @param [Hash] payload payload that contains response from Twilio
367
+ # @param [String] account_sid The SID of the
368
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Room
369
+ # resource.
370
+ # @param [String] sid The SID of the Call resource to fetch.
371
+ # @return [RoomInstance] RoomInstance
372
+ def initialize(version, payload , sid: nil)
373
+ super(version)
374
+
375
+ # Marshaled Properties
376
+ @properties = {
377
+ 'sid' => payload['sid'],
378
+ 'status' => payload['status'],
379
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
380
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
381
+ 'account_sid' => payload['account_sid'],
382
+ 'enable_turn' => payload['enable_turn'],
383
+ 'unique_name' => payload['unique_name'],
384
+ 'status_callback' => payload['status_callback'],
385
+ 'status_callback_method' => payload['status_callback_method'],
386
+ 'end_time' => Twilio.deserialize_iso8601_datetime(payload['end_time']),
387
+ 'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
388
+ 'type' => payload['type'],
389
+ 'max_participants' => payload['max_participants'] == nil ? payload['max_participants'] : payload['max_participants'].to_i,
390
+ 'max_participant_duration' => payload['max_participant_duration'] == nil ? payload['max_participant_duration'] : payload['max_participant_duration'].to_i,
391
+ 'max_concurrent_published_tracks' => payload['max_concurrent_published_tracks'] == nil ? payload['max_concurrent_published_tracks'] : payload['max_concurrent_published_tracks'].to_i,
392
+ 'record_participants_on_connect' => payload['record_participants_on_connect'],
393
+ 'video_codecs' => payload['video_codecs'],
394
+ 'media_region' => payload['media_region'],
395
+ 'audio_only' => payload['audio_only'],
396
+ 'empty_room_timeout' => payload['empty_room_timeout'] == nil ? payload['empty_room_timeout'] : payload['empty_room_timeout'].to_i,
397
+ 'unused_room_timeout' => payload['unused_room_timeout'] == nil ? payload['unused_room_timeout'] : payload['unused_room_timeout'].to_i,
398
+ 'large_room' => payload['large_room'],
399
+ 'url' => payload['url'],
400
+ 'links' => payload['links'],
401
+ }
402
+
403
+ # Context
404
+ @instance_context = nil
405
+ @params = { 'sid' => sid || @properties['sid'] , }
406
+ end
407
+
408
+ ##
409
+ # Generate an instance context for the instance, the context is capable of
410
+ # performing various actions. All instance actions are proxied to the context
411
+ # @return [RoomContext] CallContext for this CallInstance
412
+ def context
413
+ unless @instance_context
414
+ @instance_context = RoomContext.new(@version , @params['sid'])
415
+ end
416
+ @instance_context
417
+ end
418
+
419
+ ##
420
+ # @return [String] The unique string that we created to identify the Room resource.
421
+ def sid
422
+ @properties['sid']
423
+ end
424
+
425
+ ##
426
+ # @return [RoomStatus]
427
+ def status
428
+ @properties['status']
429
+ end
430
+
431
+ ##
432
+ # @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.
433
+ def date_created
434
+ @properties['date_created']
435
+ end
436
+
437
+ ##
438
+ # @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.
439
+ def date_updated
440
+ @properties['date_updated']
441
+ end
442
+
443
+ ##
444
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Room resource.
445
+ def account_sid
446
+ @properties['account_sid']
447
+ end
448
+
449
+ ##
450
+ # @return [Boolean] Deprecated, now always considered to be true.
451
+ def enable_turn
452
+ @properties['enable_turn']
453
+ end
454
+
455
+ ##
456
+ # @return [String] An application-defined string that uniquely identifies the resource. It can be used as a `room_sid` in place of the resource's `sid` in the URL to address the resource, assuming it does not contain any [reserved characters](https://tools.ietf.org/html/rfc3986#section-2.2) that would need to be URL encoded. This value is unique for `in-progress` rooms. SDK clients can use this name to connect to the room. REST API clients can use this name in place of the Room SID to interact with the room as long as the room is `in-progress`.
457
+ def unique_name
458
+ @properties['unique_name']
459
+ end
460
+
461
+ ##
462
+ # @return [String] The URL we call using the `status_callback_method` to send status information to your application on every room event. See [Status Callbacks](https://www.twilio.com/docs/video/api/status-callbacks) for more info.
463
+ def status_callback
464
+ @properties['status_callback']
465
+ end
466
+
467
+ ##
468
+ # @return [String] The HTTP method we use to call `status_callback`. Can be `POST` or `GET` and defaults to `POST`.
469
+ def status_callback_method
470
+ @properties['status_callback_method']
471
+ end
472
+
473
+ ##
474
+ # @return [Time] The UTC end time of the room in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601#UTC) format.
475
+ def end_time
476
+ @properties['end_time']
477
+ end
478
+
479
+ ##
480
+ # @return [String] The duration of the room in seconds.
481
+ def duration
482
+ @properties['duration']
483
+ end
484
+
485
+ ##
486
+ # @return [RoomType]
487
+ def type
488
+ @properties['type']
489
+ end
490
+
491
+ ##
492
+ # @return [String] The maximum number of concurrent Participants allowed in the room.
493
+ def max_participants
494
+ @properties['max_participants']
495
+ end
496
+
497
+ ##
498
+ # @return [String] The maximum number of seconds a Participant can be connected to the room. The maximum possible value is 86400 seconds (24 hours). The default is 14400 seconds (4 hours).
499
+ def max_participant_duration
500
+ @properties['max_participant_duration']
501
+ end
502
+
503
+ ##
504
+ # @return [String] The maximum number of published audio, video, and data tracks all participants combined are allowed to publish in the room at the same time. Check [Programmable Video Limits](https://www.twilio.com/docs/video/programmable-video-limits) for more details. If it is set to 0 it means unconstrained.
505
+ def max_concurrent_published_tracks
506
+ @properties['max_concurrent_published_tracks']
507
+ end
508
+
509
+ ##
510
+ # @return [Boolean] Whether to start recording when Participants connect. ***This feature is not available in `peer-to-peer` rooms.***
511
+ def record_participants_on_connect
512
+ @properties['record_participants_on_connect']
513
+ end
514
+
515
+ ##
516
+ # @return [Array<VideoCodec>] An array of the video codecs that are supported when publishing a track in the room. Can be: `VP8` and `H264`. ***This feature is not available in `peer-to-peer` rooms***
517
+ def video_codecs
518
+ @properties['video_codecs']
519
+ end
520
+
521
+ ##
522
+ # @return [String] The region for the media server in Group Rooms. Can be: one of the [available Media Regions](https://www.twilio.com/docs/video/ip-addresses#media-servers). ***This feature is not available in `peer-to-peer` rooms.***
523
+ def media_region
524
+ @properties['media_region']
525
+ end
526
+
527
+ ##
528
+ # @return [Boolean] When set to true, indicates that the participants in the room will only publish audio. No video tracks will be allowed. Group rooms only.
529
+ def audio_only
530
+ @properties['audio_only']
531
+ end
532
+
533
+ ##
534
+ # @return [String] Specifies how long (in minutes) a room will remain active after last participant leaves. Can be configured when creating a room via REST API. For Ad-Hoc rooms this value cannot be changed.
535
+ def empty_room_timeout
536
+ @properties['empty_room_timeout']
537
+ end
538
+
539
+ ##
540
+ # @return [String] Specifies how long (in minutes) a room will remain active if no one joins. Can be configured when creating a room via REST API. For Ad-Hoc rooms this value cannot be changed.
541
+ def unused_room_timeout
542
+ @properties['unused_room_timeout']
543
+ end
544
+
545
+ ##
546
+ # @return [Boolean] Indicates if this is a large room.
547
+ def large_room
548
+ @properties['large_room']
549
+ end
550
+
551
+ ##
552
+ # @return [String] The absolute URL of the resource.
553
+ def url
554
+ @properties['url']
555
+ end
556
+
557
+ ##
558
+ # @return [Hash] The URLs of related resources.
559
+ def links
560
+ @properties['links']
561
+ end
562
+
563
+ ##
564
+ # Fetch the RoomInstance
565
+ # @return [RoomInstance] Fetched RoomInstance
566
+ def fetch
567
+
568
+ context.fetch
569
+ end
570
+
571
+ ##
572
+ # Update the RoomInstance
573
+ # @param [RoomStatus] status
574
+ # @return [RoomInstance] Updated RoomInstance
575
+ def update(
576
+ status: nil
577
+ )
578
+
579
+ context.update(
580
+ status: status,
581
+ )
582
+ end
583
+
584
+ ##
585
+ # Access the recording_rules
586
+ # @return [recording_rules] recording_rules
587
+ def recording_rules
588
+ context.recording_rules
589
+ end
590
+
591
+ ##
592
+ # Access the participants
593
+ # @return [participants] participants
594
+ def participants
595
+ context.participants
596
+ end
597
+
598
+ ##
599
+ # Access the recordings
600
+ # @return [recordings] recordings
601
+ def recordings
602
+ context.recordings
603
+ end
604
+
605
+ ##
606
+ # Provide a user friendly representation
607
+ def to_s
608
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
609
+ "<Twilio.Video.V1.RoomInstance #{values}>"
610
+ end
611
+
612
+ ##
613
+ # Provide a detailed, user friendly representation
614
+ def inspect
615
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
616
+ "<Twilio.Video.V1.RoomInstance #{values}>"
617
+ end
618
+ end
359
619
 
360
- class RoomInstance < InstanceResource
361
- ##
362
- # Initialize the RoomInstance
363
- # @param [Version] version Version that contains the resource
364
- # @param [Hash] payload payload that contains response from Twilio
365
- # @param [String] sid The SID of the Room resource to fetch.
366
- # @return [RoomInstance] RoomInstance
367
- def initialize(version, payload, sid: nil)
368
- super(version)
369
-
370
- # Marshaled Properties
371
- @properties = {
372
- 'sid' => payload['sid'],
373
- 'status' => payload['status'],
374
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
375
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
376
- 'account_sid' => payload['account_sid'],
377
- 'enable_turn' => payload['enable_turn'],
378
- 'unique_name' => payload['unique_name'],
379
- 'status_callback' => payload['status_callback'],
380
- 'status_callback_method' => payload['status_callback_method'],
381
- 'end_time' => Twilio.deserialize_iso8601_datetime(payload['end_time']),
382
- 'duration' => payload['duration'] == nil ? payload['duration'] : payload['duration'].to_i,
383
- 'type' => payload['type'],
384
- 'max_participants' => payload['max_participants'] == nil ? payload['max_participants'] : payload['max_participants'].to_i,
385
- 'max_participant_duration' => payload['max_participant_duration'] == nil ? payload['max_participant_duration'] : payload['max_participant_duration'].to_i,
386
- 'max_concurrent_published_tracks' => payload['max_concurrent_published_tracks'] == nil ? payload['max_concurrent_published_tracks'] : payload['max_concurrent_published_tracks'].to_i,
387
- 'record_participants_on_connect' => payload['record_participants_on_connect'],
388
- 'video_codecs' => payload['video_codecs'],
389
- 'media_region' => payload['media_region'],
390
- 'audio_only' => payload['audio_only'],
391
- 'empty_room_timeout' => payload['empty_room_timeout'] == nil ? payload['empty_room_timeout'] : payload['empty_room_timeout'].to_i,
392
- 'unused_room_timeout' => payload['unused_room_timeout'] == nil ? payload['unused_room_timeout'] : payload['unused_room_timeout'].to_i,
393
- 'large_room' => payload['large_room'],
394
- 'url' => payload['url'],
395
- 'links' => payload['links'],
396
- }
397
-
398
- # Context
399
- @instance_context = nil
400
- @params = {'sid' => sid || @properties['sid'], }
401
- end
402
-
403
- ##
404
- # Generate an instance context for the instance, the context is capable of
405
- # performing various actions. All instance actions are proxied to the context
406
- # @return [RoomContext] RoomContext for this RoomInstance
407
- def context
408
- unless @instance_context
409
- @instance_context = RoomContext.new(@version, @params['sid'], )
410
620
  end
411
- @instance_context
412
- end
413
-
414
- ##
415
- # @return [String] The unique string that identifies the resource
416
- def sid
417
- @properties['sid']
418
- end
419
-
420
- ##
421
- # @return [room.RoomStatus] The status of the room
422
- def status
423
- @properties['status']
424
- end
425
-
426
- ##
427
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
428
- def date_created
429
- @properties['date_created']
430
- end
431
-
432
- ##
433
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
434
- def date_updated
435
- @properties['date_updated']
436
- end
437
-
438
- ##
439
- # @return [String] The SID of the Account that created the resource
440
- def account_sid
441
- @properties['account_sid']
442
- end
443
-
444
- ##
445
- # @return [Boolean] Enable Twilio's Network Traversal TURN service
446
- def enable_turn
447
- @properties['enable_turn']
448
- end
449
-
450
- ##
451
- # @return [String] An application-defined string that uniquely identifies the resource
452
- def unique_name
453
- @properties['unique_name']
454
- end
455
-
456
- ##
457
- # @return [String] The URL to send status information to your application
458
- def status_callback
459
- @properties['status_callback']
460
- end
461
-
462
- ##
463
- # @return [String] The HTTP method we use to call status_callback
464
- def status_callback_method
465
- @properties['status_callback_method']
466
- end
467
-
468
- ##
469
- # @return [Time] The UTC end time of the room in UTC ISO 8601 format
470
- def end_time
471
- @properties['end_time']
472
- end
473
-
474
- ##
475
- # @return [String] The duration of the room in seconds
476
- def duration
477
- @properties['duration']
478
- end
479
-
480
- ##
481
- # @return [room.RoomType] The type of room
482
- def type
483
- @properties['type']
484
- end
485
-
486
- ##
487
- # @return [String] The maximum number of concurrent Participants allowed in the room
488
- def max_participants
489
- @properties['max_participants']
490
- end
491
-
492
- ##
493
- # @return [String] The maximum number of seconds a Participant can be connected to the room
494
- def max_participant_duration
495
- @properties['max_participant_duration']
496
- end
497
-
498
- ##
499
- # @return [String] The maximum number of published tracks allowed in the room at the same time
500
- def max_concurrent_published_tracks
501
- @properties['max_concurrent_published_tracks']
502
- end
503
-
504
- ##
505
- # @return [Boolean] Whether to start recording when Participants connect
506
- def record_participants_on_connect
507
- @properties['record_participants_on_connect']
508
- end
509
-
510
- ##
511
- # @return [Array[room.VideoCodec]] An array of the video codecs that are supported when publishing a track in the room
512
- def video_codecs
513
- @properties['video_codecs']
514
- end
515
-
516
- ##
517
- # @return [String] The region for the media server in Group Rooms
518
- def media_region
519
- @properties['media_region']
520
- end
521
-
522
- ##
523
- # @return [Boolean] Indicates whether the room will only contain audio track participants for group rooms.
524
- def audio_only
525
- @properties['audio_only']
526
- end
527
-
528
- ##
529
- # @return [String] The time a room will remain active after last participant leaves.
530
- def empty_room_timeout
531
- @properties['empty_room_timeout']
532
- end
533
-
534
- ##
535
- # @return [String] The time a room will remain active when no one joins.
536
- def unused_room_timeout
537
- @properties['unused_room_timeout']
538
- end
539
-
540
- ##
541
- # @return [Boolean] Indicates if this is a large room.
542
- def large_room
543
- @properties['large_room']
544
- end
545
-
546
- ##
547
- # @return [String] The absolute URL of the resource
548
- def url
549
- @properties['url']
550
- end
551
-
552
- ##
553
- # @return [String] The URLs of related resources
554
- def links
555
- @properties['links']
556
- end
557
-
558
- ##
559
- # Fetch the RoomInstance
560
- # @return [RoomInstance] Fetched RoomInstance
561
- def fetch
562
- context.fetch
563
- end
564
-
565
- ##
566
- # Update the RoomInstance
567
- # @param [room.RoomStatus] status The new status of the resource. Set to
568
- # `completed` to end the room.
569
- # @return [RoomInstance] Updated RoomInstance
570
- def update(status: nil)
571
- context.update(status: status, )
572
- end
573
-
574
- ##
575
- # Access the recordings
576
- # @return [recordings] recordings
577
- def recordings
578
- context.recordings
579
- end
580
-
581
- ##
582
- # Access the participants
583
- # @return [participants] participants
584
- def participants
585
- context.participants
586
- end
587
-
588
- ##
589
- # Access the recording_rules
590
- # @return [recording_rules] recording_rules
591
- def recording_rules
592
- context.recording_rules
593
- end
594
-
595
- ##
596
- # Provide a user friendly representation
597
- def to_s
598
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
599
- "<Twilio.Video.V1.RoomInstance #{values}>"
600
- end
601
-
602
- ##
603
- # Provide a detailed, user friendly representation
604
- def inspect
605
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
606
- "<Twilio.Video.V1.RoomInstance #{values}>"
607
- end
608
621
  end
609
- end
610
622
  end
611
- end
612
- end
623
+ end