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,644 +1,654 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - 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.
6
13
  #
7
- # frozen_string_literal: true
8
-
9
- module Twilio
10
- module REST
11
- class Taskrouter < Domain
12
- class V1 < Version
13
- class WorkspaceContext < InstanceContext
14
- class WorkerList < ListResource
15
- ##
16
- # Initialize the WorkerList
17
- # @param [Version] version Version that contains the resource
18
- # @param [String] workspace_sid The SID of the Workspace that contains the Worker.
19
- # @return [WorkerList] WorkerList
20
- def initialize(version, workspace_sid: nil)
21
- super(version)
22
-
23
- # Path Solution
24
- @solution = {workspace_sid: workspace_sid}
25
- @uri = "/Workspaces/#{@solution[:workspace_sid]}/Workers"
26
-
27
- # Components
28
- @statistics = nil
29
- end
30
-
31
- ##
32
- # Lists WorkerInstance records from the API as a list.
33
- # Unlike stream(), this operation is eager and will load `limit` records into
34
- # memory before returning.
35
- # @param [String] activity_name The `activity_name` of the Worker resources to
36
- # read.
37
- # @param [String] activity_sid The `activity_sid` of the Worker resources to read.
38
- # @param [String] available Whether to return only Worker resources that are
39
- # available or unavailable. Can be `true`, `1`, or `yes` to return Worker
40
- # resources that are available, and `false`, or any value returns the Worker
41
- # resources that are not available.
42
- # @param [String] friendly_name The `friendly_name` of the Worker resources to
43
- # read.
44
- # @param [String] target_workers_expression Filter by Workers that would match an
45
- # expression on a TaskQueue. This is helpful for debugging which Workers would
46
- # match a potential queue.
47
- # @param [String] task_queue_name The `friendly_name` of the TaskQueue that the
48
- # Workers to read are eligible for.
49
- # @param [String] task_queue_sid The SID of the TaskQueue that the Workers to read
50
- # are eligible for.
51
- # @param [String] ordering Sorting parameter for Workers
52
- # @param [Integer] limit Upper limit for the number of records to return. stream()
53
- # guarantees to never return more than limit. Default is no limit
54
- # @param [Integer] page_size Number of records to fetch per request, when
55
- # not set will use the default value of 50 records. If no page_size is defined
56
- # but a limit is defined, stream() will attempt to read the limit with the most
57
- # efficient page size, i.e. min(limit, 1000)
58
- # @return [Array] Array of up to limit results
59
- def list(activity_name: :unset, activity_sid: :unset, available: :unset, friendly_name: :unset, target_workers_expression: :unset, task_queue_name: :unset, task_queue_sid: :unset, ordering: :unset, limit: nil, page_size: nil)
60
- self.stream(
61
- activity_name: activity_name,
62
- activity_sid: activity_sid,
63
- available: available,
64
- friendly_name: friendly_name,
65
- target_workers_expression: target_workers_expression,
66
- task_queue_name: task_queue_name,
67
- task_queue_sid: task_queue_sid,
68
- ordering: ordering,
69
- limit: limit,
70
- page_size: page_size
71
- ).entries
72
- end
73
-
74
- ##
75
- # Streams WorkerInstance records from the API as an Enumerable.
76
- # This operation lazily loads records as efficiently as possible until the limit
77
- # is reached.
78
- # @param [String] activity_name The `activity_name` of the Worker resources to
79
- # read.
80
- # @param [String] activity_sid The `activity_sid` of the Worker resources to read.
81
- # @param [String] available Whether to return only Worker resources that are
82
- # available or unavailable. Can be `true`, `1`, or `yes` to return Worker
83
- # resources that are available, and `false`, or any value returns the Worker
84
- # resources that are not available.
85
- # @param [String] friendly_name The `friendly_name` of the Worker resources to
86
- # read.
87
- # @param [String] target_workers_expression Filter by Workers that would match an
88
- # expression on a TaskQueue. This is helpful for debugging which Workers would
89
- # match a potential queue.
90
- # @param [String] task_queue_name The `friendly_name` of the TaskQueue that the
91
- # Workers to read are eligible for.
92
- # @param [String] task_queue_sid The SID of the TaskQueue that the Workers to read
93
- # are eligible for.
94
- # @param [String] ordering Sorting parameter for Workers
95
- # @param [Integer] limit Upper limit for the number of records to return. stream()
96
- # guarantees to never return more than limit. Default is no limit.
97
- # @param [Integer] page_size Number of records to fetch per request, when
98
- # not set will use the default value of 50 records. If no page_size is defined
99
- # but a limit is defined, stream() will attempt to read the limit with the most
100
- # efficient page size, i.e. min(limit, 1000)
101
- # @return [Enumerable] Enumerable that will yield up to limit results
102
- def stream(activity_name: :unset, activity_sid: :unset, available: :unset, friendly_name: :unset, target_workers_expression: :unset, task_queue_name: :unset, task_queue_sid: :unset, ordering: :unset, limit: nil, page_size: nil)
103
- limits = @version.read_limits(limit, page_size)
104
-
105
- page = self.page(
106
- activity_name: activity_name,
107
- activity_sid: activity_sid,
108
- available: available,
109
- friendly_name: friendly_name,
110
- target_workers_expression: target_workers_expression,
111
- task_queue_name: task_queue_name,
112
- task_queue_sid: task_queue_sid,
113
- ordering: ordering,
114
- page_size: limits[:page_size],
115
- )
116
-
117
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
118
- end
119
-
120
- ##
121
- # When passed a block, yields WorkerInstance records from the API.
122
- # This operation lazily loads records as efficiently as possible until the limit
123
- # is reached.
124
- def each
125
- limits = @version.read_limits
126
-
127
- page = self.page(page_size: limits[:page_size], )
128
-
129
- @version.stream(page,
130
- limit: limits[:limit],
131
- page_limit: limits[:page_limit]).each {|x| yield x}
132
- end
133
-
134
- ##
135
- # Retrieve a single page of WorkerInstance records from the API.
136
- # Request is executed immediately.
137
- # @param [String] activity_name The `activity_name` of the Worker resources to
138
- # read.
139
- # @param [String] activity_sid The `activity_sid` of the Worker resources to read.
140
- # @param [String] available Whether to return only Worker resources that are
141
- # available or unavailable. Can be `true`, `1`, or `yes` to return Worker
142
- # resources that are available, and `false`, or any value returns the Worker
143
- # resources that are not available.
144
- # @param [String] friendly_name The `friendly_name` of the Worker resources to
145
- # read.
146
- # @param [String] target_workers_expression Filter by Workers that would match an
147
- # expression on a TaskQueue. This is helpful for debugging which Workers would
148
- # match a potential queue.
149
- # @param [String] task_queue_name The `friendly_name` of the TaskQueue that the
150
- # Workers to read are eligible for.
151
- # @param [String] task_queue_sid The SID of the TaskQueue that the Workers to read
152
- # are eligible for.
153
- # @param [String] ordering Sorting parameter for Workers
154
- # @param [String] page_token PageToken provided by the API
155
- # @param [Integer] page_number Page Number, this value is simply for client state
156
- # @param [Integer] page_size Number of records to return, defaults to 50
157
- # @return [Page] Page of WorkerInstance
158
- def page(activity_name: :unset, activity_sid: :unset, available: :unset, friendly_name: :unset, target_workers_expression: :unset, task_queue_name: :unset, task_queue_sid: :unset, ordering: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
159
- params = Twilio::Values.of({
160
- 'ActivityName' => activity_name,
161
- 'ActivitySid' => activity_sid,
162
- 'Available' => available,
163
- 'FriendlyName' => friendly_name,
164
- 'TargetWorkersExpression' => target_workers_expression,
165
- 'TaskQueueName' => task_queue_name,
166
- 'TaskQueueSid' => task_queue_sid,
167
- 'Ordering' => ordering,
168
- 'PageToken' => page_token,
169
- 'Page' => page_number,
170
- 'PageSize' => page_size,
171
- })
172
-
173
- response = @version.page('GET', @uri, params: params)
174
-
175
- WorkerPage.new(@version, response, @solution)
176
- end
177
-
178
- ##
179
- # Retrieve a single page of WorkerInstance records from the API.
180
- # Request is executed immediately.
181
- # @param [String] target_url API-generated URL for the requested results page
182
- # @return [Page] Page of WorkerInstance
183
- def get_page(target_url)
184
- response = @version.domain.request(
185
- 'GET',
186
- target_url
187
- )
188
- WorkerPage.new(@version, response, @solution)
189
- end
190
-
191
- ##
192
- # Create the WorkerInstance
193
- # @param [String] friendly_name A descriptive string that you create to describe
194
- # the new Worker. It can be up to 64 characters long.
195
- # @param [String] activity_sid The SID of a valid Activity that will describe the
196
- # new Worker's initial state. See
197
- # {Activities}[https://www.twilio.com/docs/taskrouter/api/activity] for more
198
- # information. If not provided, the new Worker's initial state is the
199
- # `default_activity_sid` configured on the Workspace.
200
- # @param [String] attributes A valid JSON string that describes the new Worker.
201
- # For example: `{ "email": "Bob@example.com", "phone": "+5095551234" }`. This data
202
- # is passed to the `assignment_callback_url` when TaskRouter assigns a Task to the
203
- # Worker. Defaults to {}.
204
- # @return [WorkerInstance] Created WorkerInstance
205
- def create(friendly_name: nil, activity_sid: :unset, attributes: :unset)
206
- data = Twilio::Values.of({
207
- 'FriendlyName' => friendly_name,
208
- 'ActivitySid' => activity_sid,
209
- 'Attributes' => attributes,
210
- })
211
-
212
- payload = @version.create('POST', @uri, data: data)
213
-
214
- WorkerInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], )
215
- end
216
-
217
- ##
218
- # Access the statistics
219
- # @return [WorkersStatisticsContext] WorkersStatisticsContext
220
- def statistics
221
- return WorkersStatisticsContext.new(@version, @solution[:workspace_sid], )
222
- end
223
-
224
- ##
225
- # Provide a user friendly representation
226
- def to_s
227
- '#<Twilio.Taskrouter.V1.WorkerList>'
228
- end
229
- end
230
-
231
- class WorkerPage < Page
232
- ##
233
- # Initialize the WorkerPage
234
- # @param [Version] version Version that contains the resource
235
- # @param [Response] response Response from the API
236
- # @param [Hash] solution Path solution for the resource
237
- # @return [WorkerPage] WorkerPage
238
- def initialize(version, response, solution)
239
- super(version, response)
240
-
241
- # Path Solution
242
- @solution = solution
243
- end
244
-
245
- ##
246
- # Build an instance of WorkerInstance
247
- # @param [Hash] payload Payload response from the API
248
- # @return [WorkerInstance] WorkerInstance
249
- def get_instance(payload)
250
- WorkerInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], )
251
- end
252
-
253
- ##
254
- # Provide a user friendly representation
255
- def to_s
256
- '<Twilio.Taskrouter.V1.WorkerPage>'
257
- end
258
- end
259
-
260
- class WorkerContext < InstanceContext
261
- ##
262
- # Initialize the WorkerContext
263
- # @param [Version] version Version that contains the resource
264
- # @param [String] workspace_sid The SID of the Workspace with the Worker to fetch.
265
- # @param [String] sid The SID of the Worker resource to fetch.
266
- # @return [WorkerContext] WorkerContext
267
- def initialize(version, workspace_sid, sid)
268
- super(version)
269
-
270
- # Path Solution
271
- @solution = {workspace_sid: workspace_sid, sid: sid, }
272
- @uri = "/Workspaces/#{@solution[:workspace_sid]}/Workers/#{@solution[:sid]}"
273
-
274
- # Dependents
275
- @real_time_statistics = nil
276
- @cumulative_statistics = nil
277
- @statistics = nil
278
- @reservations = nil
279
- @worker_channels = nil
280
- end
281
-
282
- ##
283
- # Fetch the WorkerInstance
284
- # @return [WorkerInstance] Fetched WorkerInstance
285
- def fetch
286
- payload = @version.fetch('GET', @uri)
287
-
288
- WorkerInstance.new(
289
- @version,
290
- payload,
291
- workspace_sid: @solution[:workspace_sid],
292
- sid: @solution[:sid],
293
- )
294
- end
295
-
296
- ##
297
- # Update the WorkerInstance
298
- # @param [String] activity_sid The SID of a valid Activity that will describe the
299
- # Worker's initial state. See
300
- # {Activities}[https://www.twilio.com/docs/taskrouter/api/activity] for more
301
- # information.
302
- # @param [String] attributes The JSON string that describes the Worker. For
303
- # example: `{ "email": "Bob@example.com", "phone": "+5095551234" }`. This data is
304
- # passed to the `assignment_callback_url` when TaskRouter assigns a Task to the
305
- # Worker. Defaults to {}.
306
- # @param [String] friendly_name A descriptive string that you create to describe
307
- # the Worker. It can be up to 64 characters long.
308
- # @param [Boolean] reject_pending_reservations Whether to reject the Worker's
309
- # pending reservations. This option is only valid if the Worker's new
310
- # {Activity}[https://www.twilio.com/docs/taskrouter/api/activity] resource has its
311
- # `availability` property set to `False`.
312
- # @param [String] if_match The If-Match HTTP request header
313
- # @return [WorkerInstance] Updated WorkerInstance
314
- def update(activity_sid: :unset, attributes: :unset, friendly_name: :unset, reject_pending_reservations: :unset, if_match: :unset)
315
- data = Twilio::Values.of({
316
- 'ActivitySid' => activity_sid,
317
- 'Attributes' => attributes,
318
- 'FriendlyName' => friendly_name,
319
- 'RejectPendingReservations' => reject_pending_reservations,
320
- })
321
- headers = Twilio::Values.of({'If-Match' => if_match, })
322
-
323
- payload = @version.update('POST', @uri, data: data, headers: headers)
324
-
325
- WorkerInstance.new(
326
- @version,
327
- payload,
328
- workspace_sid: @solution[:workspace_sid],
329
- sid: @solution[:sid],
330
- )
331
- end
332
-
333
- ##
334
- # Delete the WorkerInstance
335
- # @param [String] if_match The If-Match HTTP request header
336
- # @return [Boolean] true if delete succeeds, false otherwise
337
- def delete(if_match: :unset)
338
- headers = Twilio::Values.of({'If-Match' => if_match, })
339
-
340
- @version.delete('DELETE', @uri, headers: headers)
341
- end
342
-
343
- ##
344
- # Access the real_time_statistics
345
- # @return [WorkersRealTimeStatisticsList]
346
- # @return [WorkersRealTimeStatisticsContext]
347
- def real_time_statistics
348
- WorkersRealTimeStatisticsContext.new(@version, @solution[:workspace_sid], )
349
- end
350
-
351
- ##
352
- # Access the cumulative_statistics
353
- # @return [WorkersCumulativeStatisticsList]
354
- # @return [WorkersCumulativeStatisticsContext]
355
- def cumulative_statistics
356
- WorkersCumulativeStatisticsContext.new(@version, @solution[:workspace_sid], )
357
- end
358
-
359
- ##
360
- # Access the statistics
361
- # @return [WorkerStatisticsList]
362
- # @return [WorkerStatisticsContext]
363
- def statistics
364
- WorkerStatisticsContext.new(@version, @solution[:workspace_sid], @solution[:sid], )
365
- end
366
-
367
- ##
368
- # Access the reservations
369
- # @return [ReservationList]
370
- # @return [ReservationContext] if sid was passed.
371
- def reservations(sid=:unset)
372
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
373
-
374
- if sid != :unset
375
- return ReservationContext.new(@version, @solution[:workspace_sid], @solution[:sid], sid, )
376
- end
377
-
378
- unless @reservations
379
- @reservations = ReservationList.new(
380
- @version,
381
- workspace_sid: @solution[:workspace_sid],
382
- worker_sid: @solution[:sid],
383
- )
384
- end
385
-
386
- @reservations
387
- end
388
-
389
- ##
390
- # Access the worker_channels
391
- # @return [WorkerChannelList]
392
- # @return [WorkerChannelContext] if sid was passed.
393
- def worker_channels(sid=:unset)
394
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
395
-
396
- if sid != :unset
397
- return WorkerChannelContext.new(@version, @solution[:workspace_sid], @solution[:sid], sid, )
398
- end
399
-
400
- unless @worker_channels
401
- @worker_channels = WorkerChannelList.new(
402
- @version,
403
- workspace_sid: @solution[:workspace_sid],
404
- worker_sid: @solution[:sid],
405
- )
406
- end
407
-
408
- @worker_channels
409
- end
410
-
411
- ##
412
- # Provide a user friendly representation
413
- def to_s
414
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
415
- "#<Twilio.Taskrouter.V1.WorkerContext #{context}>"
416
- end
417
-
418
- ##
419
- # Provide a detailed, user friendly representation
420
- def inspect
421
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
422
- "#<Twilio.Taskrouter.V1.WorkerContext #{context}>"
423
- end
424
- end
425
-
426
- class WorkerInstance < InstanceResource
427
- ##
428
- # Initialize the WorkerInstance
429
- # @param [Version] version Version that contains the resource
430
- # @param [Hash] payload payload that contains response from Twilio
431
- # @param [String] workspace_sid The SID of the Workspace that contains the Worker.
432
- # @param [String] sid The SID of the Worker resource to fetch.
433
- # @return [WorkerInstance] WorkerInstance
434
- def initialize(version, payload, workspace_sid: nil, sid: nil)
435
- super(version)
436
-
437
- # Marshaled Properties
438
- @properties = {
439
- 'account_sid' => payload['account_sid'],
440
- 'activity_name' => payload['activity_name'],
441
- 'activity_sid' => payload['activity_sid'],
442
- 'attributes' => payload['attributes'],
443
- 'available' => payload['available'],
444
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
445
- 'date_status_changed' => Twilio.deserialize_iso8601_datetime(payload['date_status_changed']),
446
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
447
- 'friendly_name' => payload['friendly_name'],
448
- 'sid' => payload['sid'],
449
- 'workspace_sid' => payload['workspace_sid'],
450
- 'url' => payload['url'],
451
- 'links' => payload['links'],
452
- }
453
-
454
- # Context
455
- @instance_context = nil
456
- @params = {'workspace_sid' => workspace_sid, 'sid' => sid || @properties['sid'], }
457
- end
458
-
459
- ##
460
- # Generate an instance context for the instance, the context is capable of
461
- # performing various actions. All instance actions are proxied to the context
462
- # @return [WorkerContext] WorkerContext for this WorkerInstance
463
- def context
464
- unless @instance_context
465
- @instance_context = WorkerContext.new(@version, @params['workspace_sid'], @params['sid'], )
466
- end
467
- @instance_context
468
- end
469
-
470
- ##
471
- # @return [String] The SID of the Account that created the resource
472
- def account_sid
473
- @properties['account_sid']
474
- end
475
-
476
- ##
477
- # @return [String] The friendly_name of the Worker's current Activity
478
- def activity_name
479
- @properties['activity_name']
480
- end
481
-
482
- ##
483
- # @return [String] The SID of the Worker's current Activity
484
- def activity_sid
485
- @properties['activity_sid']
486
- end
487
-
488
- ##
489
- # @return [String] The JSON string that describes the Worker
490
- def attributes
491
- @properties['attributes']
492
- end
493
-
494
- ##
495
- # @return [Boolean] Whether the Worker is available to perform tasks
496
- def available
497
- @properties['available']
498
- end
499
-
500
- ##
501
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
502
- def date_created
503
- @properties['date_created']
504
- end
505
-
506
- ##
507
- # @return [Time] The date and time in GMT of the last change to the Worker's activity
508
- def date_status_changed
509
- @properties['date_status_changed']
510
- end
511
-
512
- ##
513
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
514
- def date_updated
515
- @properties['date_updated']
516
- end
517
-
518
- ##
519
- # @return [String] The string that you assigned to describe the resource
520
- def friendly_name
521
- @properties['friendly_name']
522
- end
523
-
524
- ##
525
- # @return [String] The unique string that identifies the resource
526
- def sid
527
- @properties['sid']
528
- end
529
-
530
- ##
531
- # @return [String] The SID of the Workspace that contains the Worker
532
- def workspace_sid
533
- @properties['workspace_sid']
534
- end
535
-
536
- ##
537
- # @return [String] The absolute URL of the Worker resource
538
- def url
539
- @properties['url']
540
- end
541
-
542
- ##
543
- # @return [String] The URLs of related resources
544
- def links
545
- @properties['links']
546
- end
547
-
548
- ##
549
- # Fetch the WorkerInstance
550
- # @return [WorkerInstance] Fetched WorkerInstance
551
- def fetch
552
- context.fetch
553
- end
554
-
555
- ##
556
- # Update the WorkerInstance
557
- # @param [String] activity_sid The SID of a valid Activity that will describe the
558
- # Worker's initial state. See
559
- # {Activities}[https://www.twilio.com/docs/taskrouter/api/activity] for more
560
- # information.
561
- # @param [String] attributes The JSON string that describes the Worker. For
562
- # example: `{ "email": "Bob@example.com", "phone": "+5095551234" }`. This data is
563
- # passed to the `assignment_callback_url` when TaskRouter assigns a Task to the
564
- # Worker. Defaults to {}.
565
- # @param [String] friendly_name A descriptive string that you create to describe
566
- # the Worker. It can be up to 64 characters long.
567
- # @param [Boolean] reject_pending_reservations Whether to reject the Worker's
568
- # pending reservations. This option is only valid if the Worker's new
569
- # {Activity}[https://www.twilio.com/docs/taskrouter/api/activity] resource has its
570
- # `availability` property set to `False`.
571
- # @param [String] if_match The If-Match HTTP request header
572
- # @return [WorkerInstance] Updated WorkerInstance
573
- def update(activity_sid: :unset, attributes: :unset, friendly_name: :unset, reject_pending_reservations: :unset, if_match: :unset)
574
- context.update(
575
- activity_sid: activity_sid,
576
- attributes: attributes,
577
- friendly_name: friendly_name,
578
- reject_pending_reservations: reject_pending_reservations,
579
- if_match: if_match,
580
- )
581
- end
582
-
583
- ##
584
- # Delete the WorkerInstance
585
- # @param [String] if_match The If-Match HTTP request header
586
- # @return [Boolean] true if delete succeeds, false otherwise
587
- def delete(if_match: :unset)
588
- context.delete(if_match: if_match, )
589
- end
590
-
591
- ##
592
- # Access the real_time_statistics
593
- # @return [real_time_statistics] real_time_statistics
594
- def real_time_statistics
595
- context.real_time_statistics
596
- end
597
-
598
- ##
599
- # Access the cumulative_statistics
600
- # @return [cumulative_statistics] cumulative_statistics
601
- def cumulative_statistics
602
- context.cumulative_statistics
603
- end
604
-
605
- ##
606
- # Access the statistics
607
- # @return [statistics] statistics
608
- def statistics
609
- context.statistics
610
- end
611
-
612
- ##
613
- # Access the reservations
614
- # @return [reservations] reservations
615
- def reservations
616
- context.reservations
617
- end
618
-
619
- ##
620
- # Access the worker_channels
621
- # @return [worker_channels] worker_channels
622
- def worker_channels
623
- context.worker_channels
624
- end
625
14
 
