twilio-ruby 5.77.0 → 7.3.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/test-and-deploy.yml +11 -1
- data/.gitignore +3 -0
- data/CHANGES.md +722 -0
- data/CONTRIBUTING.md +10 -2
- data/Gemfile +3 -0
- data/LICENSE +1 -1
- data/Makefile +6 -0
- data/README.md +15 -9
- data/UPGRADE.md +21 -0
- data/cluster_spec.rb +77 -0
- data/lib/twilio-ruby/base/client_base.rb +124 -0
- data/lib/twilio-ruby/framework/request.rb +8 -1
- data/lib/twilio-ruby/framework/rest/error.rb +0 -12
- data/lib/twilio-ruby/http/http_client.rb +13 -5
- data/lib/twilio-ruby/jwt/access_token.rb +0 -59
- data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +201 -178
- data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +133 -0
- data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +133 -0
- data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +380 -332
- data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +380 -332
- data/lib/twilio-ruby/rest/accounts/v1/credential.rb +122 -114
- data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +176 -0
- data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +219 -192
- data/lib/twilio-ruby/rest/accounts/v1.rb +63 -42
- data/lib/twilio-ruby/rest/accounts.rb +4 -34
- data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
- data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
- data/lib/twilio-ruby/rest/api/v2010/account/address.rb +560 -530
- data/lib/twilio-ruby/rest/api/v2010/account/application.rb +624 -605
- data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +316 -320
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +395 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +395 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +395 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +395 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +395 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +395 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +395 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +435 -0
- data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +139 -118
- data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
- data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +403 -417
- data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +294 -342
- data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +503 -511
- data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +844 -641
- data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +844 -641
- data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +307 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +159 -153
- data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +233 -240
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +955 -1050
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +668 -756
- data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +458 -458
- data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +494 -493
- data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +433 -407
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +323 -352
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +403 -418
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +539 -554
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +539 -553
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +539 -553
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +850 -903
- data/lib/twilio-ruby/rest/api/v2010/account/key.rb +342 -302
- data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +170 -166
- data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +345 -350
- data/lib/twilio-ruby/rest/api/v2010/account/message.rb +624 -641
- data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +160 -138
- data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +160 -138
- data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +403 -399
- data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +375 -358
- data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +345 -338
- data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +435 -390
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +200 -0
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +384 -380
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +373 -385
- data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +369 -372
- data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +512 -513
- data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +422 -408
- data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +342 -306
- data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +384 -368
- data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +408 -373
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +353 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +353 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +141 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +353 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +127 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +95 -103
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +346 -339
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +346 -338
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +658 -645
- data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +421 -421
- data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +408 -374
- data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +142 -150
- data/lib/twilio-ruby/rest/api/v2010/account/token.rb +174 -154
- data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +369 -350
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +315 -339
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +315 -339
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +315 -339
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +315 -339
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +315 -339
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +315 -339
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +315 -339
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +315 -339
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +382 -416
- data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +494 -484
- data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +113 -104
- data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +175 -161
- data/lib/twilio-ruby/rest/api/v2010/account.rb +986 -943
- data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
- data/lib/twilio-ruby/rest/api.rb +25 -34
- data/lib/twilio-ruby/rest/api_base.rb +38 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +355 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +362 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +303 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +201 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +668 -0
- data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +229 -0
- data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +209 -0
- data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +591 -0
- data/lib/twilio-ruby/rest/assistants/v1/policy.rb +264 -0
- data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +264 -0
- data/lib/twilio-ruby/rest/assistants/v1/session.rb +328 -0
- data/lib/twilio-ruby/rest/assistants/v1/tool.rb +586 -0
- data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
- data/lib/twilio-ruby/rest/assistants.rb +6 -0
- data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
- data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +302 -279
- data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +301 -279
- data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +276 -248
- data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +249 -235
- data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +248 -216
- data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
- data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
- data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
- data/lib/twilio-ruby/rest/chat/v1/credential.rb +428 -403
- data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +381 -391
- data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +431 -440
- data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +447 -437
- data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +543 -515
- data/lib/twilio-ruby/rest/chat/v1/service/role.rb +405 -367
- data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
- data/lib/twilio-ruby/rest/chat/v1/service/user.rb +474 -440
- data/lib/twilio-ruby/rest/chat/v1/service.rb +870 -894
- data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
- data/lib/twilio-ruby/rest/chat/v2/credential.rb +428 -401
- data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +376 -370
- data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +381 -386
- data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +492 -527
- data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +519 -533
- data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +449 -467
- data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +612 -605
- data/lib/twilio-ruby/rest/chat/v2/service/role.rb +405 -369
- data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +369 -381
- data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +412 -419
- data/lib/twilio-ruby/rest/chat/v2/service/user.rb +516 -491
- data/lib/twilio-ruby/rest/chat/v2/service.rb +773 -778
- data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
- data/lib/twilio-ruby/rest/chat/v3/channel.rb +291 -267
- data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
- data/lib/twilio-ruby/rest/chat.rb +4 -48
- data/lib/twilio-ruby/rest/chat_base.rb +48 -0
- data/lib/twilio-ruby/rest/client.rb +333 -584
- data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +185 -0
- data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +202 -188
- data/lib/twilio-ruby/rest/content/v1/content.rb +941 -336
- data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +244 -232
- data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +258 -246
- data/lib/twilio-ruby/rest/content/v1.rb +54 -52
- data/lib/twilio-ruby/rest/content/v2/content.rb +316 -0
- data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +309 -0
- data/lib/twilio-ruby/rest/content/v2.rb +46 -0
- data/lib/twilio-ruby/rest/content.rb +2 -46
- data/lib/twilio-ruby/rest/content_base.rb +43 -0
- data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +481 -444
- data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +259 -227
- data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +284 -252
- data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +337 -344
- data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +543 -510
- data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +504 -495
- data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +434 -403
- data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +626 -590
- data/lib/twilio-ruby/rest/conversations/v1/credential.rb +434 -409
- data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +305 -304
- data/lib/twilio-ruby/rest/conversations/v1/role.rb +393 -356
- data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +369 -373
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +305 -289
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +251 -235
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +312 -279
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +344 -371
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +550 -550
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +513 -530
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +443 -438
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +638 -626
- data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +311 -317
- data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +405 -380
- data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +453 -455
- data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +490 -474
- data/lib/twilio-ruby/rest/conversations/v1/service.rb +483 -447
- data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +452 -435
- data/lib/twilio-ruby/rest/conversations/v1/user.rb +478 -441
- data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
- data/lib/twilio-ruby/rest/conversations.rb +9 -34
- data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
- data/lib/twilio-ruby/rest/events/v1/event_type.rb +319 -288
- data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
- data/lib/twilio-ruby/rest/events/v1/schema.rb +230 -218
- data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +117 -100
- data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +123 -103
- data/lib/twilio-ruby/rest/events/v1/sink.rb +443 -408
- data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +374 -339
- data/lib/twilio-ruby/rest/events/v1/subscription.rb +425 -387
- data/lib/twilio-ruby/rest/events/v1.rb +87 -87
- data/lib/twilio-ruby/rest/events.rb +5 -34
- data/lib/twilio-ruby/rest/events_base.rb +38 -0
- data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +439 -387
- data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +372 -330
- data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +547 -496
- data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +572 -570
- data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +321 -306
- data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +221 -208
- data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +435 -384
- data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +350 -303
- data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +435 -380
- data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +352 -403
- data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +209 -190
- data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +157 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +137 -124
- data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +188 -166
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +247 -229
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +343 -319
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +404 -398
- data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +264 -225
- data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +397 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +446 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +247 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +393 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +386 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +233 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +332 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +256 -0
- data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +188 -0
- data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +387 -331
- data/lib/twilio-ruby/rest/flex_api/v1.rb +313 -214
- data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +370 -0
- data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +145 -127
- data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
- data/lib/twilio-ruby/rest/flex_api.rb +21 -117
- data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
- data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +247 -227
- data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
- data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
- data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
- data/lib/twilio-ruby/rest/iam/v1/api_key.rb +270 -0
- data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +223 -0
- data/lib/twilio-ruby/rest/iam/v1/key.rb +177 -0
- data/lib/twilio-ruby/rest/iam/v1.rb +61 -0
- data/lib/twilio-ruby/rest/iam.rb +6 -0
- data/lib/twilio-ruby/rest/iam_base.rb +38 -0
- data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +315 -315
- data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +353 -0
- data/lib/twilio-ruby/rest/insights/v1/call/event.rb +270 -255
- data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +242 -225
- data/lib/twilio-ruby/rest/insights/v1/call.rb +263 -236
- data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +534 -439
- data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +484 -467
- data/lib/twilio-ruby/rest/insights/v1/conference.rb +498 -502
- data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
- data/lib/twilio-ruby/rest/insights/v1/room.rb +491 -489
- data/lib/twilio-ruby/rest/insights/v1/setting.rb +249 -205
- data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
- data/lib/twilio-ruby/rest/insights.rb +6 -34
- data/lib/twilio-ruby/rest/insights_base.rb +38 -0
- data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +447 -0
- data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +356 -0
- data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +217 -0
- data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +197 -0
- data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +358 -0
- data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +356 -0
- data/lib/twilio-ruby/rest/intelligence/v2/service.rb +517 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +227 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +389 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +262 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +525 -0
- data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
- data/lib/twilio-ruby/rest/intelligence.rb +6 -0
- data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +428 -364
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +381 -359
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +431 -397
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +447 -409
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +543 -488
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +405 -347
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +474 -418
- data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +870 -779
- data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
- data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +428 -364
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +376 -343
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +381 -359
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +492 -451
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +519 -479
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +449 -411
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +612 -555
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +405 -347
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +369 -351
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +404 -384
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +516 -467
- data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +773 -689
- data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
- data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
- data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
- data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +246 -239
- data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
- data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +376 -335
- data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
- data/lib/twilio-ruby/rest/lookups.rb +2 -41
- data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
- data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +309 -0
- data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +336 -0
- data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +352 -0
- data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +157 -0
- data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +465 -0
- data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +310 -0
- data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +199 -0
- data/lib/twilio-ruby/rest/marketplace/v1.rb +85 -0
- data/lib/twilio-ruby/rest/marketplace.rb +6 -0
- data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
- data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +124 -119
- data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +361 -346
- data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +499 -466
- data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +192 -0
- data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +285 -0
- data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +282 -232
- data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +231 -218
- data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +161 -144
- data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +209 -210
- data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +197 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +356 -335
- data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +370 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +363 -341
- data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +363 -336
- data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +613 -521
- data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +124 -115
- data/lib/twilio-ruby/rest/messaging/v1/service.rb +774 -763
- data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +793 -713
- data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +109 -94
- data/lib/twilio-ruby/rest/messaging/v1.rb +187 -165
- data/lib/twilio-ruby/rest/messaging.rb +10 -53
- data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
- data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +355 -307
- data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +348 -300
- data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +202 -185
- data/lib/twilio-ruby/rest/microvisor/v1/app.rb +342 -320
- data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +374 -335
- data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +367 -328
- data/lib/twilio-ruby/rest/microvisor/v1/device.rb +420 -383
- data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -85
- data/lib/twilio-ruby/rest/microvisor.rb +4 -50
- data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
- data/lib/twilio-ruby/rest/monitor/v1/alert.rb +401 -395
- data/lib/twilio-ruby/rest/monitor/v1/event.rb +384 -390
- data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
- data/lib/twilio-ruby/rest/monitor.rb +3 -34
- data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
- data/lib/twilio-ruby/rest/notify/v1/credential.rb +428 -408
- data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +442 -452
- data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +316 -362
- data/lib/twilio-ruby/rest/notify/v1/service.rb +633 -622
- data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
- data/lib/twilio-ruby/rest/notify.rb +3 -34
- data/lib/twilio-ruby/rest/notify_base.rb +38 -0
- data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +241 -0
- data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +111 -94
- data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +294 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +322 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +256 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +149 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +168 -0
- data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +273 -0
- data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +161 -0
- data/lib/twilio-ruby/rest/numbers/v1.rb +148 -28
- data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +344 -0
- data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +408 -0
- data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +266 -0
- data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +277 -0
- data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +507 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +281 -261
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +329 -298
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +340 -309
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +197 -181
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +613 -607
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +400 -351
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +293 -266
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +342 -307
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +428 -371
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +293 -266
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +178 -181
- data/lib/twilio-ruby/rest/numbers/v2.rb +93 -28
- data/lib/twilio-ruby/rest/numbers.rb +2 -47
- data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
- data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +144 -0
- data/lib/twilio-ruby/rest/oauth/v1/token.rb +176 -151
- data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
- data/lib/twilio-ruby/rest/oauth.rb +3 -65
- data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
- data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +371 -396
- data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +451 -446
- data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +617 -625
- data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
- data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
- data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -309
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +345 -330
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +436 -398
- data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
- data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +383 -374
- data/lib/twilio-ruby/rest/preview/sync/service/document.rb +448 -399
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +439 -407
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +383 -374
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +424 -398
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +442 -404
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +383 -374
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +424 -398
- data/lib/twilio-ruby/rest/preview/sync/service.rb +502 -452
- data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
- data/lib/twilio-ruby/rest/preview/wireless/command.rb +390 -364
- data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +455 -398
- data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +233 -205
- data/lib/twilio-ruby/rest/preview/wireless/sim.rb +577 -523
- data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
- data/lib/twilio-ruby/rest/preview.rb +11 -79
- data/lib/twilio-ruby/rest/preview_base.rb +53 -0
- data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +300 -275
- data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +108 -119
- data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +293 -268
- data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +108 -119
- data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +300 -275
- data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +223 -197
- data/lib/twilio-ruby/rest/pricing/v1/voice.rb +122 -135
- data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
- data/lib/twilio-ruby/rest/pricing/v2/country.rb +292 -270
- data/lib/twilio-ruby/rest/pricing/v2/number.rb +235 -217
- data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +300 -275
- data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +241 -220
- data/lib/twilio-ruby/rest/pricing/v2/voice.rb +122 -138
- data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
- data/lib/twilio-ruby/rest/pricing.rb +6 -41
- data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
- data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +426 -403
- data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +411 -418
- data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +433 -449
- data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +426 -442
- data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +529 -506
- data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +406 -370
- data/lib/twilio-ruby/rest/proxy/v1/service.rb +566 -596
- data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
- data/lib/twilio-ruby/rest/proxy.rb +2 -34
- data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
- data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +265 -227
- data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +265 -223
- data/lib/twilio-ruby/rest/routes/v2/trunk.rb +265 -227
- data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
- data/lib/twilio-ruby/rest/routes.rb +4 -34
- data/lib/twilio-ruby/rest/routes_base.rb +38 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
- data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +419 -380
- data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +209 -208
- data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +412 -384
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +342 -338
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +362 -383
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +410 -396
- data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +461 -447
- data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +224 -234
- data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
- data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +419 -380
- data/lib/twilio-ruby/rest/serverless/v1/service.rb +530 -493
- data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
- data/lib/twilio-ruby/rest/serverless.rb +2 -34
- data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
- data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +209 -199
- data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +224 -218
- data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +364 -355
- data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +429 -394
- data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +209 -200
- data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +224 -221
- data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +364 -361
- data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +477 -449
- data/lib/twilio-ruby/rest/studio/v1/flow.rb +385 -355
- data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
- data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +209 -200
- data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +224 -221
- data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +364 -361
- data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +470 -442
- data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +344 -320
- data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +237 -0
- data/lib/twilio-ruby/rest/studio/v2/flow.rb +528 -472
- data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +124 -99
- data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
- data/lib/twilio-ruby/rest/studio.rb +3 -41
- data/lib/twilio-ruby/rest/studio_base.rb +43 -0
- data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +396 -382
- data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +477 -483
- data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +401 -409
- data/lib/twilio-ruby/rest/supersim/v1/network.rb +303 -297
- data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +342 -332
- data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +385 -351
- data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -237
- data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
- data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
- data/lib/twilio-ruby/rest/supersim/v1/sim.rb +465 -453
- data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +361 -361
- data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +306 -344
- data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
- data/lib/twilio-ruby/rest/supersim.rb +10 -34
- data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
- data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +383 -371
- data/lib/twilio-ruby/rest/sync/v1/service/document.rb +464 -423
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +473 -490
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +383 -370
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +479 -445
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +476 -495
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +383 -368
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +479 -444
- data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +142 -132
- data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +428 -400
- data/lib/twilio-ruby/rest/sync/v1/service.rb +584 -567
- data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
- data/lib/twilio-ruby/rest/sync.rb +2 -34
- data/lib/twilio-ruby/rest/sync_base.rb +38 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +414 -395
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +445 -464
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +709 -749
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +659 -661
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +418 -382
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +164 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +362 -369
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +282 -275
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +233 -236
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +240 -258
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +583 -572
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +691 -732
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +394 -388
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +238 -239
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +284 -265
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +218 -193
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +254 -234
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +630 -637
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +362 -375
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +248 -241
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +233 -244
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +532 -510
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +356 -356
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +234 -206
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +244 -234
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +729 -730
- data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
- data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
- data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
- data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +349 -320
- data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +349 -317
- data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +449 -419
- data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +482 -451
- data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +229 -191
- data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +632 -630
- data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
- data/lib/twilio-ruby/rest/trunking.rb +2 -34
- data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
- data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +249 -0
- data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +357 -0
- data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +220 -0
- data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +364 -352
- data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +348 -323
- data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +338 -321
- data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +541 -513
- data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +392 -346
- data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +285 -261
- data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +278 -252
- data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +406 -359
- data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +285 -261
- data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +364 -352
- data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +348 -323
- data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +338 -321
- data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +541 -513
- data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
- data/lib/twilio-ruby/rest/trusthub.rb +8 -34
- data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
- data/lib/twilio-ruby/rest/verify/v2/form.rb +196 -183
- data/lib/twilio-ruby/rest/verify/v2/safelist.rb +228 -207
- data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +277 -254
- data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +194 -192
- data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +503 -531
- data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +454 -453
- data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +252 -283
- data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +429 -414
- data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +388 -363
- data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +410 -388
- data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +429 -384
- data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +390 -372
- data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +224 -205
- data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +456 -412
- data/lib/twilio-ruby/rest/verify/v2/service.rb +816 -780
- data/lib/twilio-ruby/rest/verify/v2/template.rb +222 -205
- data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +375 -387
- data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +242 -226
- data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
- data/lib/twilio-ruby/rest/verify.rb +7 -34
- data/lib/twilio-ruby/rest/verify_base.rb +38 -0
- data/lib/twilio-ruby/rest/video/v1/composition.rb +484 -507
- data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +534 -647
- data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +286 -261
- data/lib/twilio-ruby/rest/video/v1/recording.rb +431 -426
- data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +286 -261
- data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +262 -0
- data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +334 -0
- data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +186 -0
- data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +341 -0
- data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
- data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +175 -0
- data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
- data/lib/twilio-ruby/rest/video/v1/room.rb +613 -602
- data/lib/twilio-ruby/rest/video/v1.rb +99 -99
- data/lib/twilio-ruby/rest/video.rb +7 -34
- data/lib/twilio-ruby/rest/video_base.rb +38 -0
- data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +161 -176
- data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +510 -486
- data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +449 -434
- data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +400 -352
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +138 -121
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +376 -397
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +220 -190
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +123 -121
- data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +386 -339
- data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +369 -319
- data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
- data/lib/twilio-ruby/rest/voice.rb +7 -34
- data/lib/twilio-ruby/rest/voice_base.rb +38 -0
- data/lib/twilio-ruby/rest/wireless/v1/command.rb +415 -406
- data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +472 -436
- data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
- data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +240 -243
- data/lib/twilio-ruby/rest/wireless/v1/sim.rb +641 -647
- data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +227 -221
- data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
- data/lib/twilio-ruby/rest/wireless.rb +5 -34
- data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
- data/lib/twilio-ruby/rest.rb +1 -0
- data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
- data/lib/twilio-ruby/twiml/voice_response.rb +97 -18
- data/lib/twilio-ruby/version.rb +1 -1
- data/sonar-project.properties +1 -1
- data/twilio-ruby.gemspec +2 -1
- metadata +148 -80
- data/conf/cacert.pem +0 -3376
- data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
- data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
- data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
- 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
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
- data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
- data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
- data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
- data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
- data/lib/twilio-ruby/rest/autopilot.rb +0 -53
- data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
- data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +0 -144
- data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
- data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
- data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
- data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
- data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
- data/lib/twilio-ruby/rest/media/v1.rb +0 -76
- data/lib/twilio-ruby/rest/media.rb +0 -65
- data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
- data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
- data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
- data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
- data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
- data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
- data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
- data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
- data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
- data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
- data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
- data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
- data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
- data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
- data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
- data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
- data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
- data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
- data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
- data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
- data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
- data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
- data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
- data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
- data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
- data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
- data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
- data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
- data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
- data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,668 +1,666 @@
|
|
1
1
|
##
|
2
|
-
#
|
3
|
-
#
|
4
|
-
# |
|
5
|
-
#
|
2
|
+
# This code was generated by
|
3
|
+
# ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
|
4
|
+
# | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
|
5
|
+
# | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
|
6
|
+
#
|
7
|
+
# Twilio - Taskrouter
|
8
|
+
# This is the public Twilio REST API.
|
9
|
+
#
|
10
|
+
# NOTE: This class is auto generated by OpenAPI Generator.
|
11
|
+
# https://openapi-generator.tech
|
12
|
+
# Do not edit the class manually.
|
6
13
|
#
|
7
|
-
# frozen_string_literal: true
|
8
|
-
|
9
|
-
module Twilio
|
10
|
-
module REST
|
11
|
-
class Taskrouter < Domain
|
12
|
-
class V1 < Version
|
13
|
-
class WorkspaceContext < InstanceContext
|
14
|
-
class TaskList < ListResource
|
15
|
-
##
|
16
|
-
# Initialize the TaskList
|
17
|
-
# @param [Version] version Version that contains the resource
|
18
|
-
# @param [String] workspace_sid The SID of the Workspace that contains the Task.
|
19
|
-
# @return [TaskList] TaskList
|
20
|
-
def initialize(version, workspace_sid: nil)
|
21
|
-
super(version)
|
22
|
-
|
23
|
-
# Path Solution
|
24
|
-
@solution = {workspace_sid: workspace_sid}
|
25
|
-
@uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks"
|
26
|
-
end
|
27
|
-
|
28
|
-
##
|
29
|
-
# Lists TaskInstance records from the API as a list.
|
30
|
-
# Unlike stream(), this operation is eager and will load `limit` records into
|
31
|
-
# memory before returning.
|
32
|
-
# @param [String] priority The priority value of the Tasks to read. Returns the
|
33
|
-
# list of all Tasks in the Workspace with the specified priority.
|
34
|
-
# @param [Array[String]] assignment_status The `assignment_status` of the Tasks
|
35
|
-
# you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`,
|
36
|
-
# `wrapping`, or `completed`. Returns all Tasks in the Workspace with the
|
37
|
-
# specified `assignment_status`.
|
38
|
-
# @param [String] workflow_sid The SID of the Workflow with the Tasks to read.
|
39
|
-
# Returns the Tasks controlled by the Workflow identified by this SID.
|
40
|
-
# @param [String] workflow_name The friendly name of the Workflow with the Tasks
|
41
|
-
# to read. Returns the Tasks controlled by the Workflow identified by this
|
42
|
-
# friendly name.
|
43
|
-
# @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read.
|
44
|
-
# Returns the Tasks waiting in the TaskQueue identified by this SID.
|
45
|
-
# @param [String] task_queue_name The `friendly_name` of the TaskQueue with the
|
46
|
-
# Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this
|
47
|
-
# friendly name.
|
48
|
-
# @param [String] evaluate_task_attributes The attributes of the Tasks to read.
|
49
|
-
# Returns the Tasks that match the attributes specified in this parameter.
|
50
|
-
# @param [String] ordering How to order the returned Task resources. y default,
|
51
|
-
# Tasks are sorted by ascending DateCreated. This value is specified as:
|
52
|
-
# `Attribute:Order`, where `Attribute` can be either `Priority` or `DateCreated`
|
53
|
-
# and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns
|
54
|
-
# Tasks ordered in descending order of their Priority. Multiple sort orders can be
|
55
|
-
# specified in a comma-separated list such as `Priority:desc,DateCreated:asc`,
|
56
|
-
# which returns the Tasks in descending Priority order and ascending DateCreated
|
57
|
-
# Order.
|
58
|
-
# @param [Boolean] has_addons Whether to read Tasks with addons. If `true`,
|
59
|
-
# returns only Tasks with addons. If `false`, returns only Tasks without addons.
|
60
|
-
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
61
|
-
# guarantees to never return more than limit. Default is no limit
|
62
|
-
# @param [Integer] page_size Number of records to fetch per request, when
|
63
|
-
# not set will use the default value of 50 records. If no page_size is defined
|
64
|
-
# but a limit is defined, stream() will attempt to read the limit with the most
|
65
|
-
# efficient page size, i.e. min(limit, 1000)
|
66
|
-
# @return [Array] Array of up to limit results
|
67
|
-
def list(priority: :unset, assignment_status: :unset, workflow_sid: :unset, workflow_name: :unset, task_queue_sid: :unset, task_queue_name: :unset, evaluate_task_attributes: :unset, ordering: :unset, has_addons: :unset, limit: nil, page_size: nil)
|
68
|
-
self.stream(
|
69
|
-
priority: priority,
|
70
|
-
assignment_status: assignment_status,
|
71
|
-
workflow_sid: workflow_sid,
|
72
|
-
workflow_name: workflow_name,
|
73
|
-
task_queue_sid: task_queue_sid,
|
74
|
-
task_queue_name: task_queue_name,
|
75
|
-
evaluate_task_attributes: evaluate_task_attributes,
|
76
|
-
ordering: ordering,
|
77
|
-
has_addons: has_addons,
|
78
|
-
limit: limit,
|
79
|
-
page_size: page_size
|
80
|
-
).entries
|
81
|
-
end
|
82
|
-
|
83
|
-
##
|
84
|
-
# Streams TaskInstance records from the API as an Enumerable.
|
85
|
-
# This operation lazily loads records as efficiently as possible until the limit
|
86
|
-
# is reached.
|
87
|
-
# @param [String] priority The priority value of the Tasks to read. Returns the
|
88
|
-
# list of all Tasks in the Workspace with the specified priority.
|
89
|
-
# @param [Array[String]] assignment_status The `assignment_status` of the Tasks
|
90
|
-
# you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`,
|
91
|
-
# `wrapping`, or `completed`. Returns all Tasks in the Workspace with the
|
92
|
-
# specified `assignment_status`.
|
93
|
-
# @param [String] workflow_sid The SID of the Workflow with the Tasks to read.
|
94
|
-
# Returns the Tasks controlled by the Workflow identified by this SID.
|
95
|
-
# @param [String] workflow_name The friendly name of the Workflow with the Tasks
|
96
|
-
# to read. Returns the Tasks controlled by the Workflow identified by this
|
97
|
-
# friendly name.
|
98
|
-
# @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read.
|
99
|
-
# Returns the Tasks waiting in the TaskQueue identified by this SID.
|
100
|
-
# @param [String] task_queue_name The `friendly_name` of the TaskQueue with the
|
101
|
-
# Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this
|
102
|
-
# friendly name.
|
103
|
-
# @param [String] evaluate_task_attributes The attributes of the Tasks to read.
|
104
|
-
# Returns the Tasks that match the attributes specified in this parameter.
|
105
|
-
# @param [String] ordering How to order the returned Task resources. y default,
|
106
|
-
# Tasks are sorted by ascending DateCreated. This value is specified as:
|
107
|
-
# `Attribute:Order`, where `Attribute` can be either `Priority` or `DateCreated`
|
108
|
-
# and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns
|
109
|
-
# Tasks ordered in descending order of their Priority. Multiple sort orders can be
|
110
|
-
# specified in a comma-separated list such as `Priority:desc,DateCreated:asc`,
|
111
|
-
# which returns the Tasks in descending Priority order and ascending DateCreated
|
112
|
-
# Order.
|
113
|
-
# @param [Boolean] has_addons Whether to read Tasks with addons. If `true`,
|
114
|
-
# returns only Tasks with addons. If `false`, returns only Tasks without addons.
|
115
|
-
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
116
|
-
# guarantees to never return more than limit. Default is no limit.
|
117
|
-
# @param [Integer] page_size Number of records to fetch per request, when
|
118
|
-
# not set will use the default value of 50 records. If no page_size is defined
|
119
|
-
# but a limit is defined, stream() will attempt to read the limit with the most
|
120
|
-
# efficient page size, i.e. min(limit, 1000)
|
121
|
-
# @return [Enumerable] Enumerable that will yield up to limit results
|
122
|
-
def stream(priority: :unset, assignment_status: :unset, workflow_sid: :unset, workflow_name: :unset, task_queue_sid: :unset, task_queue_name: :unset, evaluate_task_attributes: :unset, ordering: :unset, has_addons: :unset, limit: nil, page_size: nil)
|
123
|
-
limits = @version.read_limits(limit, page_size)
|
124
|
-
|
125
|
-
page = self.page(
|
126
|
-
priority: priority,
|
127
|
-
assignment_status: assignment_status,
|
128
|
-
workflow_sid: workflow_sid,
|
129
|
-
workflow_name: workflow_name,
|
130
|
-
task_queue_sid: task_queue_sid,
|
131
|
-
task_queue_name: task_queue_name,
|
132
|
-
evaluate_task_attributes: evaluate_task_attributes,
|
133
|
-
ordering: ordering,
|
134
|
-
has_addons: has_addons,
|
135
|
-
page_size: limits[:page_size],
|
136
|
-
)
|
137
|
-
|
138
|
-
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
139
|
-
end
|
140
|
-
|
141
|
-
##
|
142
|
-
# When passed a block, yields TaskInstance records from the API.
|
143
|
-
# This operation lazily loads records as efficiently as possible until the limit
|
144
|
-
# is reached.
|
145
|
-
def each
|
146
|
-
limits = @version.read_limits
|
147
|
-
|
148
|
-
page = self.page(page_size: limits[:page_size], )
|
149
|
-
|
150
|
-
@version.stream(page,
|
151
|
-
limit: limits[:limit],
|
152
|
-
page_limit: limits[:page_limit]).each {|x| yield x}
|
153
|
-
end
|
154
|
-
|
155
|
-
##
|
156
|
-
# Retrieve a single page of TaskInstance records from the API.
|
157
|
-
# Request is executed immediately.
|
158
|
-
# @param [String] priority The priority value of the Tasks to read. Returns the
|
159
|
-
# list of all Tasks in the Workspace with the specified priority.
|
160
|
-
# @param [Array[String]] assignment_status The `assignment_status` of the Tasks
|
161
|
-
# you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`,
|
162
|
-
# `wrapping`, or `completed`. Returns all Tasks in the Workspace with the
|
163
|
-
# specified `assignment_status`.
|
164
|
-
# @param [String] workflow_sid The SID of the Workflow with the Tasks to read.
|
165
|
-
# Returns the Tasks controlled by the Workflow identified by this SID.
|
166
|
-
# @param [String] workflow_name The friendly name of the Workflow with the Tasks
|
167
|
-
# to read. Returns the Tasks controlled by the Workflow identified by this
|
168
|
-
# friendly name.
|
169
|
-
# @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read.
|
170
|
-
# Returns the Tasks waiting in the TaskQueue identified by this SID.
|
171
|
-
# @param [String] task_queue_name The `friendly_name` of the TaskQueue with the
|
172
|
-
# Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this
|
173
|
-
# friendly name.
|
174
|
-
# @param [String] evaluate_task_attributes The attributes of the Tasks to read.
|
175
|
-
# Returns the Tasks that match the attributes specified in this parameter.
|
176
|
-
# @param [String] ordering How to order the returned Task resources. y default,
|
177
|
-
# Tasks are sorted by ascending DateCreated. This value is specified as:
|
178
|
-
# `Attribute:Order`, where `Attribute` can be either `Priority` or `DateCreated`
|
179
|
-
# and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns
|
180
|
-
# Tasks ordered in descending order of their Priority. Multiple sort orders can be
|
181
|
-
# specified in a comma-separated list such as `Priority:desc,DateCreated:asc`,
|
182
|
-
# which returns the Tasks in descending Priority order and ascending DateCreated
|
183
|
-
# Order.
|
184
|
-
# @param [Boolean] has_addons Whether to read Tasks with addons. If `true`,
|
185
|
-
# returns only Tasks with addons. If `false`, returns only Tasks without addons.
|
186
|
-
# @param [String] page_token PageToken provided by the API
|
187
|
-
# @param [Integer] page_number Page Number, this value is simply for client state
|
188
|
-
# @param [Integer] page_size Number of records to return, defaults to 50
|
189
|
-
# @return [Page] Page of TaskInstance
|
190
|
-
def page(priority: :unset, assignment_status: :unset, workflow_sid: :unset, workflow_name: :unset, task_queue_sid: :unset, task_queue_name: :unset, evaluate_task_attributes: :unset, ordering: :unset, has_addons: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
|
191
|
-
params = Twilio::Values.of({
|
192
|
-
'Priority' => priority,
|
193
|
-
'AssignmentStatus' => Twilio.serialize_list(assignment_status) { |e| e },
|
194
|
-
'WorkflowSid' => workflow_sid,
|
195
|
-
'WorkflowName' => workflow_name,
|
196
|
-
'TaskQueueSid' => task_queue_sid,
|
197
|
-
'TaskQueueName' => task_queue_name,
|
198
|
-
'EvaluateTaskAttributes' => evaluate_task_attributes,
|
199
|
-
'Ordering' => ordering,
|
200
|
-
'HasAddons' => has_addons,
|
201
|
-
'PageToken' => page_token,
|
202
|
-
'Page' => page_number,
|
203
|
-
'PageSize' => page_size,
|
204
|
-
})
|
205
|
-
|
206
|
-
response = @version.page('GET', @uri, params: params)
|
207
|
-
|
208
|
-
TaskPage.new(@version, response, @solution)
|
209
|
-
end
|
210
|
-
|
211
|
-
##
|
212
|
-
# Retrieve a single page of TaskInstance records from the API.
|
213
|
-
# Request is executed immediately.
|
214
|
-
# @param [String] target_url API-generated URL for the requested results page
|
215
|
-
# @return [Page] Page of TaskInstance
|
216
|
-
def get_page(target_url)
|
217
|
-
response = @version.domain.request(
|
218
|
-
'GET',
|
219
|
-
target_url
|
220
|
-
)
|
221
|
-
TaskPage.new(@version, response, @solution)
|
222
|
-
end
|
223
|
-
|
224
|
-
##
|
225
|
-
# Create the TaskInstance
|
226
|
-
# @param [String] timeout The amount of time in seconds the new task can live
|
227
|
-
# before being assigned. Can be up to a maximum of 2 weeks (1,209,600 seconds).
|
228
|
-
# The default value is 24 hours (86,400 seconds). On timeout, the `task.canceled`
|
229
|
-
# event will fire with description `Task TTL Exceeded`.
|
230
|
-
# @param [String] priority The priority to assign the new task and override the
|
231
|
-
# default. When supplied, the new Task will have this priority unless it matches a
|
232
|
-
# Workflow Target with a Priority set. When not supplied, the new Task will have
|
233
|
-
# the priority of the matching Workflow Target. Value can be 0 to 2^31^
|
234
|
-
# (2,147,483,647).
|
235
|
-
# @param [String] task_channel When MultiTasking is enabled, specify the
|
236
|
-
# TaskChannel by passing either its `unique_name` or `sid`. Default value is
|
237
|
-
# `default`.
|
238
|
-
# @param [String] workflow_sid The SID of the Workflow that you would like to
|
239
|
-
# handle routing for the new Task. If there is only one Workflow defined for the
|
240
|
-
# Workspace that you are posting the new task to, this parameter is optional.
|
241
|
-
# @param [String] attributes A URL-encoded JSON string with the attributes of the
|
242
|
-
# new task. This value is passed to the Workflow's `assignment_callback_url` when
|
243
|
-
# the Task is assigned to a Worker. For example: `{ "task_type": "call",
|
244
|
-
# "twilio_call_sid": "CAxxx", "customer_ticket_number": "12345" }`.
|
245
|
-
# @return [TaskInstance] Created TaskInstance
|
246
|
-
def create(timeout: :unset, priority: :unset, task_channel: :unset, workflow_sid: :unset, attributes: :unset)
|
247
|
-
data = Twilio::Values.of({
|
248
|
-
'Timeout' => timeout,
|
249
|
-
'Priority' => priority,
|
250
|
-
'TaskChannel' => task_channel,
|
251
|
-
'WorkflowSid' => workflow_sid,
|
252
|
-
'Attributes' => attributes,
|
253
|
-
})
|
254
|
-
|
255
|
-
payload = @version.create('POST', @uri, data: data)
|
256
|
-
|
257
|
-
TaskInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], )
|
258
|
-
end
|
259
|
-
|
260
|
-
##
|
261
|
-
# Provide a user friendly representation
|
262
|
-
def to_s
|
263
|
-
'#<Twilio.Taskrouter.V1.TaskList>'
|
264
|
-
end
|
265
|
-
end
|
266
|
-
|
267
|
-
class TaskPage < Page
|
268
|
-
##
|
269
|
-
# Initialize the TaskPage
|
270
|
-
# @param [Version] version Version that contains the resource
|
271
|
-
# @param [Response] response Response from the API
|
272
|
-
# @param [Hash] solution Path solution for the resource
|
273
|
-
# @return [TaskPage] TaskPage
|
274
|
-
def initialize(version, response, solution)
|
275
|
-
super(version, response)
|
276
|
-
|
277
|
-
# Path Solution
|
278
|
-
@solution = solution
|
279
|
-
end
|
280
|
-
|
281
|
-
##
|
282
|
-
# Build an instance of TaskInstance
|
283
|
-
# @param [Hash] payload Payload response from the API
|
284
|
-
# @return [TaskInstance] TaskInstance
|
285
|
-
def get_instance(payload)
|
286
|
-
TaskInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], )
|
287
|
-
end
|
288
|
-
|
289
|
-
##
|
290
|
-
# Provide a user friendly representation
|
291
|
-
def to_s
|
292
|
-
'<Twilio.Taskrouter.V1.TaskPage>'
|
293
|
-
end
|
294
|
-
end
|
295
|
-
|
296
|
-
class TaskContext < InstanceContext
|
297
|
-
##
|
298
|
-
# Initialize the TaskContext
|
299
|
-
# @param [Version] version Version that contains the resource
|
300
|
-
# @param [String] workspace_sid The SID of the Workspace with the Task to fetch.
|
301
|
-
# @param [String] sid The SID of the Task resource to fetch.
|
302
|
-
# @return [TaskContext] TaskContext
|
303
|
-
def initialize(version, workspace_sid, sid)
|
304
|
-
super(version)
|
305
|
-
|
306
|
-
# Path Solution
|
307
|
-
@solution = {workspace_sid: workspace_sid, sid: sid, }
|
308
|
-
@uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks/#{@solution[:sid]}"
|
309
|
-
|
310
|
-
# Dependents
|
311
|
-
@reservations = nil
|
312
|
-
end
|
313
|
-
|
314
|
-
##
|
315
|
-
# Fetch the TaskInstance
|
316
|
-
# @return [TaskInstance] Fetched TaskInstance
|
317
|
-
def fetch
|
318
|
-
payload = @version.fetch('GET', @uri)
|
319
|
-
|
320
|
-
TaskInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], sid: @solution[:sid], )
|
321
|
-
end
|
322
|
-
|
323
|
-
##
|
324
|
-
# Update the TaskInstance
|
325
|
-
# @param [String] attributes The JSON string that describes the custom attributes
|
326
|
-
# of the task.
|
327
|
-
# @param [task.Status] assignment_status The new status of the task. Can be:
|
328
|
-
# `canceled`, to cancel a Task that is currently `pending` or `reserved`;
|
329
|
-
# `wrapping`, to move the Task to wrapup state; or `completed`, to move a Task to
|
330
|
-
# the completed state.
|
331
|
-
# @param [String] reason The reason that the Task was canceled or completed. This
|
332
|
-
# parameter is required only if the Task is canceled or completed. Setting this
|
333
|
-
# value queues the task for deletion and logs the reason.
|
334
|
-
# @param [String] priority The Task's new priority value. When supplied, the Task
|
335
|
-
# takes on the specified priority unless it matches a Workflow Target with a
|
336
|
-
# Priority set. Value can be 0 to 2^31^ (2,147,483,647).
|
337
|
-
# @param [String] task_channel When MultiTasking is enabled, specify the
|
338
|
-
# TaskChannel with the task to update. Can be the TaskChannel's SID or its
|
339
|
-
# `unique_name`, such as `voice`, `sms`, or `default`.
|
340
|
-
# @param [String] if_match If provided, applies this mutation if (and only if) the
|
341
|
-
# {ETag}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag] header of
|
342
|
-
# the Task matches the provided value. This matches the semantics of (and is
|
343
|
-
# implemented with) the HTTP {If-Match
|
344
|
-
# header}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match].
|
345
|
-
# @return [TaskInstance] Updated TaskInstance
|
346
|
-
def update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset, if_match: :unset)
|
347
|
-
data = Twilio::Values.of({
|
348
|
-
'Attributes' => attributes,
|
349
|
-
'AssignmentStatus' => assignment_status,
|
350
|
-
'Reason' => reason,
|
351
|
-
'Priority' => priority,
|
352
|
-
'TaskChannel' => task_channel,
|
353
|
-
})
|
354
|
-
headers = Twilio::Values.of({'If-Match' => if_match, })
|
355
|
-
|
356
|
-
payload = @version.update('POST', @uri, data: data, headers: headers)
|
357
|
-
|
358
|
-
TaskInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid], sid: @solution[:sid], )
|
359
|
-
end
|
360
|
-
|
361
|
-
##
|
362
|
-
# Delete the TaskInstance
|
363
|
-
# @param [String] if_match If provided, deletes this Task if (and only if) the
|
364
|
-
# {ETag}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag] header of
|
365
|
-
# the Task matches the provided value. This matches the semantics of (and is
|
366
|
-
# implemented with) the HTTP {If-Match
|
367
|
-
# header}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match].
|
368
|
-
# @return [Boolean] true if delete succeeds, false otherwise
|
369
|
-
def delete(if_match: :unset)
|
370
|
-
headers = Twilio::Values.of({'If-Match' => if_match, })
|
371
|
-
|
372
|
-
@version.delete('DELETE', @uri, headers: headers)
|
373
|
-
end
|
374
|
-
|
375
|
-
##
|
376
|
-
# Access the reservations
|
377
|
-
# @return [ReservationList]
|
378
|
-
# @return [ReservationContext] if sid was passed.
|
379
|
-
def reservations(sid=:unset)
|
380
|
-
raise ArgumentError, 'sid cannot be nil' if sid.nil?
|
381
|
-
|
382
|
-
if sid != :unset
|
383
|
-
return ReservationContext.new(@version, @solution[:workspace_sid], @solution[:sid], sid, )
|
384
|
-
end
|
385
|
-
|
386
|
-
unless @reservations
|
387
|
-
@reservations = ReservationList.new(
|
388
|
-
@version,
|
389
|
-
workspace_sid: @solution[:workspace_sid],
|
390
|
-
task_sid: @solution[:sid],
|
391
|
-
)
|
392
|
-
end
|
393
|
-
|
394
|
-
@reservations
|
395
|
-
end
|
396
|
-
|
397
|
-
##
|
398
|
-
# Provide a user friendly representation
|
399
|
-
def to_s
|
400
|
-
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
401
|
-
"#<Twilio.Taskrouter.V1.TaskContext #{context}>"
|
402
|
-
end
|
403
|
-
|
404
|
-
##
|
405
|
-
# Provide a detailed, user friendly representation
|
406
|
-
def inspect
|
407
|
-
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
408
|
-
"#<Twilio.Taskrouter.V1.TaskContext #{context}>"
|
409
|
-
end
|
410
|
-
end
|
411
|
-
|
412
|
-
class TaskInstance < InstanceResource
|
413
|
-
##
|
414
|
-
# Initialize the TaskInstance
|
415
|
-
# @param [Version] version Version that contains the resource
|
416
|
-
# @param [Hash] payload payload that contains response from Twilio
|
417
|
-
# @param [String] workspace_sid The SID of the Workspace that contains the Task.
|
418
|
-
# @param [String] sid The SID of the Task resource to fetch.
|
419
|
-
# @return [TaskInstance] TaskInstance
|
420
|
-
def initialize(version, payload, workspace_sid: nil, sid: nil)
|
421
|
-
super(version)
|
422
|
-
|
423
|
-
# Marshaled Properties
|
424
|
-
@properties = {
|
425
|
-
'account_sid' => payload['account_sid'],
|
426
|
-
'age' => payload['age'] == nil ? payload['age'] : payload['age'].to_i,
|
427
|
-
'assignment_status' => payload['assignment_status'],
|
428
|
-
'attributes' => payload['attributes'],
|
429
|
-
'addons' => payload['addons'],
|
430
|
-
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
431
|
-
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
432
|
-
'task_queue_entered_date' => Twilio.deserialize_iso8601_datetime(payload['task_queue_entered_date']),
|
433
|
-
'priority' => payload['priority'] == nil ? payload['priority'] : payload['priority'].to_i,
|
434
|
-
'reason' => payload['reason'],
|
435
|
-
'sid' => payload['sid'],
|
436
|
-
'task_queue_sid' => payload['task_queue_sid'],
|
437
|
-
'task_queue_friendly_name' => payload['task_queue_friendly_name'],
|
438
|
-
'task_channel_sid' => payload['task_channel_sid'],
|
439
|
-
'task_channel_unique_name' => payload['task_channel_unique_name'],
|
440
|
-
'timeout' => payload['timeout'] == nil ? payload['timeout'] : payload['timeout'].to_i,
|
441
|
-
'workflow_sid' => payload['workflow_sid'],
|
442
|
-
'workflow_friendly_name' => payload['workflow_friendly_name'],
|
443
|
-
'workspace_sid' => payload['workspace_sid'],
|
444
|
-
'url' => payload['url'],
|
445
|
-
'links' => payload['links'],
|
446
|
-
}
|
447
|
-
|
448
|
-
# Context
|
449
|
-
@instance_context = nil
|
450
|
-
@params = {'workspace_sid' => workspace_sid, 'sid' => sid || @properties['sid'], }
|
451
|
-
end
|
452
|
-
|
453
|
-
##
|
454
|
-
# Generate an instance context for the instance, the context is capable of
|
455
|
-
# performing various actions. All instance actions are proxied to the context
|
456
|
-
# @return [TaskContext] TaskContext for this TaskInstance
|
457
|
-
def context
|
458
|
-
unless @instance_context
|
459
|
-
@instance_context = TaskContext.new(@version, @params['workspace_sid'], @params['sid'], )
|
460
|
-
end
|
461
|
-
@instance_context
|
462
|
-
end
|
463
|
-
|
464
|
-
##
|
465
|
-
# @return [String] The SID of the Account that created the resource
|
466
|
-
def account_sid
|
467
|
-
@properties['account_sid']
|
468
|
-
end
|
469
|
-
|
470
|
-
##
|
471
|
-
# @return [String] The number of seconds since the Task was created
|
472
|
-
def age
|
473
|
-
@properties['age']
|
474
|
-
end
|
475
|
-
|
476
|
-
##
|
477
|
-
# @return [task.Status] The current status of the Task's assignment
|
478
|
-
def assignment_status
|
479
|
-
@properties['assignment_status']
|
480
|
-
end
|
481
|
-
|
482
|
-
##
|
483
|
-
# @return [String] The JSON string with custom attributes of the work
|
484
|
-
def attributes
|
485
|
-
@properties['attributes']
|
486
|
-
end
|
487
|
-
|
488
|
-
##
|
489
|
-
# @return [String] An object that contains the addon data for all installed addons
|
490
|
-
def addons
|
491
|
-
@properties['addons']
|
492
|
-
end
|
493
|
-
|
494
|
-
##
|
495
|
-
# @return [Time] The ISO 8601 date and time in GMT when the resource was created
|
496
|
-
def date_created
|
497
|
-
@properties['date_created']
|
498
|
-
end
|
499
|
-
|
500
|
-
##
|
501
|
-
# @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
|
502
|
-
def date_updated
|
503
|
-
@properties['date_updated']
|
504
|
-
end
|
505
|
-
|
506
|
-
##
|
507
|
-
# @return [Time] The ISO 8601 date and time in GMT when the Task entered the TaskQueue.
|
508
|
-
def task_queue_entered_date
|
509
|
-
@properties['task_queue_entered_date']
|
510
|
-
end
|
511
|
-
|
512
|
-
##
|
513
|
-
# @return [String] Retrieve the list of all Tasks in the Workspace with the specified priority
|
514
|
-
def priority
|
515
|
-
@properties['priority']
|
516
|
-
end
|
517
|
-
|
518
|
-
##
|
519
|
-
# @return [String] The reason the Task was canceled or completed
|
520
|
-
def reason
|
521
|
-
@properties['reason']
|
522
|
-
end
|
523
|
-
|
524
|
-
##
|
525
|
-
# @return [String] The unique string that identifies the resource
|
526
|
-
def sid
|
527
|
-
@properties['sid']
|
528
|
-
end
|
529
|
-
|
530
|
-
##
|
531
|
-
# @return [String] The SID of the TaskQueue
|
532
|
-
def task_queue_sid
|
533
|
-
@properties['task_queue_sid']
|
534
|
-
end
|
535
|
-
|
536
|
-
##
|
537
|
-
# @return [String] The friendly name of the TaskQueue
|
538
|
-
def task_queue_friendly_name
|
539
|
-
@properties['task_queue_friendly_name']
|
540
|
-
end
|
541
|
-
|
542
|
-
##
|
543
|
-
# @return [String] The SID of the TaskChannel
|
544
|
-
def task_channel_sid
|
545
|
-
@properties['task_channel_sid']
|
546
|
-
end
|
547
|
-
|
548
|
-
##
|
549
|
-
# @return [String] The unique name of the TaskChannel
|
550
|
-
def task_channel_unique_name
|
551
|
-
@properties['task_channel_unique_name']
|
552
|
-
end
|
553
|
-
|
554
|
-
##
|
555
|
-
# @return [String] The amount of time in seconds that the Task can live before being assigned
|
556
|
-
def timeout
|
557
|
-
@properties['timeout']
|
558
|
-
end
|
559
|
-
|
560
|
-
##
|
561
|
-
# @return [String] The SID of the Workflow that is controlling the Task
|
562
|
-
def workflow_sid
|
563
|
-
@properties['workflow_sid']
|
564
|
-
end
|
565
|
-
|
566
|
-
##
|
567
|
-
# @return [String] The friendly name of the Workflow that is controlling the Task
|
568
|
-
def workflow_friendly_name
|
569
|
-
@properties['workflow_friendly_name']
|
570
|
-
end
|
571
|
-
|
572
|
-
##
|
573
|
-
# @return [String] The SID of the Workspace that contains the Task
|
574
|
-
def workspace_sid
|
575
|
-
@properties['workspace_sid']
|
576
|
-
end
|
577
|
-
|
578
|
-
##
|
579
|
-
# @return [String] The absolute URL of the Task resource
|
580
|
-
def url
|
581
|
-
@properties['url']
|
582
|
-
end
|
583
|
-
|
584
|
-
##
|
585
|
-
# @return [String] The URLs of related resources
|
586
|
-
def links
|
587
|
-
@properties['links']
|
588
|
-
end
|
589
|
-
|
590
|
-
##
|
591
|
-
# Fetch the TaskInstance
|
592
|
-
# @return [TaskInstance] Fetched TaskInstance
|
593
|
-
def fetch
|
594
|
-
context.fetch
|
595
|
-
end
|
596
|
-
|
597
|
-
##
|
598
|
-
# Update the TaskInstance
|
599
|
-
# @param [String] attributes The JSON string that describes the custom attributes
|
600
|
-
# of the task.
|
601
|
-
# @param [task.Status] assignment_status The new status of the task. Can be:
|
602
|
-
# `canceled`, to cancel a Task that is currently `pending` or `reserved`;
|
603
|
-
# `wrapping`, to move the Task to wrapup state; or `completed`, to move a Task to
|
604
|
-
# the completed state.
|
605
|
-
# @param [String] reason The reason that the Task was canceled or completed. This
|
606
|
-
# parameter is required only if the Task is canceled or completed. Setting this
|
607
|
-
# value queues the task for deletion and logs the reason.
|
608
|
-
# @param [String] priority The Task's new priority value. When supplied, the Task
|
609
|
-
# takes on the specified priority unless it matches a Workflow Target with a
|
610
|
-
# Priority set. Value can be 0 to 2^31^ (2,147,483,647).
|
611
|
-
# @param [String] task_channel When MultiTasking is enabled, specify the
|
612
|
-
# TaskChannel with the task to update. Can be the TaskChannel's SID or its
|
613
|
-
# `unique_name`, such as `voice`, `sms`, or `default`.
|
614
|
-
# @param [String] if_match If provided, applies this mutation if (and only if) the
|
615
|
-
# {ETag}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag] header of
|
616
|
-
# the Task matches the provided value. This matches the semantics of (and is
|
617
|
-
# implemented with) the HTTP {If-Match
|
618
|
-
# header}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match].
|
619
|
-
# @return [TaskInstance] Updated TaskInstance
|
620
|
-
def update(attributes: :unset, assignment_status: :unset, reason: :unset, priority: :unset, task_channel: :unset, if_match: :unset)
|
621
|
-
context.update(
|
622
|
-
attributes: attributes,
|
623
|
-
assignment_status: assignment_status,
|
624
|
-
reason: reason,
|
625
|
-
priority: priority,
|
626
|
-
task_channel: task_channel,
|
627
|
-
if_match: if_match,
|
628
|
-
)
|
629
|
-
end
|
630
|
-
|
631
|
-
##
|
632
|
-
# Delete the TaskInstance
|
633
|
-
# @param [String] if_match If provided, deletes this Task if (and only if) the
|
634
|
-
# {ETag}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag] header of
|
635
|
-
# the Task matches the provided value. This matches the semantics of (and is
|
636
|
-
# implemented with) the HTTP {If-Match
|
637
|
-
# header}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match].
|
638
|
-
# @return [Boolean] true if delete succeeds, false otherwise
|
639
|
-
def delete(if_match: :unset)
|
640
|
-
context.delete(if_match: if_match, )
|
641
|
-
end
|
642
|
-
|
643
|
-
##
|
644
|
-
# Access the reservations
|
645
|
-
# @return [reservations] reservations
|
646
|
-
def reservations
|
647
|
-
context.reservations
|
648
|
-
end
|
649
14
|
|
650
|
-
##
|
651
|
-
# Provide a user friendly representation
|
652
|
-
def to_s
|
653
|
-
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
654
|
-
"<Twilio.Taskrouter.V1.TaskInstance #{values}>"
|
655
|
-
end
|
656
15
|
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
16
|
+
module Twilio
|
17
|
+
module REST
|
18
|
+
class Taskrouter < TaskrouterBase
|
19
|
+
class V1 < Version
|
20
|
+
class WorkspaceContext < InstanceContext
|
21
|
+
|
22
|
+
class TaskList < ListResource
|
23
|
+
|
24
|
+
##
|
25
|
+
# Initialize the TaskList
|
26
|
+
# @param [Version] version Version that contains the resource
|
27
|
+
# @return [TaskList] TaskList
|
28
|
+
def initialize(version, workspace_sid: nil)
|
29
|
+
super(version)
|
30
|
+
# Path Solution
|
31
|
+
@solution = { workspace_sid: workspace_sid }
|
32
|
+
@uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks"
|
33
|
+
|
34
|
+
end
|
35
|
+
##
|
36
|
+
# Create the TaskInstance
|
37
|
+
# @param [String] timeout The amount of time in seconds the new task can live before being assigned. Can be up to a maximum of 2 weeks (1,209,600 seconds). The default value is 24 hours (86,400 seconds). On timeout, the `task.canceled` event will fire with description `Task TTL Exceeded`.
|
38
|
+
# @param [String] priority The priority to assign the new task and override the default. When supplied, the new Task will have this priority unless it matches a Workflow Target with a Priority set. When not supplied, the new Task will have the priority of the matching Workflow Target. Value can be 0 to 2^31^ (2,147,483,647).
|
39
|
+
# @param [String] task_channel When MultiTasking is enabled, specify the TaskChannel by passing either its `unique_name` or `sid`. Default value is `default`.
|
40
|
+
# @param [String] workflow_sid The SID of the Workflow that you would like to handle routing for the new Task. If there is only one Workflow defined for the Workspace that you are posting the new task to, this parameter is optional.
|
41
|
+
# @param [String] attributes A URL-encoded JSON string with the attributes of the new task. This value is passed to the Workflow's `assignment_callback_url` when the Task is assigned to a Worker. For example: `{ \\\"task_type\\\": \\\"call\\\", \\\"twilio_call_sid\\\": \\\"CAxxx\\\", \\\"customer_ticket_number\\\": \\\"12345\\\" }`.
|
42
|
+
# @param [Time] virtual_start_time The virtual start time to assign the new task and override the default. When supplied, the new task will have this virtual start time. When not supplied, the new task will have the virtual start time equal to `date_created`. Value can't be in the future or before the year of 1900.
|
43
|
+
# @param [String] routing_target A SID of a Worker, Queue, or Workflow to route a Task to
|
44
|
+
# @param [String] ignore_capacity A boolean that indicates if the Task should respect a Worker's capacity and availability during assignment. This field can only be used when the `RoutingTarget` field is set to a Worker SID. By setting `IgnoreCapacity` to a value of `true`, `1`, or `yes`, the Task will be routed to the Worker without respecting their capacity and availability. Any other value will enforce the Worker's capacity and availability. The default value of `IgnoreCapacity` is `true` when the `RoutingTarget` is set to a Worker SID.
|
45
|
+
# @param [String] task_queue_sid The SID of the TaskQueue in which the Task belongs
|
46
|
+
# @return [TaskInstance] Created TaskInstance
|
47
|
+
def create(
|
48
|
+
timeout: :unset,
|
49
|
+
priority: :unset,
|
50
|
+
task_channel: :unset,
|
51
|
+
workflow_sid: :unset,
|
52
|
+
attributes: :unset,
|
53
|
+
virtual_start_time: :unset,
|
54
|
+
routing_target: :unset,
|
55
|
+
ignore_capacity: :unset,
|
56
|
+
task_queue_sid: :unset
|
57
|
+
)
|
58
|
+
|
59
|
+
data = Twilio::Values.of({
|
60
|
+
'Timeout' => timeout,
|
61
|
+
'Priority' => priority,
|
62
|
+
'TaskChannel' => task_channel,
|
63
|
+
'WorkflowSid' => workflow_sid,
|
64
|
+
'Attributes' => attributes,
|
65
|
+
'VirtualStartTime' => Twilio.serialize_iso8601_datetime(virtual_start_time),
|
66
|
+
'RoutingTarget' => routing_target,
|
67
|
+
'IgnoreCapacity' => ignore_capacity,
|
68
|
+
'TaskQueueSid' => task_queue_sid,
|
69
|
+
})
|
70
|
+
|
71
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
72
|
+
|
73
|
+
payload = @version.create('POST', @uri, data: data, headers: headers)
|
74
|
+
TaskInstance.new(
|
75
|
+
@version,
|
76
|
+
payload,
|
77
|
+
workspace_sid: @solution[:workspace_sid],
|
78
|
+
)
|
79
|
+
end
|
80
|
+
|
81
|
+
|
82
|
+
##
|
83
|
+
# Lists TaskInstance records from the API as a list.
|
84
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
85
|
+
# memory before returning.
|
86
|
+
# @param [String] priority The priority value of the Tasks to read. Returns the list of all Tasks in the Workspace with the specified priority.
|
87
|
+
# @param [Array[String]] assignment_status The `assignment_status` of the Tasks you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`, `wrapping`, or `completed`. Returns all Tasks in the Workspace with the specified `assignment_status`.
|
88
|
+
# @param [String] workflow_sid The SID of the Workflow with the Tasks to read. Returns the Tasks controlled by the Workflow identified by this SID.
|
89
|
+
# @param [String] workflow_name The friendly name of the Workflow with the Tasks to read. Returns the Tasks controlled by the Workflow identified by this friendly name.
|
90
|
+
# @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this SID.
|
91
|
+
# @param [String] task_queue_name The `friendly_name` of the TaskQueue with the Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this friendly name.
|
92
|
+
# @param [String] evaluate_task_attributes The attributes of the Tasks to read. Returns the Tasks that match the attributes specified in this parameter.
|
93
|
+
# @param [String] routing_target A SID of a Worker, Queue, or Workflow to route a Task to
|
94
|
+
# @param [String] ordering How to order the returned Task resources. By default, Tasks are sorted by ascending DateCreated. This value is specified as: `Attribute:Order`, where `Attribute` can be either `DateCreated`, `Priority`, or `VirtualStartTime` and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns Tasks ordered in descending order of their Priority. Pairings of sort orders can be specified in a comma-separated list such as `Priority:desc,DateCreated:asc`, which returns the Tasks in descending Priority order and ascending DateCreated Order. The only ordering pairing not allowed is DateCreated and VirtualStartTime.
|
95
|
+
# @param [Boolean] has_addons Whether to read Tasks with Add-ons. If `true`, returns only Tasks with Add-ons. If `false`, returns only Tasks without Add-ons.
|
96
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
97
|
+
# guarantees to never return more than limit. Default is no limit
|
98
|
+
# @param [Integer] page_size Number of records to fetch per request, when
|
99
|
+
# not set will use the default value of 50 records. If no page_size is defined
|
100
|
+
# but a limit is defined, stream() will attempt to read the limit with the most
|
101
|
+
# efficient page size, i.e. min(limit, 1000)
|
102
|
+
# @return [Array] Array of up to limit results
|
103
|
+
def list(priority: :unset, assignment_status: :unset, workflow_sid: :unset, workflow_name: :unset, task_queue_sid: :unset, task_queue_name: :unset, evaluate_task_attributes: :unset, routing_target: :unset, ordering: :unset, has_addons: :unset, limit: nil, page_size: nil)
|
104
|
+
self.stream(
|
105
|
+
priority: priority,
|
106
|
+
assignment_status: assignment_status,
|
107
|
+
workflow_sid: workflow_sid,
|
108
|
+
workflow_name: workflow_name,
|
109
|
+
task_queue_sid: task_queue_sid,
|
110
|
+
task_queue_name: task_queue_name,
|
111
|
+
evaluate_task_attributes: evaluate_task_attributes,
|
112
|
+
routing_target: routing_target,
|
113
|
+
ordering: ordering,
|
114
|
+
has_addons: has_addons,
|
115
|
+
limit: limit,
|
116
|
+
page_size: page_size
|
117
|
+
).entries
|
118
|
+
end
|
119
|
+
|
120
|
+
##
|
121
|
+
# Streams Instance records from the API as an Enumerable.
|
122
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
123
|
+
# is reached.
|
124
|
+
# @param [String] priority The priority value of the Tasks to read. Returns the list of all Tasks in the Workspace with the specified priority.
|
125
|
+
# @param [Array[String]] assignment_status The `assignment_status` of the Tasks you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`, `wrapping`, or `completed`. Returns all Tasks in the Workspace with the specified `assignment_status`.
|
126
|
+
# @param [String] workflow_sid The SID of the Workflow with the Tasks to read. Returns the Tasks controlled by the Workflow identified by this SID.
|
127
|
+
# @param [String] workflow_name The friendly name of the Workflow with the Tasks to read. Returns the Tasks controlled by the Workflow identified by this friendly name.
|
128
|
+
# @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this SID.
|
129
|
+
# @param [String] task_queue_name The `friendly_name` of the TaskQueue with the Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this friendly name.
|
130
|
+
# @param [String] evaluate_task_attributes The attributes of the Tasks to read. Returns the Tasks that match the attributes specified in this parameter.
|
131
|
+
# @param [String] routing_target A SID of a Worker, Queue, or Workflow to route a Task to
|
132
|
+
# @param [String] ordering How to order the returned Task resources. By default, Tasks are sorted by ascending DateCreated. This value is specified as: `Attribute:Order`, where `Attribute` can be either `DateCreated`, `Priority`, or `VirtualStartTime` and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns Tasks ordered in descending order of their Priority. Pairings of sort orders can be specified in a comma-separated list such as `Priority:desc,DateCreated:asc`, which returns the Tasks in descending Priority order and ascending DateCreated Order. The only ordering pairing not allowed is DateCreated and VirtualStartTime.
|
133
|
+
# @param [Boolean] has_addons Whether to read Tasks with Add-ons. If `true`, returns only Tasks with Add-ons. If `false`, returns only Tasks without Add-ons.
|
134
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
135
|
+
# guarantees to never return more than limit. Default is no limit
|
136
|
+
# @param [Integer] page_size Number of records to fetch per request, when
|
137
|
+
# not set will use the default value of 50 records. If no page_size is defined
|
138
|
+
# but a limit is defined, stream() will attempt to read the limit with the most
|
139
|
+
# efficient page size, i.e. min(limit, 1000)
|
140
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
141
|
+
def stream(priority: :unset, assignment_status: :unset, workflow_sid: :unset, workflow_name: :unset, task_queue_sid: :unset, task_queue_name: :unset, evaluate_task_attributes: :unset, routing_target: :unset, ordering: :unset, has_addons: :unset, limit: nil, page_size: nil)
|
142
|
+
limits = @version.read_limits(limit, page_size)
|
143
|
+
|
144
|
+
page = self.page(
|
145
|
+
priority: priority,
|
146
|
+
assignment_status: assignment_status,
|
147
|
+
workflow_sid: workflow_sid,
|
148
|
+
workflow_name: workflow_name,
|
149
|
+
task_queue_sid: task_queue_sid,
|
150
|
+
task_queue_name: task_queue_name,
|
151
|
+
evaluate_task_attributes: evaluate_task_attributes,
|
152
|
+
routing_target: routing_target,
|
153
|
+
ordering: ordering,
|
154
|
+
has_addons: has_addons,
|
155
|
+
page_size: limits[:page_size], )
|
156
|
+
|
157
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
158
|
+
end
|
159
|
+
|
160
|
+
##
|
161
|
+
# When passed a block, yields TaskInstance records from the API.
|
162
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
163
|
+
# is reached.
|
164
|
+
def each
|
165
|
+
limits = @version.read_limits
|
166
|
+
|
167
|
+
page = self.page(page_size: limits[:page_size], )
|
168
|
+
|
169
|
+
@version.stream(page,
|
170
|
+
limit: limits[:limit],
|
171
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
172
|
+
end
|
173
|
+
|
174
|
+
##
|
175
|
+
# Retrieve a single page of TaskInstance records from the API.
|
176
|
+
# Request is executed immediately.
|
177
|
+
# @param [String] priority The priority value of the Tasks to read. Returns the list of all Tasks in the Workspace with the specified priority.
|
178
|
+
# @param [Array[String]] assignment_status The `assignment_status` of the Tasks you want to read. Can be: `pending`, `reserved`, `assigned`, `canceled`, `wrapping`, or `completed`. Returns all Tasks in the Workspace with the specified `assignment_status`.
|
179
|
+
# @param [String] workflow_sid The SID of the Workflow with the Tasks to read. Returns the Tasks controlled by the Workflow identified by this SID.
|
180
|
+
# @param [String] workflow_name The friendly name of the Workflow with the Tasks to read. Returns the Tasks controlled by the Workflow identified by this friendly name.
|
181
|
+
# @param [String] task_queue_sid The SID of the TaskQueue with the Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this SID.
|
182
|
+
# @param [String] task_queue_name The `friendly_name` of the TaskQueue with the Tasks to read. Returns the Tasks waiting in the TaskQueue identified by this friendly name.
|
183
|
+
# @param [String] evaluate_task_attributes The attributes of the Tasks to read. Returns the Tasks that match the attributes specified in this parameter.
|
184
|
+
# @param [String] routing_target A SID of a Worker, Queue, or Workflow to route a Task to
|
185
|
+
# @param [String] ordering How to order the returned Task resources. By default, Tasks are sorted by ascending DateCreated. This value is specified as: `Attribute:Order`, where `Attribute` can be either `DateCreated`, `Priority`, or `VirtualStartTime` and `Order` can be either `asc` or `desc`. For example, `Priority:desc` returns Tasks ordered in descending order of their Priority. Pairings of sort orders can be specified in a comma-separated list such as `Priority:desc,DateCreated:asc`, which returns the Tasks in descending Priority order and ascending DateCreated Order. The only ordering pairing not allowed is DateCreated and VirtualStartTime.
|
186
|
+
# @param [Boolean] has_addons Whether to read Tasks with Add-ons. If `true`, returns only Tasks with Add-ons. If `false`, returns only Tasks without Add-ons.
|
187
|
+
# @param [String] page_token PageToken provided by the API
|
188
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
189
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
190
|
+
# @return [Page] Page of TaskInstance
|
191
|
+
def page(priority: :unset, assignment_status: :unset, workflow_sid: :unset, workflow_name: :unset, task_queue_sid: :unset, task_queue_name: :unset, evaluate_task_attributes: :unset, routing_target: :unset, ordering: :unset, has_addons: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
|
192
|
+
params = Twilio::Values.of({
|
193
|
+
'Priority' => priority,
|
194
|
+
|
195
|
+
'AssignmentStatus' => Twilio.serialize_list(assignment_status) { |e| e },
|
196
|
+
'WorkflowSid' => workflow_sid,
|
197
|
+
'WorkflowName' => workflow_name,
|
198
|
+
'TaskQueueSid' => task_queue_sid,
|
199
|
+
'TaskQueueName' => task_queue_name,
|
200
|
+
'EvaluateTaskAttributes' => evaluate_task_attributes,
|
201
|
+
'RoutingTarget' => routing_target,
|
202
|
+
'Ordering' => ordering,
|
203
|
+
'HasAddons' => has_addons,
|
204
|
+
'PageToken' => page_token,
|
205
|
+
'Page' => page_number,
|
206
|
+
'PageSize' => page_size,
|
207
|
+
})
|
208
|
+
|
209
|
+
response = @version.page('GET', @uri, params: params)
|
210
|
+
|
211
|
+
TaskPage.new(@version, response, @solution)
|
212
|
+
end
|
213
|
+
|
214
|
+
##
|
215
|
+
# Retrieve a single page of TaskInstance records from the API.
|
216
|
+
# Request is executed immediately.
|
217
|
+
# @param [String] target_url API-generated URL for the requested results page
|
218
|
+
# @return [Page] Page of TaskInstance
|
219
|
+
def get_page(target_url)
|
220
|
+
response = @version.domain.request(
|
221
|
+
'GET',
|
222
|
+
target_url
|
223
|
+
)
|
224
|
+
TaskPage.new(@version, response, @solution)
|
225
|
+
end
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
# Provide a user friendly representation
|
230
|
+
def to_s
|
231
|
+
'#<Twilio.Taskrouter.V1.TaskList>'
|
232
|
+
end
|
233
|
+
end
|
234
|
+
|
235
|
+
|
236
|
+
class TaskContext < InstanceContext
|
237
|
+
##
|
238
|
+
# Initialize the TaskContext
|
239
|
+
# @param [Version] version Version that contains the resource
|
240
|
+
# @param [String] workspace_sid The SID of the Workspace with the Task to update.
|
241
|
+
# @param [String] sid The SID of the Task resource to update.
|
242
|
+
# @return [TaskContext] TaskContext
|
243
|
+
def initialize(version, workspace_sid, sid)
|
244
|
+
super(version)
|
245
|
+
|
246
|
+
# Path Solution
|
247
|
+
@solution = { workspace_sid: workspace_sid, sid: sid, }
|
248
|
+
@uri = "/Workspaces/#{@solution[:workspace_sid]}/Tasks/#{@solution[:sid]}"
|
249
|
+
|
250
|
+
# Dependents
|
251
|
+
@reservations = nil
|
252
|
+
end
|
253
|
+
##
|
254
|
+
# Delete the TaskInstance
|
255
|
+
# @param [String] if_match If provided, deletes this Task if (and only if) the [ETag](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag) header of the Task matches the provided value. This matches the semantics of (and is implemented with) the HTTP [If-Match header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match).
|
256
|
+
# @return [Boolean] True if delete succeeds, false otherwise
|
257
|
+
def delete(
|
258
|
+
if_match: :unset
|
259
|
+
)
|
260
|
+
|
261
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, })
|
262
|
+
|
263
|
+
@version.delete('DELETE', @uri, headers: headers)
|
264
|
+
end
|
265
|
+
|
266
|
+
##
|
267
|
+
# Fetch the TaskInstance
|
268
|
+
# @return [TaskInstance] Fetched TaskInstance
|
269
|
+
def fetch
|
270
|
+
|
271
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
272
|
+
|
273
|
+
payload = @version.fetch('GET', @uri, headers: headers)
|
274
|
+
TaskInstance.new(
|
275
|
+
@version,
|
276
|
+
payload,
|
277
|
+
workspace_sid: @solution[:workspace_sid],
|
278
|
+
sid: @solution[:sid],
|
279
|
+
)
|
280
|
+
end
|
281
|
+
|
282
|
+
##
|
283
|
+
# Update the TaskInstance
|
284
|
+
# @param [String] attributes The JSON string that describes the custom attributes of the task.
|
285
|
+
# @param [Status] assignment_status
|
286
|
+
# @param [String] reason The reason that the Task was canceled or completed. This parameter is required only if the Task is canceled or completed. Setting this value queues the task for deletion and logs the reason.
|
287
|
+
# @param [String] priority The Task's new priority value. When supplied, the Task takes on the specified priority unless it matches a Workflow Target with a Priority set. Value can be 0 to 2^31^ (2,147,483,647).
|
288
|
+
# @param [String] task_channel When MultiTasking is enabled, specify the TaskChannel with the task to update. Can be the TaskChannel's SID or its `unique_name`, such as `voice`, `sms`, or `default`.
|
289
|
+
# @param [Time] virtual_start_time The task's new virtual start time value. When supplied, the Task takes on the specified virtual start time. Value can't be in the future or before the year of 1900.
|
290
|
+
# @param [String] if_match If provided, applies this mutation if (and only if) the [ETag](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag) header of the Task matches the provided value. This matches the semantics of (and is implemented with) the HTTP [If-Match header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match).
|
291
|
+
# @return [TaskInstance] Updated TaskInstance
|
292
|
+
def update(
|
293
|
+
attributes: :unset,
|
294
|
+
assignment_status: :unset,
|
295
|
+
reason: :unset,
|
296
|
+
priority: :unset,
|
297
|
+
task_channel: :unset,
|
298
|
+
virtual_start_time: :unset,
|
299
|
+
if_match: :unset
|
300
|
+
)
|
301
|
+
|
302
|
+
data = Twilio::Values.of({
|
303
|
+
'Attributes' => attributes,
|
304
|
+
'AssignmentStatus' => assignment_status,
|
305
|
+
'Reason' => reason,
|
306
|
+
'Priority' => priority,
|
307
|
+
'TaskChannel' => task_channel,
|
308
|
+
'VirtualStartTime' => Twilio.serialize_iso8601_datetime(virtual_start_time),
|
309
|
+
})
|
310
|
+
|
311
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'If-Match' => if_match, })
|
312
|
+
|
313
|
+
payload = @version.update('POST', @uri, data: data, headers: headers)
|
314
|
+
TaskInstance.new(
|
315
|
+
@version,
|
316
|
+
payload,
|
317
|
+
workspace_sid: @solution[:workspace_sid],
|
318
|
+
sid: @solution[:sid],
|
319
|
+
)
|
320
|
+
end
|
321
|
+
|
322
|
+
##
|
323
|
+
# Access the reservations
|
324
|
+
# @return [ReservationList]
|
325
|
+
# @return [ReservationContext] if sid was passed.
|
326
|
+
def reservations(sid=:unset)
|
327
|
+
|
328
|
+
raise ArgumentError, 'sid cannot be nil' if sid.nil?
|
329
|
+
|
330
|
+
if sid != :unset
|
331
|
+
return ReservationContext.new(@version, @solution[:workspace_sid], @solution[:sid],sid )
|
332
|
+
end
|
333
|
+
|
334
|
+
unless @reservations
|
335
|
+
@reservations = ReservationList.new(
|
336
|
+
@version, workspace_sid: @solution[:workspace_sid], task_sid: @solution[:sid], )
|
337
|
+
end
|
338
|
+
|
339
|
+
@reservations
|
340
|
+
end
|
341
|
+
|
342
|
+
##
|
343
|
+
# Provide a user friendly representation
|
344
|
+
def to_s
|
345
|
+
context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
|
346
|
+
"#<Twilio.Taskrouter.V1.TaskContext #{context}>"
|
347
|
+
end
|
348
|
+
|
349
|
+
##
|
350
|
+
# Provide a detailed, user friendly representation
|
351
|
+
def inspect
|
352
|
+
context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
|
353
|
+
"#<Twilio.Taskrouter.V1.TaskContext #{context}>"
|
354
|
+
end
|
355
|
+
end
|
356
|
+
|
357
|
+
class TaskPage < Page
|
358
|
+
##
|
359
|
+
# Initialize the TaskPage
|
360
|
+
# @param [Version] version Version that contains the resource
|
361
|
+
# @param [Response] response Response from the API
|
362
|
+
# @param [Hash] solution Path solution for the resource
|
363
|
+
# @return [TaskPage] TaskPage
|
364
|
+
def initialize(version, response, solution)
|
365
|
+
super(version, response)
|
366
|
+
|
367
|
+
# Path Solution
|
368
|
+
@solution = solution
|
369
|
+
end
|
370
|
+
|
371
|
+
##
|
372
|
+
# Build an instance of TaskInstance
|
373
|
+
# @param [Hash] payload Payload response from the API
|
374
|
+
# @return [TaskInstance] TaskInstance
|
375
|
+
def get_instance(payload)
|
376
|
+
TaskInstance.new(@version, payload, workspace_sid: @solution[:workspace_sid])
|
377
|
+
end
|
378
|
+
|
379
|
+
##
|
380
|
+
# Provide a user friendly representation
|
381
|
+
def to_s
|
382
|
+
'<Twilio.Taskrouter.V1.TaskPage>'
|
383
|
+
end
|
384
|
+
end
|
385
|
+
class TaskInstance < InstanceResource
|
386
|
+
##
|
387
|
+
# Initialize the TaskInstance
|
388
|
+
# @param [Version] version Version that contains the resource
|
389
|
+
# @param [Hash] payload payload that contains response from Twilio
|
390
|
+
# @param [String] account_sid The SID of the
|
391
|
+
# {Account}[https://www.twilio.com/docs/iam/api/account] that created this Task
|
392
|
+
# resource.
|
393
|
+
# @param [String] sid The SID of the Call resource to fetch.
|
394
|
+
# @return [TaskInstance] TaskInstance
|
395
|
+
def initialize(version, payload , workspace_sid: nil, sid: nil)
|
396
|
+
super(version)
|
397
|
+
|
398
|
+
# Marshaled Properties
|
399
|
+
@properties = {
|
400
|
+
'account_sid' => payload['account_sid'],
|
401
|
+
'age' => payload['age'] == nil ? payload['age'] : payload['age'].to_i,
|
402
|
+
'assignment_status' => payload['assignment_status'],
|
403
|
+
'attributes' => payload['attributes'],
|
404
|
+
'addons' => payload['addons'],
|
405
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
406
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
407
|
+
'task_queue_entered_date' => Twilio.deserialize_iso8601_datetime(payload['task_queue_entered_date']),
|
408
|
+
'priority' => payload['priority'] == nil ? payload['priority'] : payload['priority'].to_i,
|
409
|
+
'reason' => payload['reason'],
|
410
|
+
'sid' => payload['sid'],
|
411
|
+
'task_queue_sid' => payload['task_queue_sid'],
|
412
|
+
'task_queue_friendly_name' => payload['task_queue_friendly_name'],
|
413
|
+
'task_channel_sid' => payload['task_channel_sid'],
|
414
|
+
'task_channel_unique_name' => payload['task_channel_unique_name'],
|
415
|
+
'timeout' => payload['timeout'] == nil ? payload['timeout'] : payload['timeout'].to_i,
|
416
|
+
'workflow_sid' => payload['workflow_sid'],
|
417
|
+
'workflow_friendly_name' => payload['workflow_friendly_name'],
|
418
|
+
'workspace_sid' => payload['workspace_sid'],
|
419
|
+
'url' => payload['url'],
|
420
|
+
'links' => payload['links'],
|
421
|
+
'virtual_start_time' => Twilio.deserialize_iso8601_datetime(payload['virtual_start_time']),
|
422
|
+
'ignore_capacity' => payload['ignore_capacity'],
|
423
|
+
'routing_target' => payload['routing_target'],
|
424
|
+
}
|
425
|
+
|
426
|
+
# Context
|
427
|
+
@instance_context = nil
|
428
|
+
@params = { 'workspace_sid' => workspace_sid || @properties['workspace_sid'] ,'sid' => sid || @properties['sid'] , }
|
429
|
+
end
|
430
|
+
|
431
|
+
##
|
432
|
+
# Generate an instance context for the instance, the context is capable of
|
433
|
+
# performing various actions. All instance actions are proxied to the context
|
434
|
+
# @return [TaskContext] CallContext for this CallInstance
|
435
|
+
def context
|
436
|
+
unless @instance_context
|
437
|
+
@instance_context = TaskContext.new(@version , @params['workspace_sid'], @params['sid'])
|
438
|
+
end
|
439
|
+
@instance_context
|
440
|
+
end
|
441
|
+
|
442
|
+
##
|
443
|
+
# @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Task resource.
|
444
|
+
def account_sid
|
445
|
+
@properties['account_sid']
|
446
|
+
end
|
447
|
+
|
448
|
+
##
|
449
|
+
# @return [String] The number of seconds since the Task was created.
|
450
|
+
def age
|
451
|
+
@properties['age']
|
452
|
+
end
|
453
|
+
|
454
|
+
##
|
455
|
+
# @return [Status]
|
456
|
+
def assignment_status
|
457
|
+
@properties['assignment_status']
|
458
|
+
end
|
459
|
+
|
460
|
+
##
|
461
|
+
# @return [String] The JSON string with custom attributes of the work. **Note** If this property has been assigned a value, it will only be displayed in FETCH action that returns a single resource. Otherwise, it will be null.
|
462
|
+
def attributes
|
463
|
+
@properties['attributes']
|
464
|
+
end
|
465
|
+
|
466
|
+
##
|
467
|
+
# @return [String] An object that contains the [Add-on](https://www.twilio.com/docs/add-ons) data for all installed Add-ons.
|
468
|
+
def addons
|
469
|
+
@properties['addons']
|
470
|
+
end
|
471
|
+
|
472
|
+
##
|
473
|
+
# @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.
|
474
|
+
def date_created
|
475
|
+
@properties['date_created']
|
476
|
+
end
|
477
|
+
|
478
|
+
##
|
479
|
+
# @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.
|
480
|
+
def date_updated
|
481
|
+
@properties['date_updated']
|
482
|
+
end
|
483
|
+
|
484
|
+
##
|
485
|
+
# @return [Time] The date and time in GMT when the Task entered the TaskQueue, specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
486
|
+
def task_queue_entered_date
|
487
|
+
@properties['task_queue_entered_date']
|
488
|
+
end
|
489
|
+
|
490
|
+
##
|
491
|
+
# @return [String] The current priority score of the Task as assigned to a Worker by the workflow. Tasks with higher priority values will be assigned before Tasks with lower values.
|
492
|
+
def priority
|
493
|
+
@properties['priority']
|
494
|
+
end
|
495
|
+
|
496
|
+
##
|
497
|
+
# @return [String] The reason the Task was canceled or completed, if applicable.
|
498
|
+
def reason
|
499
|
+
@properties['reason']
|
500
|
+
end
|
501
|
+
|
502
|
+
##
|
503
|
+
# @return [String] The unique string that we created to identify the Task resource.
|
504
|
+
def sid
|
505
|
+
@properties['sid']
|
506
|
+
end
|
507
|
+
|
508
|
+
##
|
509
|
+
# @return [String] The SID of the TaskQueue.
|
510
|
+
def task_queue_sid
|
511
|
+
@properties['task_queue_sid']
|
512
|
+
end
|
513
|
+
|
514
|
+
##
|
515
|
+
# @return [String] The friendly name of the TaskQueue.
|
516
|
+
def task_queue_friendly_name
|
517
|
+
@properties['task_queue_friendly_name']
|
518
|
+
end
|
519
|
+
|
520
|
+
##
|
521
|
+
# @return [String] The SID of the TaskChannel.
|
522
|
+
def task_channel_sid
|
523
|
+
@properties['task_channel_sid']
|
524
|
+
end
|
525
|
+
|
526
|
+
##
|
527
|
+
# @return [String] The unique name of the TaskChannel.
|
528
|
+
def task_channel_unique_name
|
529
|
+
@properties['task_channel_unique_name']
|
530
|
+
end
|
531
|
+
|
532
|
+
##
|
533
|
+
# @return [String] The amount of time in seconds that the Task can live before being assigned.
|
534
|
+
def timeout
|
535
|
+
@properties['timeout']
|
536
|
+
end
|
537
|
+
|
538
|
+
##
|
539
|
+
# @return [String] The SID of the Workflow that is controlling the Task.
|
540
|
+
def workflow_sid
|
541
|
+
@properties['workflow_sid']
|
542
|
+
end
|
543
|
+
|
544
|
+
##
|
545
|
+
# @return [String] The friendly name of the Workflow that is controlling the Task.
|
546
|
+
def workflow_friendly_name
|
547
|
+
@properties['workflow_friendly_name']
|
548
|
+
end
|
549
|
+
|
550
|
+
##
|
551
|
+
# @return [String] The SID of the Workspace that contains the Task.
|
552
|
+
def workspace_sid
|
553
|
+
@properties['workspace_sid']
|
554
|
+
end
|
555
|
+
|
556
|
+
##
|
557
|
+
# @return [String] The absolute URL of the Task resource.
|
558
|
+
def url
|
559
|
+
@properties['url']
|
560
|
+
end
|
561
|
+
|
562
|
+
##
|
563
|
+
# @return [Hash] The URLs of related resources.
|
564
|
+
def links
|
565
|
+
@properties['links']
|
566
|
+
end
|
567
|
+
|
568
|
+
##
|
569
|
+
# @return [Time] The date and time in GMT indicating the ordering for routing of the Task specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
|
570
|
+
def virtual_start_time
|
571
|
+
@properties['virtual_start_time']
|
572
|
+
end
|
573
|
+
|
574
|
+
##
|
575
|
+
# @return [Boolean] A boolean that indicates if the Task should respect a Worker's capacity and availability during assignment. This field can only be used when the `RoutingTarget` field is set to a Worker SID. By setting `IgnoreCapacity` to a value of `true`, `1`, or `yes`, the Task will be routed to the Worker without respecting their capacity and availability. Any other value will enforce the Worker's capacity and availability. The default value of `IgnoreCapacity` is `true` when the `RoutingTarget` is set to a Worker SID.
|
576
|
+
def ignore_capacity
|
577
|
+
@properties['ignore_capacity']
|
578
|
+
end
|
579
|
+
|
580
|
+
##
|
581
|
+
# @return [String] A SID of a Worker, Queue, or Workflow to route a Task to
|
582
|
+
def routing_target
|
583
|
+
@properties['routing_target']
|
584
|
+
end
|
585
|
+
|
586
|
+
##
|
587
|
+
# Delete the TaskInstance
|
588
|
+
# @param [String] if_match If provided, deletes this Task if (and only if) the [ETag](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag) header of the Task matches the provided value. This matches the semantics of (and is implemented with) the HTTP [If-Match header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match).
|
589
|
+
# @return [Boolean] True if delete succeeds, false otherwise
|
590
|
+
def delete(
|
591
|
+
if_match: :unset
|
592
|
+
)
|
593
|
+
|
594
|
+
context.delete(
|
595
|
+
if_match: if_match,
|
596
|
+
)
|
597
|
+
end
|
598
|
+
|
599
|
+
##
|
600
|
+
# Fetch the TaskInstance
|
601
|
+
# @return [TaskInstance] Fetched TaskInstance
|
602
|
+
def fetch
|
603
|
+
|
604
|
+
context.fetch
|
605
|
+
end
|
606
|
+
|
607
|
+
##
|
608
|
+
# Update the TaskInstance
|
609
|
+
# @param [String] attributes The JSON string that describes the custom attributes of the task.
|
610
|
+
# @param [Status] assignment_status
|
611
|
+
# @param [String] reason The reason that the Task was canceled or completed. This parameter is required only if the Task is canceled or completed. Setting this value queues the task for deletion and logs the reason.
|
612
|
+
# @param [String] priority The Task's new priority value. When supplied, the Task takes on the specified priority unless it matches a Workflow Target with a Priority set. Value can be 0 to 2^31^ (2,147,483,647).
|
613
|
+
# @param [String] task_channel When MultiTasking is enabled, specify the TaskChannel with the task to update. Can be the TaskChannel's SID or its `unique_name`, such as `voice`, `sms`, or `default`.
|
614
|
+
# @param [Time] virtual_start_time The task's new virtual start time value. When supplied, the Task takes on the specified virtual start time. Value can't be in the future or before the year of 1900.
|
615
|
+
# @param [String] if_match If provided, applies this mutation if (and only if) the [ETag](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/ETag) header of the Task matches the provided value. This matches the semantics of (and is implemented with) the HTTP [If-Match header](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-Match).
|
616
|
+
# @return [TaskInstance] Updated TaskInstance
|
617
|
+
def update(
|
618
|
+
attributes: :unset,
|
619
|
+
assignment_status: :unset,
|
620
|
+
reason: :unset,
|
621
|
+
priority: :unset,
|
622
|
+
task_channel: :unset,
|
623
|
+
virtual_start_time: :unset,
|
624
|
+
if_match: :unset
|
625
|
+
)
|
626
|
+
|
627
|
+
context.update(
|
628
|
+
attributes: attributes,
|
629
|
+
assignment_status: assignment_status,
|
630
|
+
reason: reason,
|
631
|
+
priority: priority,
|
632
|
+
task_channel: task_channel,
|
633
|
+
virtual_start_time: virtual_start_time,
|
634
|
+
if_match: if_match,
|
635
|
+
)
|
636
|
+
end
|
637
|
+
|
638
|
+
##
|
639
|
+
# Access the reservations
|
640
|
+
# @return [reservations] reservations
|
641
|
+
def reservations
|
642
|
+
context.reservations
|
643
|
+
end
|
644
|
+
|
645
|
+
##
|
646
|
+
# Provide a user friendly representation
|
647
|
+
def to_s
|
648
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
649
|
+
"<Twilio.Taskrouter.V1.TaskInstance #{values}>"
|
650
|
+
end
|
651
|
+
|
652
|
+
##
|
653
|
+
# Provide a detailed, user friendly representation
|
654
|
+
def inspect
|
655
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
656
|
+
"<Twilio.Taskrouter.V1.TaskInstance #{values}>"
|
657
|
+
end
|
658
|
+
end
|
659
|
+
|
660
|
+
end
|
662
661
|
end
|
663
|
-
end
|
664
662
|
end
|
665
|
-
end
|
666
663
|
end
|
667
|
-
|
668
|
-
|
664
|
+
end
|
665
|
+
|
666
|
+
|