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
@@ -1,607 +1,651 @@
|
|
1
1
|
##
|
2
|
-
#
|
3
|
-
#
|
4
|
-
# |
|
5
|
-
#
|
6
|
-
#
|
7
|
-
#
|
2
|
+
# This code was generated by
|
3
|
+
# ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
|
4
|
+
# | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
|
5
|
+
# | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
|
6
|
+
#
|
7
|
+
# Twilio - Api
|
8
|
+
# This is the public Twilio REST API.
|
9
|
+
#
|
10
|
+
# NOTE: This class is auto generated by OpenAPI Generator.
|
11
|
+
# https://openapi-generator.tech
|
12
|
+
# Do not edit the class manually.
|
13
|
+
#
|
8
14
|
|
9
|
-
module Twilio
|
10
|
-
module REST
|
11
|
-
class Api < Domain
|
12
|
-
class V2010 < Version
|
13
|
-
class AccountContext < InstanceContext
|
14
|
-
class MessageList < ListResource
|
15
|
-
##
|
16
|
-
# Initialize the MessageList
|
17
|
-
# @param [Version] version Version that contains the resource
|
18
|
-
# @param [String] account_sid The unique id of the
|
19
|
-
# [Account](https://www.twilio.com/docs/api/rest/account) that sent this message.
|
20
|
-
# @return [MessageList] MessageList
|
21
|
-
def initialize(version, account_sid: nil)
|
22
|
-
super(version)
|
23
|
-
|
24
|
-
# Path Solution
|
25
|
-
@solution = {account_sid: account_sid}
|
26
|
-
@uri = "/Accounts/#{@solution[:account_sid]}/Messages.json"
|
27
|
-
end
|
28
|
-
|
29
|
-
##
|
30
|
-
# Retrieve a single page of MessageInstance records from the API.
|
31
|
-
# Request is executed immediately.
|
32
|
-
# @param [String] to The destination phone number for SMS/MMS or a [Channel user
|
33
|
-
# address](https://www.twilio.com/docs/api/channels#channel-addresses) for other
|
34
|
-
# 3rd party channels. Destination phone numbers should be formatted with a '+' and
|
35
|
-
# country code e.g., +16175551212
|
36
|
-
# ([E.164](https://www.twilio.com/docs/glossary/what-e164) format).
|
37
|
-
# @param [String] status_callback A URL where Twilio will POST each time your
|
38
|
-
# message status changes to one of the following: `queued`, `failed`, `sent`,
|
39
|
-
# `delivered`, or `undelivered`. Twilio will POST the `MessageSid` along with the
|
40
|
-
# other [standard request
|
41
|
-
# parameters](https://www.twilio.com/docs/api/twiml/sms/twilio_request#request-parameters) as well as `MessageStatus` and `ErrorCode`. If this parameter passed in addition to a `MessagingServiceSid`, Twilio will override the Status Callback URL of the [Messaging Service](https://www.twilio.com/docs/api/messaging/send-messages#messaging-services). URLs must contain a valid hostname (underscores are not allowed).
|
42
|
-
# @param [String] application_sid Twilio will POST `MessageSid` as well as
|
43
|
-
# `MessageStatus=sent` or `MessageStatus=failed` to the URL in the
|
44
|
-
# `MessageStatusCallback` property of this
|
45
|
-
# [Application](https://www.twilio.com/docs/api/rest/applications). If the
|
46
|
-
# `StatusCallback` parameter above is also passed, the Application's
|
47
|
-
# `MessageStatusCallback` parameter will take precedence.
|
48
|
-
# @param [String] max_price The total maximum price up to the fourth decimal
|
49
|
-
# (0.0001) in US dollars acceptable for the message to be delivered. All messages
|
50
|
-
# regardless of the price point will be queued for delivery. A POST request will
|
51
|
-
# later be made to your Status Callback URL with a status change of 'Sent' or
|
52
|
-
# 'Failed'. When the price of the message is above this value the message will
|
53
|
-
# fail and not be sent. When MaxPrice is not set, all prices for the message is
|
54
|
-
# accepted.
|
55
|
-
# @param [Boolean] provide_feedback Set this value to `true` if you are sending
|
56
|
-
# messages that have a trackable user action and you intend to confirm delivery of
|
57
|
-
# the message using the [Message Feedback
|
58
|
-
# API](https://www.twilio.com/docs/api/messaging/message-feedback). This parameter
|
59
|
-
# is set to `false` by default.
|
60
|
-
# @param [String] validity_period The number of seconds that the message can
|
61
|
-
# remain in a Twilio queue. After exceeding this time limit, the message will fail
|
62
|
-
# and a POST request will later be made to your Status Callback URL. Valid values
|
63
|
-
# are between 1 and 14400 seconds (the default). Please note that Twilio cannot
|
64
|
-
# guarantee that a message will not be queued by the carrier after they accept the
|
65
|
-
# message. We do not recommend setting validity periods of less than 5 seconds.
|
66
|
-
# @param [String] max_rate The max_rate
|
67
|
-
# @param [Boolean] force_delivery The force_delivery
|
68
|
-
# @param [String] provider_sid The provider_sid
|
69
|
-
# @param [message.ContentRetention] content_retention The content_retention
|
70
|
-
# @param [message.AddressRetention] address_retention The address_retention
|
71
|
-
# @param [Boolean] smart_encoded The smart_encoded
|
72
|
-
# @param [String] from A Twilio phone number (in
|
73
|
-
# [E.164](https://www.twilio.com/docs/glossary/what-e164) format), [alphanumeric
|
74
|
-
# sender
|
75
|
-
# ID](https://www.twilio.com/docs/api/messaging/send-messages#alpha-sender-id) or
|
76
|
-
# a [Channel Endpoint
|
77
|
-
# address](https://www.twilio.com/docs/api/channels#channel-addresses) enabled for
|
78
|
-
# the type of message you wish to send. Phone numbers or [short
|
79
|
-
# codes](https://www.twilio.com/docs/sms/api/short-codes) purchased from Twilio
|
80
|
-
# work here. You cannot (for example) spoof messages from your own cell phone
|
81
|
-
# number. *Should not be passed if you are using MessagingServiceSid.*
|
82
|
-
# @param [String] messaging_service_sid The 34 character unique id of the
|
83
|
-
# [Messaging
|
84
|
-
# Service](https://www.twilio.com/docs/api/messaging/send-messages#messaging-services) you want to associate with this Message. Set this parameter to use the Messaging Service Settings and [Copilot Features](https://www.twilio.com/docs/api/messaging/send-messages-copilot) you have configured. When only this parameter is set, Twilio will use your enabled Copilot Features to select the From phone number for delivery. *Should not be passed if you are using From.*
|
85
|
-
# @param [String] body The text of the message you want to send, limited to 1600
|
86
|
-
# characters.
|
87
|
-
# @param [String] media_url The URL of the media you wish to send out with the
|
88
|
-
# message. `gif` , `png` and `jpeg` content is currently supported and will be
|
89
|
-
# formatted correctly on the recipient's device. [Other
|
90
|
-
# types](https://www.twilio.com/docs/api/messaging/accepted-mime-types) are also
|
91
|
-
# accepted by the API. The media size limit is 5MB. If you wish to send more than
|
92
|
-
# one image in the message body, please provide multiple MediaUrls values in the
|
93
|
-
# POST request. You may include up to 10 MediaUrls per message.
|
94
|
-
# @return [MessageInstance] Newly created MessageInstance
|
95
|
-
def create(to: nil, status_callback: :unset, application_sid: :unset, max_price: :unset, provide_feedback: :unset, validity_period: :unset, max_rate: :unset, force_delivery: :unset, provider_sid: :unset, content_retention: :unset, address_retention: :unset, smart_encoded: :unset, from: :unset, messaging_service_sid: :unset, body: :unset, media_url: :unset)
|
96
|
-
data = Twilio::Values.of({
|
97
|
-
'To' => to,
|
98
|
-
'From' => from,
|
99
|
-
'MessagingServiceSid' => messaging_service_sid,
|
100
|
-
'Body' => body,
|
101
|
-
'MediaUrl' => Twilio.serialize_list(media_url) { |e| e },
|
102
|
-
'StatusCallback' => status_callback,
|
103
|
-
'ApplicationSid' => application_sid,
|
104
|
-
'MaxPrice' => max_price,
|
105
|
-
'ProvideFeedback' => provide_feedback,
|
106
|
-
'ValidityPeriod' => validity_period,
|
107
|
-
'MaxRate' => max_rate,
|
108
|
-
'ForceDelivery' => force_delivery,
|
109
|
-
'ProviderSid' => provider_sid,
|
110
|
-
'ContentRetention' => content_retention,
|
111
|
-
'AddressRetention' => address_retention,
|
112
|
-
'SmartEncoded' => smart_encoded,
|
113
|
-
})
|
114
|
-
|
115
|
-
payload = @version.create(
|
116
|
-
'POST',
|
117
|
-
@uri,
|
118
|
-
data: data
|
119
|
-
)
|
120
|
-
|
121
|
-
MessageInstance.new(@version, payload, account_sid: @solution[:account_sid], )
|
122
|
-
end
|
123
|
-
|
124
|
-
##
|
125
|
-
# Lists MessageInstance records from the API as a list.
|
126
|
-
# Unlike stream(), this operation is eager and will load `limit` records into
|
127
|
-
# memory before returning.
|
128
|
-
# @param [String] to Only show messages to this phone number.
|
129
|
-
# @param [String] from Only show messages from this phone number or alphanumeric
|
130
|
-
# sender ID.
|
131
|
-
# @param [Time] date_sent_before Filter by date sent
|
132
|
-
# @param [Time] date_sent Filter by date sent
|
133
|
-
# @param [Time] date_sent_after Filter by date sent
|
134
|
-
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
135
|
-
# guarantees to never return more than limit. Default is no limit
|
136
|
-
# @param [Integer] page_size Number of records to fetch per request, when
|
137
|
-
# not set will use the default value of 50 records. If no page_size is defined
|
138
|
-
# but a limit is defined, stream() will attempt to read the limit with the most
|
139
|
-
# efficient page size, i.e. min(limit, 1000)
|
140
|
-
# @return [Array] Array of up to limit results
|
141
|
-
def list(to: :unset, from: :unset, date_sent_before: :unset, date_sent: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
|
142
|
-
self.stream(
|
143
|
-
to: to,
|
144
|
-
from: from,
|
145
|
-
date_sent_before: date_sent_before,
|
146
|
-
date_sent: date_sent,
|
147
|
-
date_sent_after: date_sent_after,
|
148
|
-
limit: limit,
|
149
|
-
page_size: page_size
|
150
|
-
).entries
|
151
|
-
end
|
152
|
-
|
153
|
-
##
|
154
|
-
# Streams MessageInstance records from the API as an Enumerable.
|
155
|
-
# This operation lazily loads records as efficiently as possible until the limit
|
156
|
-
# is reached.
|
157
|
-
# @param [String] to Only show messages to this phone number.
|
158
|
-
# @param [String] from Only show messages from this phone number or alphanumeric
|
159
|
-
# sender ID.
|
160
|
-
# @param [Time] date_sent_before Filter by date sent
|
161
|
-
# @param [Time] date_sent Filter by date sent
|
162
|
-
# @param [Time] date_sent_after Filter by date sent
|
163
|
-
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
164
|
-
# guarantees to never return more than limit. Default is no limit.
|
165
|
-
# @param [Integer] page_size Number of records to fetch per request, when
|
166
|
-
# not set will use the default value of 50 records. If no page_size is defined
|
167
|
-
# but a limit is defined, stream() will attempt to read the limit with the most
|
168
|
-
# efficient page size, i.e. min(limit, 1000)
|
169
|
-
# @return [Enumerable] Enumerable that will yield up to limit results
|
170
|
-
def stream(to: :unset, from: :unset, date_sent_before: :unset, date_sent: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
|
171
|
-
limits = @version.read_limits(limit, page_size)
|
172
|
-
|
173
|
-
page = self.page(
|
174
|
-
to: to,
|
175
|
-
from: from,
|
176
|
-
date_sent_before: date_sent_before,
|
177
|
-
date_sent: date_sent,
|
178
|
-
date_sent_after: date_sent_after,
|
179
|
-
page_size: limits[:page_size],
|
180
|
-
)
|
181
|
-
|
182
|
-
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
183
|
-
end
|
184
|
-
|
185
|
-
##
|
186
|
-
# When passed a block, yields MessageInstance records from the API.
|
187
|
-
# This operation lazily loads records as efficiently as possible until the limit
|
188
|
-
# is reached.
|
189
|
-
def each
|
190
|
-
limits = @version.read_limits
|
191
|
-
|
192
|
-
page = self.page(page_size: limits[:page_size], )
|
193
|
-
|
194
|
-
@version.stream(page,
|
195
|
-
limit: limits[:limit],
|
196
|
-
page_limit: limits[:page_limit]).each {|x| yield x}
|
197
|
-
end
|
198
|
-
|
199
|
-
##
|
200
|
-
# Retrieve a single page of MessageInstance records from the API.
|
201
|
-
# Request is executed immediately.
|
202
|
-
# @param [String] to Only show messages to this phone number.
|
203
|
-
# @param [String] from Only show messages from this phone number or alphanumeric
|
204
|
-
# sender ID.
|
205
|
-
# @param [Time] date_sent_before Filter by date sent
|
206
|
-
# @param [Time] date_sent Filter by date sent
|
207
|
-
# @param [Time] date_sent_after Filter by date sent
|
208
|
-
# @param [String] page_token PageToken provided by the API
|
209
|
-
# @param [Integer] page_number Page Number, this value is simply for client state
|
210
|
-
# @param [Integer] page_size Number of records to return, defaults to 50
|
211
|
-
# @return [Page] Page of MessageInstance
|
212
|
-
def page(to: :unset, from: :unset, date_sent_before: :unset, date_sent: :unset, date_sent_after: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
|
213
|
-
params = Twilio::Values.of({
|
214
|
-
'To' => to,
|
215
|
-
'From' => from,
|
216
|
-
'DateSent<' => Twilio.serialize_iso8601_datetime(date_sent_before),
|
217
|
-
'DateSent' => Twilio.serialize_iso8601_datetime(date_sent),
|
218
|
-
'DateSent>' => Twilio.serialize_iso8601_datetime(date_sent_after),
|
219
|
-
'PageToken' => page_token,
|
220
|
-
'Page' => page_number,
|
221
|
-
'PageSize' => page_size,
|
222
|
-
})
|
223
|
-
response = @version.page(
|
224
|
-
'GET',
|
225
|
-
@uri,
|
226
|
-
params
|
227
|
-
)
|
228
|
-
MessagePage.new(@version, response, @solution)
|
229
|
-
end
|
230
|
-
|
231
|
-
##
|
232
|
-
# Retrieve a single page of MessageInstance records from the API.
|
233
|
-
# Request is executed immediately.
|
234
|
-
# @param [String] target_url API-generated URL for the requested results page
|
235
|
-
# @return [Page] Page of MessageInstance
|
236
|
-
def get_page(target_url)
|
237
|
-
response = @version.domain.request(
|
238
|
-
'GET',
|
239
|
-
target_url
|
240
|
-
)
|
241
|
-
MessagePage.new(@version, response, @solution)
|
242
|
-
end
|
243
|
-
|
244
|
-
##
|
245
|
-
# Provide a user friendly representation
|
246
|
-
def to_s
|
247
|
-
'#<Twilio.Api.V2010.MessageList>'
|
248
|
-
end
|
249
|
-
end
|
250
|
-
|
251
|
-
class MessagePage < Page
|
252
|
-
##
|
253
|
-
# Initialize the MessagePage
|
254
|
-
# @param [Version] version Version that contains the resource
|
255
|
-
# @param [Response] response Response from the API
|
256
|
-
# @param [Hash] solution Path solution for the resource
|
257
|
-
# @return [MessagePage] MessagePage
|
258
|
-
def initialize(version, response, solution)
|
259
|
-
super(version, response)
|
260
|
-
|
261
|
-
# Path Solution
|
262
|
-
@solution = solution
|
263
|
-
end
|
264
|
-
|
265
|
-
##
|
266
|
-
# Build an instance of MessageInstance
|
267
|
-
# @param [Hash] payload Payload response from the API
|
268
|
-
# @return [MessageInstance] MessageInstance
|
269
|
-
def get_instance(payload)
|
270
|
-
MessageInstance.new(@version, payload, account_sid: @solution[:account_sid], )
|
271
|
-
end
|
272
|
-
|
273
|
-
##
|
274
|
-
# Provide a user friendly representation
|
275
|
-
def to_s
|
276
|
-
'<Twilio.Api.V2010.MessagePage>'
|
277
|
-
end
|
278
|
-
end
|
279
|
-
|
280
|
-
class MessageContext < InstanceContext
|
281
|
-
##
|
282
|
-
# Initialize the MessageContext
|
283
|
-
# @param [Version] version Version that contains the resource
|
284
|
-
# @param [String] account_sid The account_sid
|
285
|
-
# @param [String] sid The message Sid that uniquely identifies this resource
|
286
|
-
# @return [MessageContext] MessageContext
|
287
|
-
def initialize(version, account_sid, sid)
|
288
|
-
super(version)
|
289
|
-
|
290
|
-
# Path Solution
|
291
|
-
@solution = {account_sid: account_sid, sid: sid, }
|
292
|
-
@uri = "/Accounts/#{@solution[:account_sid]}/Messages/#{@solution[:sid]}.json"
|
293
|
-
|
294
|
-
# Dependents
|
295
|
-
@media = nil
|
296
|
-
@feedback = nil
|
297
|
-
end
|
298
|
-
|
299
|
-
##
|
300
|
-
# Deletes the MessageInstance
|
301
|
-
# @return [Boolean] true if delete succeeds, true otherwise
|
302
|
-
def delete
|
303
|
-
@version.delete('delete', @uri)
|
304
|
-
end
|
305
|
-
|
306
|
-
##
|
307
|
-
# Fetch a MessageInstance
|
308
|
-
# @return [MessageInstance] Fetched MessageInstance
|
309
|
-
def fetch
|
310
|
-
params = Twilio::Values.of({})
|
311
|
-
|
312
|
-
payload = @version.fetch(
|
313
|
-
'GET',
|
314
|
-
@uri,
|
315
|
-
params,
|
316
|
-
)
|
317
|
-
|
318
|
-
MessageInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
|
319
|
-
end
|
320
|
-
|
321
|
-
##
|
322
|
-
# Update the MessageInstance
|
323
|
-
# @param [String] body The text of the message you want to send, limited to 1600
|
324
|
-
# characters.
|
325
|
-
# @return [MessageInstance] Updated MessageInstance
|
326
|
-
def update(body: nil)
|
327
|
-
data = Twilio::Values.of({'Body' => body, })
|
328
|
-
|
329
|
-
payload = @version.update(
|
330
|
-
'POST',
|
331
|
-
@uri,
|
332
|
-
data: data,
|
333
|
-
)
|
334
|
-
|
335
|
-
MessageInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
|
336
|
-
end
|
337
|
-
|
338
|
-
##
|
339
|
-
# Access the media
|
340
|
-
# @return [MediaList]
|
341
|
-
# @return [MediaContext] if sid was passed.
|
342
|
-
def media(sid=:unset)
|
343
|
-
raise ArgumentError, 'sid cannot be nil' if sid.nil?
|
344
|
-
|
345
|
-
if sid != :unset
|
346
|
-
return MediaContext.new(@version, @solution[:account_sid], @solution[:sid], sid, )
|
347
|
-
end
|
348
|
-
|
349
|
-
unless @media
|
350
|
-
@media = MediaList.new(@version, account_sid: @solution[:account_sid], message_sid: @solution[:sid], )
|
351
|
-
end
|
352
|
-
|
353
|
-
@media
|
354
|
-
end
|
355
|
-
|
356
|
-
##
|
357
|
-
# Access the feedback
|
358
|
-
# @return [FeedbackList]
|
359
|
-
# @return [FeedbackContext]
|
360
|
-
def feedback
|
361
|
-
unless @feedback
|
362
|
-
@feedback = FeedbackList.new(
|
363
|
-
@version,
|
364
|
-
account_sid: @solution[:account_sid],
|
365
|
-
message_sid: @solution[:sid],
|
366
|
-
)
|
367
|
-
end
|
368
|
-
|
369
|
-
@feedback
|
370
|
-
end
|
371
|
-
|
372
|
-
##
|
373
|
-
# Provide a user friendly representation
|
374
|
-
def to_s
|
375
|
-
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
376
|
-
"#<Twilio.Api.V2010.MessageContext #{context}>"
|
377
|
-
end
|
378
|
-
end
|
379
|
-
|
380
|
-
class MessageInstance < InstanceResource
|
381
|
-
##
|
382
|
-
# Initialize the MessageInstance
|
383
|
-
# @param [Version] version Version that contains the resource
|
384
|
-
# @param [Hash] payload payload that contains response from Twilio
|
385
|
-
# @param [String] account_sid The unique id of the
|
386
|
-
# [Account](https://www.twilio.com/docs/api/rest/account) that sent this message.
|
387
|
-
# @param [String] sid The message Sid that uniquely identifies this resource
|
388
|
-
# @return [MessageInstance] MessageInstance
|
389
|
-
def initialize(version, payload, account_sid: nil, sid: nil)
|
390
|
-
super(version)
|
391
|
-
|
392
|
-
# Marshaled Properties
|
393
|
-
@properties = {
|
394
|
-
'account_sid' => payload['account_sid'],
|
395
|
-
'api_version' => payload['api_version'],
|
396
|
-
'body' => payload['body'],
|
397
|
-
'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
|
398
|
-
'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
|
399
|
-
'date_sent' => Twilio.deserialize_rfc2822(payload['date_sent']),
|
400
|
-
'direction' => payload['direction'],
|
401
|
-
'error_code' => payload['error_code'].to_i,
|
402
|
-
'error_message' => payload['error_message'],
|
403
|
-
'from' => payload['from'],
|
404
|
-
'messaging_service_sid' => payload['messaging_service_sid'],
|
405
|
-
'num_media' => payload['num_media'],
|
406
|
-
'num_segments' => payload['num_segments'],
|
407
|
-
'price' => payload['price'].to_f,
|
408
|
-
'price_unit' => payload['price_unit'],
|
409
|
-
'sid' => payload['sid'],
|
410
|
-
'status' => payload['status'],
|
411
|
-
'subresource_uris' => payload['subresource_uris'],
|
412
|
-
'to' => payload['to'],
|
413
|
-
'uri' => payload['uri'],
|
414
|
-
}
|
415
|
-
|
416
|
-
# Context
|
417
|
-
@instance_context = nil
|
418
|
-
@params = {'account_sid' => account_sid, 'sid' => sid || @properties['sid'], }
|
419
|
-
end
|
420
|
-
|
421
|
-
##
|
422
|
-
# Generate an instance context for the instance, the context is capable of
|
423
|
-
# performing various actions. All instance actions are proxied to the context
|
424
|
-
# @return [MessageContext] MessageContext for this MessageInstance
|
425
|
-
def context
|
426
|
-
unless @instance_context
|
427
|
-
@instance_context = MessageContext.new(@version, @params['account_sid'], @params['sid'], )
|
428
|
-
end
|
429
|
-
@instance_context
|
430
|
-
end
|
431
|
-
|
432
|
-
##
|
433
|
-
# @return [String] The unique sid that identifies this account
|
434
|
-
def account_sid
|
435
|
-
@properties['account_sid']
|
436
|
-
end
|
437
|
-
|
438
|
-
##
|
439
|
-
# @return [String] The version of the Twilio API used to process the message.
|
440
|
-
def api_version
|
441
|
-
@properties['api_version']
|
442
|
-
end
|
443
|
-
|
444
|
-
##
|
445
|
-
# @return [String] The text body of the message. Up to 1600 characters long.
|
446
|
-
def body
|
447
|
-
@properties['body']
|
448
|
-
end
|
449
15
|
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
600
|
-
|
16
|
+
module Twilio
|
17
|
+
module REST
|
18
|
+
class Api < ApiBase
|
19
|
+
class V2010 < Version
|
20
|
+
class AccountContext < InstanceContext
|
21
|
+
|
22
|
+
class MessageList < ListResource
|
23
|
+
|
24
|
+
##
|
25
|
+
# Initialize the MessageList
|
26
|
+
# @param [Version] version Version that contains the resource
|
27
|
+
# @return [MessageList] MessageList
|
28
|
+
def initialize(version, account_sid: nil)
|
29
|
+
super(version)
|
30
|
+
# Path Solution
|
31
|
+
@solution = { account_sid: account_sid }
|
32
|
+
@uri = "/Accounts/#{@solution[:account_sid]}/Messages.json"
|
33
|
+
|
34
|
+
end
|
35
|
+
##
|
36
|
+
# Create the MessageInstance
|
37
|
+
# @param [String] to The recipient's phone number in [E.164](https://www.twilio.com/docs/glossary/what-e164) format (for SMS/MMS) or [channel address](https://www.twilio.com/docs/messaging/channels), e.g. `whatsapp:+15552229999`.
|
38
|
+
# @param [String] status_callback The URL of the endpoint to which Twilio sends [Message status callback requests](https://www.twilio.com/docs/sms/api/message-resource#twilios-request-to-the-statuscallback-url). URL must contain a valid hostname and underscores are not allowed. If you include this parameter with the `messaging_service_sid`, Twilio uses this URL instead of the Status Callback URL of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource).
|
39
|
+
# @param [String] application_sid The SID of the associated [TwiML Application](https://www.twilio.com/docs/usage/api/applications). [Message status callback requests](https://www.twilio.com/docs/sms/api/message-resource#twilios-request-to-the-statuscallback-url) are sent to the TwiML App's `message_status_callback` URL. Note that the `status_callback` parameter of a request takes priority over the `application_sid` parameter; if both are included `application_sid` is ignored.
|
40
|
+
# @param [Float] max_price [OBSOLETE] This parameter will no longer have any effect as of 2024-06-03.
|
41
|
+
# @param [Boolean] provide_feedback Boolean indicating whether or not you intend to provide delivery confirmation feedback to Twilio (used in conjunction with the [Message Feedback subresource](https://www.twilio.com/docs/sms/api/message-feedback-resource)). Default value is `false`.
|
42
|
+
# @param [String] attempt Total number of attempts made (including this request) to send the message regardless of the provider used
|
43
|
+
# @param [String] validity_period The maximum length in seconds that the Message can remain in Twilio's outgoing message queue. If a queued Message exceeds the `validity_period`, the Message is not sent. Accepted values are integers from `1` to `36000`. Default value is `36000`. A `validity_period` greater than `5` is recommended. [Learn more about the validity period](https://www.twilio.com/blog/take-more-control-of-outbound-messages-using-validity-period-html)
|
44
|
+
# @param [Boolean] force_delivery Reserved
|
45
|
+
# @param [ContentRetention] content_retention
|
46
|
+
# @param [AddressRetention] address_retention
|
47
|
+
# @param [Boolean] smart_encoded Whether to detect Unicode characters that have a similar GSM-7 character and replace them. Can be: `true` or `false`.
|
48
|
+
# @param [Array[String]] persistent_action Rich actions for non-SMS/MMS channels. Used for [sending location in WhatsApp messages](https://www.twilio.com/docs/whatsapp/message-features#location-messages-with-whatsapp).
|
49
|
+
# @param [TrafficType] traffic_type
|
50
|
+
# @param [Boolean] shorten_urls For Messaging Services with [Link Shortening configured](https://www.twilio.com/docs/messaging/features/link-shortening) only: A Boolean indicating whether or not Twilio should shorten links in the `body` of the Message. Default value is `false`. If `true`, the `messaging_service_sid` parameter must also be provided.
|
51
|
+
# @param [ScheduleType] schedule_type
|
52
|
+
# @param [Time] send_at The time that Twilio will send the message. Must be in ISO 8601 format.
|
53
|
+
# @param [Boolean] send_as_mms If set to `true`, Twilio delivers the message as a single MMS message, regardless of the presence of media.
|
54
|
+
# @param [String] content_variables For [Content Editor/API](https://www.twilio.com/docs/content) only: Key-value pairs of [Template variables](https://www.twilio.com/docs/content/using-variables-with-content-api) and their substitution values. `content_sid` parameter must also be provided. If values are not defined in the `content_variables` parameter, the [Template's default placeholder values](https://www.twilio.com/docs/content/content-api-resources#create-templates) are used.
|
55
|
+
# @param [RiskCheck] risk_check
|
56
|
+
# @param [String] from The sender's Twilio phone number (in [E.164](https://en.wikipedia.org/wiki/E.164) format), [alphanumeric sender ID](https://www.twilio.com/docs/sms/quickstart), [Wireless SIM](https://www.twilio.com/docs/iot/wireless/programmable-wireless-send-machine-machine-sms-commands), [short code](https://www.twilio.com/en-us/messaging/channels/sms/short-codes), or [channel address](https://www.twilio.com/docs/messaging/channels) (e.g., `whatsapp:+15554449999`). The value of the `from` parameter must be a sender that is hosted within Twilio and belongs to the Account creating the Message. If you are using `messaging_service_sid`, this parameter can be empty (Twilio assigns a `from` value from the Messaging Service's Sender Pool) or you can provide a specific sender from your Sender Pool.
|
57
|
+
# @param [String] messaging_service_sid The SID of the [Messaging Service](https://www.twilio.com/docs/messaging/services) you want to associate with the Message. When this parameter is provided and the `from` parameter is omitted, Twilio selects the optimal sender from the Messaging Service's Sender Pool. You may also provide a `from` parameter if you want to use a specific Sender from the Sender Pool.
|
58
|
+
# @param [String] body The text content of the outgoing message. Can be up to 1,600 characters in length. SMS only: If the `body` contains more than 160 [GSM-7](https://www.twilio.com/docs/glossary/what-is-gsm-7-character-encoding) characters (or 70 [UCS-2](https://www.twilio.com/docs/glossary/what-is-ucs-2-character-encoding) characters), the message is segmented and charged accordingly. For long `body` text, consider using the [send_as_mms parameter](https://www.twilio.com/blog/mms-for-long-text-messages).
|
59
|
+
# @param [Array[String]] media_url The URL of media to include in the Message content. `jpeg`, `jpg`, `gif`, and `png` file types are fully supported by Twilio and content is formatted for delivery on destination devices. The media size limit is 5 MB for supported file types (`jpeg`, `jpg`, `png`, `gif`) and 500 KB for [other types](https://www.twilio.com/docs/messaging/guides/accepted-mime-types) of accepted media. To send more than one image in the message, provide multiple `media_url` parameters in the POST request. You can include up to ten `media_url` parameters per message. [International](https://support.twilio.com/hc/en-us/articles/223179808-Sending-and-receiving-MMS-messages) and [carrier](https://support.twilio.com/hc/en-us/articles/223133707-Is-MMS-supported-for-all-carriers-in-US-and-Canada-) limits apply.
|
60
|
+
# @param [String] content_sid For [Content Editor/API](https://www.twilio.com/docs/content) only: The SID of the Content Template to be used with the Message, e.g., `HXXXXXXXXXXXXXXXXXXXXXXXXXXXXX`. If this parameter is not provided, a Content Template is not used. Find the SID in the Console on the Content Editor page. For Content API users, the SID is found in Twilio's response when [creating the Template](https://www.twilio.com/docs/content/content-api-resources#create-templates) or by [fetching your Templates](https://www.twilio.com/docs/content/content-api-resources#fetch-all-content-resources).
|
61
|
+
# @return [MessageInstance] Created MessageInstance
|
62
|
+
def create(
|
63
|
+
to: nil,
|
64
|
+
status_callback: :unset,
|
65
|
+
application_sid: :unset,
|
66
|
+
max_price: :unset,
|
67
|
+
provide_feedback: :unset,
|
68
|
+
attempt: :unset,
|
69
|
+
validity_period: :unset,
|
70
|
+
force_delivery: :unset,
|
71
|
+
content_retention: :unset,
|
72
|
+
address_retention: :unset,
|
73
|
+
smart_encoded: :unset,
|
74
|
+
persistent_action: :unset,
|
75
|
+
traffic_type: :unset,
|
76
|
+
shorten_urls: :unset,
|
77
|
+
schedule_type: :unset,
|
78
|
+
send_at: :unset,
|
79
|
+
send_as_mms: :unset,
|
80
|
+
content_variables: :unset,
|
81
|
+
risk_check: :unset,
|
82
|
+
from: :unset,
|
83
|
+
messaging_service_sid: :unset,
|
84
|
+
body: :unset,
|
85
|
+
media_url: :unset,
|
86
|
+
content_sid: :unset
|
87
|
+
)
|
88
|
+
|
89
|
+
data = Twilio::Values.of({
|
90
|
+
'To' => to,
|
91
|
+
'StatusCallback' => status_callback,
|
92
|
+
'ApplicationSid' => application_sid,
|
93
|
+
'MaxPrice' => max_price,
|
94
|
+
'ProvideFeedback' => provide_feedback,
|
95
|
+
'Attempt' => attempt,
|
96
|
+
'ValidityPeriod' => validity_period,
|
97
|
+
'ForceDelivery' => force_delivery,
|
98
|
+
'ContentRetention' => content_retention,
|
99
|
+
'AddressRetention' => address_retention,
|
100
|
+
'SmartEncoded' => smart_encoded,
|
101
|
+
'PersistentAction' => Twilio.serialize_list(persistent_action) { |e| e },
|
102
|
+
'TrafficType' => traffic_type,
|
103
|
+
'ShortenUrls' => shorten_urls,
|
104
|
+
'ScheduleType' => schedule_type,
|
105
|
+
'SendAt' => Twilio.serialize_iso8601_datetime(send_at),
|
106
|
+
'SendAsMms' => send_as_mms,
|
107
|
+
'ContentVariables' => content_variables,
|
108
|
+
'RiskCheck' => risk_check,
|
109
|
+
'From' => from,
|
110
|
+
'MessagingServiceSid' => messaging_service_sid,
|
111
|
+
'Body' => body,
|
112
|
+
'MediaUrl' => Twilio.serialize_list(media_url) { |e| e },
|
113
|
+
'ContentSid' => content_sid,
|
114
|
+
})
|
115
|
+
|
116
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
117
|
+
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
payload = @version.create('POST', @uri, data: data, headers: headers)
|
123
|
+
MessageInstance.new(
|
124
|
+
@version,
|
125
|
+
payload,
|
126
|
+
account_sid: @solution[:account_sid],
|
127
|
+
)
|
128
|
+
end
|
129
|
+
|
130
|
+
|
131
|
+
##
|
132
|
+
# Lists MessageInstance records from the API as a list.
|
133
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
134
|
+
# memory before returning.
|
135
|
+
# @param [String] to Filter by recipient. For example: Set this `to` parameter to `+15558881111` to retrieve a list of Message resources with `to` properties of `+15558881111`
|
136
|
+
# @param [String] from Filter by sender. For example: Set this `from` parameter to `+15552229999` to retrieve a list of Message resources with `from` properties of `+15552229999`
|
137
|
+
# @param [Time] date_sent Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
138
|
+
# @param [Time] date_sent_before Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
139
|
+
# @param [Time] date_sent_after Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
140
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
141
|
+
# guarantees to never return more than limit. Default is no limit
|
142
|
+
# @param [Integer] page_size Number of records to fetch per request, when
|
143
|
+
# not set will use the default value of 50 records. If no page_size is defined
|
144
|
+
# but a limit is defined, stream() will attempt to read the limit with the most
|
145
|
+
# efficient page size, i.e. min(limit, 1000)
|
146
|
+
# @return [Array] Array of up to limit results
|
147
|
+
def list(to: :unset, from: :unset, date_sent: :unset, date_sent_before: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
|
148
|
+
self.stream(
|
149
|
+
to: to,
|
150
|
+
from: from,
|
151
|
+
date_sent: date_sent,
|
152
|
+
date_sent_before: date_sent_before,
|
153
|
+
date_sent_after: date_sent_after,
|
154
|
+
limit: limit,
|
155
|
+
page_size: page_size
|
156
|
+
).entries
|
157
|
+
end
|
158
|
+
|
159
|
+
##
|
160
|
+
# Streams Instance records from the API as an Enumerable.
|
161
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
162
|
+
# is reached.
|
163
|
+
# @param [String] to Filter by recipient. For example: Set this `to` parameter to `+15558881111` to retrieve a list of Message resources with `to` properties of `+15558881111`
|
164
|
+
# @param [String] from Filter by sender. For example: Set this `from` parameter to `+15552229999` to retrieve a list of Message resources with `from` properties of `+15552229999`
|
165
|
+
# @param [Time] date_sent Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
166
|
+
# @param [Time] date_sent_before Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
167
|
+
# @param [Time] date_sent_after Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
168
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
169
|
+
# guarantees to never return more than limit. Default is no limit
|
170
|
+
# @param [Integer] page_size Number of records to fetch per request, when
|
171
|
+
# not set will use the default value of 50 records. If no page_size is defined
|
172
|
+
# but a limit is defined, stream() will attempt to read the limit with the most
|
173
|
+
# efficient page size, i.e. min(limit, 1000)
|
174
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
175
|
+
def stream(to: :unset, from: :unset, date_sent: :unset, date_sent_before: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
|
176
|
+
limits = @version.read_limits(limit, page_size)
|
177
|
+
|
178
|
+
page = self.page(
|
179
|
+
to: to,
|
180
|
+
from: from,
|
181
|
+
date_sent: date_sent,
|
182
|
+
date_sent_before: date_sent_before,
|
183
|
+
date_sent_after: date_sent_after,
|
184
|
+
page_size: limits[:page_size], )
|
185
|
+
|
186
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
187
|
+
end
|
188
|
+
|
189
|
+
##
|
190
|
+
# When passed a block, yields MessageInstance records from the API.
|
191
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
192
|
+
# is reached.
|
193
|
+
def each
|
194
|
+
limits = @version.read_limits
|
195
|
+
|
196
|
+
page = self.page(page_size: limits[:page_size], )
|
197
|
+
|
198
|
+
@version.stream(page,
|
199
|
+
limit: limits[:limit],
|
200
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
201
|
+
end
|
202
|
+
|
203
|
+
##
|
204
|
+
# Retrieve a single page of MessageInstance records from the API.
|
205
|
+
# Request is executed immediately.
|
206
|
+
# @param [String] to Filter by recipient. For example: Set this `to` parameter to `+15558881111` to retrieve a list of Message resources with `to` properties of `+15558881111`
|
207
|
+
# @param [String] from Filter by sender. For example: Set this `from` parameter to `+15552229999` to retrieve a list of Message resources with `from` properties of `+15552229999`
|
208
|
+
# @param [Time] date_sent Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
209
|
+
# @param [Time] date_sent_before Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
210
|
+
# @param [Time] date_sent_after Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
|
211
|
+
# @param [String] page_token PageToken provided by the API
|
212
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
213
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
214
|
+
# @return [Page] Page of MessageInstance
|
215
|
+
def page(to: :unset, from: :unset, date_sent: :unset, date_sent_before: :unset, date_sent_after: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
|
216
|
+
params = Twilio::Values.of({
|
217
|
+
'To' => to,
|
218
|
+
'From' => from,
|
219
|
+
'DateSent' => Twilio.serialize_iso8601_datetime(date_sent),
|
220
|
+
'DateSent<' => Twilio.serialize_iso8601_datetime(date_sent_before),
|
221
|
+
'DateSent>' => Twilio.serialize_iso8601_datetime(date_sent_after),
|
222
|
+
'PageToken' => page_token,
|
223
|
+
'Page' => page_number,
|
224
|
+
'PageSize' => page_size,
|
225
|
+
})
|
226
|
+
headers = Twilio::Values.of({})
|
227
|
+
|
228
|
+
|
229
|
+
|
230
|
+
response = @version.page('GET', @uri, params: params, headers: headers)
|
231
|
+
|
232
|
+
MessagePage.new(@version, response, @solution)
|
233
|
+
end
|
234
|
+
|
235
|
+
##
|
236
|
+
# Retrieve a single page of MessageInstance records from the API.
|
237
|
+
# Request is executed immediately.
|
238
|
+
# @param [String] target_url API-generated URL for the requested results page
|
239
|
+
# @return [Page] Page of MessageInstance
|
240
|
+
def get_page(target_url)
|
241
|
+
response = @version.domain.request(
|
242
|
+
'GET',
|
243
|
+
target_url
|
244
|
+
)
|
245
|
+
MessagePage.new(@version, response, @solution)
|
246
|
+
end
|
247
|
+
|
248
|
+
|
249
|
+
|
250
|
+
# Provide a user friendly representation
|
251
|
+
def to_s
|
252
|
+
'#<Twilio.Api.V2010.MessageList>'
|
253
|
+
end
|
254
|
+
end
|
255
|
+
|
256
|
+
|
257
|
+
class MessageContext < InstanceContext
|
258
|
+
##
|
259
|
+
# Initialize the MessageContext
|
260
|
+
# @param [Version] version Version that contains the resource
|
261
|
+
# @param [String] account_sid The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Message resources to update.
|
262
|
+
# @param [String] sid The SID of the Message resource to be updated
|
263
|
+
# @return [MessageContext] MessageContext
|
264
|
+
def initialize(version, account_sid, sid)
|
265
|
+
super(version)
|
266
|
+
|
267
|
+
# Path Solution
|
268
|
+
@solution = { account_sid: account_sid, sid: sid, }
|
269
|
+
@uri = "/Accounts/#{@solution[:account_sid]}/Messages/#{@solution[:sid]}.json"
|
270
|
+
|
271
|
+
# Dependents
|
272
|
+
@feedback = nil
|
273
|
+
@media = nil
|
274
|
+
end
|
275
|
+
##
|
276
|
+
# Delete the MessageInstance
|
277
|
+
# @return [Boolean] True if delete succeeds, false otherwise
|
278
|
+
def delete
|
279
|
+
|
280
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
281
|
+
|
282
|
+
|
283
|
+
|
284
|
+
@version.delete('DELETE', @uri, headers: headers)
|
285
|
+
end
|
286
|
+
|
287
|
+
##
|
288
|
+
# Fetch the MessageInstance
|
289
|
+
# @return [MessageInstance] Fetched MessageInstance
|
290
|
+
def fetch
|
291
|
+
|
292
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
293
|
+
|
294
|
+
|
295
|
+
|
296
|
+
|
297
|
+
|
298
|
+
payload = @version.fetch('GET', @uri, headers: headers)
|
299
|
+
MessageInstance.new(
|
300
|
+
@version,
|
301
|
+
payload,
|
302
|
+
account_sid: @solution[:account_sid],
|
303
|
+
sid: @solution[:sid],
|
304
|
+
)
|
305
|
+
end
|
306
|
+
|
307
|
+
##
|
308
|
+
# Update the MessageInstance
|
309
|
+
# @param [String] body The new `body` of the Message resource. To redact the text content of a Message, this parameter's value must be an empty string
|
310
|
+
# @param [UpdateStatus] status
|
311
|
+
# @return [MessageInstance] Updated MessageInstance
|
312
|
+
def update(
|
313
|
+
body: :unset,
|
314
|
+
status: :unset
|
315
|
+
)
|
316
|
+
|
317
|
+
data = Twilio::Values.of({
|
318
|
+
'Body' => body,
|
319
|
+
'Status' => status,
|
320
|
+
})
|
321
|
+
|
322
|
+
headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
|
323
|
+
|
324
|
+
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
payload = @version.update('POST', @uri, data: data, headers: headers)
|
329
|
+
MessageInstance.new(
|
330
|
+
@version,
|
331
|
+
payload,
|
332
|
+
account_sid: @solution[:account_sid],
|
333
|
+
sid: @solution[:sid],
|
334
|
+
)
|
335
|
+
end
|
336
|
+
|
337
|
+
##
|
338
|
+
# Access the feedback
|
339
|
+
# @return [FeedbackList]
|
340
|
+
# @return [FeedbackContext]
|
341
|
+
def feedback
|
342
|
+
unless @feedback
|
343
|
+
@feedback = FeedbackList.new(
|
344
|
+
@version, account_sid: @solution[:account_sid], message_sid: @solution[:sid], )
|
345
|
+
end
|
346
|
+
@feedback
|
347
|
+
end
|
348
|
+
##
|
349
|
+
# Access the media
|
350
|
+
# @return [MediaList]
|
351
|
+
# @return [MediaContext] if sid was passed.
|
352
|
+
def media(sid=:unset)
|
353
|
+
|
354
|
+
raise ArgumentError, 'sid cannot be nil' if sid.nil?
|
355
|
+
|
356
|
+
if sid != :unset
|
357
|
+
return MediaContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
|
358
|
+
end
|
359
|
+
|
360
|
+
unless @media
|
361
|
+
@media = MediaList.new(
|
362
|
+
@version, account_sid: @solution[:account_sid], message_sid: @solution[:sid], )
|
363
|
+
end
|
364
|
+
|
365
|
+
@media
|
366
|
+
end
|
367
|
+
|
368
|
+
##
|
369
|
+
# Provide a user friendly representation
|
370
|
+
def to_s
|
371
|
+
context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
|
372
|
+
"#<Twilio.Api.V2010.MessageContext #{context}>"
|
373
|
+
end
|
374
|
+
|
375
|
+
##
|
376
|
+
# Provide a detailed, user friendly representation
|
377
|
+
def inspect
|
378
|
+
context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
|
379
|
+
"#<Twilio.Api.V2010.MessageContext #{context}>"
|
380
|
+
end
|
381
|
+
end
|
382
|
+
|
383
|
+
class MessagePage < Page
|
384
|
+
##
|
385
|
+
# Initialize the MessagePage
|
386
|
+
# @param [Version] version Version that contains the resource
|
387
|
+
# @param [Response] response Response from the API
|
388
|
+
# @param [Hash] solution Path solution for the resource
|
389
|
+
# @return [MessagePage] MessagePage
|
390
|
+
def initialize(version, response, solution)
|
391
|
+
super(version, response)
|
392
|
+
|
393
|
+
# Path Solution
|
394
|
+
@solution = solution
|
395
|
+
end
|
396
|
+
|
397
|
+
##
|
398
|
+
# Build an instance of MessageInstance
|
399
|
+
# @param [Hash] payload Payload response from the API
|
400
|
+
# @return [MessageInstance] MessageInstance
|
401
|
+
def get_instance(payload)
|
402
|
+
MessageInstance.new(@version, payload, account_sid: @solution[:account_sid])
|
403
|
+
end
|
404
|
+
|
405
|
+
##
|
406
|
+
# Provide a user friendly representation
|
407
|
+
def to_s
|
408
|
+
'<Twilio.Api.V2010.MessagePage>'
|
409
|
+
end
|
410
|
+
end
|
411
|
+
class MessageInstance < InstanceResource
|
412
|
+
##
|
413
|
+
# Initialize the MessageInstance
|
414
|
+
# @param [Version] version Version that contains the resource
|
415
|
+
# @param [Hash] payload payload that contains response from Twilio
|
416
|
+
# @param [String] account_sid The SID of the
|
417
|
+
# {Account}[https://www.twilio.com/docs/iam/api/account] that created this Message
|
418
|
+
# resource.
|
419
|
+
# @param [String] sid The SID of the Call resource to fetch.
|
420
|
+
# @return [MessageInstance] MessageInstance
|
421
|
+
def initialize(version, payload , account_sid: nil, sid: nil)
|
422
|
+
super(version)
|
423
|
+
|
424
|
+
# Marshaled Properties
|
425
|
+
@properties = {
|
426
|
+
'body' => payload['body'],
|
427
|
+
'num_segments' => payload['num_segments'],
|
428
|
+
'direction' => payload['direction'],
|
429
|
+
'from' => payload['from'],
|
430
|
+
'to' => payload['to'],
|
431
|
+
'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
|
432
|
+
'price' => payload['price'],
|
433
|
+
'error_message' => payload['error_message'],
|
434
|
+
'uri' => payload['uri'],
|
435
|
+
'account_sid' => payload['account_sid'],
|
436
|
+
'num_media' => payload['num_media'],
|
437
|
+
'status' => payload['status'],
|
438
|
+
'messaging_service_sid' => payload['messaging_service_sid'],
|
439
|
+
'sid' => payload['sid'],
|
440
|
+
'date_sent' => Twilio.deserialize_rfc2822(payload['date_sent']),
|
441
|
+
'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
|
442
|
+
'error_code' => payload['error_code'] == nil ? payload['error_code'] : payload['error_code'].to_i,
|
443
|
+
'price_unit' => payload['price_unit'],
|
444
|
+
'api_version' => payload['api_version'],
|
445
|
+
'subresource_uris' => payload['subresource_uris'],
|
446
|
+
}
|
447
|
+
|
448
|
+
# Context
|
449
|
+
@instance_context = nil
|
450
|
+
@params = { 'account_sid' => account_sid ,'sid' => sid || @properties['sid'] , }
|
451
|
+
end
|
452
|
+
|
453
|
+
##
|
454
|
+
# Generate an instance context for the instance, the context is capable of
|
455
|
+
# performing various actions. All instance actions are proxied to the context
|
456
|
+
# @return [MessageContext] CallContext for this CallInstance
|
457
|
+
def context
|
458
|
+
unless @instance_context
|
459
|
+
@instance_context = MessageContext.new(@version , @params['account_sid'], @params['sid'])
|
460
|
+
end
|
461
|
+
@instance_context
|
462
|
+
end
|
463
|
+
|
464
|
+
##
|
465
|
+
# @return [String] The text content of the message
|
466
|
+
def body
|
467
|
+
@properties['body']
|
468
|
+
end
|
469
|
+
|
470
|
+
##
|
471
|
+
# @return [String] The number of segments that make up the complete message. SMS message bodies that exceed the [character limit](https://www.twilio.com/docs/glossary/what-sms-character-limit) are segmented and charged as multiple messages. Note: For messages sent via a Messaging Service, `num_segments` is initially `0`, since a sender hasn't yet been assigned.
|
472
|
+
def num_segments
|
473
|
+
@properties['num_segments']
|
474
|
+
end
|
475
|
+
|
476
|
+
##
|
477
|
+
# @return [Direction]
|
478
|
+
def direction
|
479
|
+
@properties['direction']
|
480
|
+
end
|
481
|
+
|
482
|
+
##
|
483
|
+
# @return [String] The sender's phone number (in [E.164](https://en.wikipedia.org/wiki/E.164) format), [alphanumeric sender ID](https://www.twilio.com/docs/sms/quickstart), [Wireless SIM](https://www.twilio.com/docs/iot/wireless/programmable-wireless-send-machine-machine-sms-commands), [short code](https://www.twilio.com/en-us/messaging/channels/sms/short-codes), or [channel address](https://www.twilio.com/docs/messaging/channels) (e.g., `whatsapp:+15554449999`). For incoming messages, this is the number or channel address of the sender. For outgoing messages, this value is a Twilio phone number, alphanumeric sender ID, short code, or channel address from which the message is sent.
|
484
|
+
def from
|
485
|
+
@properties['from']
|
486
|
+
end
|
487
|
+
|
488
|
+
##
|
489
|
+
# @return [String] The recipient's phone number (in [E.164](https://en.wikipedia.org/wiki/E.164) format) or [channel address](https://www.twilio.com/docs/messaging/channels) (e.g. `whatsapp:+15552229999`)
|
490
|
+
def to
|
491
|
+
@properties['to']
|
492
|
+
end
|
493
|
+
|
494
|
+
##
|
495
|
+
# @return [Time] The [RFC 2822](https://datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message resource was last updated
|
496
|
+
def date_updated
|
497
|
+
@properties['date_updated']
|
498
|
+
end
|
499
|
+
|
500
|
+
##
|
501
|
+
# @return [String] The amount billed for the message in the currency specified by `price_unit`. The `price` is populated after the message has been sent/received, and may not be immediately availalble. View the [Pricing page](https://www.twilio.com/en-us/pricing) for more details.
|
502
|
+
def price
|
503
|
+
@properties['price']
|
504
|
+
end
|
505
|
+
|
506
|
+
##
|
507
|
+
# @return [String] The description of the `error_code` if the Message `status` is `failed` or `undelivered`. If no error was encountered, the value is `null`. The value returned in this field for a specific error cause is subject to change as Twilio improves errors. Users should not use the `error_code` and `error_message` fields programmatically.
|
508
|
+
def error_message
|
509
|
+
@properties['error_message']
|
510
|
+
end
|
511
|
+
|
512
|
+
##
|
513
|
+
# @return [String] The URI of the Message resource, relative to `https://api.twilio.com`.
|
514
|
+
def uri
|
515
|
+
@properties['uri']
|
516
|
+
end
|
517
|
+
|
518
|
+
##
|
519
|
+
# @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) associated with the Message resource
|
520
|
+
def account_sid
|
521
|
+
@properties['account_sid']
|
522
|
+
end
|
523
|
+
|
524
|
+
##
|
525
|
+
# @return [String] The number of media files associated with the Message resource.
|
526
|
+
def num_media
|
527
|
+
@properties['num_media']
|
528
|
+
end
|
529
|
+
|
530
|
+
##
|
531
|
+
# @return [Status]
|
532
|
+
def status
|
533
|
+
@properties['status']
|
534
|
+
end
|
535
|
+
|
536
|
+
##
|
537
|
+
# @return [String] The SID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) associated with the Message resource. A unique default value is assigned if a Messaging Service is not used.
|
538
|
+
def messaging_service_sid
|
539
|
+
@properties['messaging_service_sid']
|
540
|
+
end
|
541
|
+
|
542
|
+
##
|
543
|
+
# @return [String] The unique, Twilio-provided string that identifies the Message resource.
|
544
|
+
def sid
|
545
|
+
@properties['sid']
|
546
|
+
end
|
547
|
+
|
548
|
+
##
|
549
|
+
# @return [Time] The [RFC 2822](https://datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message was sent. For an outgoing message, this is when Twilio sent the message. For an incoming message, this is when Twilio sent the HTTP request to your incoming message webhook URL.
|
550
|
+
def date_sent
|
551
|
+
@properties['date_sent']
|
552
|
+
end
|
553
|
+
|
554
|
+
##
|
555
|
+
# @return [Time] The [RFC 2822](https://datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message resource was created
|
556
|
+
def date_created
|
557
|
+
@properties['date_created']
|
558
|
+
end
|
559
|
+
|
560
|
+
##
|
561
|
+
# @return [String] The [error code](https://www.twilio.com/docs/api/errors) returned if the Message `status` is `failed` or `undelivered`. If no error was encountered, the value is `null`. The value returned in this field for a specific error cause is subject to change as Twilio improves errors. Users should not use the `error_code` and `error_message` fields programmatically.
|
562
|
+
def error_code
|
563
|
+
@properties['error_code']
|
564
|
+
end
|
565
|
+
|
566
|
+
##
|
567
|
+
# @return [String] The currency in which `price` is measured, in [ISO 4127](https://www.iso.org/iso/home/standards/currency_codes.htm) format (e.g. `usd`, `eur`, `jpy`).
|
568
|
+
def price_unit
|
569
|
+
@properties['price_unit']
|
570
|
+
end
|
571
|
+
|
572
|
+
##
|
573
|
+
# @return [String] The API version used to process the Message
|
574
|
+
def api_version
|
575
|
+
@properties['api_version']
|
576
|
+
end
|
577
|
+
|
578
|
+
##
|
579
|
+
# @return [Hash] A list of related resources identified by their URIs relative to `https://api.twilio.com`
|
580
|
+
def subresource_uris
|
581
|
+
@properties['subresource_uris']
|
582
|
+
end
|
583
|
+
|
584
|
+
##
|
585
|
+
# Delete the MessageInstance
|
586
|
+
# @return [Boolean] True if delete succeeds, false otherwise
|
587
|
+
def delete
|
588
|
+
|
589
|
+
context.delete
|
590
|
+
end
|
591
|
+
|
592
|
+
##
|
593
|
+
# Fetch the MessageInstance
|
594
|
+
# @return [MessageInstance] Fetched MessageInstance
|
595
|
+
def fetch
|
596
|
+
|
597
|
+
context.fetch
|
598
|
+
end
|
599
|
+
|
600
|
+
##
|
601
|
+
# Update the MessageInstance
|
602
|
+
# @param [String] body The new `body` of the Message resource. To redact the text content of a Message, this parameter's value must be an empty string
|
603
|
+
# @param [UpdateStatus] status
|
604
|
+
# @return [MessageInstance] Updated MessageInstance
|
605
|
+
def update(
|
606
|
+
body: :unset,
|
607
|
+
status: :unset
|
608
|
+
)
|
609
|
+
|
610
|
+
context.update(
|
611
|
+
body: body,
|
612
|
+
status: status,
|
613
|
+
)
|
614
|
+
end
|
615
|
+
|
616
|
+
##
|
617
|
+
# Access the feedback
|
618
|
+
# @return [feedback] feedback
|
619
|
+
def feedback
|
620
|
+
context.feedback
|
621
|
+
end
|
622
|
+
|
623
|
+
##
|
624
|
+
# Access the media
|
625
|
+
# @return [media] media
|
626
|
+
def media
|
627
|
+
context.media
|
628
|
+
end
|
629
|
+
|
630
|
+
##
|
631
|
+
# Provide a user friendly representation
|
632
|
+
def to_s
|
633
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
634
|
+
"<Twilio.Api.V2010.MessageInstance #{values}>"
|
635
|
+
end
|
636
|
+
|
637
|
+
##
|
638
|
+
# Provide a detailed, user friendly representation
|
639
|
+
def inspect
|
640
|
+
values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
|
641
|
+
"<Twilio.Api.V2010.MessageInstance #{values}>"
|
642
|
+
end
|
643
|
+
end
|
644
|
+
|
645
|
+
end
|
601
646
|
end
|
602
|
-
end
|
603
647
|
end
|
604
|
-
end
|
605
648
|
end
|
606
|
-
|
607
|
-
|
649
|
+
end
|
650
|
+
|
651
|
+
|