twilio-ruby 5.74.0 → 7.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (796) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/test-and-deploy.yml +20 -2
  5. data/.gitignore +4 -0
  6. data/.rubocop.yml +1 -0
  7. data/CHANGES.md +1367 -0
  8. data/CONTRIBUTING.md +11 -9
  9. data/Dockerfile +2 -1
  10. data/Gemfile +5 -0
  11. data/LICENSE +1 -1
  12. data/Makefile +6 -0
  13. data/README.md +138 -40
  14. data/UPGRADE.md +21 -0
  15. data/advanced-examples/custom-http-client.md +170 -0
  16. data/cluster/cluster_oauth_spec.rb +19 -0
  17. data/cluster/cluster_orgs_spec.rb +40 -0
  18. data/cluster/cluster_spec.rb +75 -0
  19. data/examples/public_oauth.rb +13 -0
  20. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  21. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  22. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  23. data/lib/twilio-ruby/base/client_base.rb +131 -0
  24. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  25. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  26. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  27. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  28. data/lib/twilio-ruby/framework/request.rb +8 -1
  29. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  30. data/lib/twilio-ruby/framework/rest/domain.rb +0 -1
  31. data/lib/twilio-ruby/framework/rest/error.rb +27 -12
  32. data/lib/twilio-ruby/framework/rest/page.rb +1 -0
  33. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  34. data/lib/twilio-ruby/framework/rest/resource.rb +16 -0
  35. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  36. data/lib/twilio-ruby/framework/rest/version.rb +91 -4
  37. data/lib/twilio-ruby/http/client_token_manager.rb +31 -0
  38. data/lib/twilio-ruby/http/http_client.rb +22 -5
  39. data/lib/twilio-ruby/http/org_token_manager.rb +31 -0
  40. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  41. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +338 -176
  42. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +231 -0
  43. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +231 -0
  44. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +644 -332
  45. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +644 -332
  46. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +185 -114
  47. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  48. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +336 -0
  49. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +378 -190
  50. data/lib/twilio-ruby/rest/accounts/v1.rb +69 -42
  51. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  52. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +459 -365
  54. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +886 -530
  55. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +977 -586
  56. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +482 -320
  57. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +519 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +519 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +519 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +519 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +519 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +519 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +519 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +601 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +231 -118
  66. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +289 -192
  67. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +578 -417
  68. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +556 -364
  69. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +791 -511
  70. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +1658 -663
  71. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +1658 -663
  72. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +541 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +260 -151
  74. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +409 -240
  75. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +1368 -1050
  76. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +1124 -756
  77. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +694 -458
  78. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +719 -493
  79. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +679 -407
  80. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +483 -344
  81. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +627 -416
  82. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +737 -554
  83. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +737 -553
  84. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +737 -553
  85. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +1261 -903
  86. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +567 -302
  87. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +268 -164
  88. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +540 -350
  89. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +970 -641
  90. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +246 -125
  91. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +246 -125
  92. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +577 -399
  93. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +604 -358
  94. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +553 -338
  95. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +702 -390
  96. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +343 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +572 -378
  98. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +560 -383
  99. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +558 -372
  100. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +718 -513
  101. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +644 -408
  102. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +567 -306
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +642 -359
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +667 -371
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +579 -0
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +579 -0
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +204 -0
  108. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +579 -0
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +190 -0
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +158 -103
  111. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +564 -331
  112. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +564 -330
  113. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +987 -641
  114. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +694 -418
  115. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +667 -372
  116. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +205 -150
  117. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +258 -139
  118. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +557 -350
  119. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +407 -335
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +407 -335
  121. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +407 -335
  122. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +407 -335
  123. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +407 -335
  124. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +407 -335
  125. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +407 -335
  126. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +407 -335
  127. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +478 -416
  128. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +785 -484
  129. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +176 -104
  130. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +278 -150
  131. data/lib/twilio-ruby/rest/api/v2010/account.rb +1229 -943
  132. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  133. data/lib/twilio-ruby/rest/api.rb +25 -34
  134. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  135. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +550 -0
  136. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +550 -0
  137. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +423 -0
  138. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +296 -0
  139. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +918 -0
  140. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +317 -0
  141. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +349 -0
  142. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +862 -0
  143. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +356 -0
  144. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +352 -0
  145. data/lib/twilio-ruby/rest/assistants/v1/session.rb +493 -0
  146. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +838 -0
  147. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  148. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  149. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  150. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +468 -279
  151. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +440 -279
  152. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +438 -248
  153. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +389 -235
  154. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +430 -216
  155. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  156. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  157. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  158. data/lib/twilio-ruby/rest/chat/v1/credential.rb +719 -403
  159. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +613 -391
  160. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +704 -440
  161. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +722 -437
  162. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +822 -515
  163. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +672 -367
  164. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +331 -237
  165. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +750 -440
  166. data/lib/twilio-ruby/rest/chat/v1/service.rb +1287 -894
  167. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  168. data/lib/twilio-ruby/rest/chat/v2/credential.rb +719 -401
  169. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +570 -370
  170. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +613 -386
  171. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +799 -527
  172. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +825 -533
  173. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +746 -467
  174. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +916 -605
  175. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +672 -369
  176. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +561 -381
  177. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +648 -419
  178. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +796 -491
  179. data/lib/twilio-ruby/rest/chat/v2/service.rb +1121 -778
  180. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  181. data/lib/twilio-ruby/rest/chat/v3/channel.rb +444 -267
  182. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  183. data/lib/twilio-ruby/rest/chat.rb +4 -48
  184. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  185. data/lib/twilio-ruby/rest/client.rb +338 -584
  186. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +280 -0
  187. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +327 -173
  188. data/lib/twilio-ruby/rest/content/v1/content.rb +1909 -334
  189. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +340 -0
  190. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +354 -0
  191. data/lib/twilio-ruby/rest/content/v1.rb +54 -38
  192. data/lib/twilio-ruby/rest/content/v2/content.rb +425 -0
  193. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +418 -0
  194. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  195. data/lib/twilio-ruby/rest/content.rb +2 -34
  196. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  197. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +798 -444
  198. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +445 -227
  199. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +467 -252
  200. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +504 -344
  201. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +852 -495
  202. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +817 -495
  203. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +725 -403
  204. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +957 -552
  205. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +392 -0
  206. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +728 -409
  207. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +397 -304
  208. data/lib/twilio-ruby/rest/conversations/v1/role.rb +657 -356
  209. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +563 -373
  210. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +540 -312
  211. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +459 -258
  212. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +497 -279
  213. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +504 -363
  214. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +860 -533
  215. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +829 -530
  216. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +737 -438
  217. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +972 -588
  218. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +399 -0
  219. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +403 -317
  220. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +672 -380
  221. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +686 -455
  222. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +773 -474
  223. data/lib/twilio-ruby/rest/conversations/v1/service.rb +724 -447
  224. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +683 -435
  225. data/lib/twilio-ruby/rest/conversations/v1/user.rb +758 -441
  226. data/lib/twilio-ruby/rest/conversations/v1.rb +135 -136
  227. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  228. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  229. data/lib/twilio-ruby/rest/events/v1/event_type.rb +486 -288
  230. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +468 -0
  231. data/lib/twilio-ruby/rest/events/v1/schema.rb +366 -214
  232. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +209 -100
  233. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +222 -103
  234. data/lib/twilio-ruby/rest/events/v1/sink.rb +711 -408
  235. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +638 -339
  236. data/lib/twilio-ruby/rest/events/v1/subscription.rb +685 -387
  237. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  238. data/lib/twilio-ruby/rest/events.rb +5 -34
  239. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +687 -146
  241. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +621 -330
  242. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +722 -496
  243. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  244. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +928 -570
  245. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +475 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +321 -0
  247. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +735 -0
  248. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +598 -0
  249. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +710 -0
  250. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +457 -0
  251. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +359 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +251 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +237 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +338 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +370 -227
  256. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +560 -319
  257. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +637 -398
  259. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +529 -225
  260. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +621 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +700 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +390 -0
  263. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +564 -0
  264. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +599 -0
  265. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +376 -0
  266. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +539 -0
  267. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +400 -0
  268. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +327 -0
  269. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +663 -331
  270. data/lib/twilio-ruby/rest/flex_api/v1.rb +319 -113
  271. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +515 -0
  272. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +258 -125
  273. data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
  274. data/lib/twilio-ruby/rest/flex_api.rb +9 -47
  275. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  276. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +453 -248
  277. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  278. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  279. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  280. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +471 -0
  281. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +320 -0
  282. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +284 -0
  283. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  284. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  285. data/lib/twilio-ruby/rest/iam/v1.rb +82 -0
  286. data/lib/twilio-ruby/rest/iam.rb +6 -0
  287. data/lib/twilio-ruby/rest/iam_base.rb +33 -0
  288. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +509 -315
  289. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +499 -0
  290. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +360 -255
  291. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +333 -224
  292. data/lib/twilio-ruby/rest/insights/v1/call.rb +403 -236
  293. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +718 -433
  294. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +665 -467
  295. data/lib/twilio-ruby/rest/insights/v1/conference.rb +683 -502
  296. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +545 -371
  297. data/lib/twilio-ruby/rest/insights/v1/room.rb +668 -489
  298. data/lib/twilio-ruby/rest/insights/v1/setting.rb +435 -205
  299. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  300. data/lib/twilio-ruby/rest/insights.rb +6 -34
  301. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  302. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +720 -0
  303. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +525 -0
  304. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +380 -0
  305. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +337 -0
  306. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +523 -0
  307. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +525 -0
  308. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +844 -0
  309. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  310. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  311. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +373 -0
  312. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +570 -0
  313. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +354 -0
  314. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +815 -0
  315. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  316. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  317. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  318. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +719 -364
  319. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +613 -359
  320. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +704 -397
  321. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +722 -409
  322. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +822 -488
  323. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +672 -347
  324. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +331 -231
  325. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +750 -418
  326. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +1287 -779
  327. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  328. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +719 -364
  329. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +570 -343
  330. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +613 -359
  331. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +799 -451
  332. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +825 -479
  333. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +746 -411
  334. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +916 -555
  335. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +672 -347
  336. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +561 -351
  337. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +637 -384
  338. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +796 -467
  339. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +1121 -689
  340. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  341. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  342. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  343. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +317 -0
  344. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  345. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  346. data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
  347. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  348. data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
  349. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +399 -237
  350. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  351. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  352. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  353. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +570 -328
  354. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  355. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  356. data/lib/twilio-ruby/rest/lookups/v2.rb +128 -38
  357. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  358. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  359. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +475 -0
  360. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +501 -0
  361. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +555 -0
  362. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +252 -0
  363. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +735 -0
  364. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +342 -0
  365. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +511 -0
  366. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +235 -0
  367. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  368. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  369. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  370. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +231 -0
  371. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +568 -346
  372. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +758 -443
  373. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +337 -0
  374. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +483 -0
  375. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +469 -259
  376. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +379 -0
  377. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  378. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +263 -142
  379. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +380 -0
  380. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +337 -0
  381. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +379 -0
  382. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +580 -335
  383. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +594 -0
  384. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +608 -0
  385. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +587 -341
  386. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +587 -336
  387. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +937 -521
  388. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +222 -115
  389. data/lib/twilio-ruby/rest/messaging/v1/service.rb +1149 -763
  390. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +1517 -549
  391. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +209 -103
  392. data/lib/twilio-ruby/rest/messaging/v1.rb +217 -124
  393. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  394. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  395. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  396. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  397. data/lib/twilio-ruby/rest/messaging.rb +10 -35
  398. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  399. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +572 -395
  400. data/lib/twilio-ruby/rest/monitor/v1/event.rb +561 -390
  401. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  402. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  403. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  404. data/lib/twilio-ruby/rest/notify/v1/credential.rb +719 -408
  405. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +694 -452
  406. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +466 -362
  407. data/lib/twilio-ruby/rest/notify/v1/service.rb +971 -622
  408. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  409. data/lib/twilio-ruby/rest/notify.rb +3 -34
  410. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  411. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +411 -0
  412. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +221 -0
  413. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  414. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +616 -0
  415. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +485 -0
  416. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +405 -0
  417. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +242 -0
  418. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +301 -0
  419. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +395 -0
  420. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +252 -0
  421. data/lib/twilio-ruby/rest/numbers/v1.rb +161 -0
  422. data/lib/twilio-ruby/rest/numbers/v2/application.rb +562 -0
  423. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +440 -0
  424. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +649 -0
  425. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +442 -0
  426. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +430 -0
  427. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +915 -0
  428. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +405 -261
  429. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +524 -298
  430. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +564 -309
  431. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +294 -179
  432. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +923 -607
  433. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +667 -351
  434. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +458 -266
  435. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +521 -307
  436. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +695 -371
  437. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +458 -266
  438. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +241 -181
  439. data/lib/twilio-ruby/rest/numbers/v2.rb +108 -28
  440. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  441. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  442. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  443. data/lib/twilio-ruby/rest/numbers_base.rb +48 -0
  444. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +253 -0
  445. data/lib/twilio-ruby/rest/oauth/v1/token.rb +293 -149
  446. data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
  447. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  448. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  449. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  450. data/lib/twilio-ruby/rest/oauth.rb +3 -65
  451. data/lib/twilio-ruby/rest/oauth_base.rb +43 -0
  452. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +469 -396
  453. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +724 -446
  454. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +960 -625
  455. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  456. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +468 -298
  457. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +491 -309
  458. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +548 -330
  459. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +706 -398
  460. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  461. data/lib/twilio-ruby/rest/preview/wireless/command.rb +616 -364
  462. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +743 -398
  463. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +382 -205
  464. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +833 -523
  465. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  466. data/lib/twilio-ruby/rest/preview.rb +10 -87
  467. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  468. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +253 -0
  469. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +301 -0
  470. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  471. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +468 -0
  472. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +559 -0
  473. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +768 -0
  474. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +413 -0
  475. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  476. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  477. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  478. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +465 -275
  479. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +172 -120
  480. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +458 -268
  481. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +172 -120
  482. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +465 -275
  483. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +345 -179
  484. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +185 -135
  485. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  486. data/lib/twilio-ruby/rest/pricing/v2/country.rb +457 -270
  487. data/lib/twilio-ruby/rest/pricing/v2/number.rb +379 -215
  488. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +465 -275
  489. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +367 -200
  490. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +185 -138
  491. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  492. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  493. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  494. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +693 -403
  495. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +600 -418
  496. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +640 -447
  497. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +659 -440
  498. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +811 -506
  499. data/lib/twilio-ruby/rest/proxy/v1/service.rb +839 -596
  500. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  501. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  502. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  503. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +444 -227
  504. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +444 -223
  505. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +444 -227
  506. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  507. data/lib/twilio-ruby/rest/routes.rb +4 -34
  508. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  509. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +483 -323
  510. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +680 -380
  511. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +350 -208
  512. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +645 -384
  513. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +549 -338
  514. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +535 -383
  515. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +680 -396
  516. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +688 -447
  517. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +342 -210
  518. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +510 -353
  519. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +680 -380
  520. data/lib/twilio-ruby/rest/serverless/v1/service.rb +803 -493
  521. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  522. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  523. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  524. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +350 -199
  525. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +342 -194
  526. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +545 -355
  527. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +659 -394
  528. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +350 -200
  529. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +342 -197
  530. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +545 -361
  531. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +748 -449
  532. data/lib/twilio-ruby/rest/studio/v1/flow.rb +572 -355
  533. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  534. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +350 -200
  535. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +342 -197
  536. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +545 -361
  537. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +741 -442
  538. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +510 -320
  539. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +413 -0
  540. data/lib/twilio-ruby/rest/studio/v2/flow.rb +804 -472
  541. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +241 -109
  542. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  543. data/lib/twilio-ruby/rest/studio.rb +3 -41
  544. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  545. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +611 -362
  546. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +757 -483
  547. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +624 -406
  548. data/lib/twilio-ruby/rest/supersim/v1/network.rb +474 -297
  549. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +566 -332
  550. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +624 -351
  551. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +339 -237
  552. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +311 -204
  553. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +275 -174
  554. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +725 -453
  555. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +576 -361
  556. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +410 -344
  557. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  558. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  559. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  560. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +616 -371
  561. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +736 -423
  562. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +766 -490
  563. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +616 -370
  564. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +749 -445
  565. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +772 -495
  566. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +616 -368
  567. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +749 -444
  568. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +242 -132
  569. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +692 -400
  570. data/lib/twilio-ruby/rest/sync/v1/service.rb +878 -567
  571. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  572. data/lib/twilio-ruby/rest/sync.rb +2 -34
  573. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  574. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +682 -395
  575. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +633 -464
  576. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +1079 -749
  577. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +985 -661
  578. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +688 -382
  579. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +258 -0
  580. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +522 -370
  581. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +430 -276
  582. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +410 -254
  583. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +358 -276
  584. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +882 -572
  585. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +1053 -732
  586. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +602 -388
  587. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +394 -239
  588. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +440 -266
  589. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +364 -193
  590. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +418 -234
  591. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +927 -637
  592. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +522 -376
  593. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +395 -241
  594. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +410 -262
  595. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +822 -510
  596. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +514 -356
  597. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +379 -205
  598. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +387 -219
  599. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +1022 -730
  600. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  601. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  602. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  603. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +573 -320
  604. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +573 -317
  605. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +734 -419
  606. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +706 -451
  607. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +391 -174
  608. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +939 -630
  609. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  610. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  611. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  612. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +440 -0
  613. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +656 -0
  614. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +474 -0
  615. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +595 -352
  616. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +574 -323
  617. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +540 -321
  618. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +823 -513
  619. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +659 -346
  620. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +450 -261
  621. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +443 -252
  622. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +673 -359
  623. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +450 -261
  624. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +595 -352
  625. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +574 -323
  626. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +540 -321
  627. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +823 -513
  628. data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
  629. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  630. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  631. data/lib/twilio-ruby/rest/verify/v2/form.rb +334 -181
  632. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +423 -205
  633. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +463 -254
  634. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  635. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +275 -172
  636. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +768 -530
  637. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +705 -453
  638. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +386 -271
  639. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +653 -414
  640. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +652 -363
  641. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  642. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  643. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  644. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +680 -388
  645. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +693 -384
  646. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +655 -366
  647. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +320 -187
  648. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +741 -412
  649. data/lib/twilio-ruby/rest/verify/v2/service.rb +1360 -780
  650. data/lib/twilio-ruby/rest/verify/v2/template.rb +310 -203
  651. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +556 -387
  652. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +400 -224
  653. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  654. data/lib/twilio-ruby/rest/verify.rb +7 -34
  655. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  656. data/lib/twilio-ruby/rest/video/v1/composition.rb +738 -507
  657. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +854 -647
  658. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +475 -261
  659. data/lib/twilio-ruby/rest/video/v1/recording.rb +631 -426
  660. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +475 -261
  661. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +403 -0
  662. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +501 -0
  663. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +316 -0
  664. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +508 -0
  665. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +714 -0
  666. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +303 -0
  667. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +624 -0
  668. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +648 -0
  669. data/lib/twilio-ruby/rest/video/v1/room.rb +938 -602
  670. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  671. data/lib/twilio-ruby/rest/video.rb +7 -34
  672. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  673. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +292 -174
  674. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +822 -486
  675. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +734 -434
  676. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +658 -352
  677. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +236 -121
  678. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +282 -181
  679. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +553 -397
  680. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +377 -173
  681. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +187 -122
  682. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +650 -339
  683. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +630 -319
  684. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  685. data/lib/twilio-ruby/rest/voice.rb +7 -34
  686. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  687. data/lib/twilio-ruby/rest/wireless/v1/command.rb +663 -406
  688. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +769 -436
  689. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +387 -284
  690. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +317 -226
  691. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +925 -647
  692. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +319 -219
  693. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  694. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  695. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  696. data/lib/twilio-ruby/rest.rb +1 -0
  697. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  698. data/lib/twilio-ruby/twiml/voice_response.rb +481 -26
  699. data/lib/twilio-ruby/version.rb +1 -1
  700. data/sonar-project.properties +1 -1
  701. data/twilio-ruby.gemspec +3 -2
  702. metadata +238 -105
  703. data/conf/cacert.pem +0 -3376
  704. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  705. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  706. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  707. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  708. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  709. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  710. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  711. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  712. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  713. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  714. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  715. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  716. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +0 -348
  717. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  718. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  719. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  720. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  721. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  722. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  723. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  724. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  725. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  726. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  727. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  728. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  729. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  730. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  731. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  732. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  733. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  734. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  735. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  736. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  737. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  738. data/lib/twilio-ruby/rest/flex_api/v1/good_data.rb +0 -190
  739. data/lib/twilio-ruby/rest/flex_api/v1/user_roles.rb +0 -166
  740. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  741. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
  742. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
  743. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
  744. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
  745. data/lib/twilio-ruby/rest/media/v1.rb +0 -76
  746. data/lib/twilio-ruby/rest/media.rb +0 -65
  747. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  748. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  749. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +0 -305
  750. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -339
  751. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -60
  752. data/lib/twilio-ruby/rest/microvisor.rb +0 -54
  753. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
  754. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
  755. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
  756. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
  757. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  758. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  759. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  760. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  761. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  762. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
  763. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -385
  764. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -406
  765. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -418
  766. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -385
  767. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -405
  768. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -415
  769. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -385
  770. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -405
  771. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -462
  772. data/lib/twilio-ruby/rest/preview/sync.rb +0 -44
  773. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  774. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  775. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  776. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  777. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  778. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  779. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  780. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  781. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  782. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  783. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  784. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  785. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  786. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  787. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  788. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -377
  789. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  790. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  791. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  792. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  793. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  794. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  795. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  796. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,760 +1,1090 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
