twilio-ruby 5.77.0 → 7.3.3

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