twilio-ruby 5.74.4 → 7.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (769) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/test-and-deploy.yml +20 -2
  5. data/.gitignore +3 -0
  6. data/.rubocop.yml +1 -0
  7. data/CHANGES.md +1073 -0
  8. data/CONTRIBUTING.md +11 -9
  9. data/Dockerfile +2 -1
  10. data/Gemfile +5 -0
  11. data/LICENSE +1 -1
  12. data/Makefile +6 -0
  13. data/README.md +138 -40
  14. data/UPGRADE.md +21 -0
  15. data/advanced-examples/custom-http-client.md +170 -0
  16. data/cluster/cluster_oauth_spec.rb +19 -0
  17. data/cluster/cluster_orgs_spec.rb +40 -0
  18. data/cluster/cluster_spec.rb +75 -0
  19. data/examples/public_oauth.rb +13 -0
  20. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  21. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  22. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  23. data/lib/twilio-ruby/base/client_base.rb +131 -0
  24. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  25. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  26. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  27. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  28. data/lib/twilio-ruby/framework/request.rb +8 -1
  29. data/lib/twilio-ruby/framework/rest/domain.rb +0 -1
  30. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  31. data/lib/twilio-ruby/framework/rest/page.rb +1 -0
  32. data/lib/twilio-ruby/http/client_token_manager.rb +28 -0
  33. data/lib/twilio-ruby/http/http_client.rb +22 -5
  34. data/lib/twilio-ruby/http/org_token_manager.rb +28 -0
  35. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  36. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +205 -178
  37. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +137 -0
  38. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +137 -0
  39. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +397 -332
  40. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +397 -332
  41. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +122 -114
  42. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +186 -0
  43. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +225 -192
  44. data/lib/twilio-ruby/rest/accounts/v1.rb +63 -42
  45. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  46. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +374 -365
  48. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +583 -530
  49. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +641 -605
  50. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +323 -320
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +398 -0
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +398 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +398 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +398 -0
  55. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +398 -0
  56. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +398 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +398 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +442 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +143 -118
  60. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +206 -194
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +410 -417
  62. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +302 -342
  63. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +520 -511
  64. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +852 -641
  65. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +852 -641
  66. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +318 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +163 -153
  68. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +239 -240
  69. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +972 -1050
  70. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +685 -756
  71. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +471 -458
  72. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +505 -493
  73. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +446 -407
  74. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +330 -352
  75. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +416 -418
  76. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +546 -554
  77. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +546 -553
  78. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +546 -553
  79. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +867 -903
  80. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +355 -302
  81. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +174 -166
  82. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +354 -350
  83. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +644 -641
  84. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +164 -138
  85. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +164 -138
  86. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +410 -399
  87. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +388 -358
  88. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +356 -338
  89. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +452 -390
  90. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +204 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +393 -380
  92. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +382 -385
  93. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +378 -372
  94. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +521 -513
  95. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +433 -408
  96. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +355 -306
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +401 -368
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +425 -373
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +366 -0
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +366 -0
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +141 -0
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +366 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +127 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +95 -103
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +359 -339
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +359 -338
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +675 -645
  108. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +438 -421
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +425 -374
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +142 -150
  111. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +178 -154
  112. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +378 -350
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +318 -339
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +318 -339
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +318 -339
  116. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +318 -339
  117. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +318 -339
  118. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +318 -339
  119. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +318 -339
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +318 -339
  121. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +385 -416
  122. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +511 -484
  123. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +113 -104
  124. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +179 -161
  125. data/lib/twilio-ruby/rest/api/v2010/account.rb +1001 -943
  126. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  127. data/lib/twilio-ruby/rest/api.rb +25 -34
  128. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  129. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +371 -0
  130. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +371 -0
  131. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +311 -0
  132. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +206 -0
  133. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +687 -0
  134. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +232 -0
  135. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +213 -0
  136. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +629 -0
  137. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +267 -0
  138. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +267 -0
  139. data/lib/twilio-ruby/rest/assistants/v1/session.rb +335 -0
  140. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +605 -0
  141. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  142. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  143. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  144. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +309 -279
  145. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +308 -279
  146. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +282 -248
  147. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +253 -235
  148. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +256 -216
  149. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  150. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  151. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  152. data/lib/twilio-ruby/rest/chat/v1/credential.rb +445 -403
  153. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +394 -391
  154. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +448 -440
  155. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +464 -437
  156. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +560 -515
  157. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +422 -367
  158. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +248 -239
  159. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +491 -440
  160. data/lib/twilio-ruby/rest/chat/v1/service.rb +887 -894
  161. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  162. data/lib/twilio-ruby/rest/chat/v2/credential.rb +445 -401
  163. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +385 -370
  164. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +394 -386
  165. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +509 -527
  166. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +536 -533
  167. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +466 -467
  168. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +629 -605
  169. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +422 -369
  170. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +378 -381
  171. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +425 -419
  172. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +533 -491
  173. data/lib/twilio-ruby/rest/chat/v2/service.rb +790 -778
  174. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  175. data/lib/twilio-ruby/rest/chat/v3/channel.rb +295 -267
  176. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  177. data/lib/twilio-ruby/rest/chat.rb +4 -48
  178. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  179. data/lib/twilio-ruby/rest/client.rb +333 -584
  180. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +190 -0
  181. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +206 -188
  182. data/lib/twilio-ruby/rest/content/v1/content.rb +964 -336
  183. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +255 -0
  184. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +261 -246
  185. data/lib/twilio-ruby/rest/content/v1.rb +54 -45
  186. data/lib/twilio-ruby/rest/content/v2/content.rb +319 -0
  187. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +312 -0
  188. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  189. data/lib/twilio-ruby/rest/content.rb +2 -40
  190. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  191. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +498 -444
  192. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +267 -227
  193. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +292 -252
  194. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +344 -344
  195. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +560 -510
  196. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +521 -495
  197. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +451 -403
  198. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +643 -552
  199. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +263 -0
  200. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +451 -409
  201. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +308 -304
  202. data/lib/twilio-ruby/rest/conversations/v1/role.rb +410 -356
  203. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +378 -373
  204. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +313 -289
  205. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +259 -235
  206. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +320 -279
  207. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +351 -371
  208. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +567 -550
  209. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +530 -530
  210. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +460 -438
  211. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +655 -588
  212. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +269 -0
  213. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +314 -317
  214. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +422 -380
  215. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -455
  216. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +507 -474
  217. data/lib/twilio-ruby/rest/conversations/v1/service.rb +515 -447
  218. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +465 -435
  219. data/lib/twilio-ruby/rest/conversations/v1/user.rb +495 -441
  220. data/lib/twilio-ruby/rest/conversations/v1.rb +135 -136
  221. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  222. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  223. data/lib/twilio-ruby/rest/events/v1/event_type.rb +326 -288
  224. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +309 -0
  225. data/lib/twilio-ruby/rest/events/v1/schema.rb +234 -218
  226. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +121 -100
  227. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +127 -103
  228. data/lib/twilio-ruby/rest/events/v1/sink.rb +460 -408
  229. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +391 -339
  230. data/lib/twilio-ruby/rest/events/v1/subscription.rb +436 -387
  231. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  232. data/lib/twilio-ruby/rest/events.rb +5 -34
  233. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  234. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +452 -301
  235. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +385 -330
  236. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +555 -496
  237. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +589 -570
  238. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +328 -306
  239. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +232 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +452 -384
  241. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +363 -303
  242. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +448 -380
  243. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +355 -403
  244. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +213 -190
  245. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +161 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +141 -124
  247. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +192 -166
  248. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +252 -227
  249. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +354 -319
  250. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +352 -0
  251. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +442 -398
  252. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +321 -225
  253. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +408 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +461 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +251 -0
  256. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +400 -0
  257. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +397 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +237 -0
  259. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +343 -0
  260. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +260 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +192 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +404 -331
  263. data/lib/twilio-ruby/rest/flex_api/v1.rb +313 -207
  264. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +339 -0
  265. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +152 -127
  266. data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
  267. data/lib/twilio-ruby/rest/flex_api.rb +21 -111
  268. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  269. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +255 -227
  270. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  271. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  272. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  273. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +280 -0
  274. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +233 -0
  275. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +181 -0
  276. data/lib/twilio-ruby/rest/iam/v1/token.rb +186 -0
  277. data/lib/twilio-ruby/rest/iam/v1.rb +67 -0
  278. data/lib/twilio-ruby/rest/iam.rb +6 -0
  279. data/lib/twilio-ruby/rest/iam_base.rb +38 -0
  280. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +323 -315
  281. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +357 -0
  282. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +273 -255
  283. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +245 -225
  284. data/lib/twilio-ruby/rest/insights/v1/call.rb +267 -236
  285. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +561 -433
  286. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +491 -467
  287. data/lib/twilio-ruby/rest/insights/v1/conference.rb +505 -502
  288. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +386 -371
  289. data/lib/twilio-ruby/rest/insights/v1/room.rb +498 -489
  290. data/lib/twilio-ruby/rest/insights/v1/setting.rb +257 -205
  291. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  292. data/lib/twilio-ruby/rest/insights.rb +6 -34
  293. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  294. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +464 -0
  295. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +363 -0
  296. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +223 -0
  297. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +201 -0
  298. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +365 -0
  299. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +363 -0
  300. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +534 -0
  301. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +231 -0
  302. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +403 -0
  303. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +265 -0
  304. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +538 -0
  305. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  306. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  307. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  308. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +445 -364
  309. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +394 -359
  310. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +448 -397
  311. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +464 -409
  312. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +560 -488
  313. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +422 -347
  314. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +248 -233
  315. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +491 -418
  316. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +887 -779
  317. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  318. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +445 -364
  319. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +385 -343
  320. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +394 -359
  321. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +509 -451
  322. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +536 -479
  323. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +466 -411
  324. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +629 -555
  325. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +422 -347
  326. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +378 -351
  327. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +417 -384
  328. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +533 -467
  329. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +790 -689
  330. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  331. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  332. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  333. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +248 -237
  334. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  335. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +315 -0
  336. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +390 -0
  337. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +386 -342
  338. data/lib/twilio-ruby/rest/lookups/v2/query.rb +456 -0
  339. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +136 -0
  340. data/lib/twilio-ruby/rest/lookups/v2.rb +128 -38
  341. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  342. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  343. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +316 -0
  344. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +343 -0
  345. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +363 -0
  346. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +162 -0
  347. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +482 -0
  348. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +221 -0
  349. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +325 -0
  350. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +146 -0
  351. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  352. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  353. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  354. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +143 -0
  355. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +372 -346
  356. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +532 -443
  357. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +196 -0
  358. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +295 -0
  359. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +292 -259
  360. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +243 -0
  361. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +165 -144
  362. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +223 -0
  363. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +201 -0
  364. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +243 -0
  365. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +369 -335
  366. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +383 -0
  367. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +392 -0
  368. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +376 -341
  369. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +376 -336
  370. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +630 -521
  371. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +128 -115
  372. data/lib/twilio-ruby/rest/messaging/v1/service.rb +818 -763
  373. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +810 -699
  374. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +113 -94
  375. data/lib/twilio-ruby/rest/messaging/v1.rb +202 -124
  376. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +769 -0
  377. data/lib/twilio-ruby/rest/messaging/v2.rb +49 -0
  378. data/lib/twilio-ruby/rest/messaging.rb +10 -35
  379. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  380. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +408 -395
  381. data/lib/twilio-ruby/rest/monitor/v1/event.rb +391 -390
  382. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  383. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  384. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  385. data/lib/twilio-ruby/rest/notify/v1/credential.rb +445 -408
  386. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +455 -452
  387. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +320 -362
  388. data/lib/twilio-ruby/rest/notify/v1/service.rb +650 -622
  389. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  390. data/lib/twilio-ruby/rest/notify.rb +3 -34
  391. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  392. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +249 -0
  393. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +132 -0
  394. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +325 -0
  395. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +328 -0
  396. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +260 -0
  397. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +153 -0
  398. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +170 -0
  399. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +280 -0
  400. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +165 -0
  401. data/lib/twilio-ruby/rest/numbers/v1.rb +155 -0
  402. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +347 -0
  403. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +421 -0
  404. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +274 -0
  405. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +281 -0
  406. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +613 -0
  407. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +288 -261
  408. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +340 -298
  409. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +353 -309
  410. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +201 -181
  411. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +630 -607
  412. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +417 -351
  413. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +300 -266
  414. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +349 -307
  415. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +445 -371
  416. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +300 -266
  417. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +178 -181
  418. data/lib/twilio-ruby/rest/numbers/v2.rb +93 -28
  419. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  420. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  421. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +148 -0
  422. data/lib/twilio-ruby/rest/oauth/v1/token.rb +180 -151
  423. data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
  424. data/lib/twilio-ruby/rest/oauth.rb +3 -65
  425. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  426. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +374 -396
  427. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +466 -446
  428. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +634 -625
  429. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  430. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +309 -298
  431. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +333 -309
  432. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +356 -330
  433. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +453 -398
  434. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  435. data/lib/twilio-ruby/rest/preview/wireless/command.rb +401 -364
  436. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +472 -398
  437. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +237 -205
  438. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +588 -523
  439. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  440. data/lib/twilio-ruby/rest/preview.rb +10 -87
  441. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  442. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +148 -0
  443. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +186 -0
  444. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  445. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +309 -0
  446. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +375 -0
  447. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +530 -0
  448. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +277 -0
  449. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  450. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  451. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  452. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +307 -275
  453. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +108 -119
  454. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +300 -268
  455. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +108 -119
  456. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +307 -275
  457. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +227 -197
  458. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +122 -135
  459. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  460. data/lib/twilio-ruby/rest/pricing/v2/country.rb +299 -270
  461. data/lib/twilio-ruby/rest/pricing/v2/number.rb +239 -217
  462. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +307 -275
  463. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +245 -220
  464. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +122 -138
  465. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  466. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  467. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  468. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +443 -403
  469. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +420 -418
  470. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +444 -449
  471. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +439 -442
  472. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +546 -506
  473. data/lib/twilio-ruby/rest/proxy/v1/service.rb +556 -596
  474. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  475. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  476. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  477. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +273 -227
  478. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +273 -223
  479. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +273 -227
  480. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  481. data/lib/twilio-ruby/rest/routes.rb +4 -34
  482. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  483. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +323 -323
  484. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +436 -380
  485. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +213 -208
  486. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +425 -384
  487. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +353 -338
  488. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +369 -383
  489. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +427 -396
  490. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +474 -447
  491. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +228 -234
  492. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +350 -353
  493. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +436 -380
  494. data/lib/twilio-ruby/rest/serverless/v1/service.rb +547 -493
  495. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  496. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  497. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  498. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +213 -199
  499. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +228 -218
  500. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +378 -355
  501. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +442 -394
  502. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +213 -200
  503. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +228 -221
  504. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +378 -361
  505. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +494 -449
  506. data/lib/twilio-ruby/rest/studio/v1/flow.rb +394 -355
  507. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  508. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +213 -200
  509. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -221
  510. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +378 -361
  511. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +487 -442
  512. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +351 -320
  513. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +245 -0
  514. data/lib/twilio-ruby/rest/studio/v2/flow.rb +545 -472
  515. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +128 -99
  516. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  517. data/lib/twilio-ruby/rest/studio.rb +3 -41
  518. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  519. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +407 -362
  520. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +492 -483
  521. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +412 -409
  522. data/lib/twilio-ruby/rest/supersim/v1/network.rb +310 -297
  523. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +355 -332
  524. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +400 -351
  525. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +250 -237
  526. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +246 -224
  527. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +204 -188
  528. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +480 -453
  529. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +372 -361
  530. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +309 -344
  531. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  532. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  533. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  534. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +396 -371
  535. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +481 -423
  536. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +490 -490
  537. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +396 -370
  538. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +496 -445
  539. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +493 -495
  540. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +396 -368
  541. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +496 -444
  542. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +146 -132
  543. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +445 -400
  544. data/lib/twilio-ruby/rest/sync/v1/service.rb +601 -567
  545. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  546. data/lib/twilio-ruby/rest/sync.rb +2 -34
  547. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  548. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +431 -395
  549. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +452 -464
  550. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +720 -749
  551. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +676 -661
  552. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +435 -382
  553. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +168 -0
  554. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +366 -369
  555. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +286 -275
  556. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +237 -236
  557. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +243 -258
  558. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +600 -572
  559. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +702 -732
  560. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +405 -388
  561. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +242 -239
  562. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +288 -265
  563. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +222 -193
  564. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +258 -234
  565. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +647 -637
  566. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +366 -375
  567. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +252 -241
  568. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +237 -244
  569. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +549 -510
  570. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +360 -356
  571. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +238 -206
  572. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +248 -234
  573. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +746 -730
  574. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  575. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  576. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  577. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +362 -320
  578. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +362 -317
  579. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +466 -419
  580. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +495 -451
  581. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +237 -191
  582. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +656 -630
  583. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  584. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  585. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  586. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +257 -0
  587. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +365 -0
  588. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +224 -0
  589. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +377 -352
  590. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +361 -323
  591. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +349 -321
  592. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +558 -513
  593. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +409 -346
  594. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +292 -261
  595. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +285 -252
  596. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +423 -359
  597. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +292 -261
  598. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +377 -352
  599. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +361 -323
  600. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +349 -321
  601. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +558 -513
  602. data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
  603. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  604. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  605. data/lib/twilio-ruby/rest/verify/v2/form.rb +200 -183
  606. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +238 -207
  607. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +285 -254
  608. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +198 -192
  609. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +518 -531
  610. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +467 -453
  611. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +263 -283
  612. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +442 -414
  613. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +405 -363
  614. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +427 -388
  615. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +446 -384
  616. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +402 -371
  617. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +228 -205
  618. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +473 -412
  619. data/lib/twilio-ruby/rest/verify/v2/service.rb +876 -780
  620. data/lib/twilio-ruby/rest/verify/v2/template.rb +225 -205
  621. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +382 -387
  622. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +246 -226
  623. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  624. data/lib/twilio-ruby/rest/verify.rb +7 -34
  625. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  626. data/lib/twilio-ruby/rest/video/v1/composition.rb +497 -507
  627. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +551 -647
  628. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +294 -261
  629. data/lib/twilio-ruby/rest/video/v1/recording.rb +440 -426
  630. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +294 -261
  631. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +266 -0
  632. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +341 -0
  633. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +194 -0
  634. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +348 -0
  635. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +514 -0
  636. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +183 -0
  637. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +437 -0
  638. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +417 -0
  639. data/lib/twilio-ruby/rest/video/v1/room.rb +661 -602
  640. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  641. data/lib/twilio-ruby/rest/video.rb +7 -34
  642. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  643. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +163 -176
  644. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +527 -486
  645. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +466 -434
  646. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +417 -352
  647. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +142 -121
  648. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +199 -183
  649. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +383 -397
  650. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +228 -190
  651. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +123 -121
  652. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +403 -339
  653. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +386 -319
  654. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  655. data/lib/twilio-ruby/rest/voice.rb +7 -34
  656. data/lib/twilio-ruby/rest/voice_base.rb +33 -0
  657. data/lib/twilio-ruby/rest/wireless/v1/command.rb +428 -406
  658. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +492 -436
  659. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +302 -284
  660. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +243 -243
  661. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +654 -647
  662. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +230 -221
  663. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  664. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  665. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  666. data/lib/twilio-ruby/rest.rb +1 -0
  667. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  668. data/lib/twilio-ruby/twiml/voice_response.rb +263 -20
  669. data/lib/twilio-ruby/version.rb +1 -1
  670. data/sonar-project.properties +1 -1
  671. data/twilio-ruby.gemspec +3 -2
  672. metadata +201 -108
  673. data/conf/cacert.pem +0 -3376
  674. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  675. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  676. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  677. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  678. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  679. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  680. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  681. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  682. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  683. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  684. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  685. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  686. 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
  687. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  688. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  689. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  690. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  691. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  692. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  693. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  694. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  695. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  696. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  697. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  698. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  699. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  700. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  701. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  702. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  703. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  704. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  705. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  706. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  707. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  708. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +0 -144
  709. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  710. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
  711. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
  712. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
  713. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
  714. data/lib/twilio-ruby/rest/media/v1.rb +0 -76
  715. data/lib/twilio-ruby/rest/media.rb +0 -65
  716. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  717. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  718. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +0 -317
  719. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +0 -310
  720. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +0 -305
  721. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +0 -342
  722. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +0 -335
  723. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -393
  724. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -92
  725. data/lib/twilio-ruby/rest/microvisor.rb +0 -70
  726. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
  727. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
  728. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
  729. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
  730. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  731. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  732. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  733. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  734. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  735. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
  736. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -385
  737. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -406
  738. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -418
  739. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -385
  740. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -405
  741. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -415
  742. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -385
  743. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -405
  744. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -462
  745. data/lib/twilio-ruby/rest/preview/sync.rb +0 -44
  746. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  747. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  748. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  749. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  750. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  751. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  752. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  753. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  754. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  755. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  756. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  757. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  758. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  759. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  760. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  761. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -377
  762. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  763. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  764. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  765. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  766. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  767. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  768. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  769. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,740 +1,756 @@
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 - Taskrouter
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 Taskrouter < Domain
12
- class V1 < Version
13
- class WorkspaceList < ListResource
14
- ##
15
- # Initialize the WorkspaceList
16
- # @param [Version] version Version that contains the resource
17
- # @return [WorkspaceList] WorkspaceList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Workspaces"
24
- end
25
-
26
- ##
27
- # Lists WorkspaceInstance records from the API as a list.
28
- # Unlike stream(), this operation is eager and will load `limit` records into
29
- # memory before returning.
30
- # @param [String] friendly_name The `friendly_name` of the Workspace resources to
31
- # read. For example `Customer Support` or `2014 Election Campaign`.
32
- # @param [Integer] limit Upper limit for the number of records to return. stream()
33
- # guarantees to never return more than limit. Default is no limit
34
- # @param [Integer] page_size Number of records to fetch per request, when
35
- # not set will use the default value of 50 records. If no page_size is defined
36
- # but a limit is defined, stream() will attempt to read the limit with the most
37
- # efficient page size, i.e. min(limit, 1000)
38
- # @return [Array] Array of up to limit results
39
- def list(friendly_name: :unset, limit: nil, page_size: nil)
40
- self.stream(friendly_name: friendly_name, limit: limit, page_size: page_size).entries
41
- end
42
-
43
- ##
44
- # Streams WorkspaceInstance records from the API as an Enumerable.
45
- # This operation lazily loads records as efficiently as possible until the limit
46
- # is reached.
47
- # @param [String] friendly_name The `friendly_name` of the Workspace resources to
48
- # read. For example `Customer Support` or `2014 Election Campaign`.
49
- # @param [Integer] limit Upper limit for the number of records to return. stream()
50
- # guarantees to never return more than limit. Default is no limit.
51
- # @param [Integer] page_size Number of records to fetch per request, when
52
- # not set will use the default value of 50 records. If no page_size is defined
53
- # but a limit is defined, stream() will attempt to read the limit with the most
54
- # efficient page size, i.e. min(limit, 1000)
55
- # @return [Enumerable] Enumerable that will yield up to limit results
56
- def stream(friendly_name: :unset, limit: nil, page_size: nil)
57
- limits = @version.read_limits(limit, page_size)
58
-
59
- page = self.page(friendly_name: friendly_name, page_size: limits[:page_size], )
60
-
61
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
62
- end
63
-
64
- ##
65
- # When passed a block, yields WorkspaceInstance records from the API.
66
- # This operation lazily loads records as efficiently as possible until the limit
67
- # is reached.
68
- def each
69
- limits = @version.read_limits
70
-
71
- page = self.page(page_size: limits[:page_size], )
72
-
73
- @version.stream(page,
17
+ module REST
18
+ class Taskrouter < TaskrouterBase
19
+ class V1 < Version
20
+ class WorkspaceList < ListResource
21
+
22
+ ##
23
+ # Initialize the WorkspaceList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [WorkspaceList] WorkspaceList
26
+ def initialize(version)
27
+ super(version)
28
+ # Path Solution
29
+ @solution = { }
30
+ @uri = "/Workspaces"
31
+
32
+ end
33
+ ##
34
+ # Create the WorkspaceInstance
35
+ # @param [String] friendly_name A descriptive string that you create to describe the Workspace resource. It can be up to 64 characters long. For example: `Customer Support` or `2014 Election Campaign`.
36
+ # @param [String] event_callback_url The URL we should call when an event occurs. If provided, the Workspace will publish events to this URL, for example, to collect data for reporting. See [Workspace Events](https://www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio's [Webhooks (HTTP callbacks) Connection Overrides](https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).
37
+ # @param [String] events_filter The list of Workspace events for which to call event_callback_url. For example, if `EventsFilter=task.created, task.canceled, worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.
38
+ # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be: `true` to enable multi-tasking, or `false` to disable it. However, all workspaces should be created as multi-tasking. The default is `true`. Multi-tasking allows Workers to handle multiple Tasks simultaneously. When enabled (`true`), each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking mode (legacy mode), each Worker will only receive a new reservation when the previous task is completed. Learn more at [Multitasking](https://www.twilio.com/docs/taskrouter/multitasking).
39
+ # @param [String] template An available template name. Can be: `NONE` or `FIFO` and the default is `NONE`. Pre-configures the Workspace with the Workflow and Activities specified in the template. `NONE` will create a Workspace with only a set of default activities. `FIFO` will configure TaskRouter with a set of default activities and a single TaskQueue for first-in, first-out distribution, which can be useful when you are getting started with TaskRouter.
40
+ # @param [QueueOrder] prioritize_queue_order
41
+ # @return [WorkspaceInstance] Created WorkspaceInstance
42
+ def create(
43
+ friendly_name: nil,
44
+ event_callback_url: :unset,
45
+ events_filter: :unset,
46
+ multi_task_enabled: :unset,
47
+ template: :unset,
48
+ prioritize_queue_order: :unset
49
+ )
50
+
51
+ data = Twilio::Values.of({
52
+ 'FriendlyName' => friendly_name,
53
+ 'EventCallbackUrl' => event_callback_url,
54
+ 'EventsFilter' => events_filter,
55
+ 'MultiTaskEnabled' => multi_task_enabled,
56
+ 'Template' => template,
57
+ 'PrioritizeQueueOrder' => prioritize_queue_order,
58
+ })
59
+
60
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
61
+
62
+
63
+
64
+
65
+
66
+ payload = @version.create('POST', @uri, data: data, headers: headers)
67
+ WorkspaceInstance.new(
68
+ @version,
69
+ payload,
70
+ )
71
+ end
72
+
73
+
74
+ ##
75
+ # Lists WorkspaceInstance records from the API as a list.
76
+ # Unlike stream(), this operation is eager and will load `limit` records into
77
+ # memory before returning.
78
+ # @param [String] friendly_name The `friendly_name` of the Workspace resources to read. For example `Customer Support` or `2014 Election Campaign`.
79
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
80
+ # guarantees to never return more than limit. Default is no limit
81
+ # @param [Integer] page_size Number of records to fetch per request, when
82
+ # not set will use the default value of 50 records. If no page_size is defined
83
+ # but a limit is defined, stream() will attempt to read the limit with the most
84
+ # efficient page size, i.e. min(limit, 1000)
85
+ # @return [Array] Array of up to limit results
86
+ def list(friendly_name: :unset, limit: nil, page_size: nil)
87
+ self.stream(
88
+ friendly_name: friendly_name,
89
+ limit: limit,
90
+ page_size: page_size
91
+ ).entries
92
+ end
93
+
94
+ ##
95
+ # Streams Instance records from the API as an Enumerable.
96
+ # This operation lazily loads records as efficiently as possible until the limit
97
+ # is reached.
98
+ # @param [String] friendly_name The `friendly_name` of the Workspace resources to read. For example `Customer Support` or `2014 Election Campaign`.
99
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
100
+ # guarantees to never return more than limit. Default is no limit
101
+ # @param [Integer] page_size Number of records to fetch per request, when
102
+ # not set will use the default value of 50 records. If no page_size is defined
103
+ # but a limit is defined, stream() will attempt to read the limit with the most
104
+ # efficient page size, i.e. min(limit, 1000)
105
+ # @return [Enumerable] Enumerable that will yield up to limit results
106
+ def stream(friendly_name: :unset, limit: nil, page_size: nil)
107
+ limits = @version.read_limits(limit, page_size)
108
+
109
+ page = self.page(
110
+ friendly_name: friendly_name,
111
+ page_size: limits[:page_size], )
112
+
113
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
114
+ end
115
+
116
+ ##
117
+ # When passed a block, yields WorkspaceInstance records from the API.
118
+ # This operation lazily loads records as efficiently as possible until the limit
119
+ # is reached.
120
+ def each
121
+ limits = @version.read_limits
122
+
123
+ page = self.page(page_size: limits[:page_size], )
124
+
125
+ @version.stream(page,
74
126
  limit: limits[:limit],
75
127
  page_limit: limits[:page_limit]).each {|x| yield x}
76
- end
77
-
78
- ##
79
- # Retrieve a single page of WorkspaceInstance records from the API.
80
- # Request is executed immediately.
81
- # @param [String] friendly_name The `friendly_name` of the Workspace resources to
82
- # read. For example `Customer Support` or `2014 Election Campaign`.
83
- # @param [String] page_token PageToken provided by the API
84
- # @param [Integer] page_number Page Number, this value is simply for client state
85
- # @param [Integer] page_size Number of records to return, defaults to 50
86
- # @return [Page] Page of WorkspaceInstance
87
- def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
88
- params = Twilio::Values.of({
89
- 'FriendlyName' => friendly_name,
90
- 'PageToken' => page_token,
91
- 'Page' => page_number,
92
- 'PageSize' => page_size,
93
- })
94
-
95
- response = @version.page('GET', @uri, params: params)
96
-
97
- WorkspacePage.new(@version, response, @solution)
98
- end
99
-
100
- ##
101
- # Retrieve a single page of WorkspaceInstance records from the API.
102
- # Request is executed immediately.
103
- # @param [String] target_url API-generated URL for the requested results page
104
- # @return [Page] Page of WorkspaceInstance
105
- def get_page(target_url)
106
- response = @version.domain.request(
107
- 'GET',
108
- target_url
109
- )
110
- WorkspacePage.new(@version, response, @solution)
111
- end
112
-
113
- ##
114
- # Create the WorkspaceInstance
115
- # @param [String] friendly_name A descriptive string that you create to describe
116
- # the Workspace resource. It can be up to 64 characters long. For example:
117
- # `Customer Support` or `2014 Election Campaign`.
118
- # @param [String] event_callback_url The URL we should call when an event occurs.
119
- # If provided, the Workspace will publish events to this URL, for example, to
120
- # collect data for reporting. See {Workspace
121
- # Events}[https://www.twilio.com/docs/taskrouter/api/event] for more information.
122
- # This parameter supports Twilio's {Webhooks (HTTP callbacks) Connection
123
- # Overrides}[https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides].
124
- # @param [String] events_filter The list of Workspace events for which to call
125
- # event_callback_url. For example, if `EventsFilter=task.created, task.canceled,
126
- # worker.activity.update`, then TaskRouter will call event_callback_url only when
127
- # a task is created, canceled, or a Worker activity is updated.
128
- # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be:
129
- # `true` to enable multi-tasking, or `false` to disable it. However, all
130
- # workspaces should be created as multi-tasking. The default is `true`.
131
- # Multi-tasking allows Workers to handle multiple Tasks simultaneously. When
132
- # enabled (`true`), each Worker can receive parallel reservations up to the
133
- # per-channel maximums defined in the Workers section. In single-tasking mode
134
- # (legacy mode), each Worker will only receive a new reservation when the previous
135
- # task is completed. Learn more at
136
- # {Multitasking}[https://www.twilio.com/docs/taskrouter/multitasking].
137
- # @param [String] template An available template name. Can be: `NONE` or `FIFO`
138
- # and the default is `NONE`. Pre-configures the Workspace with the Workflow and
139
- # Activities specified in the template. `NONE` will create a Workspace with only a
140
- # set of default activities. `FIFO` will configure TaskRouter with a set of
141
- # default activities and a single TaskQueue for first-in, first-out distribution,
142
- # which can be useful when you are getting started with TaskRouter.
143
- # @param [workspace.QueueOrder] prioritize_queue_order The type of TaskQueue to
144
- # prioritize when Workers are receiving Tasks from both types of TaskQueues. Can
145
- # be: `LIFO` or `FIFO` and the default is `FIFO`. For more information, see {Queue
146
- # Ordering}[https://www.twilio.com/docs/taskrouter/queue-ordering-last-first-out-lifo].
147
- # @return [WorkspaceInstance] Created WorkspaceInstance
148
- def create(friendly_name: nil, event_callback_url: :unset, events_filter: :unset, multi_task_enabled: :unset, template: :unset, prioritize_queue_order: :unset)
149
- data = Twilio::Values.of({
150
- 'FriendlyName' => friendly_name,
151
- 'EventCallbackUrl' => event_callback_url,
152
- 'EventsFilter' => events_filter,
153
- 'MultiTaskEnabled' => multi_task_enabled,
154
- 'Template' => template,
155
- 'PrioritizeQueueOrder' => prioritize_queue_order,
156
- })
157
-
158
- payload = @version.create('POST', @uri, data: data)
159
-
160
- WorkspaceInstance.new(@version, payload, )
161
- end
162
-
163
- ##
164
- # Provide a user friendly representation
165
- def to_s
166
- '#<Twilio.Taskrouter.V1.WorkspaceList>'
167
- end
168
- end
169
-
170
- class WorkspacePage < Page
171
- ##
172
- # Initialize the WorkspacePage
173
- # @param [Version] version Version that contains the resource
174
- # @param [Response] response Response from the API
175
- # @param [Hash] solution Path solution for the resource
176
- # @return [WorkspacePage] WorkspacePage
177
- def initialize(version, response, solution)
178
- super(version, response)
179
-
180
- # Path Solution
181
- @solution = solution
182
- end
183
-
184
- ##
185
- # Build an instance of WorkspaceInstance
186
- # @param [Hash] payload Payload response from the API
187
- # @return [WorkspaceInstance] WorkspaceInstance
188
- def get_instance(payload)
189
- WorkspaceInstance.new(@version, payload, )
190
- end
191
-
192
- ##
193
- # Provide a user friendly representation
194
- def to_s
195
- '<Twilio.Taskrouter.V1.WorkspacePage>'
196
- end
197
- end
198
-
199
- class WorkspaceContext < InstanceContext
200
- ##
201
- # Initialize the WorkspaceContext
202
- # @param [Version] version Version that contains the resource
203
- # @param [String] sid The SID of the Workspace resource to fetch.
204
- # @return [WorkspaceContext] WorkspaceContext
205
- def initialize(version, sid)
206
- super(version)
207
-
208
- # Path Solution
209
- @solution = {sid: sid, }
210
- @uri = "/Workspaces/#{@solution[:sid]}"
211
-
212
- # Dependents
213
- @activities = nil
214
- @events = nil
215
- @tasks = nil
216
- @task_queues = nil
217
- @workers = nil
218
- @workflows = nil
219
- @statistics = nil
220
- @real_time_statistics = nil
221
- @cumulative_statistics = nil
222
- @task_channels = nil
223
- end
224
-
225
- ##
226
- # Fetch the WorkspaceInstance
227
- # @return [WorkspaceInstance] Fetched WorkspaceInstance
228
- def fetch
229
- payload = @version.fetch('GET', @uri)
230
-
231
- WorkspaceInstance.new(@version, payload, sid: @solution[:sid], )
232
- end
233
-
234
- ##
235
- # Update the WorkspaceInstance
236
- # @param [String] default_activity_sid The SID of the Activity that will be used
237
- # when new Workers are created in the Workspace.
238
- # @param [String] event_callback_url The URL we should call when an event occurs.
239
- # See {Workspace Events}[https://www.twilio.com/docs/taskrouter/api/event] for
240
- # more information. This parameter supports Twilio's {Webhooks (HTTP callbacks)
241
- # Connection
242
- # Overrides}[https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides].
243
- # @param [String] events_filter The list of Workspace events for which to call
244
- # event_callback_url. For example if
245
- # `EventsFilter=task.created,task.canceled,worker.activity.update`, then
246
- # TaskRouter will call event_callback_url only when a task is created, canceled,
247
- # or a Worker activity is updated.
248
- # @param [String] friendly_name A descriptive string that you create to describe
249
- # the Workspace resource. For example: `Sales Call Center` or `Customer Support
250
- # Team`.
251
- # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be:
252
- # `true` to enable multi-tasking, or `false` to disable it. However, all
253
- # workspaces should be maintained as multi-tasking. There is no default when
254
- # omitting this parameter. A multi-tasking Workspace can't be updated to
255
- # single-tasking unless it is not a Flex Project and another (legacy)
256
- # single-tasking Workspace exists. Multi-tasking allows Workers to handle multiple
257
- # Tasks simultaneously. In multi-tasking mode, each Worker can receive parallel
258
- # reservations up to the per-channel maximums defined in the Workers section. In
259
- # single-tasking mode (legacy mode), each Worker will only receive a new
260
- # reservation when the previous task is completed. Learn more at
261
- # {Multitasking}[https://www.twilio.com/docs/taskrouter/multitasking].
262
- # @param [String] timeout_activity_sid The SID of the Activity that will be
263
- # assigned to a Worker when a Task reservation times out without a response.
264
- # @param [workspace.QueueOrder] prioritize_queue_order The type of TaskQueue to
265
- # prioritize when Workers are receiving Tasks from both types of TaskQueues. Can
266
- # be: `LIFO` or `FIFO`. For more information, see {Queue
267
- # Ordering}[https://www.twilio.com/docs/taskrouter/queue-ordering-last-first-out-lifo].
268
- # @return [WorkspaceInstance] Updated WorkspaceInstance
269
- def update(default_activity_sid: :unset, event_callback_url: :unset, events_filter: :unset, friendly_name: :unset, multi_task_enabled: :unset, timeout_activity_sid: :unset, prioritize_queue_order: :unset)
270
- data = Twilio::Values.of({
271
- 'DefaultActivitySid' => default_activity_sid,
272
- 'EventCallbackUrl' => event_callback_url,
273
- 'EventsFilter' => events_filter,
274
- 'FriendlyName' => friendly_name,
275
- 'MultiTaskEnabled' => multi_task_enabled,
276
- 'TimeoutActivitySid' => timeout_activity_sid,
277
- 'PrioritizeQueueOrder' => prioritize_queue_order,
278
- })
279
-
280
- payload = @version.update('POST', @uri, data: data)
281
-
282
- WorkspaceInstance.new(@version, payload, sid: @solution[:sid], )
283
- end
284
-
285
- ##
286
- # Delete the WorkspaceInstance
287
- # @return [Boolean] true if delete succeeds, false otherwise
288
- def delete
289
- @version.delete('DELETE', @uri)
290
- end
291
-
292
- ##
293
- # Access the activities
294
- # @return [ActivityList]
295
- # @return [ActivityContext] if sid was passed.
296
- def activities(sid=:unset)
297
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
298
-
299
- if sid != :unset
300
- return ActivityContext.new(@version, @solution[:sid], sid, )
301
- end
302
-
303
- unless @activities
304
- @activities = ActivityList.new(@version, workspace_sid: @solution[:sid], )
305
- end
306
-
307
- @activities
308
- end
309
-
310
- ##
311
- # Access the events
312
- # @return [EventList]
313
- # @return [EventContext] if sid was passed.
314
- def events(sid=:unset)
315
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
316
-
317
- if sid != :unset
318
- return EventContext.new(@version, @solution[:sid], sid, )
319
- end
320
-
321
- unless @events
322
- @events = EventList.new(@version, workspace_sid: @solution[:sid], )
323
- end
324
-
325
- @events
326
- end
327
-
328
- ##
329
- # Access the tasks
330
- # @return [TaskList]
331
- # @return [TaskContext] if sid was passed.
332
- def tasks(sid=:unset)
333
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
334
-
335
- if sid != :unset
336
- return TaskContext.new(@version, @solution[:sid], sid, )
337
- end
338
-
339
- unless @tasks
340
- @tasks = TaskList.new(@version, workspace_sid: @solution[:sid], )
341
- end
342
-
343
- @tasks
344
- end
345
-
346
- ##
347
- # Access the task_queues
348
- # @return [TaskQueueList]
349
- # @return [TaskQueueContext] if sid was passed.
350
- def task_queues(sid=:unset)
351
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
352
-
353
- if sid != :unset
354
- return TaskQueueContext.new(@version, @solution[:sid], sid, )
355
- end
356
-
357
- unless @task_queues
358
- @task_queues = TaskQueueList.new(@version, workspace_sid: @solution[:sid], )
359
- end
360
-
361
- @task_queues
362
- end
363
-
364
- ##
365
- # Access the workers
366
- # @return [WorkerList]
367
- # @return [WorkerContext] if sid was passed.
368
- def workers(sid=:unset)
369
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
370
-
371
- if sid != :unset
372
- return WorkerContext.new(@version, @solution[:sid], sid, )
373
- end
374
-
375
- unless @workers
376
- @workers = WorkerList.new(@version, workspace_sid: @solution[:sid], )
377
- end
378
-
379
- @workers
380
- end
381
-
382
- ##
383
- # Access the workflows
384
- # @return [WorkflowList]
385
- # @return [WorkflowContext] if sid was passed.
386
- def workflows(sid=:unset)
387
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
388
-
389
- if sid != :unset
390
- return WorkflowContext.new(@version, @solution[:sid], sid, )
391
- end
392
-
393
- unless @workflows
394
- @workflows = WorkflowList.new(@version, workspace_sid: @solution[:sid], )
395
- end
396
-
397
- @workflows
398
- end
399
-
400
- ##
401
- # Access the statistics
402
- # @return [WorkspaceStatisticsList]
403
- # @return [WorkspaceStatisticsContext]
404
- def statistics
405
- WorkspaceStatisticsContext.new(@version, @solution[:sid], )
406
- end
407
-
408
- ##
409
- # Access the real_time_statistics
410
- # @return [WorkspaceRealTimeStatisticsList]
411
- # @return [WorkspaceRealTimeStatisticsContext]
412
- def real_time_statistics
413
- WorkspaceRealTimeStatisticsContext.new(@version, @solution[:sid], )
414
- end
415
-
416
- ##
417
- # Access the cumulative_statistics
418
- # @return [WorkspaceCumulativeStatisticsList]
419
- # @return [WorkspaceCumulativeStatisticsContext]
420
- def cumulative_statistics
421
- WorkspaceCumulativeStatisticsContext.new(@version, @solution[:sid], )
422
- end
423
-
424
- ##
425
- # Access the task_channels
426
- # @return [TaskChannelList]
427
- # @return [TaskChannelContext] if sid was passed.
428
- def task_channels(sid=:unset)
429
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
430
-
431
- if sid != :unset
432
- return TaskChannelContext.new(@version, @solution[:sid], sid, )
433
- end
434
-
435
- unless @task_channels
436
- @task_channels = TaskChannelList.new(@version, workspace_sid: @solution[:sid], )
437
- end
438
-
439
- @task_channels
440
- end
441
-
442
- ##
443
- # Provide a user friendly representation
444
- def to_s
445
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
446
- "#<Twilio.Taskrouter.V1.WorkspaceContext #{context}>"
447
- end
448
-
449
- ##
450
- # Provide a detailed, user friendly representation
451
- def inspect
452
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
453
- "#<Twilio.Taskrouter.V1.WorkspaceContext #{context}>"
454
- end
455
- end
128
+ end
129
+
130
+ ##
131
+ # Retrieve a single page of WorkspaceInstance records from the API.
132
+ # Request is executed immediately.
133
+ # @param [String] friendly_name The `friendly_name` of the Workspace resources to read. For example `Customer Support` or `2014 Election Campaign`.
134
+ # @param [String] page_token PageToken provided by the API
135
+ # @param [Integer] page_number Page Number, this value is simply for client state
136
+ # @param [Integer] page_size Number of records to return, defaults to 50
137
+ # @return [Page] Page of WorkspaceInstance
138
+ def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
139
+ params = Twilio::Values.of({
140
+ 'FriendlyName' => friendly_name,
141
+ 'PageToken' => page_token,
142
+ 'Page' => page_number,
143
+ 'PageSize' => page_size,
144
+ })
145
+ headers = Twilio::Values.of({})
146
+
147
+
148
+
149
+ response = @version.page('GET', @uri, params: params, headers: headers)
150
+
151
+ WorkspacePage.new(@version, response, @solution)
152
+ end
153
+
154
+ ##
155
+ # Retrieve a single page of WorkspaceInstance records from the API.
156
+ # Request is executed immediately.
157
+ # @param [String] target_url API-generated URL for the requested results page
158
+ # @return [Page] Page of WorkspaceInstance
159
+ def get_page(target_url)
160
+ response = @version.domain.request(
161
+ 'GET',
162
+ target_url
163
+ )
164
+ WorkspacePage.new(@version, response, @solution)
165
+ end
166
+
167
+
168
+
169
+ # Provide a user friendly representation
170
+ def to_s
171
+ '#<Twilio.Taskrouter.V1.WorkspaceList>'
172
+ end
173
+ end
174
+
175
+
176
+ class WorkspaceContext < InstanceContext
177
+ ##
178
+ # Initialize the WorkspaceContext
179
+ # @param [Version] version Version that contains the resource
180
+ # @param [String] sid The SID of the Workspace resource to update.
181
+ # @return [WorkspaceContext] WorkspaceContext
182
+ def initialize(version, sid)
183
+ super(version)
184
+
185
+ # Path Solution
186
+ @solution = { sid: sid, }
187
+ @uri = "/Workspaces/#{@solution[:sid]}"
188
+
189
+ # Dependents
190
+ @cumulative_statistics = nil
191
+ @task_queues = nil
192
+ @activities = nil
193
+ @real_time_statistics = nil
194
+ @tasks = nil
195
+ @workflows = nil
196
+ @events = nil
197
+ @workers = nil
198
+ @statistics = nil
199
+ @task_channels = nil
200
+ end
201
+ ##
202
+ # Delete the WorkspaceInstance
203
+ # @return [Boolean] True if delete succeeds, false otherwise
204
+ def delete
205
+
206
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
207
+
208
+
209
+
210
+ @version.delete('DELETE', @uri, headers: headers)
211
+ end
212
+
213
+ ##
214
+ # Fetch the WorkspaceInstance
215
+ # @return [WorkspaceInstance] Fetched WorkspaceInstance
216
+ def fetch
217
+
218
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
219
+
220
+
221
+
222
+
223
+
224
+ payload = @version.fetch('GET', @uri, headers: headers)
225
+ WorkspaceInstance.new(
226
+ @version,
227
+ payload,
228
+ sid: @solution[:sid],
229
+ )
230
+ end
231
+
232
+ ##
233
+ # Update the WorkspaceInstance
234
+ # @param [String] default_activity_sid The SID of the Activity that will be used when new Workers are created in the Workspace.
235
+ # @param [String] event_callback_url The URL we should call when an event occurs. See [Workspace Events](https://www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio's [Webhooks (HTTP callbacks) Connection Overrides](https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).
236
+ # @param [String] events_filter The list of Workspace events for which to call event_callback_url. For example if `EventsFilter=task.created,task.canceled,worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.
237
+ # @param [String] friendly_name A descriptive string that you create to describe the Workspace resource. For example: `Sales Call Center` or `Customer Support Team`.
238
+ # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be: `true` to enable multi-tasking, or `false` to disable it. However, all workspaces should be maintained as multi-tasking. There is no default when omitting this parameter. A multi-tasking Workspace can't be updated to single-tasking unless it is not a Flex Project and another (legacy) single-tasking Workspace exists. Multi-tasking allows Workers to handle multiple Tasks simultaneously. In multi-tasking mode, each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking mode (legacy mode), each Worker will only receive a new reservation when the previous task is completed. Learn more at [Multitasking](https://www.twilio.com/docs/taskrouter/multitasking).
239
+ # @param [String] timeout_activity_sid The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.
240
+ # @param [QueueOrder] prioritize_queue_order
241
+ # @return [WorkspaceInstance] Updated WorkspaceInstance
242
+ def update(
243
+ default_activity_sid: :unset,
244
+ event_callback_url: :unset,
245
+ events_filter: :unset,
246
+ friendly_name: :unset,
247
+ multi_task_enabled: :unset,
248
+ timeout_activity_sid: :unset,
249
+ prioritize_queue_order: :unset
250
+ )
251
+
252
+ data = Twilio::Values.of({
253
+ 'DefaultActivitySid' => default_activity_sid,
254
+ 'EventCallbackUrl' => event_callback_url,
255
+ 'EventsFilter' => events_filter,
256
+ 'FriendlyName' => friendly_name,
257
+ 'MultiTaskEnabled' => multi_task_enabled,
258
+ 'TimeoutActivitySid' => timeout_activity_sid,
259
+ 'PrioritizeQueueOrder' => prioritize_queue_order,
260
+ })
261
+
262
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
263
+
264
+
265
+
266
+
267
+
268
+ payload = @version.update('POST', @uri, data: data, headers: headers)
269
+ WorkspaceInstance.new(
270
+ @version,
271
+ payload,
272
+ sid: @solution[:sid],
273
+ )
274
+ end
275
+
276
+ ##
277
+ # Access the cumulative_statistics
278
+ # @return [WorkspaceCumulativeStatisticsList]
279
+ # @return [WorkspaceCumulativeStatisticsContext]
280
+ def cumulative_statistics
281
+ WorkspaceCumulativeStatisticsContext.new(
282
+ @version,
283
+ @solution[:sid]
284
+ )
285
+ end
286
+ ##
287
+ # Access the task_queues
288
+ # @return [TaskQueueList]
289
+ # @return [TaskQueueContext] if sid was passed.
290
+ def task_queues(sid=:unset)
291
+
292
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
293
+
294
+ if sid != :unset
295
+ return TaskQueueContext.new(@version, @solution[:sid],sid )
296
+ end
297
+
298
+ unless @task_queues
299
+ @task_queues = TaskQueueList.new(
300
+ @version, workspace_sid: @solution[:sid], )
301
+ end
302
+
303
+ @task_queues
304
+ end
305
+ ##
306
+ # Access the activities
307
+ # @return [ActivityList]
308
+ # @return [ActivityContext] if sid was passed.
309
+ def activities(sid=:unset)
310
+
311
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
312
+
313
+ if sid != :unset
314
+ return ActivityContext.new(@version, @solution[:sid],sid )
315
+ end
316
+
317
+ unless @activities
318
+ @activities = ActivityList.new(
319
+ @version, workspace_sid: @solution[:sid], )
320
+ end
321
+
322
+ @activities
323
+ end
324
+ ##
325
+ # Access the real_time_statistics
326
+ # @return [WorkspaceRealTimeStatisticsList]
327
+ # @return [WorkspaceRealTimeStatisticsContext]
328
+ def real_time_statistics
329
+ WorkspaceRealTimeStatisticsContext.new(
330
+ @version,
331
+ @solution[:sid]
332
+ )
333
+ end
334
+ ##
335
+ # Access the tasks
336
+ # @return [TaskList]
337
+ # @return [TaskContext] if sid was passed.
338
+ def tasks(sid=:unset)
339
+
340
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
341
+
342
+ if sid != :unset
343
+ return TaskContext.new(@version, @solution[:sid],sid )
344
+ end
345
+
346
+ unless @tasks
347
+ @tasks = TaskList.new(
348
+ @version, workspace_sid: @solution[:sid], )
349
+ end
350
+
351
+ @tasks
352
+ end
353
+ ##
354
+ # Access the workflows
355
+ # @return [WorkflowList]
356
+ # @return [WorkflowContext] if sid was passed.
357
+ def workflows(sid=:unset)
358
+
359
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
360
+
361
+ if sid != :unset
362
+ return WorkflowContext.new(@version, @solution[:sid],sid )
363
+ end
364
+
365
+ unless @workflows
366
+ @workflows = WorkflowList.new(
367
+ @version, workspace_sid: @solution[:sid], )
368
+ end
369
+
370
+ @workflows
371
+ end
372
+ ##
373
+ # Access the events
374
+ # @return [EventList]
375
+ # @return [EventContext] if sid was passed.
376
+ def events(sid=:unset)
377
+
378
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
379
+
380
+ if sid != :unset
381
+ return EventContext.new(@version, @solution[:sid],sid )
382
+ end
383
+
384
+ unless @events
385
+ @events = EventList.new(
386
+ @version, workspace_sid: @solution[:sid], )
387
+ end
388
+
389
+ @events
390
+ end
391
+ ##
392
+ # Access the workers
393
+ # @return [WorkerList]
394
+ # @return [WorkerContext] if sid was passed.
395
+ def workers(sid=:unset)
396
+
397
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
398
+
399
+ if sid != :unset
400
+ return WorkerContext.new(@version, @solution[:sid],sid )
401
+ end
402
+
403
+ unless @workers
404
+ @workers = WorkerList.new(
405
+ @version, workspace_sid: @solution[:sid], )
406
+ end
407
+
408
+ @workers
409
+ end
410
+ ##
411
+ # Access the statistics
412
+ # @return [WorkspaceStatisticsList]
413
+ # @return [WorkspaceStatisticsContext]
414
+ def statistics
415
+ WorkspaceStatisticsContext.new(
416
+ @version,
417
+ @solution[:sid]
418
+ )
419
+ end
420
+ ##
421
+ # Access the task_channels
422
+ # @return [TaskChannelList]
423
+ # @return [TaskChannelContext] if sid was passed.
424
+ def task_channels(sid=:unset)
425
+
426
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
427
+
428
+ if sid != :unset
429
+ return TaskChannelContext.new(@version, @solution[:sid],sid )
430
+ end
431
+
432
+ unless @task_channels
433
+ @task_channels = TaskChannelList.new(
434
+ @version, workspace_sid: @solution[:sid], )
435
+ end
436
+
437
+ @task_channels
438
+ end
439
+
440
+ ##
441
+ # Provide a user friendly representation
442
+ def to_s
443
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
444
+ "#<Twilio.Taskrouter.V1.WorkspaceContext #{context}>"
445
+ end
446
+
447
+ ##
448
+ # Provide a detailed, user friendly representation
449
+ def inspect
450
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
451
+ "#<Twilio.Taskrouter.V1.WorkspaceContext #{context}>"
452
+ end
453
+ end
454
+
455
+ class WorkspacePage < Page
456
+ ##
457
+ # Initialize the WorkspacePage
458
+ # @param [Version] version Version that contains the resource
459
+ # @param [Response] response Response from the API
460
+ # @param [Hash] solution Path solution for the resource
461
+ # @return [WorkspacePage] WorkspacePage
462
+ def initialize(version, response, solution)
463
+ super(version, response)
464
+
465
+ # Path Solution
466
+ @solution = solution
467
+ end
468
+
469
+ ##
470
+ # Build an instance of WorkspaceInstance
471
+ # @param [Hash] payload Payload response from the API
472
+ # @return [WorkspaceInstance] WorkspaceInstance
473
+ def get_instance(payload)
474
+ WorkspaceInstance.new(@version, payload)
475
+ end
476
+
477
+ ##
478
+ # Provide a user friendly representation
479
+ def to_s
480
+ '<Twilio.Taskrouter.V1.WorkspacePage>'
481
+ end
482
+ end
483
+ class WorkspaceInstance < InstanceResource
484
+ ##
485
+ # Initialize the WorkspaceInstance
486
+ # @param [Version] version Version that contains the resource
487
+ # @param [Hash] payload payload that contains response from Twilio
488
+ # @param [String] account_sid The SID of the
489
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Workspace
490
+ # resource.
491
+ # @param [String] sid The SID of the Call resource to fetch.
492
+ # @return [WorkspaceInstance] WorkspaceInstance
493
+ def initialize(version, payload , sid: nil)
494
+ super(version)
495
+
496
+ # Marshaled Properties
497
+ @properties = {
498
+ 'account_sid' => payload['account_sid'],
499
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
500
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
501
+ 'default_activity_name' => payload['default_activity_name'],
502
+ 'default_activity_sid' => payload['default_activity_sid'],
503
+ 'event_callback_url' => payload['event_callback_url'],
504
+ 'events_filter' => payload['events_filter'],
505
+ 'friendly_name' => payload['friendly_name'],
506
+ 'multi_task_enabled' => payload['multi_task_enabled'],
507
+ 'sid' => payload['sid'],
508
+ 'timeout_activity_name' => payload['timeout_activity_name'],
509
+ 'timeout_activity_sid' => payload['timeout_activity_sid'],
510
+ 'prioritize_queue_order' => payload['prioritize_queue_order'],
511
+ 'url' => payload['url'],
512
+ 'links' => payload['links'],
513
+ }
514
+
515
+ # Context
516
+ @instance_context = nil
517
+ @params = { 'sid' => sid || @properties['sid'] , }
518
+ end
519
+
520
+ ##
521
+ # Generate an instance context for the instance, the context is capable of
522
+ # performing various actions. All instance actions are proxied to the context
523
+ # @return [WorkspaceContext] CallContext for this CallInstance
524
+ def context
525
+ unless @instance_context
526
+ @instance_context = WorkspaceContext.new(@version , @params['sid'])
527
+ end
528
+ @instance_context
529
+ end
530
+
531
+ ##
532
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Workspace resource.
533
+ def account_sid
534
+ @properties['account_sid']
535
+ end
536
+
537
+ ##
538
+ # @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.
539
+ def date_created
540
+ @properties['date_created']
541
+ end
542
+
543
+ ##
544
+ # @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.
545
+ def date_updated
546
+ @properties['date_updated']
547
+ end
548
+
549
+ ##
550
+ # @return [String] The name of the default activity.
551
+ def default_activity_name
552
+ @properties['default_activity_name']
553
+ end
554
+
555
+ ##
556
+ # @return [String] The SID of the Activity that will be used when new Workers are created in the Workspace.
557
+ def default_activity_sid
558
+ @properties['default_activity_sid']
559
+ end
560
+
561
+ ##
562
+ # @return [String] The URL we call when an event occurs. If provided, the Workspace will publish events to this URL, for example, to collect data for reporting. See [Workspace Events](https://www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio's [Webhooks (HTTP callbacks) Connection Overrides](https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).
563
+ def event_callback_url
564
+ @properties['event_callback_url']
565
+ end
566
+
567
+ ##
568
+ # @return [String] The list of Workspace events for which to call `event_callback_url`. For example, if `EventsFilter=task.created, task.canceled, worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.
569
+ def events_filter
570
+ @properties['events_filter']
571
+ end
572
+
573
+ ##
574
+ # @return [String] The string that you assigned to describe the Workspace resource. For example `Customer Support` or `2014 Election Campaign`.
575
+ def friendly_name
576
+ @properties['friendly_name']
577
+ end
578
+
579
+ ##
580
+ # @return [Boolean] Whether multi-tasking is enabled. The default is `true`, which enables multi-tasking. Multi-tasking allows Workers to handle multiple Tasks simultaneously. When enabled (`true`), each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking each Worker would only receive a new reservation when the previous task is completed. Learn more at [Multitasking](https://www.twilio.com/docs/taskrouter/multitasking).
581
+ def multi_task_enabled
582
+ @properties['multi_task_enabled']
583
+ end
584
+
585
+ ##
586
+ # @return [String] The unique string that we created to identify the Workspace resource.
587
+ def sid
588
+ @properties['sid']
589
+ end
590
+
591
+ ##
592
+ # @return [String] The name of the timeout activity.
593
+ def timeout_activity_name
594
+ @properties['timeout_activity_name']
595
+ end
596
+
597
+ ##
598
+ # @return [String] The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.
599
+ def timeout_activity_sid
600
+ @properties['timeout_activity_sid']
601
+ end
602
+
603
+ ##
604
+ # @return [QueueOrder]
605
+ def prioritize_queue_order
606
+ @properties['prioritize_queue_order']
607
+ end
608
+
609
+ ##
610
+ # @return [String] The absolute URL of the Workspace resource.
611
+ def url
612
+ @properties['url']
613
+ end
614
+
615
+ ##
616
+ # @return [Hash] The URLs of related resources.
617
+ def links
618
+ @properties['links']
619
+ end
620
+
621
+ ##
622
+ # Delete the WorkspaceInstance
623
+ # @return [Boolean] True if delete succeeds, false otherwise
624
+ def delete
625
+
626
+ context.delete
627
+ end
628
+
629
+ ##
630
+ # Fetch the WorkspaceInstance
631
+ # @return [WorkspaceInstance] Fetched WorkspaceInstance
632
+ def fetch
633
+
634
+ context.fetch
635
+ end
636
+
637
+ ##
638
+ # Update the WorkspaceInstance
639
+ # @param [String] default_activity_sid The SID of the Activity that will be used when new Workers are created in the Workspace.
640
+ # @param [String] event_callback_url The URL we should call when an event occurs. See [Workspace Events](https://www.twilio.com/docs/taskrouter/api/event) for more information. This parameter supports Twilio's [Webhooks (HTTP callbacks) Connection Overrides](https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides).
641
+ # @param [String] events_filter The list of Workspace events for which to call event_callback_url. For example if `EventsFilter=task.created,task.canceled,worker.activity.update`, then TaskRouter will call event_callback_url only when a task is created, canceled, or a Worker activity is updated.
642
+ # @param [String] friendly_name A descriptive string that you create to describe the Workspace resource. For example: `Sales Call Center` or `Customer Support Team`.
643
+ # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be: `true` to enable multi-tasking, or `false` to disable it. However, all workspaces should be maintained as multi-tasking. There is no default when omitting this parameter. A multi-tasking Workspace can't be updated to single-tasking unless it is not a Flex Project and another (legacy) single-tasking Workspace exists. Multi-tasking allows Workers to handle multiple Tasks simultaneously. In multi-tasking mode, each Worker can receive parallel reservations up to the per-channel maximums defined in the Workers section. In single-tasking mode (legacy mode), each Worker will only receive a new reservation when the previous task is completed. Learn more at [Multitasking](https://www.twilio.com/docs/taskrouter/multitasking).
644
+ # @param [String] timeout_activity_sid The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response.
645
+ # @param [QueueOrder] prioritize_queue_order
646
+ # @return [WorkspaceInstance] Updated WorkspaceInstance
647
+ def update(
648
+ default_activity_sid: :unset,
649
+ event_callback_url: :unset,
650
+ events_filter: :unset,
651
+ friendly_name: :unset,
652
+ multi_task_enabled: :unset,
653
+ timeout_activity_sid: :unset,
654
+ prioritize_queue_order: :unset
655
+ )
656
+
657
+ context.update(
658
+ default_activity_sid: default_activity_sid,
659
+ event_callback_url: event_callback_url,
660
+ events_filter: events_filter,
661
+ friendly_name: friendly_name,
662
+ multi_task_enabled: multi_task_enabled,
663
+ timeout_activity_sid: timeout_activity_sid,
664
+ prioritize_queue_order: prioritize_queue_order,
665
+ )
666
+ end
667
+
668
+ ##
669
+ # Access the cumulative_statistics
670
+ # @return [cumulative_statistics] cumulative_statistics
671
+ def cumulative_statistics
672
+ context.cumulative_statistics
673
+ end
674
+
675
+ ##
676
+ # Access the task_queues
677
+ # @return [task_queues] task_queues
678
+ def task_queues
679
+ context.task_queues
680
+ end
681
+
682
+ ##
683
+ # Access the activities
684
+ # @return [activities] activities
685
+ def activities
686
+ context.activities
687
+ end
688
+
689
+ ##
690
+ # Access the real_time_statistics
691
+ # @return [real_time_statistics] real_time_statistics
692
+ def real_time_statistics
693
+ context.real_time_statistics
694
+ end
695
+
696
+ ##
697
+ # Access the tasks
698
+ # @return [tasks] tasks
699
+ def tasks
700
+ context.tasks
701
+ end
702
+
703
+ ##
704
+ # Access the workflows
705
+ # @return [workflows] workflows
706
+ def workflows
707
+ context.workflows
708
+ end
709
+
710
+ ##
711
+ # Access the events
712
+ # @return [events] events
713
+ def events
714
+ context.events
715
+ end
716
+
717
+ ##
718
+ # Access the workers
719
+ # @return [workers] workers
720
+ def workers
721
+ context.workers
722
+ end
723
+
724
+ ##
725
+ # Access the statistics
726
+ # @return [statistics] statistics
727
+ def statistics
728
+ context.statistics
729
+ end
730
+
731
+ ##
732
+ # Access the task_channels
733
+ # @return [task_channels] task_channels
734
+ def task_channels
735
+ context.task_channels
736
+ end
737
+
738
+ ##
739
+ # Provide a user friendly representation
740
+ def to_s
741
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
742
+ "<Twilio.Taskrouter.V1.WorkspaceInstance #{values}>"
743
+ end
744
+
745
+ ##
746
+ # Provide a detailed, user friendly representation
747
+ def inspect
748
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
749
+ "<Twilio.Taskrouter.V1.WorkspaceInstance #{values}>"
750
+ end
751
+ end
456
752
 
457
- class WorkspaceInstance < InstanceResource
458
- ##
459
- # Initialize the WorkspaceInstance
460
- # @param [Version] version Version that contains the resource
461
- # @param [Hash] payload payload that contains response from Twilio
462
- # @param [String] sid The SID of the Workspace resource to fetch.
463
- # @return [WorkspaceInstance] WorkspaceInstance
464
- def initialize(version, payload, sid: nil)
465
- super(version)
466
-
467
- # Marshaled Properties
468
- @properties = {
469
- 'account_sid' => payload['account_sid'],
470
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
471
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
472
- 'default_activity_name' => payload['default_activity_name'],
473
- 'default_activity_sid' => payload['default_activity_sid'],
474
- 'event_callback_url' => payload['event_callback_url'],
475
- 'events_filter' => payload['events_filter'],
476
- 'friendly_name' => payload['friendly_name'],
477
- 'multi_task_enabled' => payload['multi_task_enabled'],
478
- 'sid' => payload['sid'],
479
- 'timeout_activity_name' => payload['timeout_activity_name'],
480
- 'timeout_activity_sid' => payload['timeout_activity_sid'],
481
- 'prioritize_queue_order' => payload['prioritize_queue_order'],
482
- 'url' => payload['url'],
483
- 'links' => payload['links'],
484
- }
485
-
486
- # Context
487
- @instance_context = nil
488
- @params = {'sid' => sid || @properties['sid'], }
489
- end
490
-
491
- ##
492
- # Generate an instance context for the instance, the context is capable of
493
- # performing various actions. All instance actions are proxied to the context
494
- # @return [WorkspaceContext] WorkspaceContext for this WorkspaceInstance
495
- def context
496
- unless @instance_context
497
- @instance_context = WorkspaceContext.new(@version, @params['sid'], )
498
753
  end
499
- @instance_context
500
- end
501
-
502
- ##
503
- # @return [String] The SID of the Account that created the resource
504
- def account_sid
505
- @properties['account_sid']
506
- end
507
-
508
- ##
509
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
510
- def date_created
511
- @properties['date_created']
512
- end
513
-
514
- ##
515
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
516
- def date_updated
517
- @properties['date_updated']
518
- end
519
-
520
- ##
521
- # @return [String] The name of the default activity
522
- def default_activity_name
523
- @properties['default_activity_name']
524
- end
525
-
526
- ##
527
- # @return [String] The SID of the Activity that will be used when new Workers are created in the Workspace
528
- def default_activity_sid
529
- @properties['default_activity_sid']
530
- end
531
-
532
- ##
533
- # @return [String] The URL we call when an event occurs
534
- def event_callback_url
535
- @properties['event_callback_url']
536
- end
537
-
538
- ##
539
- # @return [String] The list of Workspace events for which to call event_callback_url
540
- def events_filter
541
- @properties['events_filter']
542
- end
543
-
544
- ##
545
- # @return [String] The string that you assigned to describe the Workspace resource
546
- def friendly_name
547
- @properties['friendly_name']
548
- end
549
-
550
- ##
551
- # @return [Boolean] Whether multi-tasking is enabled
552
- def multi_task_enabled
553
- @properties['multi_task_enabled']
554
- end
555
-
556
- ##
557
- # @return [String] The unique string that identifies the resource
558
- def sid
559
- @properties['sid']
560
- end
561
-
562
- ##
563
- # @return [String] The name of the timeout activity
564
- def timeout_activity_name
565
- @properties['timeout_activity_name']
566
- end
567
-
568
- ##
569
- # @return [String] The SID of the Activity that will be assigned to a Worker when a Task reservation times out without a response
570
- def timeout_activity_sid
571
- @properties['timeout_activity_sid']
572
- end
573
-
574
- ##
575
- # @return [workspace.QueueOrder] The type of TaskQueue to prioritize when Workers are receiving Tasks from both types of TaskQueues
576
- def prioritize_queue_order
577
- @properties['prioritize_queue_order']
578
- end
579
-
580
- ##
581
- # @return [String] The absolute URL of the Workspace resource
582
- def url
583
- @properties['url']
584
- end
585
-
586
- ##
587
- # @return [String] The URLs of related resources
588
- def links
589
- @properties['links']
590
- end
591
-
592
- ##
593
- # Fetch the WorkspaceInstance
594
- # @return [WorkspaceInstance] Fetched WorkspaceInstance
595
- def fetch
596
- context.fetch
597
- end
598
-
599
- ##
600
- # Update the WorkspaceInstance
601
- # @param [String] default_activity_sid The SID of the Activity that will be used
602
- # when new Workers are created in the Workspace.
603
- # @param [String] event_callback_url The URL we should call when an event occurs.
604
- # See {Workspace Events}[https://www.twilio.com/docs/taskrouter/api/event] for
605
- # more information. This parameter supports Twilio's {Webhooks (HTTP callbacks)
606
- # Connection
607
- # Overrides}[https://www.twilio.com/docs/usage/webhooks/webhooks-connection-overrides].
608
- # @param [String] events_filter The list of Workspace events for which to call
609
- # event_callback_url. For example if
610
- # `EventsFilter=task.created,task.canceled,worker.activity.update`, then
611
- # TaskRouter will call event_callback_url only when a task is created, canceled,
612
- # or a Worker activity is updated.
613
- # @param [String] friendly_name A descriptive string that you create to describe
614
- # the Workspace resource. For example: `Sales Call Center` or `Customer Support
615
- # Team`.
616
- # @param [Boolean] multi_task_enabled Whether to enable multi-tasking. Can be:
617
- # `true` to enable multi-tasking, or `false` to disable it. However, all
618
- # workspaces should be maintained as multi-tasking. There is no default when
619
- # omitting this parameter. A multi-tasking Workspace can't be updated to
620
- # single-tasking unless it is not a Flex Project and another (legacy)
621
- # single-tasking Workspace exists. Multi-tasking allows Workers to handle multiple
622
- # Tasks simultaneously. In multi-tasking mode, each Worker can receive parallel
623
- # reservations up to the per-channel maximums defined in the Workers section. In
624
- # single-tasking mode (legacy mode), each Worker will only receive a new
625
- # reservation when the previous task is completed. Learn more at
626
- # {Multitasking}[https://www.twilio.com/docs/taskrouter/multitasking].
627
- # @param [String] timeout_activity_sid The SID of the Activity that will be
628
- # assigned to a Worker when a Task reservation times out without a response.
629
- # @param [workspace.QueueOrder] prioritize_queue_order The type of TaskQueue to
630
- # prioritize when Workers are receiving Tasks from both types of TaskQueues. Can
631
- # be: `LIFO` or `FIFO`. For more information, see {Queue
632
- # Ordering}[https://www.twilio.com/docs/taskrouter/queue-ordering-last-first-out-lifo].
633
- # @return [WorkspaceInstance] Updated WorkspaceInstance
634
- def update(default_activity_sid: :unset, event_callback_url: :unset, events_filter: :unset, friendly_name: :unset, multi_task_enabled: :unset, timeout_activity_sid: :unset, prioritize_queue_order: :unset)
635
- context.update(
636
- default_activity_sid: default_activity_sid,
637
- event_callback_url: event_callback_url,
638
- events_filter: events_filter,
639
- friendly_name: friendly_name,
640
- multi_task_enabled: multi_task_enabled,
641
- timeout_activity_sid: timeout_activity_sid,
642
- prioritize_queue_order: prioritize_queue_order,
643
- )
644
- end
645
-
646
- ##
647
- # Delete the WorkspaceInstance
648
- # @return [Boolean] true if delete succeeds, false otherwise
649
- def delete
650
- context.delete
651
- end
652
-
653
- ##
654
- # Access the activities
655
- # @return [activities] activities
656
- def activities
657
- context.activities
658
- end
659
-
660
- ##
661
- # Access the events
662
- # @return [events] events
663
- def events
664
- context.events
665
- end
666
-
667
- ##
668
- # Access the tasks
669
- # @return [tasks] tasks
670
- def tasks
671
- context.tasks
672
- end
673
-
674
- ##
675
- # Access the task_queues
676
- # @return [task_queues] task_queues
677
- def task_queues
678
- context.task_queues
679
- end
680
-
681
- ##
682
- # Access the workers
683
- # @return [workers] workers
684
- def workers
685
- context.workers
686
- end
687
-
688
- ##
689
- # Access the workflows
690
- # @return [workflows] workflows
691
- def workflows
692
- context.workflows
693
- end
694
-
695
- ##
696
- # Access the statistics
697
- # @return [statistics] statistics
698
- def statistics
699
- context.statistics
700
- end
701
-
702
- ##
703
- # Access the real_time_statistics
704
- # @return [real_time_statistics] real_time_statistics
705
- def real_time_statistics
706
- context.real_time_statistics
707
- end
708
-
709
- ##
710
- # Access the cumulative_statistics
711
- # @return [cumulative_statistics] cumulative_statistics
712
- def cumulative_statistics
713
- context.cumulative_statistics
714
- end
715
-
716
- ##
717
- # Access the task_channels
718
- # @return [task_channels] task_channels
719
- def task_channels
720
- context.task_channels
721
- end
722
-
723
- ##
724
- # Provide a user friendly representation
725
- def to_s
726
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
727
- "<Twilio.Taskrouter.V1.WorkspaceInstance #{values}>"
728
- end
729
-
730
- ##
731
- # Provide a detailed, user friendly representation
732
- def inspect
733
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
734
- "<Twilio.Taskrouter.V1.WorkspaceInstance #{values}>"
735
- end
736
754
  end
737
- end
738
755
  end
739
- end
740
- end
756
+ end