626
- ##
627
- # Provide a user friendly representation
628
- def to_s
629
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
630
- "<Twilio.Taskrouter.V1.WorkerInstance #{values}>"
631
- end
632
15
 
633
- ##
634
- # Provide a detailed, user friendly representation
635
- def inspect
636
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
637
- "<Twilio.Taskrouter.V1.WorkerInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Taskrouter < TaskrouterBase
19
+ class V1 < Version
20
+ class WorkspaceContext < InstanceContext
21
+
22
+ class WorkerList < ListResource
23
+
24
+ ##
25
+ # Initialize the WorkerList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [WorkerList] WorkerList
28
+ def initialize(version, workspace_sid: nil)
29
+ super(version)
30
+ # Path Solution
31
+ @solution = { workspace_sid: workspace_sid }
32
+ @uri = "/Workspaces/#{@solution[:workspace_sid]}/Workers"
33
+ # Components
34
+ @statistics = nil
35
+ end
36
+ ##
37
+ # Create the WorkerInstance
38
+ # @param [String] friendly_name A descriptive string that you create to describe the new Worker. It can be up to 64 characters long.
39
+ # @param [String] activity_sid The SID of a valid Activity that will describe the new Worker's initial state. See [Activities](https://www.twilio.com/docs/taskrouter/api/activity) for more information. If not provided, the new Worker's initial state is the `default_activity_sid` configured on the Workspace.
40
+ # @param [String] attributes A valid JSON string that describes the new Worker. For example: `{ \\\"email\\\": \\\"Bob@example.com\\\", \\\"phone\\\": \\\"+5095551234\\\" }`. This data is passed to the `assignment_callback_url` when TaskRouter assigns a Task to the Worker. Defaults to {}.
41
+ # @return [WorkerInstance] Created WorkerInstance
42
+ def create(
43
+ friendly_name: nil,
44
+ activity_sid: :unset,
45
+ attributes: :unset
46
+ )
47
+
48
+ data = Twilio::Values.of({
49
+ 'FriendlyName' => friendly_name,
50
+ 'ActivitySid' => activity_sid,
51
+ 'Attributes' => attributes,
52
+ })
53
+
54
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
55
+
56
+
57
+
58
+
59
+
60
+ payload = @version.create('POST', @uri, data: data, headers: headers)
61
+ WorkerInstance.new(
62
+ @version,
63
+ payload,
64
+ workspace_sid: @solution[:workspace_sid],
65
+ )
66
+ end
67
+
68
+
69
+ ##
70
+ # Lists WorkerInstance records from the API as a list.
71
+ # Unlike stream(), this operation is eager and will load `limit` records into
72
+ # memory before returning.
73
+ # @param [String] activity_name The `activity_name` of the Worker resources to read.
74
+ # @param [String] activity_sid The `activity_sid` of the Worker resources to read.
75
+ # @param [String] available Whether to return only Worker resources that are available or unavailable. Can be `true`, `1`, or `yes` to return Worker resources that are available, and `false`, or any value returns the Worker resources that are not available.
76
+ # @param [String] friendly_name The `friendly_name` of the Worker resources to read.
77
+ # @param [String] target_workers_expression Filter by Workers that would match an expression. In addition to fields in the workers' attributes, the expression can include the following worker fields: `sid`, `friendly_name`, `activity_sid`, or `activity_name`
78
+ # @param [String] task_queue_name The `friendly_name` of the TaskQueue that the Workers to read are eligible for.
79
+ # @param [String] task_queue_sid The SID of the TaskQueue that the Workers to read are eligible for.
80
+ # @param [String] ordering Sorting parameter for Workers
81
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
82
+ # guarantees to never return more than limit. Default is no limit
83
+ # @param [Integer] page_size Number of records to fetch per request, when
84
+ # not set will use the default value of 50 records. If no page_size is defined
85
+ # but a limit is defined, stream() will attempt to read the limit with the most
86
+ # efficient page size, i.e. min(limit, 1000)
87
+ # @return [Array] Array of up to limit results
88
+ def list(activity_name: :unset, activity_sid: :unset, available: :unset, friendly_name: :unset, target_workers_expression: :unset, task_queue_name: :unset, task_queue_sid: :unset, ordering: :unset, limit: nil, page_size: nil)
89
+ self.stream(
90
+ activity_name: activity_name,
91
+ activity_sid: activity_sid,
92
+ available: available,
93
+ friendly_name: friendly_name,
94
+ target_workers_expression: target_workers_expression,
95
+ task_queue_name: task_queue_name,
96
+ task_queue_sid: task_queue_sid,
97
+ ordering: ordering,
98
+ limit: limit,
99
+ page_size: page_size
100
+ ).entries
101
+ end
102
+
103
+ ##
104
+ # Streams Instance records from the API as an Enumerable.
105
+ # This operation lazily loads records as efficiently as possible until the limit
106
+ # is reached.
107
+ # @param [String] activity_name The `activity_name` of the Worker resources to read.
108
+ # @param [String] activity_sid The `activity_sid` of the Worker resources to read.
109
+ # @param [String] available Whether to return only Worker resources that are available or unavailable. Can be `true`, `1`, or `yes` to return Worker resources that are available, and `false`, or any value returns the Worker resources that are not available.
110
+ # @param [String] friendly_name The `friendly_name` of the Worker resources to read.
111
+ # @param [String] target_workers_expression Filter by Workers that would match an expression. In addition to fields in the workers' attributes, the expression can include the following worker fields: `sid`, `friendly_name`, `activity_sid`, or `activity_name`
112
+ # @param [String] task_queue_name The `friendly_name` of the TaskQueue that the Workers to read are eligible for.
113
+ # @param [String] task_queue_sid The SID of the TaskQueue that the Workers to read are eligible for.
114
+ # @param [String] ordering Sorting parameter for Workers
115
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
116
+ # guarantees to never return more than limit. Default is no limit
117
+ # @param [Integer] page_size Number of records to fetch per request, when
118
+ # not set will use the default value of 50 records. If no page_size is defined
119
+ # but a limit is defined, stream() will attempt to read the limit with the most
120
+ # efficient page size, i.e. min(limit, 1000)
121
+ # @return [Enumerable] Enumerable that will yield up to limit results
122
+ def stream(activity_name: :unset, activity_sid: :unset, available: :unset, friendly_name: :unset, target_workers_expression: :unset, task_queue_name: :unset, task_queue_sid: :unset, ordering: :unset, limit: nil, page_size: nil)
123
+ limits = @version.read_limits(limit, page_size)
124
+
125
+ page = self.page(
126
+ activity_name: activity_name,
127
+ activity_sid: activity_sid,
128
+ available: available,
129
+ friendly_name: friendly_name,
130
+ target_workers_expression: target_workers_expression,
131
+ task_queue_name: task_queue_name,
132
+ task_queue_sid: task_queue_sid,
133
+ ordering: ordering,
134
+ page_size: limits[:page_size], )
135
+
136
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
137
+ end
138
+
139
+ ##
140
+ # When passed a block, yields WorkerInstance records from the API.
141
+ # This operation lazily loads records as efficiently as possible until the limit
142
+ # is reached.
143
+ def each
144
+ limits = @version.read_limits
145
+
146
+ page = self.page(page_size: limits[:page_size], )
147
+
148
+ @version.stream(page,
149
+ limit: limits[:limit],
150
+ page_limit: limits[:page_limit]).each {|x| yield x}
151
+ end
152
+
153
+ ##
154
+ # Retrieve a single page of WorkerInstance records from the API.
155
+ # Request is executed immediately.
156
+ # @param [String] activity_name The `activity_name` of the Worker resources to read.
157
+ # @param [String] activity_sid The `activity_sid` of the Worker resources to read.
158
+ # @param [String] available Whether to return only Worker resources that are available or unavailable. Can be `true`, `1`, or `yes` to return Worker resources that are available, and `false`, or any value returns the Worker resources that are not available.
159
+ # @param [String] friendly_name The `friendly_name` of the Worker resources to read.
160
+ # @param [String] target_workers_expression Filter by Workers that would match an expression. In addition to fields in the workers' attributes, the expression can include the following worker fields: `sid`, `friendly_name`, `activity_sid`, or `activity_name`
161
+ # @param [String] task_queue_name The `friendly_name` of the TaskQueue that the Workers to read are eligible for.
162
+ # @param [String] task_queue_sid The SID of the TaskQueue that the Workers to read are eligible for.
163
+ # @param [String] ordering Sorting parameter for Workers
164
+ # @param [String] page_token PageToken provided by the API
165
+ # @param [Integer] page_number Page Number, this value is simply for client state
166
+ # @param [Integer] page_size Number of records to return, defaults to 50
167
+ # @return [Page] Page of WorkerInstance
168
+ def page(activity_name: :unset, activity_sid: :unset, available: :unset, friendly_name: :unset, target_workers_expression: :unset, task_queue_name: :unset, task_queue_sid: :unset, ordering: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
169
+ params = Twilio::Values.of({
170
+ 'ActivityName' => activity_name,
171
+ 'ActivitySid' => activity_sid,
172
+ 'Available' => available,
173
+ 'FriendlyName' => friendly_name,
174
+ 'TargetWorkersExpression' => target_workers_expression,
175
+ 'TaskQueueName' => task_queue_name,
176
+ 'TaskQueueSid' => task_queue_sid,
177
+ 'Ordering' => ordering,
178
+ 'PageToken' => page_token,
179
+ 'Page' => page_number,
180
+ 'PageSize' => page_size,
181
+ })
182
+ headers = Twilio::Values.of({})
183
+
184
+
185
+
186
+ response = @version.page('GET', @uri, params: params, headers: headers)
187
+
188
+ WorkerPage.new(@version, response, @solution)
189
+ end
190
+
191
+ ##
192
+ # Retrieve a single page of WorkerInstance records from the API.
193
+ # Request is executed immediately.
194
+ # @param [String] target_url API-generated URL for the requested results page
195
+ # @return [Page] Page of WorkerInstance
196
+ def get_page(target_url)
197
+ response = @version.domain.request(
198
+ 'GET',
199
+ target_url
200
+ )
201
+ WorkerPage.new(@version, response, @solution)
202
+ end
203
+
204
+
205
+ ##
206
+ # Access the statistics
207
+ # @return [WorkersStatisticsContext]
208
+ def statistics
209
+ return WorkersStatisticsContext.new(@version, @solution[:workspace_sid])
210
+ end
211
+
212
+ # Provide a user friendly representation
213
+ def to_s
214
+ '#<Twilio.Taskrouter.V1.WorkerList>'
215
+ end
216
+ end
217
+
218
+
219
+ class WorkerContext < InstanceContext
220
+ ##
221
+ # Initialize the WorkerContext
222
+ # @param [Version] version Version that contains the resource
223
+ # @param [String] workspace_sid The SID of the Workspace with the Worker to update.
224
+ # @param [String] sid The SID of the Worker resource to update.
225
+ # @return [WorkerContext] WorkerContext
226
+ def initialize(version, workspace_sid, sid)
227
+ super(version)
228
+
229
+ # Path Solution
230
+ @solution = { workspace_sid: workspace_sid, sid: sid, }
231
+ @uri = "/Workspaces/#{@solution[:workspace_sid]}/Workers/#{@solution[:sid]}"
232
+
233
+ # Dependents
234
+ @reservations = nil
235
+ @real_time_statistics = nil
236
+ @statistics = nil
237
+ @cumulative_statistics = nil
238
+ @worker_channels = nil
239
+ end
240
+ ##
241
+ # Delete the WorkerInstance
242
+ # @param [String] if_match The If-Match HTTP request header
243
+ # @return [Boolean] True if delete succeeds, false otherwise
244
+ def delete(
245
+ if_match: :unset
246
+ )
247
+
248
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, })
249
+
250
+
251
+
252
+ @version.delete('DELETE', @uri, headers: headers)
253
+ end
254
+
255
+ ##
256
+ # Fetch the WorkerInstance
257
+ # @return [WorkerInstance] Fetched WorkerInstance
258
+ def fetch
259
+
260
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
261
+
262
+
263
+
264
+
265
+
266
+ payload = @version.fetch('GET', @uri, headers: headers)
267
+ WorkerInstance.new(
268
+ @version,
269
+ payload,
270
+ workspace_sid: @solution[:workspace_sid],
271
+ sid: @solution[:sid],
272
+ )
273
+ end
274
+
275
+ ##
276
+ # Update the WorkerInstance
277
+ # @param [String] activity_sid The SID of a valid Activity that will describe the Worker's initial state. See [Activities](https://www.twilio.com/docs/taskrouter/api/activity) for more information.
278
+ # @param [String] attributes The JSON string that describes the Worker. For example: `{ \\\"email\\\": \\\"Bob@example.com\\\", \\\"phone\\\": \\\"+5095551234\\\" }`. This data is passed to the `assignment_callback_url` when TaskRouter assigns a Task to the Worker. Defaults to {}.
279
+ # @param [String] friendly_name A descriptive string that you create to describe the Worker. It can be up to 64 characters long.
280
+ # @param [Boolean] reject_pending_reservations Whether to reject the Worker's pending reservations. This option is only valid if the Worker's new [Activity](https://www.twilio.com/docs/taskrouter/api/activity) resource has its `availability` property set to `False`.
281
+ # @param [String] if_match The If-Match HTTP request header
282
+ # @return [WorkerInstance] Updated WorkerInstance
283
+ def update(
284
+ activity_sid: :unset,
285
+ attributes: :unset,
286
+ friendly_name: :unset,
287
+ reject_pending_reservations: :unset,
288
+ if_match: :unset
289
+ )
290
+
291
+ data = Twilio::Values.of({
292
+ 'ActivitySid' => activity_sid,
293
+ 'Attributes' => attributes,
294
+ 'FriendlyName' => friendly_name,
295
+ 'RejectPendingReservations' => reject_pending_reservations,
296
+ })
297
+
298
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, })
299
+
300
+
301
+
302
+
303
+
304
+ payload = @version.update('POST', @uri, data: data, headers: headers)
305
+ WorkerInstance.new(
306
+ @version,
307
+ payload,
308
+ workspace_sid: @solution[:workspace_sid],
309
+ sid: @solution[:sid],
310
+ )
311
+ end
312
+
313
+ ##
314
+ # Access the reservations
315
+ # @return [ReservationList]
316
+ # @return [ReservationContext] if sid was passed.
317
+ def reservations(sid=:unset)
318
+
319
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
320
+
321
+ if sid != :unset
322
+ return ReservationContext.new(@version, @solution[:workspace_sid], @solution[:sid],sid )
323
+ end
324
+
325
+ unless @reservations
326
+ @reservations = ReservationList.new(
327
+ @version, workspace_sid: @solution[:workspace_sid], worker_sid: @solution[:sid], )
328
+ end
329
+
330
+ @reservations
331
+ end
332
+ ##
333
+ # Access the real_time_statistics
334
+ # @return [WorkersRealTimeStatisticsList]
335
+ # @return [WorkersRealTimeStatisticsContext]
336
+ def real_time_statistics
337
+ WorkersRealTimeStatisticsContext.new(
338
+ @version,
339
+ @solution[:workspace_sid],
340
+ @solution[:sid]
341
+ )
342
+ end
343
+ ##
344
+ # Access the statistics
345
+ # @return [WorkerStatisticsList]
346
+ # @return [WorkerStatisticsContext]
347
+ def statistics
348
+ WorkerStatisticsContext.new(
349
+ @version,
350
+ @solution[:workspace_sid],
351
+ @solution[:sid]
352
+ )
353
+ end
354
+ ##
355
+ # Access the cumulative_statistics
356
+ # @return [WorkersCumulativeStatisticsList]
357
+ # @return [WorkersCumulativeStatisticsContext]
358
+ def cumulative_statistics
359
+ WorkersCumulativeStatisticsContext.new(
360
+ @version,
361
+ @solution[:workspace_sid],
362
+ @solution[:sid]
363
+ )
364
+ end
365
+ ##
366
+ # Access the worker_channels
367
+ # @return [WorkerChannelList]
368
+ # @return [WorkerChannelContext] if sid was passed.
369
+ def worker_channels(sid=:unset)
370
+
371
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
372
+
373
+ if sid != :unset
374
+ return WorkerChannelContext.new(@version, @solution[:workspace_sid], @solution[:sid],sid )
375
+ end
376
+
377
+ unless @worker_channels
378
+ @worker_channels = WorkerChannelList.new(
379
+ @version, workspace_sid: @solution[:workspace_sid], worker_sid: @solution[:sid], )
380
+ end
381
+
382
+ @worker_channels
383
+ end
384
+
385
+ ##
386
+ # Provide a user friendly representation
387
+ def to_s
388
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
389
+ "#<Twilio.Taskrouter.V1.WorkerContext #{context}>"
390
+ end
391
+
392
+ ##
393
+ # Provide a detailed, user friendly representation
394
+ def inspect
395
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
396
+ "#<Twilio.Taskrouter.V1.WorkerContext #{context}>"
397
+ end
398
+ end
399
+
400
+ class WorkerPage < Page
401
+ ##
402
+ # Initialize the WorkerPage
403
+ # @param [Version] version Version that contains the resource
404
+ # @param [Response] response Response from the API
405
+ # @param [Hash] solution Path solution for the resource
406
+ # @return [WorkerPage] WorkerPage
407
+ def initialize(version, response, solution)
408
+ super(version, response)
409
+
410
+ # Path Solution
411
+ @solution = solution
412
+ end
413
+
414
+ ##
415
+ # Build an instance of WorkerInstance
416
+ # @param [Hash] payload Payload response from the API
417
+ # @return [WorkerInstance] WorkerInstance
418
+ def get_instance(payload)
419
+ WorkerInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid])
420
+ end
421
+
422
+ ##
423
+ # Provide a user friendly representation
424
+ def to_s
425
+ '<Twilio.Taskrouter.V1.WorkerPage>'
426
+ end
427
+ end
428
+ class WorkerInstance < InstanceResource
429
+ ##
430
+ # Initialize the WorkerInstance
431
+ # @param [Version] version Version that contains the resource
432
+ # @param [Hash] payload payload that contains response from Twilio
433
+ # @param [String] account_sid The SID of the
434
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Worker
435
+ # resource.
436
+ # @param [String] sid The SID of the Call resource to fetch.
437
+ # @return [WorkerInstance] WorkerInstance
438
+ def initialize(version, payload , workspace_sid: nil, sid: nil)
439
+ super(version)
440
+
441
+ # Marshaled Properties
442
+ @properties = {
443
+ 'account_sid' => payload['account_sid'],
444
+ 'activity_name' => payload['activity_name'],
445
+ 'activity_sid' => payload['activity_sid'],
446
+ 'attributes' => payload['attributes'],
447
+ 'available' => payload['available'],
448
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
449
+ 'date_status_changed' => Twilio.deserialize_iso8601_datetime(payload['date_status_changed']),
450
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
451
+ 'friendly_name' => payload['friendly_name'],
452
+ 'sid' => payload['sid'],
453
+ 'workspace_sid' => payload['workspace_sid'],
454
+ 'url' => payload['url'],
455
+ 'links' => payload['links'],
456
+ }
457
+
458
+ # Context
459
+ @instance_context = nil
460
+ @params = { 'workspace_sid' => workspace_sid || @properties['workspace_sid'] ,'sid' => sid || @properties['sid'] , }
461
+ end
462
+
463
+ ##
464
+ # Generate an instance context for the instance, the context is capable of
465
+ # performing various actions. All instance actions are proxied to the context
466
+ # @return [WorkerContext] CallContext for this CallInstance
467
+ def context
468
+ unless @instance_context
469
+ @instance_context = WorkerContext.new(@version , @params['workspace_sid'], @params['sid'])
470
+ end
471
+ @instance_context
472
+ end
473
+
474
+ ##
475
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Worker resource.
476
+ def account_sid
477
+ @properties['account_sid']
478
+ end
479
+
480
+ ##
481
+ # @return [String] The `friendly_name` of the Worker's current Activity.
482
+ def activity_name
483
+ @properties['activity_name']
484
+ end
485
+
486
+ ##
487
+ # @return [String] The SID of the Worker's current Activity.
488
+ def activity_sid
489
+ @properties['activity_sid']
490
+ end
491
+
492
+ ##
493
+ # @return [String] The JSON string that describes the Worker. For example: `{ \"email\": \"Bob@example.com\", \"phone\": \"+5095551234\" }`. **Note** If this property has been assigned a value, it will only be displayed in FETCH actions that return a single resource. Otherwise, this property will be null, even if it has a value. This data is passed to the `assignment_callback_url` when TaskRouter assigns a Task to the Worker.
494
+ def attributes
495
+ @properties['attributes']
496
+ end
497
+
498
+ ##
499
+ # @return [Boolean] Whether the Worker is available to perform tasks.
500
+ def available
501
+ @properties['available']
502
+ end
503
+
504
+ ##
505
+ # @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.
506
+ def date_created
507
+ @properties['date_created']
508
+ end
509
+
510
+ ##
511
+ # @return [Time] The date and time in GMT of the last change to the Worker's activity specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format. Used to calculate Workflow statistics.
512
+ def date_status_changed
513
+ @properties['date_status_changed']
514
+ end
515
+
516
+ ##
517
+ # @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.
518
+ def date_updated
519
+ @properties['date_updated']
520
+ end
521
+
522
+ ##
523
+ # @return [String] The string that you assigned to describe the resource. Friendly names are case insensitive, and unique within the TaskRouter Workspace.
524
+ def friendly_name
525
+ @properties['friendly_name']
526
+ end
527
+
528
+ ##
529
+ # @return [String] The unique string that we created to identify the Worker resource.
530
+ def sid
531
+ @properties['sid']
532
+ end
533
+
534
+ ##
535
+ # @return [String] The SID of the Workspace that contains the Worker.
536
+ def workspace_sid
537
+ @properties['workspace_sid']
538
+ end
539
+
540
+ ##
541
+ # @return [String] The absolute URL of the Worker resource.
542
+ def url
543
+ @properties['url']
544
+ end
545
+
546
+ ##
547
+ # @return [Hash] The URLs of related resources.
548
+ def links
549
+ @properties['links']
550
+ end
551
+
552
+ ##
553
+ # Delete the WorkerInstance
554
+ # @param [String] if_match The If-Match HTTP request header
555
+ # @return [Boolean] True if delete succeeds, false otherwise
556
+ def delete(
557
+ if_match: :unset
558
+ )
559
+
560
+ context.delete(
561
+ if_match: if_match,
562
+ )
563
+ end
564
+
565
+ ##
566
+ # Fetch the WorkerInstance
567
+ # @return [WorkerInstance] Fetched WorkerInstance
568
+ def fetch
569
+
570
+ context.fetch
571
+ end
572
+
573
+ ##
574
+ # Update the WorkerInstance
575
+ # @param [String] activity_sid The SID of a valid Activity that will describe the Worker's initial state. See [Activities](https://www.twilio.com/docs/taskrouter/api/activity) for more information.
576
+ # @param [String] attributes The JSON string that describes the Worker. For example: `{ \\\"email\\\": \\\"Bob@example.com\\\", \\\"phone\\\": \\\"+5095551234\\\" }`. This data is passed to the `assignment_callback_url` when TaskRouter assigns a Task to the Worker. Defaults to {}.
577
+ # @param [String] friendly_name A descriptive string that you create to describe the Worker. It can be up to 64 characters long.
578
+ # @param [Boolean] reject_pending_reservations Whether to reject the Worker's pending reservations. This option is only valid if the Worker's new [Activity](https://www.twilio.com/docs/taskrouter/api/activity) resource has its `availability` property set to `False`.
579
+ # @param [String] if_match The If-Match HTTP request header
580
+ # @return [WorkerInstance] Updated WorkerInstance
581
+ def update(
582
+ activity_sid: :unset,
583
+ attributes: :unset,
584
+ friendly_name: :unset,
585
+ reject_pending_reservations: :unset,
586
+ if_match: :unset
587
+ )
588
+
589
+ context.update(
590
+ activity_sid: activity_sid,
591
+ attributes: attributes,
592
+ friendly_name: friendly_name,
593
+ reject_pending_reservations: reject_pending_reservations,
594
+ if_match: if_match,
595
+ )
596
+ end
597
+
598
+ ##
599
+ # Access the reservations
600
+ # @return [reservations] reservations
601
+ def reservations
602
+ context.reservations
603
+ end
604
+
605
+ ##
606
+ # Access the real_time_statistics
607
+ # @return [real_time_statistics] real_time_statistics
608
+ def real_time_statistics
609
+ context.real_time_statistics
610
+ end
611
+
612
+ ##
613
+ # Access the statistics
614
+ # @return [statistics] statistics
615
+ def statistics
616
+ context.statistics
617
+ end
618
+
619
+ ##
620
+ # Access the cumulative_statistics
621
+ # @return [cumulative_statistics] cumulative_statistics
622
+ def cumulative_statistics
623
+ context.cumulative_statistics
624
+ end
625
+
626
+ ##
627
+ # Access the worker_channels
628
+ # @return [worker_channels] worker_channels
629
+ def worker_channels
630
+ context.worker_channels
631
+ end
632
+
633
+ ##
634
+ # Provide a user friendly representation
635
+ def to_s
636
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
637
+ "<Twilio.Taskrouter.V1.WorkerInstance #{values}>"
638
+ end
639
+
640
+ ##
641
+ # Provide a detailed, user friendly representation
642
+ def inspect
643
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
644
+ "<Twilio.Taskrouter.V1.WorkerInstance #{values}>"
645
+ end
646
+ end
647
+
648
+ end
638
649
  end
639
- end
640
650
  end
641
- end
642
651
  end
643
- end
644
- end
652
+ end
653
+
654
+