- # frozen_string_literal: true
7
+ # Twilio - Taskrouter
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
13
+ #
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Taskrouter < Domain
12
- class V1 < Version
13
- class WorkspaceContext < InstanceContext
14
- class TaskContext < InstanceContext
15
- class ReservationList < ListResource
16
- ##
17
- # Initialize the ReservationList
18
- # @param [Version] version Version that contains the resource
19
- # @param [String] workspace_sid The SID of the Workspace that this task is
20
- # contained within.
21
- # @param [String] task_sid The SID of the reserved Task resource.
22
- # @return [ReservationList] ReservationList
23
- def initialize(version, workspace_sid: nil, task_sid: nil)
24
- super(version)
25
-
26
- # Path Solution
27
- @solution = {workspace_sid: workspace_sid, task_sid: task_sid}
28
- @uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks/#{@solution[:task_sid]}/Reservations"
29
- end
30
-
31
- ##
32
- # Lists ReservationInstance records from the API as a list.
33
- # Unlike stream(), this operation is eager and will load `limit` records into
34
- # memory before returning.
35
- # @param [reservation.Status] reservation_status Returns the list of reservations
36
- # for a task with a specified ReservationStatus. Can be: `pending`, `accepted`,
37
- # `rejected`, or `timeout`.
38
- # @param [String] worker_sid The SID of the reserved Worker resource to read.
39
- # @param [Integer] limit Upper limit for the number of records to return. stream()
40
- # guarantees to never return more than limit. Default is no limit
41
- # @param [Integer] page_size Number of records to fetch per request, when
42
- # not set will use the default value of 50 records. If no page_size is defined
43
- # but a limit is defined, stream() will attempt to read the limit with the most
44
- # efficient page size, i.e. min(limit, 1000)
45
- # @return [Array] Array of up to limit results
46
- def list(reservation_status: :unset, worker_sid: :unset, limit: nil, page_size: nil)
47
- self.stream(
48
- reservation_status: reservation_status,
49
- worker_sid: worker_sid,
50
- limit: limit,
51
- page_size: page_size
52
- ).entries
53
- end
54
-
55
- ##
56
- # Streams ReservationInstance records from the API as an Enumerable.
57
- # This operation lazily loads records as efficiently as possible until the limit
58
- # is reached.
59
- # @param [reservation.Status] reservation_status Returns the list of reservations
60
- # for a task with a specified ReservationStatus. Can be: `pending`, `accepted`,
61
- # `rejected`, or `timeout`.
62
- # @param [String] worker_sid The SID of the reserved Worker resource to read.
63
- # @param [Integer] limit Upper limit for the number of records to return. stream()
64
- # guarantees to never return more than limit. Default is no limit.
65
- # @param [Integer] page_size Number of records to fetch per request, when
66
- # not set will use the default value of 50 records. If no page_size is defined
67
- # but a limit is defined, stream() will attempt to read the limit with the most
68
- # efficient page size, i.e. min(limit, 1000)
69
- # @return [Enumerable] Enumerable that will yield up to limit results
70
- def stream(reservation_status: :unset, worker_sid: :unset, limit: nil, page_size: nil)
71
- limits = @version.read_limits(limit, page_size)
72
-
73
- page = self.page(
74
- reservation_status: reservation_status,
75
- worker_sid: worker_sid,
76
- page_size: limits[:page_size],
77
- )
78
-
79
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
80
- end
81
-
82
- ##
83
- # When passed a block, yields ReservationInstance records from the API.
84
- # This operation lazily loads records as efficiently as possible until the limit
85
- # is reached.
86
- def each
87
- limits = @version.read_limits
88
-
89
- page = self.page(page_size: limits[:page_size], )
90
-
91
- @version.stream(page,
92
- limit: limits[:limit],
93
- page_limit: limits[:page_limit]).each {|x| yield x}
94
- end
95
-
96
- ##
97
- # Retrieve a single page of ReservationInstance records from the API.
98
- # Request is executed immediately.
99
- # @param [reservation.Status] reservation_status Returns the list of reservations
100
- # for a task with a specified ReservationStatus. Can be: `pending`, `accepted`,
101
- # `rejected`, or `timeout`.
102
- # @param [String] worker_sid The SID of the reserved Worker resource to read.
103
- # @param [String] page_token PageToken provided by the API
104
- # @param [Integer] page_number Page Number, this value is simply for client state
105
- # @param [Integer] page_size Number of records to return, defaults to 50
106
- # @return [Page] Page of ReservationInstance
107
- def page(reservation_status: :unset, worker_sid: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
108
- params = Twilio::Values.of({
109
- 'ReservationStatus' => reservation_status,
110
- 'WorkerSid' => worker_sid,
111
- 'PageToken' => page_token,
112
- 'Page' => page_number,
113
- 'PageSize' => page_size,
114
- })
115
-
116
- response = @version.page('GET', @uri, params: params)
117
-
118
- ReservationPage.new(@version, response, @solution)
119
- end
120
-
121
- ##
122
- # Retrieve a single page of ReservationInstance records from the API.
123
- # Request is executed immediately.
124
- # @param [String] target_url API-generated URL for the requested results page
125
- # @return [Page] Page of ReservationInstance
126
- def get_page(target_url)
127
- response = @version.domain.request(
128
- 'GET',
129
- target_url
130
- )
131
- ReservationPage.new(@version, response, @solution)
132
- end
133
-
134
- ##
135
- # Provide a user friendly representation
136
- def to_s
137
- '#<Twilio.Taskrouter.V1.ReservationList>'
138
- end
139
- end
17
+ module REST
18
+ class Taskrouter < TaskrouterBase
19
+ class V1 < Version
20
+ class WorkspaceContext < InstanceContext
21
+ class TaskContext < InstanceContext
140
22
 
141
- class ReservationPage < Page
142
- ##
143
- # Initialize the ReservationPage
144
- # @param [Version] version Version that contains the resource
145
- # @param [Response] response Response from the API
146
- # @param [Hash] solution Path solution for the resource
147
- # @return [ReservationPage] ReservationPage
148
- def initialize(version, response, solution)
149
- super(version, response)
150
-
151
- # Path Solution
152
- @solution = solution
153
- end
154
-
155
- ##
156
- # Build an instance of ReservationInstance
157
- # @param [Hash] payload Payload response from the API
158
- # @return [ReservationInstance] ReservationInstance
159
- def get_instance(payload)
160
- ReservationInstance.new(
161
- @version,
162
- payload,
163
- workspace_sid: @solution[:workspace_sid],
164
- task_sid: @solution[:task_sid],
165
- )
166
- end
167
-
168
- ##
169
- # Provide a user friendly representation
170
- def to_s
171
- '<Twilio.Taskrouter.V1.ReservationPage>'
172
- end
173
- end
23
+ class ReservationList < ListResource
24
+
25
+ ##
26
+ # Initialize the ReservationList
27
+ # @param [Version] version Version that contains the resource
28
+ # @return [ReservationList] ReservationList
29
+ def initialize(version, workspace_sid: nil, task_sid: nil)
30
+ super(version)
31
+
32
+ # Path Solution
33
+ @solution = { workspace_sid: workspace_sid, task_sid: task_sid }
34
+ @uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks/#{@solution[:task_sid]}/Reservations"
35
+
36
+ end
37
+
38
+ ##
39
+ # Lists ReservationInstance records from the API as a list.
40
+ # Unlike stream(), this operation is eager and will load `limit` records into
41
+ # memory before returning.
42
+ # @param [Status] reservation_status Returns the list of reservations for a task with a specified ReservationStatus. Can be: `pending`, `accepted`, `rejected`, or `timeout`.
43
+ # @param [String] worker_sid The SID of the reserved Worker resource to read.
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(reservation_status: :unset, worker_sid: :unset, limit: nil, page_size: nil)
52
+ self.stream(
53
+ reservation_status: reservation_status,
54
+ worker_sid: worker_sid,
55
+ limit: limit,
56
+ page_size: page_size
57
+ ).entries
58
+ end
174
59
 
175
- class ReservationContext < InstanceContext
176
- ##
177
- # Initialize the ReservationContext
178
- # @param [Version] version Version that contains the resource
179
- # @param [String] workspace_sid The SID of the Workspace with the TaskReservation
180
- # resource to fetch.
181
- # @param [String] task_sid The SID of the reserved Task resource with the
182
- # TaskReservation resource to fetch.
183
- # @param [String] sid The SID of the TaskReservation resource to fetch.
184
- # @return [ReservationContext] ReservationContext
185
- def initialize(version, workspace_sid, task_sid, sid)
186
- super(version)
187
-
188
- # Path Solution
189
- @solution = {workspace_sid: workspace_sid, task_sid: task_sid, sid: sid, }
190
- @uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks/#{@solution[:task_sid]}/Reservations/#{@solution[:sid]}"
191
- end
192
-
193
- ##
194
- # Fetch the ReservationInstance
195
- # @return [ReservationInstance] Fetched ReservationInstance
196
- def fetch
197
- payload = @version.fetch('GET', @uri)
198
-
199
- ReservationInstance.new(
200
- @version,
201
- payload,
202
- workspace_sid: @solution[:workspace_sid],
203
- task_sid: @solution[:task_sid],
204
- sid: @solution[:sid],
205
- )
206
- end
207
-
208
- ##
209
- # Update the ReservationInstance
210
- # @param [reservation.Status] reservation_status The new status of the
211
- # reservation. Can be: `pending`, `accepted`, `rejected`, or `timeout`.
212
- # @param [String] worker_activity_sid The new worker activity SID if rejecting a
213
- # reservation.
214
- # @param [String] instruction The assignment instruction for reservation.
215
- # @param [String] dequeue_post_work_activity_sid The SID of the Activity resource
216
- # to start after executing a Dequeue instruction.
217
- # @param [String] dequeue_from The Caller ID of the call to the worker when
218
- # executing a Dequeue instruction.
219
- # @param [String] dequeue_record Whether to record both legs of a call when
220
- # executing a Dequeue instruction or which leg to record.
221
- # @param [String] dequeue_timeout Timeout for call when executing a Dequeue
222
- # instruction.
223
- # @param [String] dequeue_to The Contact URI of the worker when executing a
224
- # Dequeue instruction. Can be the URI of the Twilio Client, the SIP URI for
225
- # Programmable SIP, or the {E.164}[https://www.twilio.com/docs/glossary/what-e164]
226
- # formatted phone number, depending on the destination.
227
- # @param [String] dequeue_status_callback_url The Callback URL for completed call
228
- # event when executing a Dequeue instruction.
229
- # @param [String] call_from The Caller ID of the outbound call when executing a
230
- # Call instruction.
231
- # @param [String] call_record Whether to record both legs of a call when executing
232
- # a Call instruction or which leg to record.
233
- # @param [String] call_timeout Timeout for call when executing a Call instruction.
234
- # @param [String] call_to The Contact URI of the worker when executing a Call
235
- # instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable
236
- # SIP, or the {E.164}[https://www.twilio.com/docs/glossary/what-e164] formatted
237
- # phone number, depending on the destination.
238
- # @param [String] call_url TwiML URI executed on answering the worker's leg as a
239
- # result of the Call instruction.
240
- # @param [String] call_status_callback_url The URL to call for the completed call
241
- # event when executing a Call instruction.
242
- # @param [Boolean] call_accept Whether to accept a reservation when executing a
243
- # Call instruction.
244
- # @param [String] redirect_call_sid The Call SID of the call parked in the queue
245
- # when executing a Redirect instruction.
246
- # @param [Boolean] redirect_accept Whether the reservation should be accepted when
247
- # executing a Redirect instruction.
248
- # @param [String] redirect_url TwiML URI to redirect the call to when executing
249
- # the Redirect instruction.
250
- # @param [String] to The Contact URI of the worker when executing a Conference
251
- # instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable
252
- # SIP, or the {E.164}[https://www.twilio.com/docs/glossary/what-e164] formatted
253
- # phone number, depending on the destination.
254
- # @param [String] from The Caller ID of the call to the worker when executing a
255
- # Conference instruction.
256
- # @param [String] status_callback The URL we should call using the
257
- # `status_callback_method` to send status information to your application.
258
- # @param [String] status_callback_method The HTTP method we should use to call
259
- # `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
260
- # @param [Array[reservation.CallStatus]] status_callback_event The call progress
261
- # events that we will send to `status_callback`. Can be: `initiated`, `ringing`,
262
- # `answered`, or `completed`.
263
- # @param [String] timeout Timeout for call when executing a Conference
264
- # instruction.
265
- # @param [Boolean] record Whether to record the participant and their conferences,
266
- # including the time between conferences. The default is `false`.
267
- # @param [Boolean] muted Whether the agent is muted in the conference. The default
268
- # is `false`.
269
- # @param [String] beep Whether to play a notification beep when the participant
270
- # joins or when to play a beep. Can be: `true`, `false`, `onEnter`, or `onExit`.
271
- # The default value is `true`.
272
- # @param [Boolean] start_conference_on_enter Whether to start the conference when
273
- # the participant joins, if it has not already started. The default is `true`. If
274
- # `false` and the conference has not started, the participant is muted and hears
275
- # background music until another participant starts the conference.
276
- # @param [Boolean] end_conference_on_exit Whether to end the conference when the
277
- # agent leaves.
278
- # @param [String] wait_url The URL we should call using the `wait_method` for the
279
- # music to play while participants are waiting for the conference to start. The
280
- # default value is the URL of our standard hold music. {Learn more about hold
281
- # music}[https://www.twilio.com/labs/twimlets/holdmusic].
282
- # @param [String] wait_method The HTTP method we should use to call `wait_url`.
283
- # Can be `GET` or `POST` and the default is `POST`. When using a static audio
284
- # file, this should be `GET` so that we can cache the file.
285
- # @param [Boolean] early_media Whether to allow an agent to hear the state of the
286
- # outbound call, including ringing or disconnect messages. The default is `true`.
287
- # @param [String] max_participants The maximum number of participants in the
288
- # conference. Can be a positive integer from `2` to `250`. The default value is
289
- # `250`.
290
- # @param [String] conference_status_callback The URL we should call using the
291
- # `conference_status_callback_method` when the conference events in
292
- # `conference_status_callback_event` occur. Only the value set by the first
293
- # participant to join the conference is used. Subsequent
294
- # `conference_status_callback` values are ignored.
295
- # @param [String] conference_status_callback_method The HTTP method we should use
296
- # to call `conference_status_callback`. Can be: `GET` or `POST` and defaults to
297
- # `POST`.
298
- # @param [Array[reservation.ConferenceEvent]] conference_status_callback_event The
299
- # conference status events that we will send to `conference_status_callback`. Can
300
- # be: `start`, `end`, `join`, `leave`, `mute`, `hold`, `speaker`.
301
- # @param [String] conference_record Whether to record the conference the
302
- # participant is joining or when to record the conference. Can be: `true`,
303
- # `false`, `record-from-start`, and `do-not-record`. The default value is `false`.
304
- # @param [String] conference_trim How to trim the leading and trailing silence
305
- # from your recorded conference audio files. Can be: `trim-silence` or
306
- # `do-not-trim` and defaults to `trim-silence`.
307
- # @param [String] recording_channels The recording channels for the final
308
- # recording. Can be: `mono` or `dual` and the default is `mono`.
309
- # @param [String] recording_status_callback The URL that we should call using the
310
- # `recording_status_callback_method` when the recording status changes.
311
- # @param [String] recording_status_callback_method The HTTP method we should use
312
- # when we call `recording_status_callback`. Can be: `GET` or `POST` and defaults
313
- # to `POST`.
314
- # @param [String] conference_recording_status_callback The URL we should call
315
- # using the `conference_recording_status_callback_method` when the conference
316
- # recording is available.
317
- # @param [String] conference_recording_status_callback_method The HTTP method we
318
- # should use to call `conference_recording_status_callback`. Can be: `GET` or
319
- # `POST` and defaults to `POST`.
320
- # @param [String] region The
321
- # {region}[https://support.twilio.com/hc/en-us/articles/223132167-How-global-low-latency-routing-and-region-selection-work-for-conferences-and-Client-calls]
322
- # where we should mix the recorded audio. Can be:`us1`, `ie1`, `de1`, `sg1`,
323
- # `br1`, `au1`, or `jp1`.
324
- # @param [String] sip_auth_username The SIP username used for authentication.
325
- # @param [String] sip_auth_password The SIP password for authentication.
326
- # @param [Array[String]] dequeue_status_callback_event The Call progress events
327
- # sent via webhooks as a result of a Dequeue instruction.
328
- # @param [String] post_work_activity_sid The new worker activity SID after
329
- # executing a Conference instruction.
330
- # @param [reservation.SupervisorMode] supervisor_mode The Supervisor mode when
331
- # executing the Supervise instruction.
332
- # @param [String] supervisor The Supervisor SID/URI when executing the Supervise
333
- # instruction.
334
- # @param [Boolean] end_conference_on_customer_exit Whether to end the conference
335
- # when the customer leaves.
336
- # @param [Boolean] beep_on_customer_entrance Whether to play a notification beep
337
- # when the customer joins.
338
- # @param [String] if_match The If-Match HTTP request header
339
- # @return [ReservationInstance] Updated ReservationInstance
340
- def update(reservation_status: :unset, worker_activity_sid: :unset, instruction: :unset, dequeue_post_work_activity_sid: :unset, dequeue_from: :unset, dequeue_record: :unset, dequeue_timeout: :unset, dequeue_to: :unset, dequeue_status_callback_url: :unset, call_from: :unset, call_record: :unset, call_timeout: :unset, call_to: :unset, call_url: :unset, call_status_callback_url: :unset, call_accept: :unset, redirect_call_sid: :unset, redirect_accept: :unset, redirect_url: :unset, to: :unset, from: :unset, status_callback: :unset, status_callback_method: :unset, status_callback_event: :unset, timeout: :unset, record: :unset, muted: :unset, beep: :unset, start_conference_on_enter: :unset, end_conference_on_exit: :unset, wait_url: :unset, wait_method: :unset, early_media: :unset, max_participants: :unset, conference_status_callback: :unset, conference_status_callback_method: :unset, conference_status_callback_event: :unset, conference_record: :unset, conference_trim: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, conference_recording_status_callback: :unset, conference_recording_status_callback_method: :unset, region: :unset, sip_auth_username: :unset, sip_auth_password: :unset, dequeue_status_callback_event: :unset, post_work_activity_sid: :unset, supervisor_mode: :unset, supervisor: :unset, end_conference_on_customer_exit: :unset, beep_on_customer_entrance: :unset, if_match: :unset)
341
- data = Twilio::Values.of({
342
- 'ReservationStatus' => reservation_status,
343
- 'WorkerActivitySid' => worker_activity_sid,
344
- 'Instruction' => instruction,
345
- 'DequeuePostWorkActivitySid' => dequeue_post_work_activity_sid,
346
- 'DequeueFrom' => dequeue_from,
347
- 'DequeueRecord' => dequeue_record,
348
- 'DequeueTimeout' => dequeue_timeout,
349
- 'DequeueTo' => dequeue_to,
350
- 'DequeueStatusCallbackUrl' => dequeue_status_callback_url,
351
- 'CallFrom' => call_from,
352
- 'CallRecord' => call_record,
353
- 'CallTimeout' => call_timeout,
354
- 'CallTo' => call_to,
355
- 'CallUrl' => call_url,
356
- 'CallStatusCallbackUrl' => call_status_callback_url,
357
- 'CallAccept' => call_accept,
358
- 'RedirectCallSid' => redirect_call_sid,
359
- 'RedirectAccept' => redirect_accept,
360
- 'RedirectUrl' => redirect_url,
361
- 'To' => to,
362
- 'From' => from,
363
- 'StatusCallback' => status_callback,
364
- 'StatusCallbackMethod' => status_callback_method,
365
- 'StatusCallbackEvent' => Twilio.serialize_list(status_callback_event) { |e| e },
366
- 'Timeout' => timeout,
367
- 'Record' => record,
368
- 'Muted' => muted,
369
- 'Beep' => beep,
370
- 'StartConferenceOnEnter' => start_conference_on_enter,
371
- 'EndConferenceOnExit' => end_conference_on_exit,
372
- 'WaitUrl' => wait_url,
373
- 'WaitMethod' => wait_method,
374
- 'EarlyMedia' => early_media,
375
- 'MaxParticipants' => max_participants,
376
- 'ConferenceStatusCallback' => conference_status_callback,
377
- 'ConferenceStatusCallbackMethod' => conference_status_callback_method,
378
- 'ConferenceStatusCallbackEvent' => Twilio.serialize_list(conference_status_callback_event) { |e| e },
379
- 'ConferenceRecord' => conference_record,
380
- 'ConferenceTrim' => conference_trim,
381
- 'RecordingChannels' => recording_channels,
382
- 'RecordingStatusCallback' => recording_status_callback,
383
- 'RecordingStatusCallbackMethod' => recording_status_callback_method,
384
- 'ConferenceRecordingStatusCallback' => conference_recording_status_callback,
385
- 'ConferenceRecordingStatusCallbackMethod' => conference_recording_status_callback_method,
386
- 'Region' => region,
387
- 'SipAuthUsername' => sip_auth_username,
388
- 'SipAuthPassword' => sip_auth_password,
389
- 'DequeueStatusCallbackEvent' => Twilio.serialize_list(dequeue_status_callback_event) { |e| e },
390
- 'PostWorkActivitySid' => post_work_activity_sid,
391
- 'SupervisorMode' => supervisor_mode,
392
- 'Supervisor' => supervisor,
393
- 'EndConferenceOnCustomerExit' => end_conference_on_customer_exit,
394
- 'BeepOnCustomerEntrance' => beep_on_customer_entrance,
395
- })
396
- headers = Twilio::Values.of({'If-Match' => if_match, })
397
-
398
- payload = @version.update('POST', @uri, data: data, headers: headers)
399
-
400
- ReservationInstance.new(
401
- @version,
402
- payload,
403
- workspace_sid: @solution[:workspace_sid],
404
- task_sid: @solution[:task_sid],
405
- sid: @solution[:sid],
406
- )
407
- end
408
-
409
- ##
410
- # Provide a user friendly representation
411
- def to_s
412
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
413
- "#<Twilio.Taskrouter.V1.ReservationContext #{context}>"
414
- end
415
-
416
- ##
417
- # Provide a detailed, user friendly representation
418
- def inspect
419
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
420
- "#<Twilio.Taskrouter.V1.ReservationContext #{context}>"
421
- end
422
- end
60
+ ##
61
+ # Streams Instance records from the API as an Enumerable.
62
+ # This operation lazily loads records as efficiently as possible until the limit
63
+ # is reached.
64
+ # @param [Status] reservation_status Returns the list of reservations for a task with a specified ReservationStatus. Can be: `pending`, `accepted`, `rejected`, or `timeout`.
65
+ # @param [String] worker_sid The SID of the reserved Worker resource to read.
66
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
67
+ # guarantees to never return more than limit. Default is no limit
68
+ # @param [Integer] page_size Number of records to fetch per request, when
69
+ # not set will use the default value of 50 records. If no page_size is defined
70
+ # but a limit is defined, stream() will attempt to read the limit with the most
71
+ # efficient page size, i.e. min(limit, 1000)
72
+ # @return [Enumerable] Enumerable that will yield up to limit results
73
+ def stream(reservation_status: :unset, worker_sid: :unset, limit: nil, page_size: nil)
74
+ limits = @version.read_limits(limit, page_size)
75
+
76
+ page = self.page(
77
+ reservation_status: reservation_status,
78
+ worker_sid: worker_sid,
79
+ page_size: limits[:page_size], )
80
+
81
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
82
+ end
83
+
84
+ ##
85
+ # Lists ReservationPageMetadata records from the API as a list.
86
+ # @param [Status] reservation_status Returns the list of reservations for a task with a specified ReservationStatus. Can be: `pending`, `accepted`, `rejected`, or `timeout`.
87
+ # @param [String] worker_sid The SID of the reserved Worker resource to read.
88
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
89
+ # guarantees to never return more than limit. Default is no limit
90
+ # @param [Integer] page_size Number of records to fetch per request, when
91
+ # not set will use the default value of 50 records. If no page_size is defined
92
+ # but a limit is defined, stream() will attempt to read the limit with the most
93
+ # efficient page size, i.e. min(limit, 1000)
94
+ # @return [Array] Array of up to limit results
95
+ def list_with_metadata(reservation_status: :unset, worker_sid: :unset, limit: nil, page_size: nil)
96
+ limits = @version.read_limits(limit, page_size)
97
+ params = Twilio::Values.of({
98
+ 'ReservationStatus' => reservation_status,
99
+ 'WorkerSid' => worker_sid,
100
+
101
+ 'PageSize' => limits[:page_size],
102
+ });
103
+ headers = Twilio::Values.of({})
104
+
105
+ response = @version.page('GET', @uri, params: params, headers: headers)
106
+
107
+ ReservationPageMetadata.new(@version, response, @solution, limits[:limit])
108
+ end
109
+
110
+ ##
111
+ # When passed a block, yields ReservationInstance records from the API.
112
+ # This operation lazily loads records as efficiently as possible until the limit
113
+ # is reached.
114
+ def each
115
+ limits = @version.read_limits
116
+
117
+ page = self.page(page_size: limits[:page_size], )
118
+
119
+ @version.stream(page,
120
+ limit: limits[:limit],
121
+ page_limit: limits[:page_limit]).each {|x| yield x}
122
+ end
123
+
124
+ ##
125
+ # Retrieve a single page of ReservationInstance records from the API.
126
+ # Request is executed immediately.
127
+ # @param [Status] reservation_status Returns the list of reservations for a task with a specified ReservationStatus. Can be: `pending`, `accepted`, `rejected`, or `timeout`.
128
+ # @param [String] worker_sid The SID of the reserved Worker resource to read.
129
+ # @param [String] page_token PageToken provided by the API
130
+ # @param [Integer] page_number Page Number, this value is simply for client state
131
+ # @param [Integer] page_size Number of records to return, defaults to 50
132
+ # @return [Page] Page of ReservationInstance
133
+ def page(reservation_status: :unset, worker_sid: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
134
+ params = Twilio::Values.of({
135
+ 'ReservationStatus' => reservation_status,
136
+ 'WorkerSid' => worker_sid,
137
+ 'PageToken' => page_token,
138
+ 'Page' => page_number,
139
+ 'PageSize' => page_size,
140
+ })
141
+ headers = Twilio::Values.of({})
142
+
143
+
144
+
145
+ response = @version.page('GET', @uri, params: params, headers: headers)
146
+
147
+ ReservationPage.new(@version, response, @solution)
148
+ end
149
+
150
+ ##
151
+ # Retrieve a single page of ReservationInstance records from the API.
152
+ # Request is executed immediately.
153
+ # @param [String] target_url API-generated URL for the requested results page
154
+ # @return [Page] Page of ReservationInstance
155
+ def get_page(target_url)
156
+ response = @version.domain.request(
157
+ 'GET',
158
+ target_url
159
+ )
160
+ ReservationPage.new(@version, response, @solution)
161
+ end
162
+
163
+
164
+
165
+ # Provide a user friendly representation
166
+ def to_s
167
+ '#<Twilio.Taskrouter.V1.ReservationList>'
168
+ end
169
+ end
170
+
171
+
172
+ class ReservationContext < InstanceContext
173
+ ##
174
+ # Initialize the ReservationContext
175
+ # @param [Version] version Version that contains the resource
176
+ # @param [String] workspace_sid The SID of the Workspace with the TaskReservation resources to update.
177
+ # @param [String] task_sid The SID of the reserved Task resource with the TaskReservation resources to update.
178
+ # @param [String] sid The SID of the TaskReservation resource to update.
179
+ # @return [ReservationContext] ReservationContext
180
+ def initialize(version, workspace_sid, task_sid, sid)
181
+ super(version)
182
+
183
+
184
+ # Path Solution
185
+ @solution = { workspace_sid: workspace_sid, task_sid: task_sid, sid: sid, }
186
+ @uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks/#{@solution[:task_sid]}/Reservations/#{@solution[:sid]}"
187
+
188
+
189
+ end
190
+ ##
191
+ # Fetch the ReservationInstance
192
+ # @return [ReservationInstance] Fetched ReservationInstance
193
+ def fetch
194
+
195
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
196
+
197
+
198
+
199
+
200
+
201
+ payload = @version.fetch('GET', @uri, headers: headers)
202
+ ReservationInstance.new(
203
+ @version,
204
+ payload,
205
+ workspace_sid: @solution[:workspace_sid],
206
+ task_sid: @solution[:task_sid],
207
+ sid: @solution[:sid],
208
+ )
209
+ end
210
+
211
+ ##
212
+ # Fetch the ReservationInstanceMetadata
213
+ # @return [ReservationInstance] Fetched ReservationInstance
214
+ def fetch_with_metadata
215
+
216
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
217
+
218
+
219
+
220
+
221
+
222
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
223
+ reservation_instance = ReservationInstance.new(
224
+ @version,
225
+ response.body,
226
+ workspace_sid: @solution[:workspace_sid],
227
+ task_sid: @solution[:task_sid],
228
+ sid: @solution[:sid],
229
+ )
230
+ ReservationInstanceMetadata.new(
231
+ @version,
232
+ reservation_instance,
233
+ response.headers,
234
+ response.status_code
235
+ )
236
+ end
237
+
238
+ ##
239
+ # Update the ReservationInstance
240
+ # @param [Status] reservation_status
241
+ # @param [String] worker_activity_sid The new worker activity SID if rejecting a reservation.
242
+ # @param [String] instruction The assignment instruction for reservation.
243
+ # @param [String] dequeue_post_work_activity_sid The SID of the Activity resource to start after executing a Dequeue instruction.
244
+ # @param [String] dequeue_from The Caller ID of the call to the worker when executing a Dequeue instruction.
245
+ # @param [String] dequeue_record Whether to record both legs of a call when executing a Dequeue instruction or which leg to record.
246
+ # @param [String] dequeue_timeout Timeout for call when executing a Dequeue instruction.
247
+ # @param [String] dequeue_to The Contact URI of the worker when executing a Dequeue instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
248
+ # @param [String] dequeue_status_callback_url The Callback URL for completed call event when executing a Dequeue instruction.
249
+ # @param [String] call_from The Caller ID of the outbound call when executing a Call instruction.
250
+ # @param [String] call_record Whether to record both legs of a call when executing a Call instruction or which leg to record.
251
+ # @param [String] call_timeout Timeout for call when executing a Call instruction.
252
+ # @param [String] call_to The Contact URI of the worker when executing a Call instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
253
+ # @param [String] call_url TwiML URI executed on answering the worker's leg as a result of the Call instruction.
254
+ # @param [String] call_status_callback_url The URL to call for the completed call event when executing a Call instruction.
255
+ # @param [Boolean] call_accept Whether to accept a reservation when executing a Call instruction.
256
+ # @param [String] redirect_call_sid The Call SID of the call parked in the queue when executing a Redirect instruction.
257
+ # @param [Boolean] redirect_accept Whether the reservation should be accepted when executing a Redirect instruction.
258
+ # @param [String] redirect_url TwiML URI to redirect the call to when executing the Redirect instruction.
259
+ # @param [String] to The Contact URI of the worker when executing a Conference instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
260
+ # @param [String] from The Caller ID of the call to the worker when executing a Conference instruction.
261
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application.
262
+ # @param [String] status_callback_method The HTTP method we should use to call `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
263
+ # @param [Array[CallStatus]] status_callback_event The call progress events that we will send to `status_callback`. Can be: `initiated`, `ringing`, `answered`, or `completed`.
264
+ # @param [String] timeout Timeout for call when executing a Conference instruction.
265
+ # @param [Boolean] record Whether to record the participant and their conferences, including the time between conferences. The default is `false`.
266
+ # @param [Boolean] muted Whether the agent is muted in the conference. The default is `false`.
267
+ # @param [String] beep Whether to play a notification beep when the participant joins or when to play a beep. Can be: `true`, `false`, `onEnter`, or `onExit`. The default value is `true`.
268
+ # @param [Boolean] start_conference_on_enter Whether to start the conference when the participant joins, if it has not already started. The default is `true`. If `false` and the conference has not started, the participant is muted and hears background music until another participant starts the conference.
269
+ # @param [Boolean] end_conference_on_exit Whether to end the conference when the agent leaves.
270
+ # @param [String] wait_url The URL we should call using the `wait_method` for the music to play while participants are waiting for the conference to start. The default value is the URL of our standard hold music. [Learn more about hold music](https://www.twilio.com/labs/twimlets/holdmusic).
271
+ # @param [String] wait_method The HTTP method we should use to call `wait_url`. Can be `GET` or `POST` and the default is `POST`. When using a static audio file, this should be `GET` so that we can cache the file.
272
+ # @param [Boolean] early_media Whether to allow an agent to hear the state of the outbound call, including ringing or disconnect messages. The default is `true`.
273
+ # @param [String] max_participants The maximum number of participants in the conference. Can be a positive integer from `2` to `250`. The default value is `250`.
274
+ # @param [String] conference_status_callback The URL we should call using the `conference_status_callback_method` when the conference events in `conference_status_callback_event` occur. Only the value set by the first participant to join the conference is used. Subsequent `conference_status_callback` values are ignored.
275
+ # @param [String] conference_status_callback_method The HTTP method we should use to call `conference_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
276
+ # @param [Array[ConferenceEvent]] conference_status_callback_event The conference status events that we will send to `conference_status_callback`. Can be: `start`, `end`, `join`, `leave`, `mute`, `hold`, `speaker`.
277
+ # @param [String] conference_record Whether to record the conference the participant is joining or when to record the conference. Can be: `true`, `false`, `record-from-start`, and `do-not-record`. The default value is `false`.
278
+ # @param [String] conference_trim How to trim the leading and trailing silence from your recorded conference audio files. Can be: `trim-silence` or `do-not-trim` and defaults to `trim-silence`.
279
+ # @param [String] recording_channels The recording channels for the final recording. Can be: `mono` or `dual` and the default is `mono`.
280
+ # @param [String] recording_status_callback The URL that we should call using the `recording_status_callback_method` when the recording status changes.
281
+ # @param [String] recording_status_callback_method The HTTP method we should use when we call `recording_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
282
+ # @param [String] conference_recording_status_callback The URL we should call using the `conference_recording_status_callback_method` when the conference recording is available.
283
+ # @param [String] conference_recording_status_callback_method The HTTP method we should use to call `conference_recording_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
284
+ # @param [String] region The [region](https://support.twilio.com/hc/en-us/articles/223132167-How-global-low-latency-routing-and-region-selection-work-for-conferences-and-Client-calls) where we should mix the recorded audio. Can be:`us1`, `us2`, `ie1`, `de1`, `sg1`, `br1`, `au1`, or `jp1`.
285
+ # @param [String] sip_auth_username The SIP username used for authentication.
286
+ # @param [String] sip_auth_password The SIP password for authentication.
287
+ # @param [Array[String]] dequeue_status_callback_event The Call progress events sent via webhooks as a result of a Dequeue instruction.
288
+ # @param [String] post_work_activity_sid The new worker activity SID after executing a Conference instruction.
289
+ # @param [SupervisorMode] supervisor_mode
290
+ # @param [String] supervisor The Supervisor SID/URI when executing the Supervise instruction.
291
+ # @param [Boolean] end_conference_on_customer_exit Whether to end the conference when the customer leaves.
292
+ # @param [Boolean] beep_on_customer_entrance Whether to play a notification beep when the customer joins.
293
+ # @param [String] jitter_buffer_size The jitter buffer size for conference. Can be: `small`, `medium`, `large`, `off`.
294
+ # @param [String] if_match The If-Match HTTP request header
295
+ # @return [ReservationInstance] Updated ReservationInstance
296
+ def update(
297
+ reservation_status: :unset,
298
+ worker_activity_sid: :unset,
299
+ instruction: :unset,
300
+ dequeue_post_work_activity_sid: :unset,
301
+ dequeue_from: :unset,
302
+ dequeue_record: :unset,
303
+ dequeue_timeout: :unset,
304
+ dequeue_to: :unset,
305
+ dequeue_status_callback_url: :unset,
306
+ call_from: :unset,
307
+ call_record: :unset,
308
+ call_timeout: :unset,
309
+ call_to: :unset,
310
+ call_url: :unset,
311
+ call_status_callback_url: :unset,
312
+ call_accept: :unset,
313
+ redirect_call_sid: :unset,
314
+ redirect_accept: :unset,
315
+ redirect_url: :unset,
316
+ to: :unset,
317
+ from: :unset,
318
+ status_callback: :unset,
319
+ status_callback_method: :unset,
320
+ status_callback_event: :unset,
321
+ timeout: :unset,
322
+ record: :unset,
323
+ muted: :unset,
324
+ beep: :unset,
325
+ start_conference_on_enter: :unset,
326
+ end_conference_on_exit: :unset,
327
+ wait_url: :unset,
328
+ wait_method: :unset,
329
+ early_media: :unset,
330
+ max_participants: :unset,
331
+ conference_status_callback: :unset,
332
+ conference_status_callback_method: :unset,
333
+ conference_status_callback_event: :unset,
334
+ conference_record: :unset,
335
+ conference_trim: :unset,
336
+ recording_channels: :unset,
337
+ recording_status_callback: :unset,
338
+ recording_status_callback_method: :unset,
339
+ conference_recording_status_callback: :unset,
340
+ conference_recording_status_callback_method: :unset,
341
+ region: :unset,
342
+ sip_auth_username: :unset,
343
+ sip_auth_password: :unset,
344
+ dequeue_status_callback_event: :unset,
345
+ post_work_activity_sid: :unset,
346
+ supervisor_mode: :unset,
347
+ supervisor: :unset,
348
+ end_conference_on_customer_exit: :unset,
349
+ beep_on_customer_entrance: :unset,
350
+ jitter_buffer_size: :unset,
351
+ if_match: :unset
352
+ )
353
+
354
+ data = Twilio::Values.of({
355
+ 'ReservationStatus' => reservation_status,
356
+ 'WorkerActivitySid' => worker_activity_sid,
357
+ 'Instruction' => instruction,
358
+ 'DequeuePostWorkActivitySid' => dequeue_post_work_activity_sid,
359
+ 'DequeueFrom' => dequeue_from,
360
+ 'DequeueRecord' => dequeue_record,
361
+ 'DequeueTimeout' => dequeue_timeout,
362
+ 'DequeueTo' => dequeue_to,
363
+ 'DequeueStatusCallbackUrl' => dequeue_status_callback_url,
364
+ 'CallFrom' => call_from,
365
+ 'CallRecord' => call_record,
366
+ 'CallTimeout' => call_timeout,
367
+ 'CallTo' => call_to,
368
+ 'CallUrl' => call_url,
369
+ 'CallStatusCallbackUrl' => call_status_callback_url,
370
+ 'CallAccept' => call_accept,
371
+ 'RedirectCallSid' => redirect_call_sid,
372
+ 'RedirectAccept' => redirect_accept,
373
+ 'RedirectUrl' => redirect_url,
374
+ 'To' => to,
375
+ 'From' => from,
376
+ 'StatusCallback' => status_callback,
377
+ 'StatusCallbackMethod' => status_callback_method,
378
+ 'StatusCallbackEvent' => Twilio.serialize_list(status_callback_event) { |e| e },
379
+ 'Timeout' => timeout,
380
+ 'Record' => record,
381
+ 'Muted' => muted,
382
+ 'Beep' => beep,
383
+ 'StartConferenceOnEnter' => start_conference_on_enter,
384
+ 'EndConferenceOnExit' => end_conference_on_exit,
385
+ 'WaitUrl' => wait_url,
386
+ 'WaitMethod' => wait_method,
387
+ 'EarlyMedia' => early_media,
388
+ 'MaxParticipants' => max_participants,
389
+ 'ConferenceStatusCallback' => conference_status_callback,
390
+ 'ConferenceStatusCallbackMethod' => conference_status_callback_method,
391
+ 'ConferenceStatusCallbackEvent' => Twilio.serialize_list(conference_status_callback_event) { |e| e },
392
+ 'ConferenceRecord' => conference_record,
393
+ 'ConferenceTrim' => conference_trim,
394
+ 'RecordingChannels' => recording_channels,
395
+ 'RecordingStatusCallback' => recording_status_callback,
396
+ 'RecordingStatusCallbackMethod' => recording_status_callback_method,
397
+ 'ConferenceRecordingStatusCallback' => conference_recording_status_callback,
398
+ 'ConferenceRecordingStatusCallbackMethod' => conference_recording_status_callback_method,
399
+ 'Region' => region,
400
+ 'SipAuthUsername' => sip_auth_username,
401
+ 'SipAuthPassword' => sip_auth_password,
402
+ 'DequeueStatusCallbackEvent' => Twilio.serialize_list(dequeue_status_callback_event) { |e| e },
403
+ 'PostWorkActivitySid' => post_work_activity_sid,
404
+ 'SupervisorMode' => supervisor_mode,
405
+ 'Supervisor' => supervisor,
406
+ 'EndConferenceOnCustomerExit' => end_conference_on_customer_exit,
407
+ 'BeepOnCustomerEntrance' => beep_on_customer_entrance,
408
+ 'JitterBufferSize' => jitter_buffer_size,
409
+ })
410
+
411
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, })
412
+
413
+
414
+
415
+
416
+
417
+ payload = @version.update('POST', @uri, data: data, headers: headers)
418
+ ReservationInstance.new(
419
+ @version,
420
+ payload,
421
+ workspace_sid: @solution[:workspace_sid],
422
+ task_sid: @solution[:task_sid],
423
+ sid: @solution[:sid],
424
+ )
425
+ end
426
+
427
+ ##
428
+ # Update the ReservationInstanceMetadata
429
+ # @param [Status] reservation_status
430
+ # @param [String] worker_activity_sid The new worker activity SID if rejecting a reservation.
431
+ # @param [String] instruction The assignment instruction for reservation.
432
+ # @param [String] dequeue_post_work_activity_sid The SID of the Activity resource to start after executing a Dequeue instruction.
433
+ # @param [String] dequeue_from The Caller ID of the call to the worker when executing a Dequeue instruction.
434
+ # @param [String] dequeue_record Whether to record both legs of a call when executing a Dequeue instruction or which leg to record.
435
+ # @param [String] dequeue_timeout Timeout for call when executing a Dequeue instruction.
436
+ # @param [String] dequeue_to The Contact URI of the worker when executing a Dequeue instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
437
+ # @param [String] dequeue_status_callback_url The Callback URL for completed call event when executing a Dequeue instruction.
438
+ # @param [String] call_from The Caller ID of the outbound call when executing a Call instruction.
439
+ # @param [String] call_record Whether to record both legs of a call when executing a Call instruction or which leg to record.
440
+ # @param [String] call_timeout Timeout for call when executing a Call instruction.
441
+ # @param [String] call_to The Contact URI of the worker when executing a Call instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
442
+ # @param [String] call_url TwiML URI executed on answering the worker's leg as a result of the Call instruction.
443
+ # @param [String] call_status_callback_url The URL to call for the completed call event when executing a Call instruction.
444
+ # @param [Boolean] call_accept Whether to accept a reservation when executing a Call instruction.
445
+ # @param [String] redirect_call_sid The Call SID of the call parked in the queue when executing a Redirect instruction.
446
+ # @param [Boolean] redirect_accept Whether the reservation should be accepted when executing a Redirect instruction.
447
+ # @param [String] redirect_url TwiML URI to redirect the call to when executing the Redirect instruction.
448
+ # @param [String] to The Contact URI of the worker when executing a Conference instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
449
+ # @param [String] from The Caller ID of the call to the worker when executing a Conference instruction.
450
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application.
451
+ # @param [String] status_callback_method The HTTP method we should use to call `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
452
+ # @param [Array[CallStatus]] status_callback_event The call progress events that we will send to `status_callback`. Can be: `initiated`, `ringing`, `answered`, or `completed`.
453
+ # @param [String] timeout Timeout for call when executing a Conference instruction.
454
+ # @param [Boolean] record Whether to record the participant and their conferences, including the time between conferences. The default is `false`.
455
+ # @param [Boolean] muted Whether the agent is muted in the conference. The default is `false`.
456
+ # @param [String] beep Whether to play a notification beep when the participant joins or when to play a beep. Can be: `true`, `false`, `onEnter`, or `onExit`. The default value is `true`.
457
+ # @param [Boolean] start_conference_on_enter Whether to start the conference when the participant joins, if it has not already started. The default is `true`. If `false` and the conference has not started, the participant is muted and hears background music until another participant starts the conference.
458
+ # @param [Boolean] end_conference_on_exit Whether to end the conference when the agent leaves.
459
+ # @param [String] wait_url The URL we should call using the `wait_method` for the music to play while participants are waiting for the conference to start. The default value is the URL of our standard hold music. [Learn more about hold music](https://www.twilio.com/labs/twimlets/holdmusic).
460
+ # @param [String] wait_method The HTTP method we should use to call `wait_url`. Can be `GET` or `POST` and the default is `POST`. When using a static audio file, this should be `GET` so that we can cache the file.
461
+ # @param [Boolean] early_media Whether to allow an agent to hear the state of the outbound call, including ringing or disconnect messages. The default is `true`.
462
+ # @param [String] max_participants The maximum number of participants in the conference. Can be a positive integer from `2` to `250`. The default value is `250`.
463
+ # @param [String] conference_status_callback The URL we should call using the `conference_status_callback_method` when the conference events in `conference_status_callback_event` occur. Only the value set by the first participant to join the conference is used. Subsequent `conference_status_callback` values are ignored.
464
+ # @param [String] conference_status_callback_method The HTTP method we should use to call `conference_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
465
+ # @param [Array[ConferenceEvent]] conference_status_callback_event The conference status events that we will send to `conference_status_callback`. Can be: `start`, `end`, `join`, `leave`, `mute`, `hold`, `speaker`.
466
+ # @param [String] conference_record Whether to record the conference the participant is joining or when to record the conference. Can be: `true`, `false`, `record-from-start`, and `do-not-record`. The default value is `false`.
467
+ # @param [String] conference_trim How to trim the leading and trailing silence from your recorded conference audio files. Can be: `trim-silence` or `do-not-trim` and defaults to `trim-silence`.
468
+ # @param [String] recording_channels The recording channels for the final recording. Can be: `mono` or `dual` and the default is `mono`.
469
+ # @param [String] recording_status_callback The URL that we should call using the `recording_status_callback_method` when the recording status changes.
470
+ # @param [String] recording_status_callback_method The HTTP method we should use when we call `recording_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
471
+ # @param [String] conference_recording_status_callback The URL we should call using the `conference_recording_status_callback_method` when the conference recording is available.
472
+ # @param [String] conference_recording_status_callback_method The HTTP method we should use to call `conference_recording_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
473
+ # @param [String] region The [region](https://support.twilio.com/hc/en-us/articles/223132167-How-global-low-latency-routing-and-region-selection-work-for-conferences-and-Client-calls) where we should mix the recorded audio. Can be:`us1`, `us2`, `ie1`, `de1`, `sg1`, `br1`, `au1`, or `jp1`.
474
+ # @param [String] sip_auth_username The SIP username used for authentication.
475
+ # @param [String] sip_auth_password The SIP password for authentication.
476
+ # @param [Array[String]] dequeue_status_callback_event The Call progress events sent via webhooks as a result of a Dequeue instruction.
477
+ # @param [String] post_work_activity_sid The new worker activity SID after executing a Conference instruction.
478
+ # @param [SupervisorMode] supervisor_mode
479
+ # @param [String] supervisor The Supervisor SID/URI when executing the Supervise instruction.
480
+ # @param [Boolean] end_conference_on_customer_exit Whether to end the conference when the customer leaves.
481
+ # @param [Boolean] beep_on_customer_entrance Whether to play a notification beep when the customer joins.
482
+ # @param [String] jitter_buffer_size The jitter buffer size for conference. Can be: `small`, `medium`, `large`, `off`.
483
+ # @param [String] if_match The If-Match HTTP request header
484
+ # @return [ReservationInstance] Updated ReservationInstance
485
+ def update_with_metadata(
486
+ reservation_status: :unset,
487
+ worker_activity_sid: :unset,
488
+ instruction: :unset,
489
+ dequeue_post_work_activity_sid: :unset,
490
+ dequeue_from: :unset,
491
+ dequeue_record: :unset,
492
+ dequeue_timeout: :unset,
493
+ dequeue_to: :unset,
494
+ dequeue_status_callback_url: :unset,
495
+ call_from: :unset,
496
+ call_record: :unset,
497
+ call_timeout: :unset,
498
+ call_to: :unset,
499
+ call_url: :unset,
500
+ call_status_callback_url: :unset,
501
+ call_accept: :unset,
502
+ redirect_call_sid: :unset,
503
+ redirect_accept: :unset,
504
+ redirect_url: :unset,
505
+ to: :unset,
506
+ from: :unset,
507
+ status_callback: :unset,
508
+ status_callback_method: :unset,
509
+ status_callback_event: :unset,
510
+ timeout: :unset,
511
+ record: :unset,
512
+ muted: :unset,
513
+ beep: :unset,
514
+ start_conference_on_enter: :unset,
515
+ end_conference_on_exit: :unset,
516
+ wait_url: :unset,
517
+ wait_method: :unset,
518
+ early_media: :unset,
519
+ max_participants: :unset,
520
+ conference_status_callback: :unset,
521
+ conference_status_callback_method: :unset,
522
+ conference_status_callback_event: :unset,
523
+ conference_record: :unset,
524
+ conference_trim: :unset,
525
+ recording_channels: :unset,
526
+ recording_status_callback: :unset,
527
+ recording_status_callback_method: :unset,
528
+ conference_recording_status_callback: :unset,
529
+ conference_recording_status_callback_method: :unset,
530
+ region: :unset,
531
+ sip_auth_username: :unset,
532
+ sip_auth_password: :unset,
533
+ dequeue_status_callback_event: :unset,
534
+ post_work_activity_sid: :unset,
535
+ supervisor_mode: :unset,
536
+ supervisor: :unset,
537
+ end_conference_on_customer_exit: :unset,
538
+ beep_on_customer_entrance: :unset,
539
+ jitter_buffer_size: :unset,
540
+ if_match: :unset
541
+ )
542
+
543
+ data = Twilio::Values.of({
544
+ 'ReservationStatus' => reservation_status,
545
+ 'WorkerActivitySid' => worker_activity_sid,
546
+ 'Instruction' => instruction,
547
+ 'DequeuePostWorkActivitySid' => dequeue_post_work_activity_sid,
548
+ 'DequeueFrom' => dequeue_from,
549
+ 'DequeueRecord' => dequeue_record,
550
+ 'DequeueTimeout' => dequeue_timeout,
551
+ 'DequeueTo' => dequeue_to,
552
+ 'DequeueStatusCallbackUrl' => dequeue_status_callback_url,
553
+ 'CallFrom' => call_from,
554
+ 'CallRecord' => call_record,
555
+ 'CallTimeout' => call_timeout,
556
+ 'CallTo' => call_to,
557
+ 'CallUrl' => call_url,
558
+ 'CallStatusCallbackUrl' => call_status_callback_url,
559
+ 'CallAccept' => call_accept,
560
+ 'RedirectCallSid' => redirect_call_sid,
561
+ 'RedirectAccept' => redirect_accept,
562
+ 'RedirectUrl' => redirect_url,
563
+ 'To' => to,
564
+ 'From' => from,
565
+ 'StatusCallback' => status_callback,
566
+ 'StatusCallbackMethod' => status_callback_method,
567
+ 'StatusCallbackEvent' => Twilio.serialize_list(status_callback_event) { |e| e },
568
+ 'Timeout' => timeout,
569
+ 'Record' => record,
570
+ 'Muted' => muted,
571
+ 'Beep' => beep,
572
+ 'StartConferenceOnEnter' => start_conference_on_enter,
573
+ 'EndConferenceOnExit' => end_conference_on_exit,
574
+ 'WaitUrl' => wait_url,
575
+ 'WaitMethod' => wait_method,
576
+ 'EarlyMedia' => early_media,
577
+ 'MaxParticipants' => max_participants,
578
+ 'ConferenceStatusCallback' => conference_status_callback,
579
+ 'ConferenceStatusCallbackMethod' => conference_status_callback_method,
580
+ 'ConferenceStatusCallbackEvent' => Twilio.serialize_list(conference_status_callback_event) { |e| e },
581
+ 'ConferenceRecord' => conference_record,
582
+ 'ConferenceTrim' => conference_trim,
583
+ 'RecordingChannels' => recording_channels,
584
+ 'RecordingStatusCallback' => recording_status_callback,
585
+ 'RecordingStatusCallbackMethod' => recording_status_callback_method,
586
+ 'ConferenceRecordingStatusCallback' => conference_recording_status_callback,
587
+ 'ConferenceRecordingStatusCallbackMethod' => conference_recording_status_callback_method,
588
+ 'Region' => region,
589
+ 'SipAuthUsername' => sip_auth_username,
590
+ 'SipAuthPassword' => sip_auth_password,
591
+ 'DequeueStatusCallbackEvent' => Twilio.serialize_list(dequeue_status_callback_event) { |e| e },
592
+ 'PostWorkActivitySid' => post_work_activity_sid,
593
+ 'SupervisorMode' => supervisor_mode,
594
+ 'Supervisor' => supervisor,
595
+ 'EndConferenceOnCustomerExit' => end_conference_on_customer_exit,
596
+ 'BeepOnCustomerEntrance' => beep_on_customer_entrance,
597
+ 'JitterBufferSize' => jitter_buffer_size,
598
+ })
599
+
600
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, })
601
+
602
+
603
+
604
+
605
+
606
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
607
+ reservation_instance = ReservationInstance.new(
608
+ @version,
609
+ response.body,
610
+ workspace_sid: @solution[:workspace_sid],
611
+ task_sid: @solution[:task_sid],
612
+ sid: @solution[:sid],
613
+ )
614
+ ReservationInstanceMetadata.new(
615
+ @version,
616
+ reservation_instance,
617
+ response.headers,
618
+ response.status_code
619
+ )
620
+ end
621
+
622
+
623
+ ##
624
+ # Provide a user friendly representation
625
+ def to_s
626
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
627
+ "#<Twilio.Taskrouter.V1.ReservationContext #{context}>"
628
+ end
423
629
 
