twilio-ruby 5.10.7 → 7.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.dockerignore +1 -0
- data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
- data/.github/workflows/pr-lint.yml +21 -0
- data/.github/workflows/test-and-deploy.yml +147 -0
- data/.gitignore +11 -1
- data/.rubocop.yml +23 -6
- data/.rubocop_todo.yml +147 -73
- data/CHANGES.md +3392 -0
- data/CODE_OF_CONDUCT.md +73 -0
- data/CONTRIBUTING.md +14 -10
- data/Dockerfile +4 -3
- data/Gemfile +5 -8
- data/ISSUE_TEMPLATE.md +17 -13
- data/{LICENSE.md → LICENSE} +2 -2
- data/Makefile +22 -22
- data/PULL_REQUEST_TEMPLATE.md +30 -3
- data/README.md +219 -57
- data/Rakefile +0 -54
- data/UPGRADE.md +21 -0
- data/VERSIONS.md +9 -10
- data/advanced-examples/custom-http-client.md +170 -0
- data/cluster/cluster_oauth_spec.rb +19 -0
- data/cluster/cluster_orgs_spec.rb +40 -0
- data/cluster/cluster_spec.rb +75 -0
- data/examples/examples.rb +1 -1
- data/examples/public_oauth.rb +13 -0
- data/githooks/pre-commit +0 -0
- data/lib/rack/twilio_webhook_authentication.rb +25 -1
- data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
- data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
- data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
- data/lib/twilio-ruby/base/client_base.rb +131 -0
- data/lib/twilio-ruby/credential/auth_type.rb +17 -0
- data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
- data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
- data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
- data/lib/twilio-ruby/framework/request.rb +8 -1
- data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +1 -2
- data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +3 -15
- data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +1 -0
- data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +7 -11
- data/lib/twilio-ruby/http/client_token_manager.rb +28 -0
- data/lib/twilio-ruby/http/http_client.rb +53 -17
- data/lib/twilio-ruby/http/org_token_manager.rb +28 -0
- data/lib/twilio-ruby/http.rb +5 -0
- data/lib/twilio-ruby/jwt/access_token.rb +20 -61
- data/lib/twilio-ruby/jwt/jwt.rb +6 -0
- data/lib/twilio-ruby/jwt/task_router.rb +2 -2
- data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +213 -0
- data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +137 -0
- data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +137 -0
- data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +398 -334
- data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +398 -341
- data/lib/twilio-ruby/rest/accounts/v1/credential.rb +123 -114
- data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +186 -0
- data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +233 -0
- data/lib/twilio-ruby/rest/accounts/v1.rb +64 -29
- data/lib/twilio-ruby/rest/accounts.rb +10 -28
- data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
- data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +375 -364
- data/lib/twilio-ruby/rest/api/v2010/account/address.rb +584 -521
- data/lib/twilio-ruby/rest/api/v2010/account/application.rb +642 -606
- data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +324 -318
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +398 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +398 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +398 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +398 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +398 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +398 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +398 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +442 -0
- data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +150 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +213 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +411 -413
- data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +335 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +521 -485
- data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +885 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +885 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +318 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +170 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +250 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +973 -827
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +686 -576
- data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +472 -450
- data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +506 -477
- data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +447 -399
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +331 -346
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +417 -420
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +547 -503
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +547 -503
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +547 -503
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +868 -865
- data/lib/twilio-ruby/rest/api/v2010/account/key.rb +356 -304
- data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +175 -162
- data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +355 -347
- data/lib/twilio-ruby/rest/api/v2010/account/message.rb +645 -601
- data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +165 -143
- data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +165 -143
- data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +411 -408
- data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +389 -364
- data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +357 -324
- data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +453 -390
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +204 -0
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +386 -366
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +383 -380
- data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +379 -360
- data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +522 -478
- data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +434 -410
- data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +356 -312
- data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +402 -375
- data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +426 -383
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +366 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +366 -0
- 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 +366 -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 +127 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +360 -340
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +360 -340
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +677 -539
- data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +439 -410
- data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +426 -383
- data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +143 -150
- data/lib/twilio-ruby/rest/api/v2010/account/token.rb +179 -158
- data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +379 -348
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +319 -320
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +319 -320
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +319 -323
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +319 -320
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +319 -320
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +319 -320
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +319 -320
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +319 -320
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +386 -397
- data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +512 -492
- data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +114 -104
- data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +180 -167
- data/lib/twilio-ruby/rest/api/v2010/account.rb +1002 -934
- data/lib/twilio-ruby/rest/api/v2010.rb +127 -144
- data/lib/twilio-ruby/rest/api.rb +62 -60
- data/lib/twilio-ruby/rest/api_base.rb +38 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +371 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +371 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +311 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +206 -0
- data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +687 -0
- data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +232 -0
- data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +213 -0
- data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +629 -0
- data/lib/twilio-ruby/rest/assistants/v1/policy.rb +267 -0
- data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +267 -0
- data/lib/twilio-ruby/rest/assistants/v1/session.rb +335 -0
- data/lib/twilio-ruby/rest/assistants/v1/tool.rb +605 -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 +316 -0
- data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +315 -0
- data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +289 -0
- data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +261 -0
- data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +266 -0
- data/lib/twilio-ruby/rest/bulkexports/v1.rb +64 -0
- data/lib/twilio-ruby/rest/bulkexports.rb +25 -0
- data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
- data/lib/twilio-ruby/rest/chat/v1/credential.rb +446 -393
- data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +395 -386
- data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +449 -444
- data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +465 -430
- data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +561 -508
- data/lib/twilio-ruby/rest/chat/v1/service/role.rb +423 -368
- data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +249 -238
- data/lib/twilio-ruby/rest/chat/v1/service/user.rb +492 -448
- data/lib/twilio-ruby/rest/chat/v1/service.rb +888 -914
- data/lib/twilio-ruby/rest/chat/v1.rb +58 -52
- data/lib/twilio-ruby/rest/chat/v2/credential.rb +446 -409
- data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +386 -361
- data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +395 -389
- data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +510 -492
- data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +537 -514
- data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +467 -422
- data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +630 -576
- data/lib/twilio-ruby/rest/chat/v2/service/role.rb +423 -365
- data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +379 -377
- data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +428 -240
- data/lib/twilio-ruby/rest/chat/v2/service/user.rb +534 -477
- data/lib/twilio-ruby/rest/chat/v2/service.rb +791 -740
- data/lib/twilio-ruby/rest/chat/v2.rb +58 -52
- data/lib/twilio-ruby/rest/chat/v3/channel.rb +303 -0
- data/lib/twilio-ruby/rest/chat/v3.rb +71 -0
- data/lib/twilio-ruby/rest/chat.rb +12 -40
- data/lib/twilio-ruby/rest/chat_base.rb +48 -0
- data/lib/twilio-ruby/rest/client.rb +344 -400
- data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +190 -0
- data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +213 -0
- data/lib/twilio-ruby/rest/content/v1/content.rb +974 -0
- data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +255 -0
- data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +269 -0
- data/lib/twilio-ruby/rest/content/v1.rb +61 -0
- data/lib/twilio-ruby/rest/content/v2/content.rb +319 -0
- data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +312 -0
- data/lib/twilio-ruby/rest/content/v2.rb +46 -0
- data/lib/twilio-ruby/rest/content.rb +15 -0
- data/lib/twilio-ruby/rest/content_base.rb +43 -0
- data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +508 -0
- data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +294 -0
- data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +300 -0
- data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +355 -0
- data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +567 -0
- data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +528 -0
- data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +458 -0
- data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +653 -0
- data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +263 -0
- data/lib/twilio-ruby/rest/conversations/v1/credential.rb +461 -0
- data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +316 -0
- data/lib/twilio-ruby/rest/conversations/v1/role.rb +420 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +385 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +347 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +293 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +327 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +366 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +580 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +541 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +471 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +662 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +269 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +321 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +429 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +477 -0
- data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +514 -0
- data/lib/twilio-ruby/rest/conversations/v1/service.rb +525 -0
- data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +472 -0
- data/lib/twilio-ruby/rest/conversations/v1/user.rb +505 -0
- data/lib/twilio-ruby/rest/conversations/v1.rb +142 -0
- data/lib/twilio-ruby/rest/conversations.rb +79 -0
- data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
- data/lib/twilio-ruby/rest/events/v1/event_type.rb +336 -0
- data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +309 -0
- data/lib/twilio-ruby/rest/events/v1/schema.rb +242 -0
- data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +136 -0
- data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +143 -0
- data/lib/twilio-ruby/rest/events/v1/sink.rb +470 -0
- data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +398 -0
- data/lib/twilio-ruby/rest/events/v1/subscription.rb +452 -0
- data/lib/twilio-ruby/rest/events/v1.rb +94 -0
- data/lib/twilio-ruby/rest/events.rb +43 -0
- data/lib/twilio-ruby/rest/events_base.rb +38 -0
- data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +460 -0
- data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +395 -0
- data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +563 -0
- data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +599 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +336 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +232 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +462 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +373 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +458 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +365 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +221 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +161 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +147 -0
- data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +200 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +261 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +365 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +352 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +449 -0
- data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +329 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +408 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +461 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +251 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +400 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +397 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +237 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +343 -0
- data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +260 -0
- data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +192 -0
- data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +414 -0
- data/lib/twilio-ruby/rest/flex_api/v1.rb +320 -0
- data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +339 -0
- data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +155 -0
- data/lib/twilio-ruby/rest/flex_api/v2.rb +77 -0
- data/lib/twilio-ruby/rest/flex_api.rb +73 -0
- data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
- data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +286 -0
- data/lib/twilio-ruby/rest/frontline_api/v1.rb +49 -0
- data/lib/twilio-ruby/rest/frontline_api.rb +15 -0
- data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
- data/lib/twilio-ruby/rest/iam/v1/api_key.rb +280 -0
- data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +226 -0
- data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +181 -0
- data/lib/twilio-ruby/rest/iam/v1/token.rb +186 -0
- data/lib/twilio-ruby/rest/iam/v1.rb +67 -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 +330 -0
- data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +357 -0
- data/lib/twilio-ruby/rest/insights/v1/call/event.rb +280 -0
- data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +272 -0
- data/lib/twilio-ruby/rest/insights/v1/call.rb +275 -0
- data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +545 -0
- data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +498 -0
- data/lib/twilio-ruby/rest/insights/v1/conference.rb +515 -0
- data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +393 -0
- data/lib/twilio-ruby/rest/insights/v1/room.rb +508 -0
- data/lib/twilio-ruby/rest/insights/v1/setting.rb +267 -0
- data/lib/twilio-ruby/rest/insights/v1.rb +91 -0
- data/lib/twilio-ruby/rest/insights.rb +46 -0
- data/lib/twilio-ruby/rest/insights_base.rb +38 -0
- data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +464 -0
- data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +363 -0
- data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +223 -0
- data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +201 -0
- data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +365 -0
- data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +363 -0
- data/lib/twilio-ruby/rest/intelligence/v2/service.rb +534 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +231 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +403 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +265 -0
- data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +538 -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 +446 -393
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +395 -386
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +449 -444
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +465 -430
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +561 -508
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +423 -368
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +249 -238
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +492 -448
- data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +888 -914
- data/lib/twilio-ruby/rest/ip_messaging/v1.rb +58 -52
- data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +446 -409
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +386 -361
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +395 -389
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +510 -492
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +537 -514
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +467 -422
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +630 -576
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +423 -365
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +379 -377
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +420 -240
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +534 -477
- data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +791 -740
- data/lib/twilio-ruby/rest/ip_messaging/v2.rb +58 -52
- data/lib/twilio-ruby/rest/ip_messaging.rb +9 -49
- data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +232 -0
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +213 -0
- data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +617 -0
- data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
- data/lib/twilio-ruby/rest/knowledge.rb +6 -0
- data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
- data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +249 -231
- data/lib/twilio-ruby/rest/lookups/v1.rb +43 -37
- data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +394 -0
- data/lib/twilio-ruby/rest/lookups/v2.rb +49 -0
- data/lib/twilio-ruby/rest/lookups.rb +5 -37
- 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 +316 -0
- data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +343 -0
- data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +363 -0
- data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +162 -0
- data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +482 -0
- data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +221 -0
- data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +325 -0
- data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +146 -0
- data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -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 +143 -0
- data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +379 -0
- data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +524 -0
- data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +196 -0
- data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +295 -0
- data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +300 -0
- data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +243 -0
- data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +171 -0
- data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +223 -0
- data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +201 -0
- data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +243 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +370 -338
- data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +383 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +386 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +377 -342
- data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +377 -337
- data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +637 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +142 -0
- data/lib/twilio-ruby/rest/messaging/v1/service.rb +819 -620
- data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +820 -0
- data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +130 -0
- data/lib/twilio-ruby/rest/messaging/v1.rb +203 -37
- data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +492 -0
- data/lib/twilio-ruby/rest/messaging/v2.rb +49 -0
- data/lib/twilio-ruby/rest/messaging.rb +53 -25
- data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
- data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +382 -0
- data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +375 -0
- data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +213 -0
- data/lib/twilio-ruby/rest/microvisor/v1/app.rb +361 -0
- data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +398 -0
- data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +391 -0
- data/lib/twilio-ruby/rest/microvisor/v1/device.rb +441 -0
- data/lib/twilio-ruby/rest/microvisor/v1.rb +94 -0
- data/lib/twilio-ruby/rest/microvisor.rb +24 -0
- data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
- data/lib/twilio-ruby/rest/monitor/v1/alert.rb +409 -409
- data/lib/twilio-ruby/rest/monitor/v1/event.rb +392 -365
- data/lib/twilio-ruby/rest/monitor/v1.rb +58 -52
- data/lib/twilio-ruby/rest/monitor.rb +7 -36
- data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
- data/lib/twilio-ruby/rest/notify/v1/credential.rb +446 -408
- data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +456 -447
- data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +321 -361
- data/lib/twilio-ruby/rest/notify/v1/service.rb +651 -635
- data/lib/twilio-ruby/rest/notify/v1.rb +58 -52
- data/lib/twilio-ruby/rest/notify.rb +7 -36
- data/lib/twilio-ruby/rest/notify_base.rb +38 -0
- data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +249 -0
- data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +132 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +304 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +328 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +260 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +153 -0
- data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +170 -0
- data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +280 -0
- data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +165 -0
- data/lib/twilio-ruby/rest/numbers/v1.rb +155 -0
- data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +347 -0
- data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +421 -0
- data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +274 -0
- data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +281 -0
- data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +613 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +295 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +351 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +364 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +208 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +637 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +424 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +307 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +356 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +452 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +307 -0
- data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +186 -0
- data/lib/twilio-ruby/rest/numbers/v2.rb +100 -0
- data/lib/twilio-ruby/rest/numbers.rb +12 -0
- data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
- data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +148 -0
- data/lib/twilio-ruby/rest/oauth/v1/token.rb +186 -0
- data/lib/twilio-ruby/rest/oauth/v1.rb +46 -0
- data/lib/twilio-ruby/rest/oauth.rb +6 -0
- 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 +375 -396
- data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +467 -452
- data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +635 -636
- data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +58 -54
- data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +310 -297
- data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +334 -313
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +357 -333
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +454 -412
- data/lib/twilio-ruby/rest/preview/marketplace.rb +58 -54
- data/lib/twilio-ruby/rest/preview/wireless/command.rb +402 -371
- data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +473 -409
- data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +241 -206
- data/lib/twilio-ruby/rest/preview/wireless/sim.rb +589 -529
- data/lib/twilio-ruby/rest/preview/wireless.rb +73 -67
- data/lib/twilio-ruby/rest/preview.rb +15 -143
- data/lib/twilio-ruby/rest/preview_base.rb +48 -0
- data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +148 -0
- data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +186 -0
- data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
- data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +309 -0
- data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +375 -0
- data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +530 -0
- data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +277 -0
- data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
- data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
- data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
- data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +308 -273
- data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +109 -118
- data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +301 -266
- data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +109 -118
- data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +308 -273
- data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +228 -197
- data/lib/twilio-ruby/rest/pricing/v1/voice.rb +123 -134
- data/lib/twilio-ruby/rest/pricing/v1.rb +46 -43
- data/lib/twilio-ruby/rest/pricing/v2/country.rb +309 -0
- data/lib/twilio-ruby/rest/pricing/v2/number.rb +247 -0
- data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +314 -0
- data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +252 -0
- data/lib/twilio-ruby/rest/pricing/v2/voice.rb +130 -0
- data/lib/twilio-ruby/rest/pricing/v2.rb +70 -0
- data/lib/twilio-ruby/rest/pricing.rb +24 -33
- data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
- data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +444 -357
- data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +421 -441
- data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +445 -449
- data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +440 -449
- data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +547 -528
- data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +424 -339
- data/lib/twilio-ruby/rest/proxy/v1/service.rb +584 -535
- data/lib/twilio-ruby/rest/proxy/v1.rb +43 -37
- data/lib/twilio-ruby/rest/proxy.rb +4 -35
- data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
- data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +281 -0
- data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +281 -0
- data/lib/twilio-ruby/rest/routes/v2/trunk.rb +281 -0
- data/lib/twilio-ruby/rest/routes/v2.rb +79 -0
- data/lib/twilio-ruby/rest/routes.rb +32 -0
- data/lib/twilio-ruby/rest/routes_base.rb +38 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +334 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +443 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +224 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +432 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +364 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +380 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +438 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +481 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +235 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +361 -0
- data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +443 -0
- data/lib/twilio-ruby/rest/serverless/v1/service.rb +557 -0
- data/lib/twilio-ruby/rest/serverless/v1.rb +49 -0
- data/lib/twilio-ruby/rest/serverless.rb +15 -0
- data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
- data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +214 -207
- data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +229 -226
- data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +379 -365
- data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +443 -400
- data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +214 -207
- data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +229 -226
- data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +379 -370
- data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +495 -404
- data/lib/twilio-ruby/rest/studio/v1/flow.rb +395 -365
- data/lib/twilio-ruby/rest/studio/v1.rb +43 -37
- data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +224 -0
- data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +235 -0
- data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +389 -0
- data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +494 -0
- data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +358 -0
- data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +245 -0
- data/lib/twilio-ruby/rest/studio/v2/flow.rb +555 -0
- data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +146 -0
- data/lib/twilio-ruby/rest/studio/v2.rb +55 -0
- data/lib/twilio-ruby/rest/studio.rb +11 -35
- data/lib/twilio-ruby/rest/studio_base.rb +43 -0
- data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +417 -0
- data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +502 -0
- data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +422 -0
- data/lib/twilio-ruby/rest/supersim/v1/network.rb +320 -0
- data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +362 -0
- data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +410 -0
- data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +260 -0
- data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +253 -0
- data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +211 -0
- data/lib/twilio-ruby/rest/supersim/v1/sim.rb +490 -0
- data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +382 -0
- data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +317 -0
- data/lib/twilio-ruby/rest/supersim/v1.rb +151 -0
- data/lib/twilio-ruby/rest/supersim.rb +88 -0
- data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
- data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +397 -381
- data/lib/twilio-ruby/rest/sync/v1/service/document.rb +482 -428
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +491 -443
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +397 -381
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +497 -442
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +494 -444
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +397 -381
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +497 -442
- data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +147 -142
- data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +446 -411
- data/lib/twilio-ruby/rest/sync/v1/service.rb +602 -514
- data/lib/twilio-ruby/rest/sync/v1.rb +43 -37
- data/lib/twilio-ruby/rest/sync.rb +4 -35
- data/lib/twilio-ruby/rest/sync_base.rb +38 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +432 -390
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +453 -419
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +721 -577
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +677 -621
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +436 -295
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +168 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +367 -356
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +270 -229
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +238 -234
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +244 -268
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +601 -570
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +703 -575
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +406 -392
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +243 -231
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +289 -262
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +223 -186
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +259 -232
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +648 -606
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +367 -363
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +253 -226
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +238 -234
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +550 -510
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +361 -350
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +242 -200
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +249 -230
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +747 -719
- data/lib/twilio-ruby/rest/taskrouter/v1.rb +43 -37
- data/lib/twilio-ruby/rest/taskrouter.rb +4 -35
- data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
- data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +363 -322
- data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +363 -323
- data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +467 -429
- data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +496 -449
- data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +244 -0
- data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +650 -600
- data/lib/twilio-ruby/rest/trunking/v1.rb +43 -37
- data/lib/twilio-ruby/rest/trunking.rb +4 -36
- data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
- data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +257 -0
- data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +365 -0
- data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +224 -0
- data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +384 -0
- data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +368 -0
- data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +356 -0
- data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +568 -0
- data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +419 -0
- data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +302 -0
- data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +295 -0
- data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +433 -0
- data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +302 -0
- data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +384 -0
- data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +368 -0
- data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +356 -0
- data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +568 -0
- data/lib/twilio-ruby/rest/trusthub/v1.rb +175 -0
- data/lib/twilio-ruby/rest/trusthub.rb +74 -0
- data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
- data/lib/twilio-ruby/rest/verify/v2/form.rb +208 -0
- data/lib/twilio-ruby/rest/verify/v2/safelist.rb +246 -0
- data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +292 -0
- data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +205 -0
- data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +530 -0
- data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +478 -0
- data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +276 -0
- data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +449 -0
- data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +412 -0
- data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +438 -0
- data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +453 -0
- data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +409 -0
- data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +235 -0
- data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +480 -0
- data/lib/twilio-ruby/rest/verify/v2/service.rb +843 -0
- data/lib/twilio-ruby/rest/verify/v2/template.rb +233 -0
- data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +392 -0
- data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +254 -0
- data/lib/twilio-ruby/rest/verify/v2.rb +106 -0
- data/lib/twilio-ruby/rest/verify.rb +58 -0
- data/lib/twilio-ruby/rest/verify_base.rb +38 -0
- data/lib/twilio-ruby/rest/video/v1/composition.rb +498 -491
- data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +561 -0
- data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +295 -271
- data/lib/twilio-ruby/rest/video/v1/recording.rb +441 -387
- data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +295 -271
- data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +266 -0
- data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +341 -0
- data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +194 -0
- data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +348 -0
- data/lib/twilio-ruby/rest/video/v1/room/participant.rb +514 -0
- data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +183 -0
- data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +437 -0
- data/lib/twilio-ruby/rest/video/v1/room.rb +635 -512
- data/lib/twilio-ruby/rest/video/v1.rb +100 -83
- data/lib/twilio-ruby/rest/video.rb +22 -40
- data/lib/twilio-ruby/rest/video_base.rb +38 -0
- data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +171 -0
- data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +537 -0
- data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +473 -0
- data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +427 -0
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +149 -0
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +206 -0
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +390 -0
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +235 -0
- data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +131 -0
- data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +413 -0
- data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +396 -0
- data/lib/twilio-ruby/rest/voice/v1.rb +137 -0
- data/lib/twilio-ruby/rest/voice.rb +61 -0
- data/lib/twilio-ruby/rest/voice_base.rb +38 -0
- data/lib/twilio-ruby/rest/wireless/v1/command.rb +429 -361
- data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +493 -439
- data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +303 -288
- data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +244 -240
- data/lib/twilio-ruby/rest/wireless/v1/sim.rb +655 -611
- data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +238 -0
- data/lib/twilio-ruby/rest/wireless/v1.rb +79 -67
- data/lib/twilio-ruby/rest/wireless.rb +11 -34
- data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
- data/lib/twilio-ruby/rest.rb +14 -0
- data/lib/twilio-ruby/security/request_validator.rb +102 -8
- data/lib/twilio-ruby/twiml/fax_response.rb +6 -3
- data/lib/twilio-ruby/twiml/messaging_response.rb +2 -2
- data/lib/twilio-ruby/twiml/twiml.rb +12 -1
- data/lib/twilio-ruby/twiml/voice_response.rb +1705 -81
- data/lib/twilio-ruby/util/configuration.rb +22 -5
- data/lib/twilio-ruby/version.rb +1 -1
- data/lib/twilio-ruby.rb +9 -25
- data/sonar-project.properties +13 -0
- data/twilio-ruby.gemspec +15 -10
- metadata +542 -646
- data/.travis.yml +0 -31
- 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 -509
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -398
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -506
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -398
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -398
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -506
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -398
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -459
- data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -296
- data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
- data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -315
- data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -530
- data/lib/twilio-ruby/rest/fax/v1.rb +0 -43
- data/lib/twilio-ruby/rest/fax.rb +0 -46
- data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +0 -225
- data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +0 -262
- data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +0 -438
- data/lib/twilio-ruby/rest/notify/v1/service/user.rb +0 -438
- data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -185
- data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +0 -182
- data/lib/twilio-ruby/rest/preview/acc_security/service.rb +0 -388
- data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -43
- data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -211
- data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -203
- data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -227
- data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -58
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -392
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -375
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -435
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -386
- data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -479
- data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -44
- data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +0 -347
- data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +0 -437
- data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +0 -455
- data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +0 -514
- data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +0 -497
- data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +0 -342
- data/lib/twilio-ruby/rest/preview/proxy/service.rb +0 -464
- data/lib/twilio-ruby/rest/preview/proxy.rb +0 -43
- data/lib/twilio-ruby/rest/preview/studio/flow/engagement/step.rb +0 -350
- data/lib/twilio-ruby/rest/preview/studio/flow/engagement.rb +0 -372
- data/lib/twilio-ruby/rest/preview/studio/flow.rb +0 -355
- data/lib/twilio-ruby/rest/preview/studio.rb +0 -43
- data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -390
- data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -413
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -421
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -390
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -411
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -418
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -390
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -411
- data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -472
- data/lib/twilio-ruby/rest/preview/sync.rb +0 -43
- data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -392
- data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -417
- data/lib/twilio-ruby/rest/preview/understand/assistant/intent/field.rb +0 -379
- data/lib/twilio-ruby/rest/preview/understand/assistant/intent/sample.rb +0 -438
- data/lib/twilio-ruby/rest/preview/understand/assistant/intent.rb +0 -447
- data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -390
- data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -443
- data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -562
- data/lib/twilio-ruby/rest/preview/understand.rb +0 -43
- data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -388
- data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -333
- data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -313
- data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -456
- data/spec/framework/request_spec.rb +0 -36
- data/spec/framework/serialize_spec.rb +0 -80
- data/spec/holodeck/holodeck.rb +0 -61
- data/spec/holodeck/hologram.rb +0 -4
- data/spec/http/http_client_spec.rb +0 -122
- data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -226
- data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
- data/spec/integration/accounts/v1/credential_spec.rb +0 -12
- data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -107
- data/spec/integration/api/v2010/account/address_spec.rb +0 -269
- data/spec/integration/api/v2010/account/application_spec.rb +0 -280
- data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -139
- data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -103
- data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -103
- data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -102
- data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -103
- data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -103
- data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -102
- data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -103
- data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -130
- data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -139
- data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -151
- data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -181
- data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -291
- data/spec/integration/api/v2010/account/call_spec.rb +0 -314
- data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -282
- data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -240
- data/spec/integration/api/v2010/account/conference_spec.rb +0 -179
- data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -179
- data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -137
- data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
- data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -185
- data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -185
- data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -185
- data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -341
- data/spec/integration/api/v2010/account/key_spec.rb +0 -180
- data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -50
- data/spec/integration/api/v2010/account/message/media_spec.rb +0 -164
- data/spec/integration/api/v2010/account/message_spec.rb +0 -290
- data/spec/integration/api/v2010/account/new_key_spec.rb +0 -47
- data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -47
- data/spec/integration/api/v2010/account/notification_spec.rb +0 -174
- data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -195
- data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -169
- data/spec/integration/api/v2010/account/queue_spec.rb +0 -242
- data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -177
- data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -168
- data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -176
- data/spec/integration/api/v2010/account/recording_spec.rb +0 -189
- data/spec/integration/api/v2010/account/short_code_spec.rb +0 -182
- data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -180
- data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -256
- data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -244
- data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -210
- data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -220
- data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -287
- data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
- data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -254
- data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
- data/spec/integration/api/v2010/account/token_spec.rb +0 -58
- data/spec/integration/api/v2010/account/transcription_spec.rb +0 -169
- data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
- data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
- data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -285
- data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
- data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
- data/spec/integration/api/v2010/account_spec.rb +0 -272
- data/spec/integration/chat/v1/credential_spec.rb +0 -223
- data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
- data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
- data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
- data/spec/integration/chat/v1/service/channel_spec.rb +0 -277
- data/spec/integration/chat/v1/service/role_spec.rb +0 -263
- data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -94
- data/spec/integration/chat/v1/service/user_spec.rb +0 -266
- data/spec/integration/chat/v1/service_spec.rb +0 -299
- data/spec/integration/chat/v2/credential_spec.rb +0 -223
- data/spec/integration/chat/v2/service/binding_spec.rb +0 -177
- data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
- data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -257
- data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -405
- data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -307
- data/spec/integration/chat/v2/service/channel_spec.rb +0 -281
- data/spec/integration/chat/v2/service/role_spec.rb +0 -263
- data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -180
- data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -94
- data/spec/integration/chat/v2/service/user_spec.rb +0 -270
- data/spec/integration/chat/v2/service_spec.rb +0 -354
- data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -128
- data/spec/integration/fax/v1/fax_spec.rb +0 -271
- data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -223
- data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
- data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -284
- data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -294
- data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -277
- data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -263
- data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -94
- data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -266
- data/spec/integration/ip_messaging/v1/service_spec.rb +0 -299
- data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
- data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -177
- data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
- data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -257
- data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -405
- data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -307
- data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -281
- data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
- data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -180
- data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -94
- data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
- data/spec/integration/ip_messaging/v2/service_spec.rb +0 -354
- data/spec/integration/lookups/v1/phone_number_spec.rb +0 -71
- data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
- data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
- data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
- data/spec/integration/messaging/v1/service_spec.rb +0 -263
- data/spec/integration/monitor/v1/alert_spec.rb +0 -163
- data/spec/integration/monitor/v1/event_spec.rb +0 -150
- data/spec/integration/notify/v1/credential_spec.rb +0 -223
- data/spec/integration/notify/v1/service/binding_spec.rb +0 -225
- data/spec/integration/notify/v1/service/notification_spec.rb +0 -99
- data/spec/integration/notify/v1/service/segment_spec.rb +0 -86
- data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +0 -118
- data/spec/integration/notify/v1/service/user/user_binding_spec.rb +0 -268
- data/spec/integration/notify/v1/service/user_spec.rb +0 -213
- data/spec/integration/notify/v1/service_spec.rb +0 -286
- data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -52
- data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -52
- data/spec/integration/preview/acc_security/service_spec.rb +0 -185
- data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -58
- data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
- data/spec/integration/preview/bulk_exports/export_spec.rb +0 -45
- data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -238
- data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -233
- data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -249
- data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -237
- data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -246
- data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -111
- data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -227
- data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -393
- data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -123
- data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -144
- data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
- data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -254
- data/spec/integration/preview/proxy/service/phone_number_spec.rb +0 -173
- data/spec/integration/preview/proxy/service/session/interaction_spec.rb +0 -106
- data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +0 -166
- data/spec/integration/preview/proxy/service/session/participant_spec.rb +0 -226
- data/spec/integration/preview/proxy/service/session_spec.rb +0 -218
- data/spec/integration/preview/proxy/service/short_code_spec.rb +0 -173
- data/spec/integration/preview/proxy/service_spec.rb +0 -202
- data/spec/integration/preview/studio/flow/engagement/step_spec.rb +0 -98
- data/spec/integration/preview/studio/flow/engagement_spec.rb +0 -145
- data/spec/integration/preview/studio/flow_spec.rb +0 -117
- data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -204
- data/spec/integration/preview/sync/service/document_spec.rb +0 -254
- data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -254
- data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -204
- data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -209
- data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -254
- data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -204
- data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -209
- data/spec/integration/preview/sync/service_spec.rb +0 -246
- data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -210
- data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -246
- data/spec/integration/preview/understand/assistant/intent/field_spec.rb +0 -207
- data/spec/integration/preview/understand/assistant/intent/sample_spec.rb +0 -253
- data/spec/integration/preview/understand/assistant/intent_spec.rb +0 -250
- data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -241
- data/spec/integration/preview/understand/assistant/query_spec.rb +0 -306
- data/spec/integration/preview/understand/assistant_spec.rb +0 -266
- data/spec/integration/preview/wireless/command_spec.rb +0 -169
- data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -262
- data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -51
- data/spec/integration/preview/wireless/sim_spec.rb +0 -210
- data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -139
- data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
- data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -130
- data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
- data/spec/integration/pricing/v1/voice/country_spec.rb +0 -140
- data/spec/integration/pricing/v1/voice/number_spec.rb +0 -56
- data/spec/integration/pricing/v1/voice_spec.rb +0 -12
- data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -184
- data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -136
- data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -166
- data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -181
- data/spec/integration/proxy/v1/service/session_spec.rb +0 -230
- data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -182
- data/spec/integration/proxy/v1/service_spec.rb +0 -215
- data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -51
- data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -54
- data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -101
- data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -171
- data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -51
- data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -54
- data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -101
- data/spec/integration/studio/v1/flow/execution_spec.rb +0 -171
- data/spec/integration/studio/v1/flow_spec.rb +0 -117
- data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -204
- data/spec/integration/sync/v1/service/document_spec.rb +0 -257
- data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
- data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -204
- data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -257
- data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
- data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -204
- data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -257
- data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
- data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -249
- data/spec/integration/sync/v1/service_spec.rb +0 -254
- data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -236
- data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -159
- data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -194
- data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -129
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -96
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -81
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -108
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -146
- data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -298
- data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -326
- data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -194
- data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -188
- data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -92
- data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -89
- data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -70
- data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -116
- data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -294
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -97
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -71
- data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -272
- data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -94
- data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
- data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -105
- data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -295
- data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -192
- data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -192
- data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -252
- data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -267
- data/spec/integration/trunking/v1/trunk_spec.rb +0 -282
- data/spec/integration/video/v1/composition_settings_spec.rb +0 -86
- data/spec/integration/video/v1/composition_spec.rb +0 -325
- data/spec/integration/video/v1/recording_settings_spec.rb +0 -86
- data/spec/integration/video/v1/recording_spec.rb +0 -177
- data/spec/integration/video/v1/room/recording_spec.rb +0 -186
- data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -96
- data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -134
- data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
- data/spec/integration/video/v1/room_spec.rb +0 -257
- data/spec/integration/wireless/v1/command_spec.rb +0 -166
- data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -270
- data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -87
- data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -67
- data/spec/integration/wireless/v1/sim_spec.rb +0 -216
- data/spec/jwt/access_token_spec.rb +0 -151
- data/spec/jwt/client_capability_spec.rb +0 -104
- data/spec/jwt/task_router_spec.rb +0 -172
- data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
- data/spec/rest/client_spec.rb +0 -61
- data/spec/security/request_validator_spec.rb +0 -113
- data/spec/spec_helper.rb +0 -38
- data/spec/support/fakeweb.rb +0 -2
- data/spec/twilio_spec.rb +0 -15
- data/spec/twiml/messaging_response_spec.rb +0 -235
- data/spec/twiml/voice_response_spec.rb +0 -807
- data/spec/util/configuration_spec.rb +0 -15
- data/spec/util/url_encode_spec.rb +0 -12
- /data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
- /data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
- /data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
@@ -3,7 +3,7 @@
|
|
3
3
|
# \ / _ _ _| _ _
|
4
4
|
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
5
5
|
# / /
|
6
|
-
#
|
6
|
+
#
|
7
7
|
# frozen_string_literal: true
|
8
8
|
|
9
9
|
module Twilio
|
@@ -18,6 +18,18 @@ module Twilio
|
|
18
18
|
yield(self) if block_given?
|
19
19
|
end
|
20
20
|
|
21
|
+
##
|
22
|
+
# Create a new <Connect> element
|
23
|
+
# action:: Action URL
|
24
|
+
# method:: Action URL method
|
25
|
+
# keyword_args:: additional attributes
|
26
|
+
def connect(action: nil, method: nil, **keyword_args)
|
27
|
+
connect = Connect.new(action: action, method: method, **keyword_args)
|
28
|
+
|
29
|
+
yield(connect) if block_given?
|
30
|
+
append(connect)
|
31
|
+
end
|
32
|
+
|
21
33
|
##
|
22
34
|
# Create a new <Dial> element
|
23
35
|
# number:: Phone number to dial
|
@@ -34,9 +46,14 @@ module Twilio
|
|
34
46
|
# recording_status_callback_event:: Recording status callback events
|
35
47
|
# answer_on_bridge:: Preserve the ringing behavior of the inbound call until the Dialed call picks up
|
36
48
|
# ring_tone:: Ringtone allows you to override the ringback tone that Twilio will play back to the caller while executing the Dial
|
49
|
+
# recording_track:: To indicate which audio track should be recorded
|
50
|
+
# sequential:: Used to determine if child TwiML nouns should be dialed in order, one after the other (sequential) or dial all at once (parallel). Default is false, parallel
|
51
|
+
# refer_url:: Webhook that will receive future SIP REFER requests
|
52
|
+
# refer_method:: The HTTP method to use for the refer Webhook
|
53
|
+
# events:: Subscription to events
|
37
54
|
# keyword_args:: additional attributes
|
38
|
-
def dial(number: nil, action: nil, method: nil, timeout: nil, hangup_on_star: nil, time_limit: nil, caller_id: nil, record: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, answer_on_bridge: nil, ring_tone: nil, **keyword_args)
|
39
|
-
dial = Dial.new(number: number, action: action, method: method, timeout: timeout, hangup_on_star: hangup_on_star, time_limit: time_limit, caller_id: caller_id, record: record, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, answer_on_bridge: answer_on_bridge, ring_tone: ring_tone, **keyword_args)
|
55
|
+
def dial(number: nil, action: nil, method: nil, timeout: nil, hangup_on_star: nil, time_limit: nil, caller_id: nil, record: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, answer_on_bridge: nil, ring_tone: nil, recording_track: nil, sequential: nil, refer_url: nil, refer_method: nil, events: nil, **keyword_args)
|
56
|
+
dial = Dial.new(number: number, action: action, method: method, timeout: timeout, hangup_on_star: hangup_on_star, time_limit: time_limit, caller_id: caller_id, record: record, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, answer_on_bridge: answer_on_bridge, ring_tone: ring_tone, recording_track: recording_track, sequential: sequential, refer_url: refer_url, refer_method: refer_method, events: events, **keyword_args)
|
40
57
|
|
41
58
|
yield(dial) if block_given?
|
42
59
|
append(dial)
|
@@ -53,13 +70,14 @@ module Twilio
|
|
53
70
|
# Create a new <Enqueue> element
|
54
71
|
# name:: Friendly name
|
55
72
|
# action:: Action URL
|
73
|
+
# max_queue_size:: Maximum size of queue
|
56
74
|
# method:: Action URL method
|
57
75
|
# wait_url:: Wait URL
|
58
76
|
# wait_url_method:: Wait URL method
|
59
77
|
# workflow_sid:: TaskRouter Workflow SID
|
60
78
|
# keyword_args:: additional attributes
|
61
|
-
def enqueue(name: nil, action: nil, method: nil, wait_url: nil, wait_url_method: nil, workflow_sid: nil, **keyword_args)
|
62
|
-
enqueue = Enqueue.new(name: name, action: action, method: method, wait_url: wait_url, wait_url_method: wait_url_method, workflow_sid: workflow_sid, **keyword_args)
|
79
|
+
def enqueue(name: nil, action: nil, max_queue_size: nil, method: nil, wait_url: nil, wait_url_method: nil, workflow_sid: nil, **keyword_args)
|
80
|
+
enqueue = Enqueue.new(name: name, action: action, max_queue_size: max_queue_size, method: method, wait_url: wait_url, wait_url_method: wait_url_method, workflow_sid: workflow_sid, **keyword_args)
|
63
81
|
|
64
82
|
yield(enqueue) if block_given?
|
65
83
|
append(enqueue)
|
@@ -81,9 +99,13 @@ module Twilio
|
|
81
99
|
# language:: Language to use
|
82
100
|
# hints:: Speech recognition hints
|
83
101
|
# barge_in:: Stop playing media upon speech
|
102
|
+
# debug:: Allow debug for gather
|
103
|
+
# action_on_empty_result:: Force webhook to the action URL event if there is no input
|
104
|
+
# speech_model:: Specify the model that is best suited for your use case
|
105
|
+
# enhanced:: Use enhanced speech model
|
84
106
|
# keyword_args:: additional attributes
|
85
|
-
def gather(input: nil, action: nil, method: nil, timeout: nil, speech_timeout: nil, max_speech_time: nil, profanity_filter: nil, finish_on_key: nil, num_digits: nil, partial_result_callback: nil, partial_result_callback_method: nil, language: nil, hints: nil, barge_in: nil, **keyword_args)
|
86
|
-
gather = Gather.new(input: input, action: action, method: method, timeout: timeout, speech_timeout: speech_timeout, max_speech_time: max_speech_time, profanity_filter: profanity_filter, finish_on_key: finish_on_key, num_digits: num_digits, partial_result_callback: partial_result_callback, partial_result_callback_method: partial_result_callback_method, language: language, hints: hints, barge_in: barge_in, **keyword_args)
|
107
|
+
def gather(input: nil, action: nil, method: nil, timeout: nil, speech_timeout: nil, max_speech_time: nil, profanity_filter: nil, finish_on_key: nil, num_digits: nil, partial_result_callback: nil, partial_result_callback_method: nil, language: nil, hints: nil, barge_in: nil, debug: nil, action_on_empty_result: nil, speech_model: nil, enhanced: nil, **keyword_args)
|
108
|
+
gather = Gather.new(input: input, action: action, method: method, timeout: timeout, speech_timeout: speech_timeout, max_speech_time: max_speech_time, profanity_filter: profanity_filter, finish_on_key: finish_on_key, num_digits: num_digits, partial_result_callback: partial_result_callback, partial_result_callback_method: partial_result_callback_method, language: language, hints: hints, barge_in: barge_in, debug: debug, action_on_empty_result: action_on_empty_result, speech_model: speech_model, enhanced: enhanced, **keyword_args)
|
87
109
|
|
88
110
|
yield(gather) if block_given?
|
89
111
|
append(gather)
|
@@ -93,7 +115,10 @@ module Twilio
|
|
93
115
|
# Create a new <Hangup> element
|
94
116
|
# keyword_args:: additional attributes
|
95
117
|
def hangup(**keyword_args)
|
96
|
-
|
118
|
+
hangup = Hangup.new(**keyword_args)
|
119
|
+
|
120
|
+
yield(hangup) if block_given?
|
121
|
+
append(hangup)
|
97
122
|
end
|
98
123
|
|
99
124
|
##
|
@@ -144,72 +169,1288 @@ module Twilio
|
|
144
169
|
# trim:: Trim the recording
|
145
170
|
# recording_status_callback:: Status callback URL
|
146
171
|
# recording_status_callback_method:: Status callback URL method
|
172
|
+
# recording_status_callback_event:: Recording status callback events
|
147
173
|
# transcribe:: Transcribe the recording
|
148
174
|
# transcribe_callback:: Transcribe callback URL
|
149
175
|
# keyword_args:: additional attributes
|
150
|
-
def record(action: nil, method: nil, timeout: nil, finish_on_key: nil, max_length: nil, play_beep: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, transcribe: nil, transcribe_callback: nil, **keyword_args)
|
151
|
-
append(Record.new(action: action, method: method, timeout: timeout, finish_on_key: finish_on_key, max_length: max_length, play_beep: play_beep, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, transcribe: transcribe, transcribe_callback: transcribe_callback, **keyword_args))
|
176
|
+
def record(action: nil, method: nil, timeout: nil, finish_on_key: nil, max_length: nil, play_beep: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, transcribe: nil, transcribe_callback: nil, **keyword_args)
|
177
|
+
append(Record.new(action: action, method: method, timeout: timeout, finish_on_key: finish_on_key, max_length: max_length, play_beep: play_beep, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, transcribe: transcribe, transcribe_callback: transcribe_callback, **keyword_args))
|
178
|
+
end
|
179
|
+
|
180
|
+
##
|
181
|
+
# Create a new <Redirect> element
|
182
|
+
# url:: Redirect URL
|
183
|
+
# method:: Redirect URL method
|
184
|
+
# keyword_args:: additional attributes
|
185
|
+
def redirect(url, method: nil, **keyword_args)
|
186
|
+
append(Redirect.new(url, method: method, **keyword_args))
|
187
|
+
end
|
188
|
+
|
189
|
+
##
|
190
|
+
# Create a new <Reject> element
|
191
|
+
# reason:: Rejection reason
|
192
|
+
# keyword_args:: additional attributes
|
193
|
+
def reject(reason: nil, **keyword_args)
|
194
|
+
reject = Reject.new(reason: reason, **keyword_args)
|
195
|
+
|
196
|
+
yield(reject) if block_given?
|
197
|
+
append(reject)
|
198
|
+
end
|
199
|
+
|
200
|
+
##
|
201
|
+
# Create a new <Say> element
|
202
|
+
# message:: Message to say
|
203
|
+
# voice:: Voice to use
|
204
|
+
# loop:: Times to loop message
|
205
|
+
# language:: Message language
|
206
|
+
# keyword_args:: additional attributes
|
207
|
+
def say(message: nil, voice: nil, loop: nil, language: nil, **keyword_args)
|
208
|
+
say = Say.new(message: message, voice: voice, loop: loop, language: language, **keyword_args)
|
209
|
+
|
210
|
+
yield(say) if block_given?
|
211
|
+
append(say)
|
212
|
+
end
|
213
|
+
|
214
|
+
##
|
215
|
+
# Create a new <Sms> element
|
216
|
+
# message:: Message body
|
217
|
+
# to:: Number to send message to
|
218
|
+
# from:: Number to send message from
|
219
|
+
# action:: Action URL
|
220
|
+
# method:: Action URL method
|
221
|
+
# status_callback:: Status callback URL
|
222
|
+
# keyword_args:: additional attributes
|
223
|
+
def sms(message, to: nil, from: nil, action: nil, method: nil, status_callback: nil, **keyword_args)
|
224
|
+
append(Sms.new(message, to: to, from: from, action: action, method: method, status_callback: status_callback, **keyword_args))
|
225
|
+
end
|
226
|
+
|
227
|
+
##
|
228
|
+
# Create a new <Pay> element
|
229
|
+
# input:: Input type Twilio should accept
|
230
|
+
# action:: Action URL
|
231
|
+
# bank_account_type:: Bank account type for ach transactions. If set, payment method attribute must be provided and value should be set to ach-debit. defaults to consumer-checking
|
232
|
+
# status_callback:: Status callback URL
|
233
|
+
# status_callback_method:: Status callback method
|
234
|
+
# timeout:: Time to wait to gather input
|
235
|
+
# max_attempts:: Maximum number of allowed retries when gathering input
|
236
|
+
# security_code:: Prompt for security code
|
237
|
+
# postal_code:: Prompt for postal code and it should be true/false or default postal code
|
238
|
+
# min_postal_code_length:: Prompt for minimum postal code length
|
239
|
+
# payment_connector:: Unique name for payment connector
|
240
|
+
# payment_method:: Payment method to be used. defaults to credit-card
|
241
|
+
# token_type:: Type of token
|
242
|
+
# charge_amount:: Amount to process. If value is greater than 0 then make the payment else create a payment token
|
243
|
+
# currency:: Currency of the amount attribute
|
244
|
+
# description:: Details regarding the payment
|
245
|
+
# valid_card_types:: Comma separated accepted card types
|
246
|
+
# language:: Language to use
|
247
|
+
# keyword_args:: additional attributes
|
248
|
+
def pay(input: nil, action: nil, bank_account_type: nil, status_callback: nil, status_callback_method: nil, timeout: nil, max_attempts: nil, security_code: nil, postal_code: nil, min_postal_code_length: nil, payment_connector: nil, payment_method: nil, token_type: nil, charge_amount: nil, currency: nil, description: nil, valid_card_types: nil, language: nil, **keyword_args)
|
249
|
+
pay = Pay.new(input: input, action: action, bank_account_type: bank_account_type, status_callback: status_callback, status_callback_method: status_callback_method, timeout: timeout, max_attempts: max_attempts, security_code: security_code, postal_code: postal_code, min_postal_code_length: min_postal_code_length, payment_connector: payment_connector, payment_method: payment_method, token_type: token_type, charge_amount: charge_amount, currency: currency, description: description, valid_card_types: valid_card_types, language: language, **keyword_args)
|
250
|
+
|
251
|
+
yield(pay) if block_given?
|
252
|
+
append(pay)
|
253
|
+
end
|
254
|
+
|
255
|
+
##
|
256
|
+
# Create a new <Prompt> element
|
257
|
+
# for_:: Name of the payment source data element
|
258
|
+
# error_type:: Type of error
|
259
|
+
# card_type:: Type of the credit card
|
260
|
+
# attempt:: Current attempt count
|
261
|
+
# require_matching_inputs:: Require customer to input requested information twice and verify matching.
|
262
|
+
# keyword_args:: additional attributes
|
263
|
+
def prompt(for_: nil, error_type: nil, card_type: nil, attempt: nil, require_matching_inputs: nil, **keyword_args)
|
264
|
+
prompt = Prompt.new(for_: for_, error_type: error_type, card_type: card_type, attempt: attempt, require_matching_inputs: require_matching_inputs, **keyword_args)
|
265
|
+
|
266
|
+
yield(prompt) if block_given?
|
267
|
+
append(prompt)
|
268
|
+
end
|
269
|
+
|
270
|
+
##
|
271
|
+
# Create a new <Start> element
|
272
|
+
# action:: Action URL
|
273
|
+
# method:: Action URL method
|
274
|
+
# keyword_args:: additional attributes
|
275
|
+
def start(action: nil, method: nil, **keyword_args)
|
276
|
+
start = Start.new(action: action, method: method, **keyword_args)
|
277
|
+
|
278
|
+
yield(start) if block_given?
|
279
|
+
append(start)
|
280
|
+
end
|
281
|
+
|
282
|
+
##
|
283
|
+
# Create a new <Stop> element
|
284
|
+
# keyword_args:: additional attributes
|
285
|
+
def stop(**keyword_args)
|
286
|
+
stop = Stop.new(**keyword_args)
|
287
|
+
|
288
|
+
yield(stop) if block_given?
|
289
|
+
append(stop)
|
290
|
+
end
|
291
|
+
|
292
|
+
##
|
293
|
+
# Create a new <Refer> element
|
294
|
+
# action:: Action URL
|
295
|
+
# method:: Action URL method
|
296
|
+
# keyword_args:: additional attributes
|
297
|
+
def refer(action: nil, method: nil, **keyword_args)
|
298
|
+
refer = Refer.new(action: action, method: method, **keyword_args)
|
299
|
+
|
300
|
+
yield(refer) if block_given?
|
301
|
+
append(refer)
|
302
|
+
end
|
303
|
+
end
|
304
|
+
|
305
|
+
##
|
306
|
+
# <Refer> TwiML Verb
|
307
|
+
class Refer < TwiML
|
308
|
+
def initialize(**keyword_args)
|
309
|
+
super(**keyword_args)
|
310
|
+
@name = 'Refer'
|
311
|
+
|
312
|
+
yield(self) if block_given?
|
313
|
+
end
|
314
|
+
|
315
|
+
##
|
316
|
+
# Create a new <Sip> element
|
317
|
+
# sip_url:: SIP URL
|
318
|
+
# keyword_args:: additional attributes
|
319
|
+
def sip(sip_url, **keyword_args)
|
320
|
+
append(ReferSip.new(sip_url, **keyword_args))
|
321
|
+
end
|
322
|
+
end
|
323
|
+
|
324
|
+
##
|
325
|
+
# <Sip> TwiML Noun used in <Refer>
|
326
|
+
class ReferSip < TwiML
|
327
|
+
def initialize(sip_url, **keyword_args)
|
328
|
+
super(**keyword_args)
|
329
|
+
@name = 'Sip'
|
330
|
+
@value = sip_url
|
331
|
+
yield(self) if block_given?
|
332
|
+
end
|
333
|
+
end
|
334
|
+
|
335
|
+
##
|
336
|
+
# <Stop> TwiML Verb
|
337
|
+
class Stop < TwiML
|
338
|
+
def initialize(**keyword_args)
|
339
|
+
super(**keyword_args)
|
340
|
+
@name = 'Stop'
|
341
|
+
|
342
|
+
yield(self) if block_given?
|
343
|
+
end
|
344
|
+
|
345
|
+
##
|
346
|
+
# Create a new <Stream> element
|
347
|
+
# name:: Friendly name given to the Stream
|
348
|
+
# connector_name:: Unique name for Stream Connector
|
349
|
+
# url:: URL of the remote service where the Stream is routed
|
350
|
+
# track:: Track to be streamed to remote service
|
351
|
+
# status_callback:: Status Callback URL
|
352
|
+
# status_callback_method:: Status Callback URL method
|
353
|
+
# keyword_args:: additional attributes
|
354
|
+
def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
|
355
|
+
stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
|
356
|
+
|
357
|
+
yield(stream) if block_given?
|
358
|
+
append(stream)
|
359
|
+
end
|
360
|
+
|
361
|
+
##
|
362
|
+
# Create a new <Siprec> element
|
363
|
+
# name:: Friendly name given to SIPREC
|
364
|
+
# connector_name:: Unique name for Connector
|
365
|
+
# track:: Track to be streamed to remote service
|
366
|
+
# status_callback:: Status Callback URL
|
367
|
+
# status_callback_method:: Status Callback URL method
|
368
|
+
# keyword_args:: additional attributes
|
369
|
+
def siprec(name: nil, connector_name: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
|
370
|
+
siprec = Siprec.new(name: name, connector_name: connector_name, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
|
371
|
+
|
372
|
+
yield(siprec) if block_given?
|
373
|
+
append(siprec)
|
374
|
+
end
|
375
|
+
|
376
|
+
##
|
377
|
+
# Create a new <Transcription> element
|
378
|
+
# name:: Friendly name given to the Transcription
|
379
|
+
# track:: Track to be analyze by the provider
|
380
|
+
# status_callback_url:: Status Callback URL
|
381
|
+
# status_callback_method:: Status Callback URL method
|
382
|
+
# inbound_track_label:: Friendly name given to the Inbound Track
|
383
|
+
# outbound_track_label:: Friendly name given to the Outbound Track Label
|
384
|
+
# partial_results:: Indicates if partial results are going to be send to the customer
|
385
|
+
# language_code:: Language Code used by the transcription engine
|
386
|
+
# transcription_engine:: Transcription Engine to be used
|
387
|
+
# profanity_filter:: Enable Profanity Filter
|
388
|
+
# speech_model:: Speech Model used by the transcription engine
|
389
|
+
# hints:: Hints to be provided to the transcription engine
|
390
|
+
# enable_automatic_punctuation:: Enable Automatic Punctuation
|
391
|
+
# intelligence_service:: The SID or the unique name of the Intelligence Service to be used
|
392
|
+
# keyword_args:: additional attributes
|
393
|
+
def transcription(name: nil, track: nil, status_callback_url: nil, status_callback_method: nil, inbound_track_label: nil, outbound_track_label: nil, partial_results: nil, language_code: nil, transcription_engine: nil, profanity_filter: nil, speech_model: nil, hints: nil, enable_automatic_punctuation: nil, intelligence_service: nil, **keyword_args)
|
394
|
+
transcription = Transcription.new(name: name, track: track, status_callback_url: status_callback_url, status_callback_method: status_callback_method, inbound_track_label: inbound_track_label, outbound_track_label: outbound_track_label, partial_results: partial_results, language_code: language_code, transcription_engine: transcription_engine, profanity_filter: profanity_filter, speech_model: speech_model, hints: hints, enable_automatic_punctuation: enable_automatic_punctuation, intelligence_service: intelligence_service, **keyword_args)
|
395
|
+
|
396
|
+
yield(transcription) if block_given?
|
397
|
+
append(transcription)
|
398
|
+
end
|
399
|
+
end
|
400
|
+
|
401
|
+
##
|
402
|
+
# <Transcription> TwiML Noun
|
403
|
+
class Transcription < TwiML
|
404
|
+
def initialize(**keyword_args)
|
405
|
+
super(**keyword_args)
|
406
|
+
@name = 'Transcription'
|
407
|
+
|
408
|
+
yield(self) if block_given?
|
409
|
+
end
|
410
|
+
|
411
|
+
##
|
412
|
+
# Create a new <Config> element
|
413
|
+
# name:: The name of the custom config
|
414
|
+
# value:: The value of the custom config
|
415
|
+
# keyword_args:: additional attributes
|
416
|
+
def config(name: nil, value: nil, **keyword_args)
|
417
|
+
append(Config.new(name: name, value: value, **keyword_args))
|
418
|
+
end
|
419
|
+
|
420
|
+
##
|
421
|
+
# Create a new <Parameter> element
|
422
|
+
# name:: The name of the custom parameter
|
423
|
+
# value:: The value of the custom parameter
|
424
|
+
# keyword_args:: additional attributes
|
425
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
426
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
427
|
+
end
|
428
|
+
end
|
429
|
+
|
430
|
+
##
|
431
|
+
# <Parameter> TwiML Noun
|
432
|
+
class Parameter < TwiML
|
433
|
+
def initialize(**keyword_args)
|
434
|
+
super(**keyword_args)
|
435
|
+
@name = 'Parameter'
|
436
|
+
|
437
|
+
yield(self) if block_given?
|
438
|
+
end
|
439
|
+
end
|
440
|
+
|
441
|
+
##
|
442
|
+
# <Config> TwiML Noun
|
443
|
+
class Config < TwiML
|
444
|
+
def initialize(**keyword_args)
|
445
|
+
super(**keyword_args)
|
446
|
+
@name = 'Config'
|
447
|
+
|
448
|
+
yield(self) if block_given?
|
449
|
+
end
|
450
|
+
end
|
451
|
+
|
452
|
+
##
|
453
|
+
# <Siprec> TwiML Noun
|
454
|
+
class Siprec < TwiML
|
455
|
+
def initialize(**keyword_args)
|
456
|
+
super(**keyword_args)
|
457
|
+
@name = 'Siprec'
|
458
|
+
|
459
|
+
yield(self) if block_given?
|
460
|
+
end
|
461
|
+
|
462
|
+
##
|
463
|
+
# Create a new <Parameter> element
|
464
|
+
# name:: The name of the custom parameter
|
465
|
+
# value:: The value of the custom parameter
|
466
|
+
# keyword_args:: additional attributes
|
467
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
468
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
469
|
+
end
|
470
|
+
end
|
471
|
+
|
472
|
+
##
|
473
|
+
# <Stream> TwiML Noun
|
474
|
+
class Stream < TwiML
|
475
|
+
def initialize(**keyword_args)
|
476
|
+
super(**keyword_args)
|
477
|
+
@name = 'Stream'
|
478
|
+
|
479
|
+
yield(self) if block_given?
|
480
|
+
end
|
481
|
+
|
482
|
+
##
|
483
|
+
# Create a new <Parameter> element
|
484
|
+
# name:: The name of the custom parameter
|
485
|
+
# value:: The value of the custom parameter
|
486
|
+
# keyword_args:: additional attributes
|
487
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
488
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
489
|
+
end
|
490
|
+
end
|
491
|
+
|
492
|
+
##
|
493
|
+
# <Start> TwiML Verb
|
494
|
+
class Start < TwiML
|
495
|
+
def initialize(**keyword_args)
|
496
|
+
super(**keyword_args)
|
497
|
+
@name = 'Start'
|
498
|
+
|
499
|
+
yield(self) if block_given?
|
500
|
+
end
|
501
|
+
|
502
|
+
##
|
503
|
+
# Create a new <Stream> element
|
504
|
+
# name:: Friendly name given to the Stream
|
505
|
+
# connector_name:: Unique name for Stream Connector
|
506
|
+
# url:: URL of the remote service where the Stream is routed
|
507
|
+
# track:: Track to be streamed to remote service
|
508
|
+
# status_callback:: Status Callback URL
|
509
|
+
# status_callback_method:: Status Callback URL method
|
510
|
+
# keyword_args:: additional attributes
|
511
|
+
def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
|
512
|
+
stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
|
513
|
+
|
514
|
+
yield(stream) if block_given?
|
515
|
+
append(stream)
|
516
|
+
end
|
517
|
+
|
518
|
+
##
|
519
|
+
# Create a new <Siprec> element
|
520
|
+
# name:: Friendly name given to SIPREC
|
521
|
+
# connector_name:: Unique name for Connector
|
522
|
+
# track:: Track to be streamed to remote service
|
523
|
+
# status_callback:: Status Callback URL
|
524
|
+
# status_callback_method:: Status Callback URL method
|
525
|
+
# keyword_args:: additional attributes
|
526
|
+
def siprec(name: nil, connector_name: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
|
527
|
+
siprec = Siprec.new(name: name, connector_name: connector_name, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
|
528
|
+
|
529
|
+
yield(siprec) if block_given?
|
530
|
+
append(siprec)
|
531
|
+
end
|
532
|
+
|
533
|
+
##
|
534
|
+
# Create a new <Transcription> element
|
535
|
+
# name:: Friendly name given to the Transcription
|
536
|
+
# track:: Track to be analyze by the provider
|
537
|
+
# status_callback_url:: Status Callback URL
|
538
|
+
# status_callback_method:: Status Callback URL method
|
539
|
+
# inbound_track_label:: Friendly name given to the Inbound Track
|
540
|
+
# outbound_track_label:: Friendly name given to the Outbound Track Label
|
541
|
+
# partial_results:: Indicates if partial results are going to be send to the customer
|
542
|
+
# language_code:: Language Code used by the transcription engine
|
543
|
+
# transcription_engine:: Transcription Engine to be used
|
544
|
+
# profanity_filter:: Enable Profanity Filter
|
545
|
+
# speech_model:: Speech Model used by the transcription engine
|
546
|
+
# hints:: Hints to be provided to the transcription engine
|
547
|
+
# enable_automatic_punctuation:: Enable Automatic Punctuation
|
548
|
+
# intelligence_service:: The SID or the unique name of the Intelligence Service to be used
|
549
|
+
# keyword_args:: additional attributes
|
550
|
+
def transcription(name: nil, track: nil, status_callback_url: nil, status_callback_method: nil, inbound_track_label: nil, outbound_track_label: nil, partial_results: nil, language_code: nil, transcription_engine: nil, profanity_filter: nil, speech_model: nil, hints: nil, enable_automatic_punctuation: nil, intelligence_service: nil, **keyword_args)
|
551
|
+
transcription = Transcription.new(name: name, track: track, status_callback_url: status_callback_url, status_callback_method: status_callback_method, inbound_track_label: inbound_track_label, outbound_track_label: outbound_track_label, partial_results: partial_results, language_code: language_code, transcription_engine: transcription_engine, profanity_filter: profanity_filter, speech_model: speech_model, hints: hints, enable_automatic_punctuation: enable_automatic_punctuation, intelligence_service: intelligence_service, **keyword_args)
|
552
|
+
|
553
|
+
yield(transcription) if block_given?
|
554
|
+
append(transcription)
|
555
|
+
end
|
556
|
+
end
|
557
|
+
|
558
|
+
##
|
559
|
+
# <Prompt> Twiml Verb
|
560
|
+
class Prompt < TwiML
|
561
|
+
def initialize(**keyword_args)
|
562
|
+
super(**keyword_args)
|
563
|
+
@name = 'Prompt'
|
564
|
+
|
565
|
+
yield(self) if block_given?
|
566
|
+
end
|
567
|
+
|
568
|
+
##
|
569
|
+
# Create a new <Say> element
|
570
|
+
# message:: Message to say
|
571
|
+
# voice:: Voice to use
|
572
|
+
# loop:: Times to loop message
|
573
|
+
# language:: Message language
|
574
|
+
# keyword_args:: additional attributes
|
575
|
+
def say(message: nil, voice: nil, loop: nil, language: nil, **keyword_args)
|
576
|
+
say = Say.new(message: message, voice: voice, loop: loop, language: language, **keyword_args)
|
577
|
+
|
578
|
+
yield(say) if block_given?
|
579
|
+
append(say)
|
580
|
+
end
|
581
|
+
|
582
|
+
##
|
583
|
+
# Create a new <Play> element
|
584
|
+
# url:: Media URL
|
585
|
+
# loop:: Times to loop media
|
586
|
+
# digits:: Play DTMF tones for digits
|
587
|
+
# keyword_args:: additional attributes
|
588
|
+
def play(url: nil, loop: nil, digits: nil, **keyword_args)
|
589
|
+
append(Play.new(url: url, loop: loop, digits: digits, **keyword_args))
|
590
|
+
end
|
591
|
+
|
592
|
+
##
|
593
|
+
# Create a new <Pause> element
|
594
|
+
# length:: Length in seconds to pause
|
595
|
+
# keyword_args:: additional attributes
|
596
|
+
def pause(length: nil, **keyword_args)
|
597
|
+
append(Pause.new(length: length, **keyword_args))
|
598
|
+
end
|
599
|
+
end
|
600
|
+
|
601
|
+
##
|
602
|
+
# <Pause> TwiML Verb
|
603
|
+
class Pause < TwiML
|
604
|
+
def initialize(**keyword_args)
|
605
|
+
super(**keyword_args)
|
606
|
+
@name = 'Pause'
|
607
|
+
|
608
|
+
yield(self) if block_given?
|
609
|
+
end
|
610
|
+
end
|
611
|
+
|
612
|
+
##
|
613
|
+
# <Play> TwiML Verb
|
614
|
+
class Play < TwiML
|
615
|
+
def initialize(url: nil, **keyword_args)
|
616
|
+
super(**keyword_args)
|
617
|
+
@name = 'Play'
|
618
|
+
@value = url unless url.nil?
|
619
|
+
yield(self) if block_given?
|
620
|
+
end
|
621
|
+
end
|
622
|
+
|
623
|
+
##
|
624
|
+
# <Say> TwiML Verb
|
625
|
+
class Say < TwiML
|
626
|
+
def initialize(message: nil, **keyword_args)
|
627
|
+
super(**keyword_args)
|
628
|
+
@name = 'Say'
|
629
|
+
@value = message unless message.nil?
|
630
|
+
yield(self) if block_given?
|
631
|
+
end
|
632
|
+
|
633
|
+
##
|
634
|
+
# Create a new <Break> element
|
635
|
+
# strength:: Set a pause based on strength
|
636
|
+
# time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
|
637
|
+
# keyword_args:: additional attributes
|
638
|
+
def break(strength: nil, time: nil, **keyword_args)
|
639
|
+
append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
|
640
|
+
end
|
641
|
+
|
642
|
+
##
|
643
|
+
# Create a new <Emphasis> element
|
644
|
+
# words:: Words to emphasize
|
645
|
+
# level:: Specify the degree of emphasis
|
646
|
+
# keyword_args:: additional attributes
|
647
|
+
def emphasis(words: nil, level: nil, **keyword_args)
|
648
|
+
emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
|
649
|
+
|
650
|
+
yield(emphasis) if block_given?
|
651
|
+
append(emphasis)
|
652
|
+
end
|
653
|
+
|
654
|
+
##
|
655
|
+
# Create a new <Lang> element
|
656
|
+
# words:: Words to speak
|
657
|
+
# xmlLang:: Specify the language
|
658
|
+
# keyword_args:: additional attributes
|
659
|
+
def lang(words: nil, xmlLang: nil, **keyword_args)
|
660
|
+
lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
|
661
|
+
|
662
|
+
yield(lang) if block_given?
|
663
|
+
append(lang)
|
664
|
+
end
|
665
|
+
|
666
|
+
##
|
667
|
+
# Create a new <P> element
|
668
|
+
# words:: Words to speak
|
669
|
+
# keyword_args:: additional attributes
|
670
|
+
def p(words: nil, **keyword_args)
|
671
|
+
p = SsmlP.new(words: words, **keyword_args)
|
672
|
+
|
673
|
+
yield(p) if block_given?
|
674
|
+
append(p)
|
675
|
+
end
|
676
|
+
|
677
|
+
##
|
678
|
+
# Create a new <Phoneme> element
|
679
|
+
# words:: Words to speak
|
680
|
+
# alphabet:: Specify the phonetic alphabet
|
681
|
+
# ph:: Specifiy the phonetic symbols for pronunciation
|
682
|
+
# keyword_args:: additional attributes
|
683
|
+
def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
|
684
|
+
append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
|
685
|
+
end
|
686
|
+
|
687
|
+
##
|
688
|
+
# Create a new <Prosody> element
|
689
|
+
# words:: Words to speak
|
690
|
+
# volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
|
691
|
+
# rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
|
692
|
+
# pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
|
693
|
+
# keyword_args:: additional attributes
|
694
|
+
def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
|
695
|
+
prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
|
696
|
+
|
697
|
+
yield(prosody) if block_given?
|
698
|
+
append(prosody)
|
699
|
+
end
|
700
|
+
|
701
|
+
##
|
702
|
+
# Create a new <S> element
|
703
|
+
# words:: Words to speak
|
704
|
+
# keyword_args:: additional attributes
|
705
|
+
def s(words: nil, **keyword_args)
|
706
|
+
s = SsmlS.new(words: words, **keyword_args)
|
707
|
+
|
708
|
+
yield(s) if block_given?
|
709
|
+
append(s)
|
710
|
+
end
|
711
|
+
|
712
|
+
##
|
713
|
+
# Create a new <Say-As> element
|
714
|
+
# words:: Words to be interpreted
|
715
|
+
# interpretAs:: Specify the type of words are spoken
|
716
|
+
# format:: Specify the format of the date when interpret-as is set to date
|
717
|
+
# keyword_args:: additional attributes
|
718
|
+
def say_as(words, interpretAs: nil, format: nil, **keyword_args)
|
719
|
+
append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
|
720
|
+
end
|
721
|
+
|
722
|
+
##
|
723
|
+
# Create a new <Sub> element
|
724
|
+
# words:: Words to be substituted
|
725
|
+
# aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
|
726
|
+
# keyword_args:: additional attributes
|
727
|
+
def sub(words, aliasAttribute: nil, **keyword_args)
|
728
|
+
append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
|
729
|
+
end
|
730
|
+
|
731
|
+
##
|
732
|
+
# Create a new <W> element
|
733
|
+
# words:: Words to speak
|
734
|
+
# role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
|
735
|
+
# keyword_args:: additional attributes
|
736
|
+
def w(words: nil, role: nil, **keyword_args)
|
737
|
+
w = SsmlW.new(words: words, role: role, **keyword_args)
|
738
|
+
|
739
|
+
yield(w) if block_given?
|
740
|
+
append(w)
|
741
|
+
end
|
742
|
+
end
|
743
|
+
|
744
|
+
##
|
745
|
+
# Improving Pronunciation by Specifying Parts of Speech in <Say>
|
746
|
+
class SsmlW < TwiML
|
747
|
+
def initialize(words: nil, **keyword_args)
|
748
|
+
super(**keyword_args)
|
749
|
+
@name = 'w'
|
750
|
+
@value = words unless words.nil?
|
751
|
+
yield(self) if block_given?
|
752
|
+
end
|
753
|
+
|
754
|
+
##
|
755
|
+
# Create a new <Break> element
|
756
|
+
# strength:: Set a pause based on strength
|
757
|
+
# time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
|
758
|
+
# keyword_args:: additional attributes
|
759
|
+
def break(strength: nil, time: nil, **keyword_args)
|
760
|
+
append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
|
761
|
+
end
|
762
|
+
|
763
|
+
##
|
764
|
+
# Create a new <Emphasis> element
|
765
|
+
# words:: Words to emphasize
|
766
|
+
# level:: Specify the degree of emphasis
|
767
|
+
# keyword_args:: additional attributes
|
768
|
+
def emphasis(words: nil, level: nil, **keyword_args)
|
769
|
+
emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
|
770
|
+
|
771
|
+
yield(emphasis) if block_given?
|
772
|
+
append(emphasis)
|
773
|
+
end
|
774
|
+
|
775
|
+
##
|
776
|
+
# Create a new <Phoneme> element
|
777
|
+
# words:: Words to speak
|
778
|
+
# alphabet:: Specify the phonetic alphabet
|
779
|
+
# ph:: Specifiy the phonetic symbols for pronunciation
|
780
|
+
# keyword_args:: additional attributes
|
781
|
+
def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
|
782
|
+
append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
|
783
|
+
end
|
784
|
+
|
785
|
+
##
|
786
|
+
# Create a new <Prosody> element
|
787
|
+
# words:: Words to speak
|
788
|
+
# volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
|
789
|
+
# rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
|
790
|
+
# pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
|
791
|
+
# keyword_args:: additional attributes
|
792
|
+
def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
|
793
|
+
prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
|
794
|
+
|
795
|
+
yield(prosody) if block_given?
|
796
|
+
append(prosody)
|
797
|
+
end
|
798
|
+
|
799
|
+
##
|
800
|
+
# Create a new <Say-As> element
|
801
|
+
# words:: Words to be interpreted
|
802
|
+
# interpretAs:: Specify the type of words are spoken
|
803
|
+
# format:: Specify the format of the date when interpret-as is set to date
|
804
|
+
# keyword_args:: additional attributes
|
805
|
+
def say_as(words, interpretAs: nil, format: nil, **keyword_args)
|
806
|
+
append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
|
807
|
+
end
|
808
|
+
|
809
|
+
##
|
810
|
+
# Create a new <Sub> element
|
811
|
+
# words:: Words to be substituted
|
812
|
+
# aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
|
813
|
+
# keyword_args:: additional attributes
|
814
|
+
def sub(words, aliasAttribute: nil, **keyword_args)
|
815
|
+
append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
|
816
|
+
end
|
817
|
+
end
|
818
|
+
|
819
|
+
##
|
820
|
+
# Pronouncing Acronyms and Abbreviations in <Say>
|
821
|
+
class SsmlSub < TwiML
|
822
|
+
def initialize(words, **keyword_args)
|
823
|
+
super(**keyword_args)
|
824
|
+
@name = 'sub'
|
825
|
+
@value = words
|
826
|
+
yield(self) if block_given?
|
827
|
+
end
|
828
|
+
end
|
829
|
+
|
830
|
+
##
|
831
|
+
# Controlling How Special Types of Words Are Spoken in <Say>
|
832
|
+
class SsmlSayAs < TwiML
|
833
|
+
def initialize(words, **keyword_args)
|
834
|
+
super(**keyword_args)
|
835
|
+
@name = 'say-as'
|
836
|
+
@value = words
|
837
|
+
yield(self) if block_given?
|
838
|
+
end
|
839
|
+
end
|
840
|
+
|
841
|
+
##
|
842
|
+
# Controling Volume, Speaking Rate, and Pitch in <Say>
|
843
|
+
class SsmlProsody < TwiML
|
844
|
+
def initialize(words: nil, **keyword_args)
|
845
|
+
super(**keyword_args)
|
846
|
+
@name = 'prosody'
|
847
|
+
@value = words unless words.nil?
|
848
|
+
yield(self) if block_given?
|
849
|
+
end
|
850
|
+
|
851
|
+
##
|
852
|
+
# Create a new <Break> element
|
853
|
+
# strength:: Set a pause based on strength
|
854
|
+
# time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
|
855
|
+
# keyword_args:: additional attributes
|
856
|
+
def break(strength: nil, time: nil, **keyword_args)
|
857
|
+
append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
|
858
|
+
end
|
859
|
+
|
860
|
+
##
|
861
|
+
# Create a new <Emphasis> element
|
862
|
+
# words:: Words to emphasize
|
863
|
+
# level:: Specify the degree of emphasis
|
864
|
+
# keyword_args:: additional attributes
|
865
|
+
def emphasis(words: nil, level: nil, **keyword_args)
|
866
|
+
emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
|
867
|
+
|
868
|
+
yield(emphasis) if block_given?
|
869
|
+
append(emphasis)
|
870
|
+
end
|
871
|
+
|
872
|
+
##
|
873
|
+
# Create a new <Lang> element
|
874
|
+
# words:: Words to speak
|
875
|
+
# xmlLang:: Specify the language
|
876
|
+
# keyword_args:: additional attributes
|
877
|
+
def lang(words: nil, xmlLang: nil, **keyword_args)
|
878
|
+
lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
|
879
|
+
|
880
|
+
yield(lang) if block_given?
|
881
|
+
append(lang)
|
882
|
+
end
|
883
|
+
|
884
|
+
##
|
885
|
+
# Create a new <P> element
|
886
|
+
# words:: Words to speak
|
887
|
+
# keyword_args:: additional attributes
|
888
|
+
def p(words: nil, **keyword_args)
|
889
|
+
p = SsmlP.new(words: words, **keyword_args)
|
890
|
+
|
891
|
+
yield(p) if block_given?
|
892
|
+
append(p)
|
893
|
+
end
|
894
|
+
|
895
|
+
##
|
896
|
+
# Create a new <Phoneme> element
|
897
|
+
# words:: Words to speak
|
898
|
+
# alphabet:: Specify the phonetic alphabet
|
899
|
+
# ph:: Specifiy the phonetic symbols for pronunciation
|
900
|
+
# keyword_args:: additional attributes
|
901
|
+
def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
|
902
|
+
append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
|
903
|
+
end
|
904
|
+
|
905
|
+
##
|
906
|
+
# Create a new <Prosody> element
|
907
|
+
# words:: Words to speak
|
908
|
+
# volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
|
909
|
+
# rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
|
910
|
+
# pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
|
911
|
+
# keyword_args:: additional attributes
|
912
|
+
def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
|
913
|
+
prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
|
914
|
+
|
915
|
+
yield(prosody) if block_given?
|
916
|
+
append(prosody)
|
917
|
+
end
|
918
|
+
|
919
|
+
##
|
920
|
+
# Create a new <S> element
|
921
|
+
# words:: Words to speak
|
922
|
+
# keyword_args:: additional attributes
|
923
|
+
def s(words: nil, **keyword_args)
|
924
|
+
s = SsmlS.new(words: words, **keyword_args)
|
925
|
+
|
926
|
+
yield(s) if block_given?
|
927
|
+
append(s)
|
928
|
+
end
|
929
|
+
|
930
|
+
##
|
931
|
+
# Create a new <Say-As> element
|
932
|
+
# words:: Words to be interpreted
|
933
|
+
# interpretAs:: Specify the type of words are spoken
|
934
|
+
# format:: Specify the format of the date when interpret-as is set to date
|
935
|
+
# keyword_args:: additional attributes
|
936
|
+
def say_as(words, interpretAs: nil, format: nil, **keyword_args)
|
937
|
+
append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
|
938
|
+
end
|
939
|
+
|
940
|
+
##
|
941
|
+
# Create a new <Sub> element
|
942
|
+
# words:: Words to be substituted
|
943
|
+
# aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
|
944
|
+
# keyword_args:: additional attributes
|
945
|
+
def sub(words, aliasAttribute: nil, **keyword_args)
|
946
|
+
append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
|
947
|
+
end
|
948
|
+
|
949
|
+
##
|
950
|
+
# Create a new <W> element
|
951
|
+
# words:: Words to speak
|
952
|
+
# role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
|
953
|
+
# keyword_args:: additional attributes
|
954
|
+
def w(words: nil, role: nil, **keyword_args)
|
955
|
+
w = SsmlW.new(words: words, role: role, **keyword_args)
|
956
|
+
|
957
|
+
yield(w) if block_given?
|
958
|
+
append(w)
|
959
|
+
end
|
960
|
+
end
|
961
|
+
|
962
|
+
##
|
963
|
+
# Adding A Pause Between Sentences in <Say>
|
964
|
+
class SsmlS < TwiML
|
965
|
+
def initialize(words: nil, **keyword_args)
|
966
|
+
super(**keyword_args)
|
967
|
+
@name = 's'
|
968
|
+
@value = words unless words.nil?
|
969
|
+
yield(self) if block_given?
|
970
|
+
end
|
971
|
+
|
972
|
+
##
|
973
|
+
# Create a new <Break> element
|
974
|
+
# strength:: Set a pause based on strength
|
975
|
+
# time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
|
976
|
+
# keyword_args:: additional attributes
|
977
|
+
def break(strength: nil, time: nil, **keyword_args)
|
978
|
+
append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
|
979
|
+
end
|
980
|
+
|
981
|
+
##
|
982
|
+
# Create a new <Emphasis> element
|
983
|
+
# words:: Words to emphasize
|
984
|
+
# level:: Specify the degree of emphasis
|
985
|
+
# keyword_args:: additional attributes
|
986
|
+
def emphasis(words: nil, level: nil, **keyword_args)
|
987
|
+
emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
|
988
|
+
|
989
|
+
yield(emphasis) if block_given?
|
990
|
+
append(emphasis)
|
991
|
+
end
|
992
|
+
|
993
|
+
##
|
994
|
+
# Create a new <Lang> element
|
995
|
+
# words:: Words to speak
|
996
|
+
# xmlLang:: Specify the language
|
997
|
+
# keyword_args:: additional attributes
|
998
|
+
def lang(words: nil, xmlLang: nil, **keyword_args)
|
999
|
+
lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
|
1000
|
+
|
1001
|
+
yield(lang) if block_given?
|
1002
|
+
append(lang)
|
1003
|
+
end
|
1004
|
+
|
1005
|
+
##
|
1006
|
+
# Create a new <Phoneme> element
|
1007
|
+
# words:: Words to speak
|
1008
|
+
# alphabet:: Specify the phonetic alphabet
|
1009
|
+
# ph:: Specifiy the phonetic symbols for pronunciation
|
1010
|
+
# keyword_args:: additional attributes
|
1011
|
+
def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
|
1012
|
+
append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
|
1013
|
+
end
|
1014
|
+
|
1015
|
+
##
|
1016
|
+
# Create a new <Prosody> element
|
1017
|
+
# words:: Words to speak
|
1018
|
+
# volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
|
1019
|
+
# rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
|
1020
|
+
# pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
|
1021
|
+
# keyword_args:: additional attributes
|
1022
|
+
def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
|
1023
|
+
prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
|
1024
|
+
|
1025
|
+
yield(prosody) if block_given?
|
1026
|
+
append(prosody)
|
1027
|
+
end
|
1028
|
+
|
1029
|
+
##
|
1030
|
+
# Create a new <Say-As> element
|
1031
|
+
# words:: Words to be interpreted
|
1032
|
+
# interpretAs:: Specify the type of words are spoken
|
1033
|
+
# format:: Specify the format of the date when interpret-as is set to date
|
1034
|
+
# keyword_args:: additional attributes
|
1035
|
+
def say_as(words, interpretAs: nil, format: nil, **keyword_args)
|
1036
|
+
append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
|
1037
|
+
end
|
1038
|
+
|
1039
|
+
##
|
1040
|
+
# Create a new <Sub> element
|
1041
|
+
# words:: Words to be substituted
|
1042
|
+
# aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
|
1043
|
+
# keyword_args:: additional attributes
|
1044
|
+
def sub(words, aliasAttribute: nil, **keyword_args)
|
1045
|
+
append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
|
1046
|
+
end
|
1047
|
+
|
1048
|
+
##
|
1049
|
+
# Create a new <W> element
|
1050
|
+
# words:: Words to speak
|
1051
|
+
# role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
|
1052
|
+
# keyword_args:: additional attributes
|
1053
|
+
def w(words: nil, role: nil, **keyword_args)
|
1054
|
+
w = SsmlW.new(words: words, role: role, **keyword_args)
|
1055
|
+
|
1056
|
+
yield(w) if block_given?
|
1057
|
+
append(w)
|
1058
|
+
end
|
1059
|
+
end
|
1060
|
+
|
1061
|
+
##
|
1062
|
+
# Using Phonetic Pronunciation in <Say>
|
1063
|
+
class SsmlPhoneme < TwiML
|
1064
|
+
def initialize(words, **keyword_args)
|
1065
|
+
super(**keyword_args)
|
1066
|
+
@name = 'phoneme'
|
1067
|
+
@value = words
|
1068
|
+
yield(self) if block_given?
|
1069
|
+
end
|
1070
|
+
end
|
1071
|
+
|
1072
|
+
##
|
1073
|
+
# Specifying Another Language for Specific Words in <Say>
|
1074
|
+
class SsmlLang < TwiML
|
1075
|
+
def initialize(words: nil, **keyword_args)
|
1076
|
+
super(**keyword_args)
|
1077
|
+
@name = 'lang'
|
1078
|
+
@value = words unless words.nil?
|
1079
|
+
yield(self) if block_given?
|
1080
|
+
end
|
1081
|
+
|
1082
|
+
##
|
1083
|
+
# Create a new <Break> element
|
1084
|
+
# strength:: Set a pause based on strength
|
1085
|
+
# time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
|
1086
|
+
# keyword_args:: additional attributes
|
1087
|
+
def break(strength: nil, time: nil, **keyword_args)
|
1088
|
+
append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
|
1089
|
+
end
|
1090
|
+
|
1091
|
+
##
|
1092
|
+
# Create a new <Emphasis> element
|
1093
|
+
# words:: Words to emphasize
|
1094
|
+
# level:: Specify the degree of emphasis
|
1095
|
+
# keyword_args:: additional attributes
|
1096
|
+
def emphasis(words: nil, level: nil, **keyword_args)
|
1097
|
+
emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
|
1098
|
+
|
1099
|
+
yield(emphasis) if block_given?
|
1100
|
+
append(emphasis)
|
1101
|
+
end
|
1102
|
+
|
1103
|
+
##
|
1104
|
+
# Create a new <Lang> element
|
1105
|
+
# words:: Words to speak
|
1106
|
+
# xmlLang:: Specify the language
|
1107
|
+
# keyword_args:: additional attributes
|
1108
|
+
def lang(words: nil, xmlLang: nil, **keyword_args)
|
1109
|
+
lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
|
1110
|
+
|
1111
|
+
yield(lang) if block_given?
|
1112
|
+
append(lang)
|
1113
|
+
end
|
1114
|
+
|
1115
|
+
##
|
1116
|
+
# Create a new <P> element
|
1117
|
+
# words:: Words to speak
|
1118
|
+
# keyword_args:: additional attributes
|
1119
|
+
def p(words: nil, **keyword_args)
|
1120
|
+
p = SsmlP.new(words: words, **keyword_args)
|
1121
|
+
|
1122
|
+
yield(p) if block_given?
|
1123
|
+
append(p)
|
1124
|
+
end
|
1125
|
+
|
1126
|
+
##
|
1127
|
+
# Create a new <Phoneme> element
|
1128
|
+
# words:: Words to speak
|
1129
|
+
# alphabet:: Specify the phonetic alphabet
|
1130
|
+
# ph:: Specifiy the phonetic symbols for pronunciation
|
1131
|
+
# keyword_args:: additional attributes
|
1132
|
+
def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
|
1133
|
+
append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
|
1134
|
+
end
|
1135
|
+
|
1136
|
+
##
|
1137
|
+
# Create a new <Prosody> element
|
1138
|
+
# words:: Words to speak
|
1139
|
+
# volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
|
1140
|
+
# rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
|
1141
|
+
# pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
|
1142
|
+
# keyword_args:: additional attributes
|
1143
|
+
def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
|
1144
|
+
prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
|
1145
|
+
|
1146
|
+
yield(prosody) if block_given?
|
1147
|
+
append(prosody)
|
1148
|
+
end
|
1149
|
+
|
1150
|
+
##
|
1151
|
+
# Create a new <S> element
|
1152
|
+
# words:: Words to speak
|
1153
|
+
# keyword_args:: additional attributes
|
1154
|
+
def s(words: nil, **keyword_args)
|
1155
|
+
s = SsmlS.new(words: words, **keyword_args)
|
1156
|
+
|
1157
|
+
yield(s) if block_given?
|
1158
|
+
append(s)
|
1159
|
+
end
|
1160
|
+
|
1161
|
+
##
|
1162
|
+
# Create a new <Say-As> element
|
1163
|
+
# words:: Words to be interpreted
|
1164
|
+
# interpretAs:: Specify the type of words are spoken
|
1165
|
+
# format:: Specify the format of the date when interpret-as is set to date
|
1166
|
+
# keyword_args:: additional attributes
|
1167
|
+
def say_as(words, interpretAs: nil, format: nil, **keyword_args)
|
1168
|
+
append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
|
1169
|
+
end
|
1170
|
+
|
1171
|
+
##
|
1172
|
+
# Create a new <Sub> element
|
1173
|
+
# words:: Words to be substituted
|
1174
|
+
# aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
|
1175
|
+
# keyword_args:: additional attributes
|
1176
|
+
def sub(words, aliasAttribute: nil, **keyword_args)
|
1177
|
+
append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
|
1178
|
+
end
|
1179
|
+
|
1180
|
+
##
|
1181
|
+
# Create a new <W> element
|
1182
|
+
# words:: Words to speak
|
1183
|
+
# role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
|
1184
|
+
# keyword_args:: additional attributes
|
1185
|
+
def w(words: nil, role: nil, **keyword_args)
|
1186
|
+
w = SsmlW.new(words: words, role: role, **keyword_args)
|
1187
|
+
|
1188
|
+
yield(w) if block_given?
|
1189
|
+
append(w)
|
1190
|
+
end
|
1191
|
+
end
|
1192
|
+
|
1193
|
+
##
|
1194
|
+
# Adding a Pause Between Paragraphs in <Say>
|
1195
|
+
class SsmlP < TwiML
|
1196
|
+
def initialize(words: nil, **keyword_args)
|
1197
|
+
super(**keyword_args)
|
1198
|
+
@name = 'p'
|
1199
|
+
@value = words unless words.nil?
|
1200
|
+
yield(self) if block_given?
|
1201
|
+
end
|
1202
|
+
|
1203
|
+
##
|
1204
|
+
# Create a new <Break> element
|
1205
|
+
# strength:: Set a pause based on strength
|
1206
|
+
# time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
|
1207
|
+
# keyword_args:: additional attributes
|
1208
|
+
def break(strength: nil, time: nil, **keyword_args)
|
1209
|
+
append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
|
1210
|
+
end
|
1211
|
+
|
1212
|
+
##
|
1213
|
+
# Create a new <Emphasis> element
|
1214
|
+
# words:: Words to emphasize
|
1215
|
+
# level:: Specify the degree of emphasis
|
1216
|
+
# keyword_args:: additional attributes
|
1217
|
+
def emphasis(words: nil, level: nil, **keyword_args)
|
1218
|
+
emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
|
1219
|
+
|
1220
|
+
yield(emphasis) if block_given?
|
1221
|
+
append(emphasis)
|
1222
|
+
end
|
1223
|
+
|
1224
|
+
##
|
1225
|
+
# Create a new <Lang> element
|
1226
|
+
# words:: Words to speak
|
1227
|
+
# xmlLang:: Specify the language
|
1228
|
+
# keyword_args:: additional attributes
|
1229
|
+
def lang(words: nil, xmlLang: nil, **keyword_args)
|
1230
|
+
lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
|
1231
|
+
|
1232
|
+
yield(lang) if block_given?
|
1233
|
+
append(lang)
|
1234
|
+
end
|
1235
|
+
|
1236
|
+
##
|
1237
|
+
# Create a new <Phoneme> element
|
1238
|
+
# words:: Words to speak
|
1239
|
+
# alphabet:: Specify the phonetic alphabet
|
1240
|
+
# ph:: Specifiy the phonetic symbols for pronunciation
|
1241
|
+
# keyword_args:: additional attributes
|
1242
|
+
def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
|
1243
|
+
append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
|
1244
|
+
end
|
1245
|
+
|
1246
|
+
##
|
1247
|
+
# Create a new <Prosody> element
|
1248
|
+
# words:: Words to speak
|
1249
|
+
# volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
|
1250
|
+
# rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
|
1251
|
+
# pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
|
1252
|
+
# keyword_args:: additional attributes
|
1253
|
+
def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
|
1254
|
+
prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
|
1255
|
+
|
1256
|
+
yield(prosody) if block_given?
|
1257
|
+
append(prosody)
|
1258
|
+
end
|
1259
|
+
|
1260
|
+
##
|
1261
|
+
# Create a new <S> element
|
1262
|
+
# words:: Words to speak
|
1263
|
+
# keyword_args:: additional attributes
|
1264
|
+
def s(words: nil, **keyword_args)
|
1265
|
+
s = SsmlS.new(words: words, **keyword_args)
|
1266
|
+
|
1267
|
+
yield(s) if block_given?
|
1268
|
+
append(s)
|
1269
|
+
end
|
1270
|
+
|
1271
|
+
##
|
1272
|
+
# Create a new <Say-As> element
|
1273
|
+
# words:: Words to be interpreted
|
1274
|
+
# interpretAs:: Specify the type of words are spoken
|
1275
|
+
# format:: Specify the format of the date when interpret-as is set to date
|
1276
|
+
# keyword_args:: additional attributes
|
1277
|
+
def say_as(words, interpretAs: nil, format: nil, **keyword_args)
|
1278
|
+
append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
|
1279
|
+
end
|
1280
|
+
|
1281
|
+
##
|
1282
|
+
# Create a new <Sub> element
|
1283
|
+
# words:: Words to be substituted
|
1284
|
+
# aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
|
1285
|
+
# keyword_args:: additional attributes
|
1286
|
+
def sub(words, aliasAttribute: nil, **keyword_args)
|
1287
|
+
append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
|
1288
|
+
end
|
1289
|
+
|
1290
|
+
##
|
1291
|
+
# Create a new <W> element
|
1292
|
+
# words:: Words to speak
|
1293
|
+
# role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
|
1294
|
+
# keyword_args:: additional attributes
|
1295
|
+
def w(words: nil, role: nil, **keyword_args)
|
1296
|
+
w = SsmlW.new(words: words, role: role, **keyword_args)
|
1297
|
+
|
1298
|
+
yield(w) if block_given?
|
1299
|
+
append(w)
|
1300
|
+
end
|
1301
|
+
end
|
1302
|
+
|
1303
|
+
##
|
1304
|
+
# Emphasizing Words in <Say>
|
1305
|
+
class SsmlEmphasis < TwiML
|
1306
|
+
def initialize(words: nil, **keyword_args)
|
1307
|
+
super(**keyword_args)
|
1308
|
+
@name = 'emphasis'
|
1309
|
+
@value = words unless words.nil?
|
1310
|
+
yield(self) if block_given?
|
1311
|
+
end
|
1312
|
+
|
1313
|
+
##
|
1314
|
+
# Create a new <Break> element
|
1315
|
+
# strength:: Set a pause based on strength
|
1316
|
+
# time:: Set a pause to a specific length of time in seconds or milliseconds, available values: [number]s, [number]ms
|
1317
|
+
# keyword_args:: additional attributes
|
1318
|
+
def break(strength: nil, time: nil, **keyword_args)
|
1319
|
+
append(SsmlBreak.new(strength: strength, time: time, **keyword_args))
|
1320
|
+
end
|
1321
|
+
|
1322
|
+
##
|
1323
|
+
# Create a new <Emphasis> element
|
1324
|
+
# words:: Words to emphasize
|
1325
|
+
# level:: Specify the degree of emphasis
|
1326
|
+
# keyword_args:: additional attributes
|
1327
|
+
def emphasis(words: nil, level: nil, **keyword_args)
|
1328
|
+
emphasis = SsmlEmphasis.new(words: words, level: level, **keyword_args)
|
1329
|
+
|
1330
|
+
yield(emphasis) if block_given?
|
1331
|
+
append(emphasis)
|
1332
|
+
end
|
1333
|
+
|
1334
|
+
##
|
1335
|
+
# Create a new <Lang> element
|
1336
|
+
# words:: Words to speak
|
1337
|
+
# xmlLang:: Specify the language
|
1338
|
+
# keyword_args:: additional attributes
|
1339
|
+
def lang(words: nil, xmlLang: nil, **keyword_args)
|
1340
|
+
lang = SsmlLang.new(words: words, xmlLang: xmlLang, **keyword_args)
|
1341
|
+
|
1342
|
+
yield(lang) if block_given?
|
1343
|
+
append(lang)
|
1344
|
+
end
|
1345
|
+
|
1346
|
+
##
|
1347
|
+
# Create a new <Phoneme> element
|
1348
|
+
# words:: Words to speak
|
1349
|
+
# alphabet:: Specify the phonetic alphabet
|
1350
|
+
# ph:: Specifiy the phonetic symbols for pronunciation
|
1351
|
+
# keyword_args:: additional attributes
|
1352
|
+
def phoneme(words, alphabet: nil, ph: nil, **keyword_args)
|
1353
|
+
append(SsmlPhoneme.new(words, alphabet: alphabet, ph: ph, **keyword_args))
|
1354
|
+
end
|
1355
|
+
|
1356
|
+
##
|
1357
|
+
# Create a new <Prosody> element
|
1358
|
+
# words:: Words to speak
|
1359
|
+
# volume:: Specify the volume, available values: default, silent, x-soft, soft, medium, loud, x-loud, +ndB, -ndB
|
1360
|
+
# rate:: Specify the rate, available values: x-slow, slow, medium, fast, x-fast, n%
|
1361
|
+
# pitch:: Specify the pitch, available values: default, x-low, low, medium, high, x-high, +n%, -n%
|
1362
|
+
# keyword_args:: additional attributes
|
1363
|
+
def prosody(words: nil, volume: nil, rate: nil, pitch: nil, **keyword_args)
|
1364
|
+
prosody = SsmlProsody.new(words: words, volume: volume, rate: rate, pitch: pitch, **keyword_args)
|
1365
|
+
|
1366
|
+
yield(prosody) if block_given?
|
1367
|
+
append(prosody)
|
152
1368
|
end
|
153
1369
|
|
154
1370
|
##
|
155
|
-
# Create a new <
|
156
|
-
#
|
157
|
-
#
|
1371
|
+
# Create a new <Say-As> element
|
1372
|
+
# words:: Words to be interpreted
|
1373
|
+
# interpretAs:: Specify the type of words are spoken
|
1374
|
+
# format:: Specify the format of the date when interpret-as is set to date
|
158
1375
|
# keyword_args:: additional attributes
|
159
|
-
def
|
160
|
-
append(
|
1376
|
+
def say_as(words, interpretAs: nil, format: nil, **keyword_args)
|
1377
|
+
append(SsmlSayAs.new(words, interpretAs: interpretAs, format: format, **keyword_args))
|
161
1378
|
end
|
162
1379
|
|
163
1380
|
##
|
164
|
-
# Create a new <
|
165
|
-
#
|
1381
|
+
# Create a new <Sub> element
|
1382
|
+
# words:: Words to be substituted
|
1383
|
+
# aliasAttribute:: Substitute a different word (or pronunciation) for selected text such as an acronym or abbreviation
|
166
1384
|
# keyword_args:: additional attributes
|
167
|
-
def
|
168
|
-
append(
|
1385
|
+
def sub(words, aliasAttribute: nil, **keyword_args)
|
1386
|
+
append(SsmlSub.new(words, aliasAttribute: aliasAttribute, **keyword_args))
|
169
1387
|
end
|
170
1388
|
|
171
1389
|
##
|
172
|
-
# Create a new <
|
173
|
-
#
|
174
|
-
#
|
175
|
-
# loop:: Times to loop message
|
176
|
-
# language:: Message langauge
|
1390
|
+
# Create a new <W> element
|
1391
|
+
# words:: Words to speak
|
1392
|
+
# role:: Customize the pronunciation of words by specifying the word’s part of speech or alternate meaning
|
177
1393
|
# keyword_args:: additional attributes
|
178
|
-
def
|
179
|
-
|
1394
|
+
def w(words: nil, role: nil, **keyword_args)
|
1395
|
+
w = SsmlW.new(words: words, role: role, **keyword_args)
|
1396
|
+
|
1397
|
+
yield(w) if block_given?
|
1398
|
+
append(w)
|
180
1399
|
end
|
1400
|
+
end
|
181
1401
|
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
# keyword_args:: additional attributes
|
191
|
-
def sms(message, to: nil, from: nil, action: nil, method: nil, status_callback: nil, **keyword_args)
|
192
|
-
append(Sms.new(message, to: to, from: from, action: action, method: method, status_callback: status_callback, **keyword_args))
|
1402
|
+
##
|
1403
|
+
# Adding a Pause in <Say>
|
1404
|
+
class SsmlBreak < TwiML
|
1405
|
+
def initialize(**keyword_args)
|
1406
|
+
super(**keyword_args)
|
1407
|
+
@name = 'break'
|
1408
|
+
|
1409
|
+
yield(self) if block_given?
|
193
1410
|
end
|
194
1411
|
end
|
195
1412
|
|
196
1413
|
##
|
197
|
-
# <
|
198
|
-
class
|
199
|
-
def initialize(
|
1414
|
+
# <Pay> Twiml Verb
|
1415
|
+
class Pay < TwiML
|
1416
|
+
def initialize(**keyword_args)
|
200
1417
|
super(**keyword_args)
|
201
|
-
@name = '
|
202
|
-
|
1418
|
+
@name = 'Pay'
|
1419
|
+
|
203
1420
|
yield(self) if block_given?
|
204
1421
|
end
|
1422
|
+
|
1423
|
+
##
|
1424
|
+
# Create a new <Prompt> element
|
1425
|
+
# for_:: Name of the payment source data element
|
1426
|
+
# error_type:: Type of error
|
1427
|
+
# card_type:: Type of the credit card
|
1428
|
+
# attempt:: Current attempt count
|
1429
|
+
# require_matching_inputs:: Require customer to input requested information twice and verify matching.
|
1430
|
+
# keyword_args:: additional attributes
|
1431
|
+
def prompt(for_: nil, error_type: nil, card_type: nil, attempt: nil, require_matching_inputs: nil, **keyword_args)
|
1432
|
+
prompt = Prompt.new(for_: for_, error_type: error_type, card_type: card_type, attempt: attempt, require_matching_inputs: require_matching_inputs, **keyword_args)
|
1433
|
+
|
1434
|
+
yield(prompt) if block_given?
|
1435
|
+
append(prompt)
|
1436
|
+
end
|
1437
|
+
|
1438
|
+
##
|
1439
|
+
# Create a new <Parameter> element
|
1440
|
+
# name:: The name of the custom parameter
|
1441
|
+
# value:: The value of the custom parameter
|
1442
|
+
# keyword_args:: additional attributes
|
1443
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
1444
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
1445
|
+
end
|
205
1446
|
end
|
206
1447
|
|
207
1448
|
##
|
208
|
-
# <
|
209
|
-
class
|
1449
|
+
# <Sms> TwiML Noun
|
1450
|
+
class Sms < TwiML
|
210
1451
|
def initialize(message, **keyword_args)
|
211
1452
|
super(**keyword_args)
|
212
|
-
@name = '
|
1453
|
+
@name = 'Sms'
|
213
1454
|
@value = message
|
214
1455
|
yield(self) if block_given?
|
215
1456
|
end
|
@@ -224,6 +1465,15 @@ module Twilio
|
|
224
1465
|
|
225
1466
|
yield(self) if block_given?
|
226
1467
|
end
|
1468
|
+
|
1469
|
+
##
|
1470
|
+
# Create a new <Parameter> element
|
1471
|
+
# name:: The name of the custom parameter
|
1472
|
+
# value:: The value of the custom parameter
|
1473
|
+
# keyword_args:: additional attributes
|
1474
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
1475
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
1476
|
+
end
|
227
1477
|
end
|
228
1478
|
|
229
1479
|
##
|
@@ -259,28 +1509,6 @@ module Twilio
|
|
259
1509
|
end
|
260
1510
|
end
|
261
1511
|
|
262
|
-
##
|
263
|
-
# <Play> TwiML Verb
|
264
|
-
class Play < TwiML
|
265
|
-
def initialize(url: nil, **keyword_args)
|
266
|
-
super(**keyword_args)
|
267
|
-
@name = 'Play'
|
268
|
-
@value = url unless url.nil?
|
269
|
-
yield(self) if block_given?
|
270
|
-
end
|
271
|
-
end
|
272
|
-
|
273
|
-
##
|
274
|
-
# <Pause> TwiML Verb
|
275
|
-
class Pause < TwiML
|
276
|
-
def initialize(**keyword_args)
|
277
|
-
super(**keyword_args)
|
278
|
-
@name = 'Pause'
|
279
|
-
|
280
|
-
yield(self) if block_given?
|
281
|
-
end
|
282
|
-
end
|
283
|
-
|
284
1512
|
##
|
285
1513
|
# <Leave> TwiML Verb
|
286
1514
|
class Leave < TwiML
|
@@ -301,6 +1529,15 @@ module Twilio
|
|
301
1529
|
|
302
1530
|
yield(self) if block_given?
|
303
1531
|
end
|
1532
|
+
|
1533
|
+
##
|
1534
|
+
# Create a new <Parameter> element
|
1535
|
+
# name:: The name of the custom parameter
|
1536
|
+
# value:: The value of the custom parameter
|
1537
|
+
# keyword_args:: additional attributes
|
1538
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
1539
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
1540
|
+
end
|
304
1541
|
end
|
305
1542
|
|
306
1543
|
##
|
@@ -318,10 +1555,13 @@ module Twilio
|
|
318
1555
|
# message:: Message to say
|
319
1556
|
# voice:: Voice to use
|
320
1557
|
# loop:: Times to loop message
|
321
|
-
# language:: Message
|
1558
|
+
# language:: Message language
|
322
1559
|
# keyword_args:: additional attributes
|
323
|
-
def say(message, voice: nil, loop: nil, language: nil, **keyword_args)
|
324
|
-
|
1560
|
+
def say(message: nil, voice: nil, loop: nil, language: nil, **keyword_args)
|
1561
|
+
say = Say.new(message: message, voice: voice, loop: loop, language: language, **keyword_args)
|
1562
|
+
|
1563
|
+
yield(say) if block_given?
|
1564
|
+
append(say)
|
325
1565
|
end
|
326
1566
|
|
327
1567
|
##
|
@@ -398,15 +1638,18 @@ module Twilio
|
|
398
1638
|
|
399
1639
|
##
|
400
1640
|
# Create a new <Client> element
|
401
|
-
#
|
1641
|
+
# identity:: Client identity
|
402
1642
|
# url:: Client URL
|
403
1643
|
# method:: Client URL Method
|
404
1644
|
# status_callback_event:: Events to trigger status callback
|
405
1645
|
# status_callback:: Status Callback URL
|
406
1646
|
# status_callback_method:: Status Callback URL Method
|
407
1647
|
# keyword_args:: additional attributes
|
408
|
-
def client(
|
409
|
-
|
1648
|
+
def client(identity: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
|
1649
|
+
client = Client.new(identity: identity, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
|
1650
|
+
|
1651
|
+
yield(client) if block_given?
|
1652
|
+
append(client)
|
410
1653
|
end
|
411
1654
|
|
412
1655
|
##
|
@@ -421,7 +1664,7 @@ module Twilio
|
|
421
1664
|
# max_participants:: Maximum number of participants
|
422
1665
|
# record:: Record the conference
|
423
1666
|
# region:: Conference region
|
424
|
-
#
|
1667
|
+
# coach:: Call coach
|
425
1668
|
# trim:: Trim the conference recording
|
426
1669
|
# status_callback_event:: Events to call status callback URL
|
427
1670
|
# status_callback:: Status callback URL
|
@@ -430,9 +1673,11 @@ module Twilio
|
|
430
1673
|
# recording_status_callback_method:: Recording status callback URL method
|
431
1674
|
# recording_status_callback_event:: Recording status callback events
|
432
1675
|
# event_callback_url:: Event callback URL
|
1676
|
+
# jitter_buffer_size:: Size of jitter buffer for participant
|
1677
|
+
# participant_label:: A label for participant
|
433
1678
|
# keyword_args:: additional attributes
|
434
|
-
def conference(name, muted: nil, beep: nil, start_conference_on_enter: nil, end_conference_on_exit: nil, wait_url: nil, wait_method: nil, max_participants: nil, record: nil, region: nil,
|
435
|
-
append(Conference.new(name, muted: muted, beep: beep, start_conference_on_enter: start_conference_on_enter, end_conference_on_exit: end_conference_on_exit, wait_url: wait_url, wait_method: wait_method, max_participants: max_participants, record: record, region: region,
|
1679
|
+
def conference(name, muted: nil, beep: nil, start_conference_on_enter: nil, end_conference_on_exit: nil, wait_url: nil, wait_method: nil, max_participants: nil, record: nil, region: nil, coach: nil, trim: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, event_callback_url: nil, jitter_buffer_size: nil, participant_label: nil, **keyword_args)
|
1680
|
+
append(Conference.new(name, muted: muted, beep: beep, start_conference_on_enter: start_conference_on_enter, end_conference_on_exit: end_conference_on_exit, wait_url: wait_url, wait_method: wait_method, max_participants: max_participants, record: record, region: region, coach: coach, trim: trim, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, event_callback_url: event_callback_url, jitter_buffer_size: jitter_buffer_size, participant_label: participant_label, **keyword_args))
|
436
1681
|
end
|
437
1682
|
|
438
1683
|
##
|
@@ -444,9 +1689,17 @@ module Twilio
|
|
444
1689
|
# status_callback_event:: Events to call status callback
|
445
1690
|
# status_callback:: Status callback URL
|
446
1691
|
# status_callback_method:: Status callback URL method
|
1692
|
+
# byoc:: BYOC trunk SID (Beta)
|
1693
|
+
# machine_detection:: Enable machine detection or end of greeting detection
|
1694
|
+
# amd_status_callback_method:: HTTP Method to use with amd_status_callback
|
1695
|
+
# amd_status_callback:: The URL we should call to send amd status information to your application
|
1696
|
+
# machine_detection_timeout:: Number of seconds to wait for machine detection
|
1697
|
+
# machine_detection_speech_threshold:: Number of milliseconds for measuring stick for the length of the speech activity
|
1698
|
+
# machine_detection_speech_end_threshold:: Number of milliseconds of silence after speech activity
|
1699
|
+
# machine_detection_silence_timeout:: Number of milliseconds of initial silence
|
447
1700
|
# keyword_args:: additional attributes
|
448
|
-
def number(phone_number, send_digits: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
|
449
|
-
append(Number.new(phone_number, send_digits: send_digits, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args))
|
1701
|
+
def number(phone_number, send_digits: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, byoc: nil, machine_detection: nil, amd_status_callback_method: nil, amd_status_callback: nil, machine_detection_timeout: nil, machine_detection_speech_threshold: nil, machine_detection_speech_end_threshold: nil, machine_detection_silence_timeout: nil, **keyword_args)
|
1702
|
+
append(Number.new(phone_number, send_digits: send_digits, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, byoc: byoc, machine_detection: machine_detection, amd_status_callback_method: amd_status_callback_method, amd_status_callback: amd_status_callback, machine_detection_timeout: machine_detection_timeout, machine_detection_speech_threshold: machine_detection_speech_threshold, machine_detection_speech_end_threshold: machine_detection_speech_end_threshold, machine_detection_silence_timeout: machine_detection_silence_timeout, **keyword_args))
|
450
1703
|
end
|
451
1704
|
|
452
1705
|
##
|
@@ -479,9 +1732,73 @@ module Twilio
|
|
479
1732
|
# status_callback_event:: Status callback events
|
480
1733
|
# status_callback:: Status callback URL
|
481
1734
|
# status_callback_method:: Status callback URL method
|
1735
|
+
# machine_detection:: Enable machine detection or end of greeting detection
|
1736
|
+
# amd_status_callback_method:: HTTP Method to use with amd_status_callback
|
1737
|
+
# amd_status_callback:: The URL we should call to send amd status information to your application
|
1738
|
+
# machine_detection_timeout:: Number of seconds to wait for machine detection
|
1739
|
+
# machine_detection_speech_threshold:: Number of milliseconds for measuring stick for the length of the speech activity
|
1740
|
+
# machine_detection_speech_end_threshold:: Number of milliseconds of silence after speech activity
|
1741
|
+
# machine_detection_silence_timeout:: Number of milliseconds of initial silence
|
1742
|
+
# keyword_args:: additional attributes
|
1743
|
+
def sip(sip_url, username: nil, password: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, machine_detection: nil, amd_status_callback_method: nil, amd_status_callback: nil, machine_detection_timeout: nil, machine_detection_speech_threshold: nil, machine_detection_speech_end_threshold: nil, machine_detection_silence_timeout: nil, **keyword_args)
|
1744
|
+
append(Sip.new(sip_url, username: username, password: password, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, machine_detection: machine_detection, amd_status_callback_method: amd_status_callback_method, amd_status_callback: amd_status_callback, machine_detection_timeout: machine_detection_timeout, machine_detection_speech_threshold: machine_detection_speech_threshold, machine_detection_speech_end_threshold: machine_detection_speech_end_threshold, machine_detection_silence_timeout: machine_detection_silence_timeout, **keyword_args))
|
1745
|
+
end
|
1746
|
+
|
1747
|
+
##
|
1748
|
+
# Create a new <Application> element
|
1749
|
+
# application_sid:: Application sid
|
1750
|
+
# url:: TwiML URL
|
1751
|
+
# method:: TwiML URL Method
|
1752
|
+
# status_callback_event:: Events to trigger status callback
|
1753
|
+
# status_callback:: Status Callback URL
|
1754
|
+
# status_callback_method:: Status Callback URL Method
|
1755
|
+
# customer_id:: Identity of the customer calling application
|
1756
|
+
# copy_parent_to:: Copy parent call To field to called application side, otherwise use the application sid as To field
|
1757
|
+
# keyword_args:: additional attributes
|
1758
|
+
def application(application_sid: nil, url: nil, method: nil, status_callback_event: nil, status_callback: nil, status_callback_method: nil, customer_id: nil, copy_parent_to: nil, **keyword_args)
|
1759
|
+
application = Application.new(application_sid: application_sid, url: url, method: method, status_callback_event: status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, customer_id: customer_id, copy_parent_to: copy_parent_to, **keyword_args)
|
1760
|
+
|
1761
|
+
yield(application) if block_given?
|
1762
|
+
append(application)
|
1763
|
+
end
|
1764
|
+
end
|
1765
|
+
|
1766
|
+
##
|
1767
|
+
# <Application> TwiML Noun
|
1768
|
+
class Application < TwiML
|
1769
|
+
def initialize(application_sid: nil, **keyword_args)
|
1770
|
+
super(**keyword_args)
|
1771
|
+
@name = 'Application'
|
1772
|
+
@value = application_sid unless application_sid.nil?
|
1773
|
+
yield(self) if block_given?
|
1774
|
+
end
|
1775
|
+
|
1776
|
+
##
|
1777
|
+
# Create a new <ApplicationSid> element
|
1778
|
+
# sid:: Application sid to dial
|
1779
|
+
# keyword_args:: additional attributes
|
1780
|
+
def application_sid(sid, **keyword_args)
|
1781
|
+
append(ApplicationSid.new(sid, **keyword_args))
|
1782
|
+
end
|
1783
|
+
|
1784
|
+
##
|
1785
|
+
# Create a new <Parameter> element
|
1786
|
+
# name:: The name of the custom parameter
|
1787
|
+
# value:: The value of the custom parameter
|
482
1788
|
# keyword_args:: additional attributes
|
483
|
-
def
|
484
|
-
append(
|
1789
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
1790
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
1791
|
+
end
|
1792
|
+
end
|
1793
|
+
|
1794
|
+
##
|
1795
|
+
# <ApplicationSid> TwiML Noun
|
1796
|
+
class ApplicationSid < TwiML
|
1797
|
+
def initialize(sid, **keyword_args)
|
1798
|
+
super(**keyword_args)
|
1799
|
+
@name = 'ApplicationSid'
|
1800
|
+
@value = sid
|
1801
|
+
yield(self) if block_given?
|
485
1802
|
end
|
486
1803
|
end
|
487
1804
|
|
@@ -532,9 +1849,316 @@ module Twilio
|
|
532
1849
|
##
|
533
1850
|
# <Client> TwiML Noun
|
534
1851
|
class Client < TwiML
|
535
|
-
def initialize(
|
1852
|
+
def initialize(identity: nil, **keyword_args)
|
536
1853
|
super(**keyword_args)
|
537
1854
|
@name = 'Client'
|
1855
|
+
@value = identity unless identity.nil?
|
1856
|
+
yield(self) if block_given?
|
1857
|
+
end
|
1858
|
+
|
1859
|
+
##
|
1860
|
+
# Create a new <Identity> element
|
1861
|
+
# client_identity:: Identity of the client to dial
|
1862
|
+
# keyword_args:: additional attributes
|
1863
|
+
def identity(client_identity, **keyword_args)
|
1864
|
+
append(Identity.new(client_identity, **keyword_args))
|
1865
|
+
end
|
1866
|
+
|
1867
|
+
##
|
1868
|
+
# Create a new <Parameter> element
|
1869
|
+
# name:: The name of the custom parameter
|
1870
|
+
# value:: The value of the custom parameter
|
1871
|
+
# keyword_args:: additional attributes
|
1872
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
1873
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
1874
|
+
end
|
1875
|
+
end
|
1876
|
+
|
1877
|
+
##
|
1878
|
+
# <Identity> TwiML Noun
|
1879
|
+
class Identity < TwiML
|
1880
|
+
def initialize(client_identity, **keyword_args)
|
1881
|
+
super(**keyword_args)
|
1882
|
+
@name = 'Identity'
|
1883
|
+
@value = client_identity
|
1884
|
+
yield(self) if block_given?
|
1885
|
+
end
|
1886
|
+
end
|
1887
|
+
|
1888
|
+
##
|
1889
|
+
# <Connect> TwiML Verb
|
1890
|
+
class Connect < TwiML
|
1891
|
+
def initialize(**keyword_args)
|
1892
|
+
super(**keyword_args)
|
1893
|
+
@name = 'Connect'
|
1894
|
+
|
1895
|
+
yield(self) if block_given?
|
1896
|
+
end
|
1897
|
+
|
1898
|
+
##
|
1899
|
+
# Create a new <Room> element
|
1900
|
+
# name:: Room name
|
1901
|
+
# participant_identity:: Participant identity when connecting to the Room
|
1902
|
+
# keyword_args:: additional attributes
|
1903
|
+
def room(name, participant_identity: nil, **keyword_args)
|
1904
|
+
append(Room.new(name, participant_identity: participant_identity, **keyword_args))
|
1905
|
+
end
|
1906
|
+
|
1907
|
+
##
|
1908
|
+
# Create a new <Autopilot> element
|
1909
|
+
# name:: Autopilot assistant sid or unique name
|
1910
|
+
# keyword_args:: additional attributes
|
1911
|
+
def autopilot(name, **keyword_args)
|
1912
|
+
append(Autopilot.new(name, **keyword_args))
|
1913
|
+
end
|
1914
|
+
|
1915
|
+
##
|
1916
|
+
# Create a new <Stream> element
|
1917
|
+
# name:: Friendly name given to the Stream
|
1918
|
+
# connector_name:: Unique name for Stream Connector
|
1919
|
+
# url:: URL of the remote service where the Stream is routed
|
1920
|
+
# track:: Track to be streamed to remote service
|
1921
|
+
# status_callback:: Status Callback URL
|
1922
|
+
# status_callback_method:: Status Callback URL method
|
1923
|
+
# keyword_args:: additional attributes
|
1924
|
+
def stream(name: nil, connector_name: nil, url: nil, track: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
|
1925
|
+
stream = Stream.new(name: name, connector_name: connector_name, url: url, track: track, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
|
1926
|
+
|
1927
|
+
yield(stream) if block_given?
|
1928
|
+
append(stream)
|
1929
|
+
end
|
1930
|
+
|
1931
|
+
##
|
1932
|
+
# Create a new <VirtualAgent> element
|
1933
|
+
# connector_name:: Defines the conversation profile Dialogflow needs to use
|
1934
|
+
# language:: Language to be used by Dialogflow to transcribe speech
|
1935
|
+
# sentiment_analysis:: Whether sentiment analysis needs to be enabled or not
|
1936
|
+
# status_callback:: URL to post status callbacks from Twilio
|
1937
|
+
# status_callback_method:: HTTP method to use when requesting the status callback URL
|
1938
|
+
# keyword_args:: additional attributes
|
1939
|
+
def virtual_agent(connector_name: nil, language: nil, sentiment_analysis: nil, status_callback: nil, status_callback_method: nil, **keyword_args)
|
1940
|
+
virtual_agent = VirtualAgent.new(connector_name: connector_name, language: language, sentiment_analysis: sentiment_analysis, status_callback: status_callback, status_callback_method: status_callback_method, **keyword_args)
|
1941
|
+
|
1942
|
+
yield(virtual_agent) if block_given?
|
1943
|
+
append(virtual_agent)
|
1944
|
+
end
|
1945
|
+
|
1946
|
+
##
|
1947
|
+
# Create a new <Conversation> element
|
1948
|
+
# service_instance_sid:: Service instance Sid
|
1949
|
+
# inbound_autocreation:: Inbound autocreation
|
1950
|
+
# routing_assignment_timeout:: Routing assignment timeout
|
1951
|
+
# inbound_timeout:: Inbound timeout
|
1952
|
+
# url:: TwiML URL
|
1953
|
+
# method:: TwiML URL method
|
1954
|
+
# record:: Record
|
1955
|
+
# trim:: Trim
|
1956
|
+
# recording_status_callback:: Recording status callback URL
|
1957
|
+
# recording_status_callback_method:: Recording status callback URL method
|
1958
|
+
# recording_status_callback_event:: Recording status callback events
|
1959
|
+
# status_callback:: Status callback URL
|
1960
|
+
# status_callback_method:: Status callback URL method
|
1961
|
+
# status_callback_event:: Events to call status callback URL
|
1962
|
+
# keyword_args:: additional attributes
|
1963
|
+
def conversation(service_instance_sid: nil, inbound_autocreation: nil, routing_assignment_timeout: nil, inbound_timeout: nil, url: nil, method: nil, record: nil, trim: nil, recording_status_callback: nil, recording_status_callback_method: nil, recording_status_callback_event: nil, status_callback: nil, status_callback_method: nil, status_callback_event: nil, **keyword_args)
|
1964
|
+
append(Conversation.new(service_instance_sid: service_instance_sid, inbound_autocreation: inbound_autocreation, routing_assignment_timeout: routing_assignment_timeout, inbound_timeout: inbound_timeout, url: url, method: method, record: record, trim: trim, recording_status_callback: recording_status_callback, recording_status_callback_method: recording_status_callback_method, recording_status_callback_event: recording_status_callback_event, status_callback: status_callback, status_callback_method: status_callback_method, status_callback_event: status_callback_event, **keyword_args))
|
1965
|
+
end
|
1966
|
+
|
1967
|
+
##
|
1968
|
+
# Create a new <ConversationRelay> element
|
1969
|
+
# url:: URL of the remote service where the session is connected to
|
1970
|
+
# language:: Language to be used for both text-to-speech and transcription
|
1971
|
+
# tts_language:: Language to be used for text-to-speech
|
1972
|
+
# transcription_language:: Language to be used for transcription
|
1973
|
+
# tts_provider:: Provider to be used for text-to-speech
|
1974
|
+
# voice:: Voice to be used for text-to-speech
|
1975
|
+
# transcription_provider:: Provider to be used for transcription
|
1976
|
+
# speech_model:: Speech model to be used for transcription
|
1977
|
+
# profanity_filter:: Whether profanities should be filtered out of the speech transcription
|
1978
|
+
# dtmf_detection:: Whether DTMF tones should be detected and reported in speech transcription
|
1979
|
+
# welcome_greeting:: The sentence to be played automatically when the session is connected
|
1980
|
+
# partial_prompts:: Whether partial prompts should be reported to WebSocket server before the caller finishes speaking
|
1981
|
+
# welcome_greeting_interruptible:: "Whether and how the input from a caller, such as speaking or DTMF can interrupt the welcome greeting
|
1982
|
+
# interruptible:: Whether and how the input from a caller, such as speaking or DTMF can interrupt the play of text-to-speech
|
1983
|
+
# preemptible:: Whether subsequent text-to-speech or play media can interrupt the on-going play of text-to-speech or media
|
1984
|
+
# hints:: Phrases to help better accuracy in speech recognition of these pharases
|
1985
|
+
# intelligence_service:: The Conversational Intelligence Service id or unique name to be used for the session
|
1986
|
+
# report_input_during_agent_speech:: Whether prompts should be reported to WebSocket server when text-to-speech playing and interrupt is disabled
|
1987
|
+
# elevenlabs_text_normalization:: When using ElevenLabs as TTS provider, this parameter allows you to enable or disable its text normalization feature
|
1988
|
+
# interrupt_sensitivity:: Set the sensitivity of the interrupt feature for speech. The value can be low, medium, or high
|
1989
|
+
# debug:: Multiple debug options to be used for troubleshooting
|
1990
|
+
# keyword_args:: additional attributes
|
1991
|
+
def conversation_relay(url: nil, language: nil, tts_language: nil, transcription_language: nil, tts_provider: nil, voice: nil, transcription_provider: nil, speech_model: nil, profanity_filter: nil, dtmf_detection: nil, welcome_greeting: nil, partial_prompts: nil, welcome_greeting_interruptible: nil, interruptible: nil, preemptible: nil, hints: nil, intelligence_service: nil, report_input_during_agent_speech: nil, elevenlabs_text_normalization: nil, interrupt_sensitivity: nil, debug: nil, **keyword_args)
|
1992
|
+
conversation_relay = ConversationRelay.new(url: url, language: language, tts_language: tts_language, transcription_language: transcription_language, tts_provider: tts_provider, voice: voice, transcription_provider: transcription_provider, speech_model: speech_model, profanity_filter: profanity_filter, dtmf_detection: dtmf_detection, welcome_greeting: welcome_greeting, partial_prompts: partial_prompts, welcome_greeting_interruptible: welcome_greeting_interruptible, interruptible: interruptible, preemptible: preemptible, hints: hints, intelligence_service: intelligence_service, report_input_during_agent_speech: report_input_during_agent_speech, elevenlabs_text_normalization: elevenlabs_text_normalization, interrupt_sensitivity: interrupt_sensitivity, debug: debug, **keyword_args)
|
1993
|
+
|
1994
|
+
yield(conversation_relay) if block_given?
|
1995
|
+
append(conversation_relay)
|
1996
|
+
end
|
1997
|
+
|
1998
|
+
##
|
1999
|
+
# Create a new <Assistant> element
|
2000
|
+
# id:: The assistant ID of the AI Assistant
|
2001
|
+
# language:: Language to be used for both text-to-speech and transcription
|
2002
|
+
# tts_language:: Language to be used for text-to-speech
|
2003
|
+
# transcription_language:: Language to be used for transcription
|
2004
|
+
# tts_provider:: Provider to be used for text-to-speech
|
2005
|
+
# voice:: Voice to be used for text-to-speech
|
2006
|
+
# transcription_provider:: Provider to be used for transcription
|
2007
|
+
# speech_model:: Speech model to be used for transcription
|
2008
|
+
# profanity_filter:: Whether profanities should be filtered out of the speech transcription
|
2009
|
+
# dtmf_detection:: Whether DTMF tones should be detected and reported in speech transcription
|
2010
|
+
# welcome_greeting:: The sentence to be played automatically when the session is connected
|
2011
|
+
# partial_prompts:: Whether partial prompts should be reported to WebSocket server before the caller finishes speaking
|
2012
|
+
# welcome_greeting_interruptible:: "Whether and how the input from a caller, such as speaking or DTMF can interrupt the welcome greeting
|
2013
|
+
# interruptible:: Whether and how the input from a caller, such as speaking or DTMF can interrupt the play of text-to-speech
|
2014
|
+
# preemptible:: Whether subsequent text-to-speech or play media can interrupt the on-going play of text-to-speech or media
|
2015
|
+
# hints:: Phrases to help better accuracy in speech recognition of these pharases
|
2016
|
+
# intelligence_service:: The Conversational Intelligence Service id or unique name to be used for the session
|
2017
|
+
# report_input_during_agent_speech:: Whether prompts should be reported to WebSocket server when text-to-speech playing and interrupt is disabled
|
2018
|
+
# elevenlabs_text_normalization:: When using ElevenLabs as TTS provider, this parameter allows you to enable or disable its text normalization feature
|
2019
|
+
# interrupt_sensitivity:: Set the sensitivity of the interrupt feature for speech. The value can be low, medium, or high
|
2020
|
+
# debug:: Multiple debug options to be used for troubleshooting
|
2021
|
+
# keyword_args:: additional attributes
|
2022
|
+
def assistant(id: nil, language: nil, tts_language: nil, transcription_language: nil, tts_provider: nil, voice: nil, transcription_provider: nil, speech_model: nil, profanity_filter: nil, dtmf_detection: nil, welcome_greeting: nil, partial_prompts: nil, welcome_greeting_interruptible: nil, interruptible: nil, preemptible: nil, hints: nil, intelligence_service: nil, report_input_during_agent_speech: nil, elevenlabs_text_normalization: nil, interrupt_sensitivity: nil, debug: nil, **keyword_args)
|
2023
|
+
assistant = Assistant.new(id: id, language: language, tts_language: tts_language, transcription_language: transcription_language, tts_provider: tts_provider, voice: voice, transcription_provider: transcription_provider, speech_model: speech_model, profanity_filter: profanity_filter, dtmf_detection: dtmf_detection, welcome_greeting: welcome_greeting, partial_prompts: partial_prompts, welcome_greeting_interruptible: welcome_greeting_interruptible, interruptible: interruptible, preemptible: preemptible, hints: hints, intelligence_service: intelligence_service, report_input_during_agent_speech: report_input_during_agent_speech, elevenlabs_text_normalization: elevenlabs_text_normalization, interrupt_sensitivity: interrupt_sensitivity, debug: debug, **keyword_args)
|
2024
|
+
|
2025
|
+
yield(assistant) if block_given?
|
2026
|
+
append(assistant)
|
2027
|
+
end
|
2028
|
+
end
|
2029
|
+
|
2030
|
+
##
|
2031
|
+
# <Assistant> TwiML Noun
|
2032
|
+
class Assistant < TwiML
|
2033
|
+
def initialize(**keyword_args)
|
2034
|
+
super(**keyword_args)
|
2035
|
+
@name = 'Assistant'
|
2036
|
+
|
2037
|
+
yield(self) if block_given?
|
2038
|
+
end
|
2039
|
+
|
2040
|
+
##
|
2041
|
+
# Create a new <Language> element
|
2042
|
+
# code:: Language code of this language setting is for
|
2043
|
+
# tts_provider:: Provider to be used for text-to-speech of this language
|
2044
|
+
# voice:: Voice to be used for text-to-speech of this language
|
2045
|
+
# transcription_provider:: Provider to be used for transcription of this language
|
2046
|
+
# speech_model:: Speech model to be used for transcription of this language
|
2047
|
+
# keyword_args:: additional attributes
|
2048
|
+
def language(code: nil, tts_provider: nil, voice: nil, transcription_provider: nil, speech_model: nil, **keyword_args)
|
2049
|
+
append(Language.new(code: code, tts_provider: tts_provider, voice: voice, transcription_provider: transcription_provider, speech_model: speech_model, **keyword_args))
|
2050
|
+
end
|
2051
|
+
|
2052
|
+
##
|
2053
|
+
# Create a new <Parameter> element
|
2054
|
+
# name:: The name of the custom parameter
|
2055
|
+
# value:: The value of the custom parameter
|
2056
|
+
# keyword_args:: additional attributes
|
2057
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
2058
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
2059
|
+
end
|
2060
|
+
end
|
2061
|
+
|
2062
|
+
##
|
2063
|
+
# <Language> TwiML Noun
|
2064
|
+
class Language < TwiML
|
2065
|
+
def initialize(**keyword_args)
|
2066
|
+
super(**keyword_args)
|
2067
|
+
@name = 'Language'
|
2068
|
+
|
2069
|
+
yield(self) if block_given?
|
2070
|
+
end
|
2071
|
+
end
|
2072
|
+
|
2073
|
+
##
|
2074
|
+
# <ConversationRelay> TwiML Noun
|
2075
|
+
class ConversationRelay < TwiML
|
2076
|
+
def initialize(**keyword_args)
|
2077
|
+
super(**keyword_args)
|
2078
|
+
@name = 'ConversationRelay'
|
2079
|
+
|
2080
|
+
yield(self) if block_given?
|
2081
|
+
end
|
2082
|
+
|
2083
|
+
##
|
2084
|
+
# Create a new <Language> element
|
2085
|
+
# code:: Language code of this language setting is for
|
2086
|
+
# tts_provider:: Provider to be used for text-to-speech of this language
|
2087
|
+
# voice:: Voice to be used for text-to-speech of this language
|
2088
|
+
# transcription_provider:: Provider to be used for transcription of this language
|
2089
|
+
# speech_model:: Speech model to be used for transcription of this language
|
2090
|
+
# keyword_args:: additional attributes
|
2091
|
+
def language(code: nil, tts_provider: nil, voice: nil, transcription_provider: nil, speech_model: nil, **keyword_args)
|
2092
|
+
append(Language.new(code: code, tts_provider: tts_provider, voice: voice, transcription_provider: transcription_provider, speech_model: speech_model, **keyword_args))
|
2093
|
+
end
|
2094
|
+
|
2095
|
+
##
|
2096
|
+
# Create a new <Parameter> element
|
2097
|
+
# name:: The name of the custom parameter
|
2098
|
+
# value:: The value of the custom parameter
|
2099
|
+
# keyword_args:: additional attributes
|
2100
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
2101
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
2102
|
+
end
|
2103
|
+
end
|
2104
|
+
|
2105
|
+
##
|
2106
|
+
# <Conversation> TwiML Noun
|
2107
|
+
class Conversation < TwiML
|
2108
|
+
def initialize(**keyword_args)
|
2109
|
+
super(**keyword_args)
|
2110
|
+
@name = 'Conversation'
|
2111
|
+
|
2112
|
+
yield(self) if block_given?
|
2113
|
+
end
|
2114
|
+
end
|
2115
|
+
|
2116
|
+
##
|
2117
|
+
# <VirtualAgent> TwiML Noun
|
2118
|
+
class VirtualAgent < TwiML
|
2119
|
+
def initialize(**keyword_args)
|
2120
|
+
super(**keyword_args)
|
2121
|
+
@name = 'VirtualAgent'
|
2122
|
+
|
2123
|
+
yield(self) if block_given?
|
2124
|
+
end
|
2125
|
+
|
2126
|
+
##
|
2127
|
+
# Create a new <Config> element
|
2128
|
+
# name:: The name of the custom config
|
2129
|
+
# value:: The value of the custom config
|
2130
|
+
# keyword_args:: additional attributes
|
2131
|
+
def config(name: nil, value: nil, **keyword_args)
|
2132
|
+
append(Config.new(name: name, value: value, **keyword_args))
|
2133
|
+
end
|
2134
|
+
|
2135
|
+
##
|
2136
|
+
# Create a new <Parameter> element
|
2137
|
+
# name:: The name of the custom parameter
|
2138
|
+
# value:: The value of the custom parameter
|
2139
|
+
# keyword_args:: additional attributes
|
2140
|
+
def parameter(name: nil, value: nil, **keyword_args)
|
2141
|
+
append(Parameter.new(name: name, value: value, **keyword_args))
|
2142
|
+
end
|
2143
|
+
end
|
2144
|
+
|
2145
|
+
##
|
2146
|
+
# <Autopilot> TwiML Noun
|
2147
|
+
class Autopilot < TwiML
|
2148
|
+
def initialize(name, **keyword_args)
|
2149
|
+
super(**keyword_args)
|
2150
|
+
@name = 'Autopilot'
|
2151
|
+
@value = name
|
2152
|
+
yield(self) if block_given?
|
2153
|
+
end
|
2154
|
+
end
|
2155
|
+
|
2156
|
+
##
|
2157
|
+
# <Room> TwiML Noun
|
2158
|
+
class Room < TwiML
|
2159
|
+
def initialize(name, **keyword_args)
|
2160
|
+
super(**keyword_args)
|
2161
|
+
@name = 'Room'
|
538
2162
|
@value = name
|
539
2163
|
yield(self) if block_given?
|
540
2164
|
end
|