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

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