424
- class ReservationInstance < InstanceResource
425
- ##
426
- # Initialize the ReservationInstance
427
- # @param [Version] version Version that contains the resource
428
- # @param [Hash] payload payload that contains response from Twilio
429
- # @param [String] workspace_sid The SID of the Workspace that this task is
430
- # contained within.
431
- # @param [String] task_sid The SID of the reserved Task resource.
432
- # @param [String] sid The SID of the TaskReservation resource to fetch.
433
- # @return [ReservationInstance] ReservationInstance
434
- def initialize(version, payload, workspace_sid: nil, task_sid: nil, sid: nil)
435
- super(version)
436
-
437
- # Marshaled Properties
438
- @properties = {
439
- 'account_sid' => payload['account_sid'],
440
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
441
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
442
- 'reservation_status' => payload['reservation_status'],
443
- 'sid' => payload['sid'],
444
- 'task_sid' => payload['task_sid'],
445
- 'worker_name' => payload['worker_name'],
446
- 'worker_sid' => payload['worker_sid'],
447
- 'workspace_sid' => payload['workspace_sid'],
448
- 'url' => payload['url'],
449
- 'links' => payload['links'],
450
- }
451
-
452
- # Context
453
- @instance_context = nil
454
- @params = {
455
- 'workspace_sid' => workspace_sid,
456
- 'task_sid' => task_sid,
457
- 'sid' => sid || @properties['sid'],
458
- }
459
- end
460
-
461
- ##
462
- # Generate an instance context for the instance, the context is capable of
463
- # performing various actions. All instance actions are proxied to the context
464
- # @return [ReservationContext] ReservationContext for this ReservationInstance
465
- def context
466
- unless @instance_context
467
- @instance_context = ReservationContext.new(
468
- @version,
469
- @params['workspace_sid'],
470
- @params['task_sid'],
471
- @params['sid'],
472
- )
630
+ ##
631
+ # Provide a detailed, user friendly representation
632
+ def inspect
633
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
634
+ "#<Twilio.Taskrouter.V1.ReservationContext #{context}>"
635
+ end
473
636
  end
474
- @instance_context
475
- end
476
-
477
- ##
478
- # @return [String] The SID of the Account that created the resource
479
- def account_sid
480
- @properties['account_sid']
481
- end
482
-
483
- ##
484
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
485
- def date_created
486
- @properties['date_created']
487
- end
488
-
489
- ##
490
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
491
- def date_updated
492
- @properties['date_updated']
493
- end
494
-
495
- ##
496
- # @return [reservation.Status] The current status of the reservation
497
- def reservation_status
498
- @properties['reservation_status']
499
- end
500
-
501
- ##
502
- # @return [String] The unique string that identifies the resource
503
- def sid
504
- @properties['sid']
505
- end
506
-
507
- ##
508
- # @return [String] The SID of the reserved Task resource
509
- def task_sid
510
- @properties['task_sid']
511
- end
512
-
513
- ##
514
- # @return [String] The friendly_name of the Worker that is reserved
515
- def worker_name
516
- @properties['worker_name']
517
- end
518
-
519
- ##
520
- # @return [String] The SID of the reserved Worker resource
521
- def worker_sid
522
- @properties['worker_sid']
523
- end
524
-
525
- ##
526
- # @return [String] The SID of the Workspace that this task is contained within.
527
- def workspace_sid
528
- @properties['workspace_sid']
529
- end
530
-
531
- ##
532
- # @return [String] The absolute URL of the TaskReservation reservation
533
- def url
534
- @properties['url']
535
- end
536
-
537
- ##
538
- # @return [String] The URLs of related resources
539
- def links
540
- @properties['links']
541
- end
542
-
543
- ##
544
- # Fetch the ReservationInstance
545
- # @return [ReservationInstance] Fetched ReservationInstance
546
- def fetch
547
- context.fetch
548
- end
549
-
550
- ##
551
- # Update the ReservationInstance
552
- # @param [reservation.Status] reservation_status The new status of the
553
- # reservation. Can be: `pending`, `accepted`, `rejected`, or `timeout`.
554
- # @param [String] worker_activity_sid The new worker activity SID if rejecting a
555
- # reservation.
556
- # @param [String] instruction The assignment instruction for reservation.
557
- # @param [String] dequeue_post_work_activity_sid The SID of the Activity resource
558
- # to start after executing a Dequeue instruction.
559
- # @param [String] dequeue_from The Caller ID of the call to the worker when
560
- # executing a Dequeue instruction.
561
- # @param [String] dequeue_record Whether to record both legs of a call when
562
- # executing a Dequeue instruction or which leg to record.
563
- # @param [String] dequeue_timeout Timeout for call when executing a Dequeue
564
- # instruction.
565
- # @param [String] dequeue_to The Contact URI of the worker when executing a
566
- # Dequeue instruction. Can be the URI of the Twilio Client, the SIP URI for
567
- # Programmable SIP, or the {E.164}[https://www.twilio.com/docs/glossary/what-e164]
568
- # formatted phone number, depending on the destination.
569
- # @param [String] dequeue_status_callback_url The Callback URL for completed call
570
- # event when executing a Dequeue instruction.
571
- # @param [String] call_from The Caller ID of the outbound call when executing a
572
- # Call instruction.
573
- # @param [String] call_record Whether to record both legs of a call when executing
574
- # a Call instruction or which leg to record.
575
- # @param [String] call_timeout Timeout for call when executing a Call instruction.
576
- # @param [String] call_to The Contact URI of the worker when executing a Call
577
- # instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable
578
- # SIP, or the {E.164}[https://www.twilio.com/docs/glossary/what-e164] formatted
579
- # phone number, depending on the destination.
580
- # @param [String] call_url TwiML URI executed on answering the worker's leg as a
581
- # result of the Call instruction.
582
- # @param [String] call_status_callback_url The URL to call for the completed call
583
- # event when executing a Call instruction.
584
- # @param [Boolean] call_accept Whether to accept a reservation when executing a
585
- # Call instruction.
586
- # @param [String] redirect_call_sid The Call SID of the call parked in the queue
587
- # when executing a Redirect instruction.
588
- # @param [Boolean] redirect_accept Whether the reservation should be accepted when
589
- # executing a Redirect instruction.
590
- # @param [String] redirect_url TwiML URI to redirect the call to when executing
591
- # the Redirect instruction.
592
- # @param [String] to The Contact URI of the worker when executing a Conference
593
- # instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable
594
- # SIP, or the {E.164}[https://www.twilio.com/docs/glossary/what-e164] formatted
595
- # phone number, depending on the destination.
596
- # @param [String] from The Caller ID of the call to the worker when executing a
597
- # Conference instruction.
598
- # @param [String] status_callback The URL we should call using the
599
- # `status_callback_method` to send status information to your application.
600
- # @param [String] status_callback_method The HTTP method we should use to call
601
- # `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
602
- # @param [Array[reservation.CallStatus]] status_callback_event The call progress
603
- # events that we will send to `status_callback`. Can be: `initiated`, `ringing`,
604
- # `answered`, or `completed`.
605
- # @param [String] timeout Timeout for call when executing a Conference
606
- # instruction.
607
- # @param [Boolean] record Whether to record the participant and their conferences,
608
- # including the time between conferences. The default is `false`.
609
- # @param [Boolean] muted Whether the agent is muted in the conference. The default
610
- # is `false`.
611
- # @param [String] beep Whether to play a notification beep when the participant
612
- # joins or when to play a beep. Can be: `true`, `false`, `onEnter`, or `onExit`.
613
- # The default value is `true`.
614
- # @param [Boolean] start_conference_on_enter Whether to start the conference when
615
- # the participant joins, if it has not already started. The default is `true`. If
616
- # `false` and the conference has not started, the participant is muted and hears
617
- # background music until another participant starts the conference.
618
- # @param [Boolean] end_conference_on_exit Whether to end the conference when the
619
- # agent leaves.
620
- # @param [String] wait_url The URL we should call using the `wait_method` for the
621
- # music to play while participants are waiting for the conference to start. The
622
- # default value is the URL of our standard hold music. {Learn more about hold
623
- # music}[https://www.twilio.com/labs/twimlets/holdmusic].
624
- # @param [String] wait_method The HTTP method we should use to call `wait_url`.
625
- # Can be `GET` or `POST` and the default is `POST`. When using a static audio
626
- # file, this should be `GET` so that we can cache the file.
627
- # @param [Boolean] early_media Whether to allow an agent to hear the state of the
628
- # outbound call, including ringing or disconnect messages. The default is `true`.
629
- # @param [String] max_participants The maximum number of participants in the
630
- # conference. Can be a positive integer from `2` to `250`. The default value is
631
- # `250`.
632
- # @param [String] conference_status_callback The URL we should call using the
633
- # `conference_status_callback_method` when the conference events in
634
- # `conference_status_callback_event` occur. Only the value set by the first
635
- # participant to join the conference is used. Subsequent
636
- # `conference_status_callback` values are ignored.
637
- # @param [String] conference_status_callback_method The HTTP method we should use
638
- # to call `conference_status_callback`. Can be: `GET` or `POST` and defaults to
639
- # `POST`.
640
- # @param [Array[reservation.ConferenceEvent]] conference_status_callback_event The
641
- # conference status events that we will send to `conference_status_callback`. Can
642
- # be: `start`, `end`, `join`, `leave`, `mute`, `hold`, `speaker`.
643
- # @param [String] conference_record Whether to record the conference the
644
- # participant is joining or when to record the conference. Can be: `true`,
645
- # `false`, `record-from-start`, and `do-not-record`. The default value is `false`.
646
- # @param [String] conference_trim How to trim the leading and trailing silence
647
- # from your recorded conference audio files. Can be: `trim-silence` or
648
- # `do-not-trim` and defaults to `trim-silence`.
649
- # @param [String] recording_channels The recording channels for the final
650
- # recording. Can be: `mono` or `dual` and the default is `mono`.
651
- # @param [String] recording_status_callback The URL that we should call using the
652
- # `recording_status_callback_method` when the recording status changes.
653
- # @param [String] recording_status_callback_method The HTTP method we should use
654
- # when we call `recording_status_callback`. Can be: `GET` or `POST` and defaults
655
- # to `POST`.
656
- # @param [String] conference_recording_status_callback The URL we should call
657
- # using the `conference_recording_status_callback_method` when the conference
658
- # recording is available.
659
- # @param [String] conference_recording_status_callback_method The HTTP method we
660
- # should use to call `conference_recording_status_callback`. Can be: `GET` or
661
- # `POST` and defaults to `POST`.
662
- # @param [String] region The
663
- # {region}[https://support.twilio.com/hc/en-us/articles/223132167-How-global-low-latency-routing-and-region-selection-work-for-conferences-and-Client-calls]
664
- # where we should mix the recorded audio. Can be:`us1`, `ie1`, `de1`, `sg1`,
665
- # `br1`, `au1`, or `jp1`.
666
- # @param [String] sip_auth_username The SIP username used for authentication.
667
- # @param [String] sip_auth_password The SIP password for authentication.
668
- # @param [Array[String]] dequeue_status_callback_event The Call progress events
669
- # sent via webhooks as a result of a Dequeue instruction.
670
- # @param [String] post_work_activity_sid The new worker activity SID after
671
- # executing a Conference instruction.
672
- # @param [reservation.SupervisorMode] supervisor_mode The Supervisor mode when
673
- # executing the Supervise instruction.
674
- # @param [String] supervisor The Supervisor SID/URI when executing the Supervise
675
- # instruction.
676
- # @param [Boolean] end_conference_on_customer_exit Whether to end the conference
677
- # when the customer leaves.
678
- # @param [Boolean] beep_on_customer_entrance Whether to play a notification beep
679
- # when the customer joins.
680
- # @param [String] if_match The If-Match HTTP request header
681
- # @return [ReservationInstance] Updated ReservationInstance
682
- def update(reservation_status: :unset, worker_activity_sid: :unset, instruction: :unset, dequeue_post_work_activity_sid: :unset, dequeue_from: :unset, dequeue_record: :unset, dequeue_timeout: :unset, dequeue_to: :unset, dequeue_status_callback_url: :unset, call_from: :unset, call_record: :unset, call_timeout: :unset, call_to: :unset, call_url: :unset, call_status_callback_url: :unset, call_accept: :unset, redirect_call_sid: :unset, redirect_accept: :unset, redirect_url: :unset, to: :unset, from: :unset, status_callback: :unset, status_callback_method: :unset, status_callback_event: :unset, timeout: :unset, record: :unset, muted: :unset, beep: :unset, start_conference_on_enter: :unset, end_conference_on_exit: :unset, wait_url: :unset, wait_method: :unset, early_media: :unset, max_participants: :unset, conference_status_callback: :unset, conference_status_callback_method: :unset, conference_status_callback_event: :unset, conference_record: :unset, conference_trim: :unset, recording_channels: :unset, recording_status_callback: :unset, recording_status_callback_method: :unset, conference_recording_status_callback: :unset, conference_recording_status_callback_method: :unset, region: :unset, sip_auth_username: :unset, sip_auth_password: :unset, dequeue_status_callback_event: :unset, post_work_activity_sid: :unset, supervisor_mode: :unset, supervisor: :unset, end_conference_on_customer_exit: :unset, beep_on_customer_entrance: :unset, if_match: :unset)
683
- context.update(
684
- reservation_status: reservation_status,
685
- worker_activity_sid: worker_activity_sid,
686
- instruction: instruction,
687
- dequeue_post_work_activity_sid: dequeue_post_work_activity_sid,
688
- dequeue_from: dequeue_from,
689
- dequeue_record: dequeue_record,
690
- dequeue_timeout: dequeue_timeout,
691
- dequeue_to: dequeue_to,
692
- dequeue_status_callback_url: dequeue_status_callback_url,
693
- call_from: call_from,
694
- call_record: call_record,
695
- call_timeout: call_timeout,
696
- call_to: call_to,
697
- call_url: call_url,
698
- call_status_callback_url: call_status_callback_url,
699
- call_accept: call_accept,
700
- redirect_call_sid: redirect_call_sid,
701
- redirect_accept: redirect_accept,
702
- redirect_url: redirect_url,
703
- to: to,
704
- from: from,
705
- status_callback: status_callback,
706
- status_callback_method: status_callback_method,
707
- status_callback_event: status_callback_event,
708
- timeout: timeout,
709
- record: record,
710
- muted: muted,
711
- beep: beep,
712
- start_conference_on_enter: start_conference_on_enter,
713
- end_conference_on_exit: end_conference_on_exit,
714
- wait_url: wait_url,
715
- wait_method: wait_method,
716
- early_media: early_media,
717
- max_participants: max_participants,
718
- conference_status_callback: conference_status_callback,
719
- conference_status_callback_method: conference_status_callback_method,
720
- conference_status_callback_event: conference_status_callback_event,
721
- conference_record: conference_record,
722
- conference_trim: conference_trim,
723
- recording_channels: recording_channels,
724
- recording_status_callback: recording_status_callback,
725
- recording_status_callback_method: recording_status_callback_method,
726
- conference_recording_status_callback: conference_recording_status_callback,
727
- conference_recording_status_callback_method: conference_recording_status_callback_method,
728
- region: region,
729
- sip_auth_username: sip_auth_username,
730
- sip_auth_password: sip_auth_password,
731
- dequeue_status_callback_event: dequeue_status_callback_event,
732
- post_work_activity_sid: post_work_activity_sid,
733
- supervisor_mode: supervisor_mode,
734
- supervisor: supervisor,
735
- end_conference_on_customer_exit: end_conference_on_customer_exit,
736
- beep_on_customer_entrance: beep_on_customer_entrance,
737
- if_match: if_match,
738
- )
739
- end
740
-
741
- ##
742
- # Provide a user friendly representation
743
- def to_s
744
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
745
- "<Twilio.Taskrouter.V1.ReservationInstance #{values}>"
746
- end
747
-
748
- ##
749
- # Provide a detailed, user friendly representation
750
- def inspect
751
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
752
- "<Twilio.Taskrouter.V1.ReservationInstance #{values}>"
753
- end
637
+
638
+ class ReservationInstanceMetadata < InstanceResourceMetadata
639
+ ##
640
+ # Initializes a new ReservationInstanceMetadata.
641
+ # @param [Version] version Version that contains the resource
642
+ # @param [}ReservationInstance] reservation_instance The instance associated with the metadata.
643
+ # @param [Hash] headers Header object with response headers.
644
+ # @param [Integer] status_code The HTTP status code of the response.
645
+ # @return [ReservationInstanceMetadata] The initialized instance with metadata.
646
+ def initialize(version, reservation_instance, headers, status_code)
647
+ super(version, headers, status_code)
648
+ @reservation_instance = reservation_instance
649
+ end
650
+
651
+ def reservation
652
+ @reservation_instance
653
+ end
654
+
655
+ def headers
656
+ @headers
657
+ end
658
+
659
+ def status_code
660
+ @status_code
661
+ end
662
+
663
+ def to_s
664
+ "<Twilio.Api.V2010.ReservationInstanceMetadata status=#{@status_code}>"
665
+ end
666
+ end
667
+
668
+ class ReservationListResponse < InstanceListResource
669
+ # @param [Array<ReservationInstance>] instance
670
+ # @param [Hash{String => Object}] headers
671
+ # @param [Integer] status_code
672
+ def initialize(version, payload, key)
673
+ @reservation_instance = payload.body[key].map do |data|
674
+ ReservationInstance.new(version, data)
675
+ end
676
+ @headers = payload.headers
677
+ @status_code = payload.status_code
678
+ end
679
+
680
+ def reservation_instance
681
+ @instance
682
+ end
683
+ end
684
+
685
+ class ReservationPage < Page
686
+ ##
687
+ # Initialize the ReservationPage
688
+ # @param [Version] version Version that contains the resource
689
+ # @param [Response] response Response from the API
690
+ # @param [Hash] solution Path solution for the resource
691
+ # @return [ReservationPage] ReservationPage
692
+ def initialize(version, response, solution)
693
+ super(version, response)
694
+
695
+
696
+ # Path Solution
697
+ @solution = solution
698
+ end
699
+
700
+ ##
701
+ # Build an instance of ReservationInstance
702
+ # @param [Hash] payload Payload response from the API
703
+ # @return [ReservationInstance] ReservationInstance
704
+ def get_instance(payload)
705
+ ReservationInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], task_sid: @solution[:task_sid])
706
+ end
707
+
708
+ ##
709
+ # Provide a user friendly representation
710
+ def to_s
711
+ '<Twilio.Taskrouter.V1.ReservationPage>'
712
+ end
713
+ end
714
+
715
+ class ReservationPageMetadata < PageMetadata
716
+ attr_reader :reservation_page
717
+
718
+ def initialize(version, response, solution, limit)
719
+ super(version, response)
720
+ @reservation_page = []
721
+ @limit = limit
722
+ key = get_key(response.body)
723
+ records = 0
724
+ while( limit != :unset && records < limit )
725
+ @reservation_page << ReservationListResponse.new(version, @payload, key, limit - records)
726
+ @payload = self.next_page
727
+ break unless @payload
728
+ records += @payload.body[key].size
729
+ end
730
+ # Path Solution
731
+ @solution = solution
732
+ end
733
+
734
+ def each
735
+ @reservation_page.each do |record|
736
+ yield record
737
+ end
738
+ end
739
+
740
+ def to_s
741
+ '<Twilio::REST::Taskrouter::V1PageMetadata>';
742
+ end
743
+ end
744
+ class ReservationListResponse < InstanceListResource
745
+
746
+ # @param [Array<ReservationInstance>] instance
747
+ # @param [Hash{String => Object}] headers
748
+ # @param [Integer] status_code
749
+ def initialize(version, payload, key, limit = :unset)
750
+ data_list = payload.body[key]
751
+ if limit != :unset
752
+ data_list = data_list[0, limit]
753
+ end
754
+ @reservation = data_list.map do |data|
755
+ ReservationInstance.new(version, data)
756
+ end
757
+ @headers = payload.headers
758
+ @status_code = payload.status_code
759
+ end
760
+
761
+ def reservation
762
+ @reservation
763
+ end
764
+
765
+ def headers
766
+ @headers
767
+ end
768
+
769
+ def status_code
770
+ @status_code
771
+ end
772
+ end
773
+
774
+ class ReservationInstance < InstanceResource
775
+ ##
776
+ # Initialize the ReservationInstance
777
+ # @param [Version] version Version that contains the resource
778
+ # @param [Hash] payload payload that contains response from Twilio
779
+ # @param [String] account_sid The SID of the
780
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Reservation
781
+ # resource.
782
+ # @param [String] sid The SID of the Call resource to fetch.
783
+ # @return [ReservationInstance] ReservationInstance
784
+ def initialize(version, payload , workspace_sid: nil, task_sid: nil, sid: nil)
785
+ super(version)
786
+
787
+
788
+ # Marshaled Properties
789
+ @properties = {
790
+ 'account_sid' => payload['account_sid'],
791
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
792
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
793
+ 'reservation_status' => payload['reservation_status'],
794
+ 'sid' => payload['sid'],
795
+ 'task_sid' => payload['task_sid'],
796
+ 'worker_name' => payload['worker_name'],
797
+ 'worker_sid' => payload['worker_sid'],
798
+ 'workspace_sid' => payload['workspace_sid'],
799
+ 'url' => payload['url'],
800
+ 'links' => payload['links'],
801
+ }
802
+
803
+ # Context
804
+ @instance_context = nil
805
+ @params = { 'workspace_sid' => workspace_sid || @properties['workspace_sid'] ,'task_sid' => task_sid || @properties['task_sid'] ,'sid' => sid || @properties['sid'] , }
806
+ end
807
+
808
+ ##
809
+ # Generate an instance context for the instance, the context is capable of
810
+ # performing various actions. All instance actions are proxied to the context
811
+ # @return [ReservationContext] CallContext for this CallInstance
812
+ def context
813
+ unless @instance_context
814
+ @instance_context = ReservationContext.new(@version , @params['workspace_sid'], @params['task_sid'], @params['sid'])
815
+ end
816
+ @instance_context
817
+ end
818
+
819
+ ##
820
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the TaskReservation resource.
821
+ def account_sid
822
+ @properties['account_sid']
823
+ end
824
+
825
+ ##
826
+ # @return [Time] The date and time in GMT when the resource was created specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
827
+ def date_created
828
+ @properties['date_created']
829
+ end
830
+
831
+ ##
832
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
833
+ def date_updated
834
+ @properties['date_updated']
835
+ end
836
+
837
+ ##
838
+ # @return [Status]
839
+ def reservation_status
840
+ @properties['reservation_status']
841
+ end
842
+
843
+ ##
844
+ # @return [String] The unique string that we created to identify the TaskReservation resource.
845
+ def sid
846
+ @properties['sid']
847
+ end
848
+
849
+ ##
850
+ # @return [String] The SID of the reserved Task resource.
851
+ def task_sid
852
+ @properties['task_sid']
853
+ end
854
+
855
+ ##
856
+ # @return [String] The `friendly_name` of the Worker that is reserved.
857
+ def worker_name
858
+ @properties['worker_name']
859
+ end
860
+
861
+ ##
862
+ # @return [String] The SID of the reserved Worker resource.
863
+ def worker_sid
864
+ @properties['worker_sid']
865
+ end
866
+
867
+ ##
868
+ # @return [String] The SID of the Workspace that this task is contained within.
869
+ def workspace_sid
870
+ @properties['workspace_sid']
871
+ end
872
+
873
+ ##
874
+ # @return [String] The absolute URL of the TaskReservation reservation.
875
+ def url
876
+ @properties['url']
877
+ end
878
+
879
+ ##
880
+ # @return [Hash] The URLs of related resources.
881
+ def links
882
+ @properties['links']
883
+ end
884
+
885
+ ##
886
+ # Fetch the ReservationInstance
887
+ # @return [ReservationInstance] Fetched ReservationInstance
888
+ def fetch
889
+
890
+ context.fetch
891
+ end
892
+
893
+ ##
894
+ # Update the ReservationInstance
895
+ # @param [Status] reservation_status
896
+ # @param [String] worker_activity_sid The new worker activity SID if rejecting a reservation.
897
+ # @param [String] instruction The assignment instruction for reservation.
898
+ # @param [String] dequeue_post_work_activity_sid The SID of the Activity resource to start after executing a Dequeue instruction.
899
+ # @param [String] dequeue_from The Caller ID of the call to the worker when executing a Dequeue instruction.
900
+ # @param [String] dequeue_record Whether to record both legs of a call when executing a Dequeue instruction or which leg to record.
901
+ # @param [String] dequeue_timeout Timeout for call when executing a Dequeue instruction.
902
+ # @param [String] dequeue_to The Contact URI of the worker when executing a Dequeue instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
903
+ # @param [String] dequeue_status_callback_url The Callback URL for completed call event when executing a Dequeue instruction.
904
+ # @param [String] call_from The Caller ID of the outbound call when executing a Call instruction.
905
+ # @param [String] call_record Whether to record both legs of a call when executing a Call instruction or which leg to record.
906
+ # @param [String] call_timeout Timeout for call when executing a Call instruction.
907
+ # @param [String] call_to The Contact URI of the worker when executing a Call instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
908
+ # @param [String] call_url TwiML URI executed on answering the worker's leg as a result of the Call instruction.
909
+ # @param [String] call_status_callback_url The URL to call for the completed call event when executing a Call instruction.
910
+ # @param [Boolean] call_accept Whether to accept a reservation when executing a Call instruction.
911
+ # @param [String] redirect_call_sid The Call SID of the call parked in the queue when executing a Redirect instruction.
912
+ # @param [Boolean] redirect_accept Whether the reservation should be accepted when executing a Redirect instruction.
913
+ # @param [String] redirect_url TwiML URI to redirect the call to when executing the Redirect instruction.
914
+ # @param [String] to The Contact URI of the worker when executing a Conference instruction. Can be the URI of the Twilio Client, the SIP URI for Programmable SIP, or the [E.164](https://www.twilio.com/docs/glossary/what-e164) formatted phone number, depending on the destination.
915
+ # @param [String] from The Caller ID of the call to the worker when executing a Conference instruction.
916
+ # @param [String] status_callback The URL we should call using the `status_callback_method` to send status information to your application.
917
+ # @param [String] status_callback_method The HTTP method we should use to call `status_callback`. Can be: `POST` or `GET` and the default is `POST`.
918
+ # @param [Array[CallStatus]] status_callback_event The call progress events that we will send to `status_callback`. Can be: `initiated`, `ringing`, `answered`, or `completed`.
919
+ # @param [String] timeout Timeout for call when executing a Conference instruction.
920
+ # @param [Boolean] record Whether to record the participant and their conferences, including the time between conferences. The default is `false`.
921
+ # @param [Boolean] muted Whether the agent is muted in the conference. The default is `false`.
922
+ # @param [String] beep Whether to play a notification beep when the participant joins or when to play a beep. Can be: `true`, `false`, `onEnter`, or `onExit`. The default value is `true`.
923
+ # @param [Boolean] start_conference_on_enter Whether to start the conference when the participant joins, if it has not already started. The default is `true`. If `false` and the conference has not started, the participant is muted and hears background music until another participant starts the conference.
924
+ # @param [Boolean] end_conference_on_exit Whether to end the conference when the agent leaves.
925
+ # @param [String] wait_url The URL we should call using the `wait_method` for the music to play while participants are waiting for the conference to start. The default value is the URL of our standard hold music. [Learn more about hold music](https://www.twilio.com/labs/twimlets/holdmusic).
926
+ # @param [String] wait_method The HTTP method we should use to call `wait_url`. Can be `GET` or `POST` and the default is `POST`. When using a static audio file, this should be `GET` so that we can cache the file.
927
+ # @param [Boolean] early_media Whether to allow an agent to hear the state of the outbound call, including ringing or disconnect messages. The default is `true`.
928
+ # @param [String] max_participants The maximum number of participants in the conference. Can be a positive integer from `2` to `250`. The default value is `250`.
929
+ # @param [String] conference_status_callback The URL we should call using the `conference_status_callback_method` when the conference events in `conference_status_callback_event` occur. Only the value set by the first participant to join the conference is used. Subsequent `conference_status_callback` values are ignored.
930
+ # @param [String] conference_status_callback_method The HTTP method we should use to call `conference_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
931
+ # @param [Array[ConferenceEvent]] conference_status_callback_event The conference status events that we will send to `conference_status_callback`. Can be: `start`, `end`, `join`, `leave`, `mute`, `hold`, `speaker`.
932
+ # @param [String] conference_record Whether to record the conference the participant is joining or when to record the conference. Can be: `true`, `false`, `record-from-start`, and `do-not-record`. The default value is `false`.
933
+ # @param [String] conference_trim How to trim the leading and trailing silence from your recorded conference audio files. Can be: `trim-silence` or `do-not-trim` and defaults to `trim-silence`.
934
+ # @param [String] recording_channels The recording channels for the final recording. Can be: `mono` or `dual` and the default is `mono`.
935
+ # @param [String] recording_status_callback The URL that we should call using the `recording_status_callback_method` when the recording status changes.
936
+ # @param [String] recording_status_callback_method The HTTP method we should use when we call `recording_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
937
+ # @param [String] conference_recording_status_callback The URL we should call using the `conference_recording_status_callback_method` when the conference recording is available.
938
+ # @param [String] conference_recording_status_callback_method The HTTP method we should use to call `conference_recording_status_callback`. Can be: `GET` or `POST` and defaults to `POST`.
939
+ # @param [String] region The [region](https://support.twilio.com/hc/en-us/articles/223132167-How-global-low-latency-routing-and-region-selection-work-for-conferences-and-Client-calls) where we should mix the recorded audio. Can be:`us1`, `us2`, `ie1`, `de1`, `sg1`, `br1`, `au1`, or `jp1`.
940
+ # @param [String] sip_auth_username The SIP username used for authentication.
941
+ # @param [String] sip_auth_password The SIP password for authentication.
942
+ # @param [Array[String]] dequeue_status_callback_event The Call progress events sent via webhooks as a result of a Dequeue instruction.
943
+ # @param [String] post_work_activity_sid The new worker activity SID after executing a Conference instruction.
944
+ # @param [SupervisorMode] supervisor_mode
945
+ # @param [String] supervisor The Supervisor SID/URI when executing the Supervise instruction.
946
+ # @param [Boolean] end_conference_on_customer_exit Whether to end the conference when the customer leaves.
947
+ # @param [Boolean] beep_on_customer_entrance Whether to play a notification beep when the customer joins.
948
+ # @param [String] jitter_buffer_size The jitter buffer size for conference. Can be: `small`, `medium`, `large`, `off`.
949
+ # @param [String] if_match The If-Match HTTP request header
950
+ # @return [ReservationInstance] Updated ReservationInstance
951
+ def update(
952
+ reservation_status: :unset,
953
+ worker_activity_sid: :unset,
954
+ instruction: :unset,
955
+ dequeue_post_work_activity_sid: :unset,
956
+ dequeue_from: :unset,
957
+ dequeue_record: :unset,
958
+ dequeue_timeout: :unset,
959
+ dequeue_to: :unset,
960
+ dequeue_status_callback_url: :unset,
961
+ call_from: :unset,
962
+ call_record: :unset,
963
+ call_timeout: :unset,
964
+ call_to: :unset,
965
+ call_url: :unset,
966
+ call_status_callback_url: :unset,
967
+ call_accept: :unset,
968
+ redirect_call_sid: :unset,
969
+ redirect_accept: :unset,
970
+ redirect_url: :unset,
971
+ to: :unset,
972
+ from: :unset,
973
+ status_callback: :unset,
974
+ status_callback_method: :unset,
975
+ status_callback_event: :unset,
976
+ timeout: :unset,
977
+ record: :unset,
978
+ muted: :unset,
979
+ beep: :unset,
980
+ start_conference_on_enter: :unset,
981
+ end_conference_on_exit: :unset,
982
+ wait_url: :unset,
983
+ wait_method: :unset,
984
+ early_media: :unset,
985
+ max_participants: :unset,
986
+ conference_status_callback: :unset,
987
+ conference_status_callback_method: :unset,
988
+ conference_status_callback_event: :unset,
989
+ conference_record: :unset,
990
+ conference_trim: :unset,
991
+ recording_channels: :unset,
992
+ recording_status_callback: :unset,
993
+ recording_status_callback_method: :unset,
994
+ conference_recording_status_callback: :unset,
995
+ conference_recording_status_callback_method: :unset,
996
+ region: :unset,
997
+ sip_auth_username: :unset,
998
+ sip_auth_password: :unset,
999
+ dequeue_status_callback_event: :unset,
1000
+ post_work_activity_sid: :unset,
1001
+ supervisor_mode: :unset,
1002
+ supervisor: :unset,
1003
+ end_conference_on_customer_exit: :unset,
1004
+ beep_on_customer_entrance: :unset,
1005
+ jitter_buffer_size: :unset,
1006
+ if_match: :unset
1007
+ )
1008
+
1009
+ context.update(
1010
+ reservation_status: reservation_status,
1011
+ worker_activity_sid: worker_activity_sid,
1012
+ instruction: instruction,
1013
+ dequeue_post_work_activity_sid: dequeue_post_work_activity_sid,
1014
+ dequeue_from: dequeue_from,
1015
+ dequeue_record: dequeue_record,
1016
+ dequeue_timeout: dequeue_timeout,
1017
+ dequeue_to: dequeue_to,
1018
+ dequeue_status_callback_url: dequeue_status_callback_url,
1019
+ call_from: call_from,
1020
+ call_record: call_record,
1021
+ call_timeout: call_timeout,
1022
+ call_to: call_to,
1023
+ call_url: call_url,
1024
+ call_status_callback_url: call_status_callback_url,
1025
+ call_accept: call_accept,
1026
+ redirect_call_sid: redirect_call_sid,
1027
+ redirect_accept: redirect_accept,
1028
+ redirect_url: redirect_url,
1029
+ to: to,
1030
+ from: from,
1031
+ status_callback: status_callback,
1032
+ status_callback_method: status_callback_method,
1033
+ status_callback_event: status_callback_event,
1034
+ timeout: timeout,
1035
+ record: record,
1036
+ muted: muted,
1037
+ beep: beep,
1038
+ start_conference_on_enter: start_conference_on_enter,
1039
+ end_conference_on_exit: end_conference_on_exit,
1040
+ wait_url: wait_url,
1041
+ wait_method: wait_method,
1042
+ early_media: early_media,
1043
+ max_participants: max_participants,
1044
+ conference_status_callback: conference_status_callback,
1045
+ conference_status_callback_method: conference_status_callback_method,
1046
+ conference_status_callback_event: conference_status_callback_event,
1047
+ conference_record: conference_record,
1048
+ conference_trim: conference_trim,
1049
+ recording_channels: recording_channels,
1050
+ recording_status_callback: recording_status_callback,
1051
+ recording_status_callback_method: recording_status_callback_method,
1052
+ conference_recording_status_callback: conference_recording_status_callback,
1053
+ conference_recording_status_callback_method: conference_recording_status_callback_method,
1054
+ region: region,
1055
+ sip_auth_username: sip_auth_username,
1056
+ sip_auth_password: sip_auth_password,
1057
+ dequeue_status_callback_event: dequeue_status_callback_event,
1058
+ post_work_activity_sid: post_work_activity_sid,
1059
+ supervisor_mode: supervisor_mode,
1060
+ supervisor: supervisor,
1061
+ end_conference_on_customer_exit: end_conference_on_customer_exit,
1062
+ beep_on_customer_entrance: beep_on_customer_entrance,
1063
+ jitter_buffer_size: jitter_buffer_size,
1064
+ if_match: if_match,
1065
+ )
1066
+ end
1067
+
1068
+ ##
1069
+ # Provide a user friendly representation
1070
+ def to_s
1071
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
1072
+ "<Twilio.Taskrouter.V1.ReservationInstance #{values}>"
1073
+ end
1074
+
1075
+ ##
1076
+ # Provide a detailed, user friendly representation
1077
+ def inspect
1078
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
1079
+ "<Twilio.Taskrouter.V1.ReservationInstance #{values}>"
1080
+ end
1081
+ end
1082
+
1083
+ end
1084
+ end
754
1085
  end
755
- end
756
1086
  end
757
- end
758
1087
  end
759
- end
760
- end
1088
+ end
1089
+
1090
+