twilio-ruby 4.13.0 → 5.0.0.alpha1
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/.rubocop.yml +21 -0
- data/.rubocop_todo.yml +187 -0
- data/.travis.yml +13 -0
- data/AUTHORS.md +46 -32
- data/CHANGES.md +87 -65
- data/Gemfile +2 -2
- data/LICENSE.md +12 -12
- data/Makefile +13 -3
- data/README.md +50 -139
- data/Rakefile +54 -0
- data/VERSIONS.md +64 -0
- data/examples/examples.rb +46 -57
- data/examples/{print-call-log.rb → print_call_log.rb} +7 -7
- data/lib/rack/twilio_webhook_authentication.rb +5 -6
- data/lib/twilio-ruby.rb +30 -102
- data/lib/twilio-ruby/framework/domain.rb +34 -0
- data/lib/twilio-ruby/framework/error.rb +30 -0
- data/lib/twilio-ruby/framework/helper.rb +9 -0
- data/lib/twilio-ruby/framework/page.rb +101 -0
- data/lib/twilio-ruby/framework/resource.rb +21 -0
- data/lib/twilio-ruby/framework/serialize.rb +70 -0
- data/lib/twilio-ruby/framework/twilio_response.rb +15 -0
- data/lib/twilio-ruby/framework/values.rb +7 -0
- data/lib/twilio-ruby/framework/version.rb +164 -0
- data/lib/twilio-ruby/http/http_client.rb +46 -0
- data/lib/twilio-ruby/jwt/access_token.rb +232 -0
- data/lib/twilio-ruby/jwt/client_capability.rb +102 -0
- data/lib/twilio-ruby/jwt/jwt.rb +50 -0
- data/lib/twilio-ruby/jwt/task_router.rb +174 -0
- data/lib/twilio-ruby/rest/accounts.rb +36 -10
- data/lib/twilio-ruby/rest/accounts/v1.rb +39 -0
- data/lib/twilio-ruby/rest/accounts/v1/credential.rb +105 -0
- data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +370 -0
- data/lib/twilio-ruby/rest/api.rb +234 -0
- data/lib/twilio-ruby/rest/api/v2010.rb +147 -0
- data/lib/twilio-ruby/rest/api/v2010/account.rb +1098 -0
- data/lib/twilio-ruby/rest/api/v2010/account/address.rb +509 -0
- data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +265 -0
- data/lib/twilio-ruby/rest/api/v2010/account/application.rb +620 -0
- data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +331 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +370 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +389 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +389 -0
- data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +389 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call.rb +799 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +296 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +427 -0
- data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +379 -0
- data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +455 -0
- data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +515 -0
- data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +413 -0
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +823 -0
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +431 -0
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +350 -0
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +445 -0
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +445 -0
- data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +445 -0
- data/lib/twilio-ruby/rest/api/v2010/account/key.rb +336 -0
- data/lib/twilio-ruby/rest/api/v2010/account/message.rb +583 -0
- data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +165 -0
- data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +355 -0
- data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +153 -0
- data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +153 -0
- data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +418 -0
- data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +377 -0
- data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +438 -0
- data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +345 -0
- data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +479 -0
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +397 -0
- data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +378 -0
- data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +375 -0
- data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +430 -0
- data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +336 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +174 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +419 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +395 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +570 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +361 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +361 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +424 -0
- data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +406 -0
- data/lib/twilio-ruby/rest/api/v2010/account/token.rb +168 -0
- data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +366 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +127 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +418 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +304 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +304 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +304 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +304 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +304 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +304 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +304 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +304 -0
- data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +507 -0
- data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +161 -0
- data/lib/twilio-ruby/rest/chat.rb +59 -0
- data/lib/twilio-ruby/rest/chat/v1.rb +56 -0
- data/lib/twilio-ruby/rest/chat/v1/credential.rb +403 -0
- data/lib/twilio-ruby/rest/chat/v1/service.rb +935 -0
- data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +554 -0
- data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +386 -0
- data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +431 -0
- data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +447 -0
- data/lib/twilio-ruby/rest/chat/v1/service/role.rb +396 -0
- data/lib/twilio-ruby/rest/chat/v1/service/user.rb +467 -0
- data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +244 -0
- data/lib/twilio-ruby/rest/chat/v2.rb +56 -0
- data/lib/twilio-ruby/rest/chat/v2/credential.rb +403 -0
- data/lib/twilio-ruby/rest/chat/v2/service.rb +688 -0
- data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +554 -0
- data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +386 -0
- data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +431 -0
- data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +447 -0
- data/lib/twilio-ruby/rest/chat/v2/service/role.rb +396 -0
- data/lib/twilio-ruby/rest/chat/v2/service/user.rb +467 -0
- data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +244 -0
- data/lib/twilio-ruby/rest/client.rb +352 -153
- data/lib/twilio-ruby/rest/fax.rb +44 -0
- data/lib/twilio-ruby/rest/fax/v1.rb +41 -0
- data/lib/twilio-ruby/rest/fax/v1/fax.rb +541 -0
- data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +326 -0
- data/lib/twilio-ruby/rest/ip_messaging.rb +59 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1.rb +56 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +403 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +935 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +554 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +386 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +431 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +447 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +396 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +467 -0
- data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +244 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2.rb +56 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +403 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +688 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +554 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +386 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +431 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +447 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +396 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +467 -0
- data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +244 -0
- data/lib/twilio-ruby/rest/lookups.rb +44 -0
- data/lib/twilio-ruby/rest/lookups/v1.rb +41 -0
- data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +224 -0
- data/lib/twilio-ruby/rest/messaging.rb +44 -0
- data/lib/twilio-ruby/rest/messaging/v1.rb +41 -0
- data/lib/twilio-ruby/rest/messaging/v1/service.rb +637 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +352 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +359 -0
- data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +359 -0
- data/lib/twilio-ruby/rest/monitor.rb +52 -0
- data/lib/twilio-ruby/rest/monitor/v1.rb +56 -0
- data/lib/twilio-ruby/rest/monitor/v1/alert.rb +398 -0
- data/lib/twilio-ruby/rest/monitor/v1/event.rb +381 -0
- data/lib/twilio-ruby/rest/notify.rb +52 -0
- data/lib/twilio-ruby/rest/notify/v1.rb +56 -0
- data/lib/twilio-ruby/rest/notify/v1/credential.rb +403 -0
- data/lib/twilio-ruby/rest/notify/v1/service.rb +639 -0
- data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +430 -0
- data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +288 -0
- data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +224 -0
- data/lib/twilio-ruby/rest/notify/v1/service/user.rb +445 -0
- data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +254 -0
- data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +434 -0
- data/lib/twilio-ruby/rest/preview.rb +145 -0
- data/lib/twilio-ruby/rest/preview/bulk_exports.rb +56 -0
- data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +203 -0
- data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +210 -0
- data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +243 -0
- data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +42 -0
- data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +557 -0
- data/lib/twilio-ruby/rest/preview/marketplace.rb +58 -0
- data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +333 -0
- data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +301 -0
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +440 -0
- data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +341 -0
- data/lib/twilio-ruby/rest/preview/proxy.rb +41 -0
- data/lib/twilio-ruby/rest/preview/proxy/service.rb +500 -0
- data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +359 -0
- data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +536 -0
- data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +429 -0
- data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +506 -0
- data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +452 -0
- data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +359 -0
- data/lib/twilio-ruby/rest/preview/sync.rb +41 -0
- data/lib/twilio-ruby/rest/preview/sync/service.rb +504 -0
- data/lib/twilio-ruby/rest/preview/sync/service/document.rb +445 -0
- data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +395 -0
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +438 -0
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +430 -0
- data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +395 -0
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +438 -0
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +432 -0
- data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +395 -0
- data/lib/twilio-ruby/rest/preview/wireless.rb +71 -0
- data/lib/twilio-ruby/rest/preview/wireless/command.rb +382 -0
- data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +435 -0
- data/lib/twilio-ruby/rest/preview/wireless/sim.rb +544 -0
- data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +236 -0
- data/lib/twilio-ruby/rest/pricing.rb +50 -2
- data/lib/twilio-ruby/rest/pricing/v1.rb +65 -0
- data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +129 -0
- data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +291 -0
- data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +129 -0
- data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +284 -0
- data/lib/twilio-ruby/rest/pricing/v1/voice.rb +150 -0
- data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +291 -0
- data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +208 -0
- data/lib/twilio-ruby/rest/sync.rb +44 -0
- data/lib/twilio-ruby/rest/sync/v1.rb +41 -0
- data/lib/twilio-ruby/rest/sync/v1/service.rb +504 -0
- data/lib/twilio-ruby/rest/sync/v1/service/document.rb +445 -0
- data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +395 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +438 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +430 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +395 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +438 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +432 -0
- data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +395 -0
- data/lib/twilio-ruby/rest/taskrouter.rb +44 -0
- data/lib/twilio-ruby/rest/taskrouter/v1.rb +41 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +712 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +399 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +418 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +584 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +461 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +315 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +527 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +243 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +585 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +461 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +406 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +223 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +226 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +475 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -0
- data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +212 -0
- data/lib/twilio-ruby/rest/trunking.rb +44 -0
- data/lib/twilio-ruby/rest/trunking/v1.rb +41 -0
- data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +577 -0
- data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +345 -0
- data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +345 -0
- data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +430 -0
- data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +478 -0
- data/lib/twilio-ruby/rest/video.rb +52 -0
- data/lib/twilio-ruby/rest/video/v1.rb +56 -0
- data/lib/twilio-ruby/rest/video/v1/recording.rb +382 -0
- data/lib/twilio-ruby/rest/video/v1/room.rb +485 -0
- data/lib/twilio-ruby/rest/video/v1/room/recording.rb +381 -0
- data/lib/twilio-ruby/rest/wireless.rb +60 -0
- data/lib/twilio-ruby/rest/wireless/v1.rb +71 -0
- data/lib/twilio-ruby/rest/wireless/v1/command.rb +367 -0
- data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +452 -0
- data/lib/twilio-ruby/rest/wireless/v1/sim.rb +548 -0
- data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +235 -0
- data/lib/twilio-ruby/{util → security}/request_validator.rb +21 -4
- data/lib/twilio-ruby/twiml/messaging_response.rb +141 -0
- data/lib/twilio-ruby/twiml/twiml.rb +69 -0
- data/lib/twilio-ruby/twiml/voice_response.rb +916 -0
- data/lib/twilio-ruby/util.rb +1 -1
- data/lib/twilio-ruby/version.rb +1 -1
- data/spec/framework/serialize_spec.rb +59 -0
- data/spec/holodeck/holodeck.rb +61 -0
- data/spec/holodeck/hologram.rb +4 -0
- data/spec/integration/accounts/v1/credential/public_key_spec.rb +226 -0
- data/spec/integration/accounts/v1/credential_spec.rb +10 -0
- data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +90 -0
- data/spec/integration/api/v2010/account/address_spec.rb +267 -0
- data/spec/integration/api/v2010/account/application_spec.rb +286 -0
- data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +137 -0
- data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +101 -0
- data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +100 -0
- data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +100 -0
- data/spec/integration/api/v2010/account/available_phone_number_spec.rb +128 -0
- data/spec/integration/api/v2010/account/call/feedback_spec.rb +141 -0
- data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +149 -0
- data/spec/integration/api/v2010/account/call/notification_spec.rb +179 -0
- data/spec/integration/api/v2010/account/call/recording_spec.rb +178 -0
- data/spec/integration/api/v2010/account/call_spec.rb +319 -0
- data/spec/integration/api/v2010/account/conference/participant_spec.rb +283 -0
- data/spec/integration/api/v2010/account/conference_spec.rb +174 -0
- data/spec/integration/api/v2010/account/connect_app_spec.rb +177 -0
- data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +135 -0
- data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +223 -0
- data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +181 -0
- data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +181 -0
- data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +181 -0
- data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +331 -0
- data/spec/integration/api/v2010/account/key_spec.rb +178 -0
- data/spec/integration/api/v2010/account/message/feedback_spec.rb +48 -0
- data/spec/integration/api/v2010/account/message/media_spec.rb +162 -0
- data/spec/integration/api/v2010/account/message_spec.rb +297 -0
- data/spec/integration/api/v2010/account/new_key_spec.rb +45 -0
- data/spec/integration/api/v2010/account/new_signing_key_spec.rb +45 -0
- data/spec/integration/api/v2010/account/notification_spec.rb +172 -0
- data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +193 -0
- data/spec/integration/api/v2010/account/queue/member_spec.rb +170 -0
- data/spec/integration/api/v2010/account/queue_spec.rb +242 -0
- data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +175 -0
- data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +166 -0
- data/spec/integration/api/v2010/account/recording/transcription_spec.rb +174 -0
- data/spec/integration/api/v2010/account/recording_spec.rb +179 -0
- data/spec/integration/api/v2010/account/short_code_spec.rb +180 -0
- data/spec/integration/api/v2010/account/signing_key_spec.rb +178 -0
- data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +257 -0
- data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +246 -0
- data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +210 -0
- data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +220 -0
- data/spec/integration/api/v2010/account/sip/domain_spec.rb +283 -0
- data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +261 -0
- data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +256 -0
- data/spec/integration/api/v2010/account/sip_spec.rb +10 -0
- data/spec/integration/api/v2010/account/token_spec.rb +56 -0
- data/spec/integration/api/v2010/account/transcription_spec.rb +167 -0
- data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +111 -0
- data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +111 -0
- data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +111 -0
- data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +111 -0
- data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +111 -0
- data/spec/integration/api/v2010/account/usage/record/today_spec.rb +111 -0
- data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +111 -0
- data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +111 -0
- data/spec/integration/api/v2010/account/usage/record_spec.rb +108 -0
- data/spec/integration/api/v2010/account/usage/trigger_spec.rb +283 -0
- data/spec/integration/api/v2010/account/usage_spec.rb +10 -0
- data/spec/integration/api/v2010/account/validation_request_spec.rb +48 -0
- data/spec/integration/api/v2010/account_spec.rb +254 -0
- data/spec/integration/chat/v1/credential_spec.rb +223 -0
- data/spec/integration/chat/v1/service/channel/invite_spec.rb +210 -0
- data/spec/integration/chat/v1/service/channel/member_spec.rb +284 -0
- data/spec/integration/chat/v1/service/channel/message_spec.rb +294 -0
- data/spec/integration/chat/v1/service/channel_spec.rb +275 -0
- data/spec/integration/chat/v1/service/role_spec.rb +263 -0
- data/spec/integration/chat/v1/service/user/user_channel_spec.rb +92 -0
- data/spec/integration/chat/v1/service/user_spec.rb +266 -0
- data/spec/integration/chat/v1/service_spec.rb +299 -0
- data/spec/integration/chat/v2/credential_spec.rb +223 -0
- data/spec/integration/chat/v2/service/channel/invite_spec.rb +210 -0
- data/spec/integration/chat/v2/service/channel/member_spec.rb +284 -0
- data/spec/integration/chat/v2/service/channel/message_spec.rb +294 -0
- data/spec/integration/chat/v2/service/channel_spec.rb +275 -0
- data/spec/integration/chat/v2/service/role_spec.rb +263 -0
- data/spec/integration/chat/v2/service/user/user_channel_spec.rb +92 -0
- data/spec/integration/chat/v2/service/user_spec.rb +266 -0
- data/spec/integration/chat/v2/service_spec.rb +325 -0
- data/spec/integration/fax/v1/fax/fax_media_spec.rb +126 -0
- data/spec/integration/fax/v1/fax_spec.rb +272 -0
- data/spec/integration/ip_messaging/v1/credential_spec.rb +223 -0
- data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +210 -0
- data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +284 -0
- data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +294 -0
- data/spec/integration/ip_messaging/v1/service/channel_spec.rb +275 -0
- data/spec/integration/ip_messaging/v1/service/role_spec.rb +263 -0
- data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +92 -0
- data/spec/integration/ip_messaging/v1/service/user_spec.rb +266 -0
- data/spec/integration/ip_messaging/v1/service_spec.rb +299 -0
- data/spec/integration/ip_messaging/v2/credential_spec.rb +223 -0
- data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +210 -0
- data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +284 -0
- data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +294 -0
- data/spec/integration/ip_messaging/v2/service/channel_spec.rb +275 -0
- data/spec/integration/ip_messaging/v2/service/role_spec.rb +263 -0
- data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +92 -0
- data/spec/integration/ip_messaging/v2/service/user_spec.rb +266 -0
- data/spec/integration/ip_messaging/v2/service_spec.rb +325 -0
- data/spec/integration/lookups/v1/phone_number_spec.rb +60 -0
- data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +170 -0
- data/spec/integration/messaging/v1/service/phone_number_spec.rb +201 -0
- data/spec/integration/messaging/v1/service/short_code_spec.rb +173 -0
- data/spec/integration/messaging/v1/service_spec.rb +263 -0
- data/spec/integration/monitor/v1/alert_spec.rb +161 -0
- data/spec/integration/monitor/v1/event_spec.rb +148 -0
- data/spec/integration/notify/v1/credential_spec.rb +223 -0
- data/spec/integration/notify/v1/service/binding_spec.rb +227 -0
- data/spec/integration/notify/v1/service/notification_spec.rb +97 -0
- data/spec/integration/notify/v1/service/segment_spec.rb +84 -0
- data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +118 -0
- data/spec/integration/notify/v1/service/user/user_binding_spec.rb +269 -0
- data/spec/integration/notify/v1/service/user_spec.rb +213 -0
- data/spec/integration/notify/v1/service_spec.rb +280 -0
- data/spec/integration/preview/bulk_exports/export/day_spec.rb +56 -0
- data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +79 -0
- data/spec/integration/preview/bulk_exports/export_spec.rb +43 -0
- data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +280 -0
- data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +121 -0
- data/spec/integration/preview/marketplace/available_add_on_spec.rb +142 -0
- data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +164 -0
- data/spec/integration/preview/marketplace/installed_add_on_spec.rb +252 -0
- data/spec/integration/preview/proxy/service/phone_number_spec.rb +173 -0
- data/spec/integration/preview/proxy/service/session/interaction_spec.rb +104 -0
- data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +164 -0
- data/spec/integration/preview/proxy/service/session/participant_spec.rb +226 -0
- data/spec/integration/preview/proxy/service/session_spec.rb +216 -0
- data/spec/integration/preview/proxy/service/short_code_spec.rb +173 -0
- data/spec/integration/preview/proxy/service_spec.rb +200 -0
- data/spec/integration/preview/sync/service/document/document_permission_spec.rb +206 -0
- data/spec/integration/preview/sync/service/document_spec.rb +254 -0
- data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +256 -0
- data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +206 -0
- data/spec/integration/preview/sync/service/sync_list_spec.rb +207 -0
- data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +257 -0
- data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +206 -0
- data/spec/integration/preview/sync/service/sync_map_spec.rb +207 -0
- data/spec/integration/preview/sync/service_spec.rb +244 -0
- data/spec/integration/preview/wireless/command_spec.rb +169 -0
- data/spec/integration/preview/wireless/rate_plan_spec.rb +260 -0
- data/spec/integration/preview/wireless/sim/usage_spec.rb +49 -0
- data/spec/integration/preview/wireless/sim_spec.rb +208 -0
- data/spec/integration/pricing/v1/messaging/country_spec.rb +137 -0
- data/spec/integration/pricing/v1/messaging_spec.rb +10 -0
- data/spec/integration/pricing/v1/phone_number/country_spec.rb +128 -0
- data/spec/integration/pricing/v1/phone_number_spec.rb +10 -0
- data/spec/integration/pricing/v1/voice/country_spec.rb +266 -0
- data/spec/integration/pricing/v1/voice/number_spec.rb +54 -0
- data/spec/integration/pricing/v1/voice_spec.rb +10 -0
- data/spec/integration/sync/v1/service/document/document_permission_spec.rb +206 -0
- data/spec/integration/sync/v1/service/document_spec.rb +254 -0
- data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +256 -0
- data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +206 -0
- data/spec/integration/sync/v1/service/sync_list_spec.rb +207 -0
- data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +257 -0
- data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +206 -0
- data/spec/integration/sync/v1/service/sync_map_spec.rb +207 -0
- data/spec/integration/sync/v1/service_spec.rb +244 -0
- data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +236 -0
- data/spec/integration/taskrouter/v1/workspace/event_spec.rb +157 -0
- data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +192 -0
- data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +127 -0
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +106 -0
- data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +144 -0
- data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +292 -0
- data/spec/integration/taskrouter/v1/workspace/task_spec.rb +324 -0
- data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +192 -0
- data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +201 -0
- data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +107 -0
- data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +141 -0
- data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +282 -0
- data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +69 -0
- data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +265 -0
- data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +103 -0
- data/spec/integration/taskrouter/v1/workspace_spec.rb +287 -0
- data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +192 -0
- data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +192 -0
- data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +250 -0
- data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +267 -0
- data/spec/integration/trunking/v1/trunk_spec.rb +276 -0
- data/spec/integration/video/v1/recording_spec.rb +165 -0
- data/spec/integration/video/v1/room/recording_spec.rb +146 -0
- data/spec/integration/video/v1/room_spec.rb +237 -0
- data/spec/integration/wireless/v1/command_spec.rb +166 -0
- data/spec/integration/wireless/v1/rate_plan_spec.rb +268 -0
- data/spec/integration/wireless/v1/sim/usage_record_spec.rb +65 -0
- data/spec/integration/wireless/v1/sim_spec.rb +208 -0
- data/spec/jwt/access_token_spec.rb +130 -0
- data/spec/jwt/client_capability_spec.rb +104 -0
- data/spec/jwt/task_router_spec.rb +172 -0
- data/spec/rack/twilio_webhook_authentication_spec.rb +19 -23
- data/spec/{util → security}/request_validator_spec.rb +5 -5
- data/spec/spec_helper.rb +18 -1
- data/spec/support/fakeweb.rb +1 -1
- data/spec/twiml/messaging_response_spec.rb +90 -0
- data/spec/twiml/voice_response_spec.rb +474 -0
- data/twilio-ruby.gemspec +13 -8
- metadata +708 -251
- data/docs/Makefile +0 -130
- data/docs/_themes/LICENSE +0 -45
- data/docs/_themes/README.rst +0 -25
- data/docs/_themes/flask_theme_support.py +0 -86
- data/docs/_themes/kr/layout.html +0 -32
- data/docs/_themes/kr/relations.html +0 -19
- data/docs/_themes/kr/static/flasky.css_t +0 -469
- data/docs/_themes/kr/static/small_flask.css +0 -70
- data/docs/_themes/kr/theme.conf +0 -7
- data/docs/_themes/kr_small/layout.html +0 -22
- data/docs/_themes/kr_small/static/flasky.css_t +0 -287
- data/docs/_themes/kr_small/theme.conf +0 -10
- data/docs/changelog.rst +0 -1
- data/docs/conf.py +0 -266
- data/docs/faq.rst +0 -42
- data/docs/getting-started.rst +0 -117
- data/docs/index.rst +0 -135
- data/docs/make.bat +0 -170
- data/docs/src/pip-delete-this-directory.txt +0 -5
- data/docs/usage/accounts.rst +0 -89
- data/docs/usage/addresses.rst +0 -101
- data/docs/usage/applications.rst +0 -108
- data/docs/usage/basics.rst +0 -115
- data/docs/usage/caller-ids.rst +0 -47
- data/docs/usage/conferences.rst +0 -108
- data/docs/usage/errors.rst +0 -29
- data/docs/usage/lookups.rst +0 -62
- data/docs/usage/messages.rst +0 -137
- data/docs/usage/notifications.rst +0 -72
- data/docs/usage/phone-calls.rst +0 -185
- data/docs/usage/phone-numbers.rst +0 -189
- data/docs/usage/pricing.rst +0 -169
- data/docs/usage/queues.rst +0 -112
- data/docs/usage/recordings.rst +0 -98
- data/docs/usage/sip.rst +0 -104
- data/docs/usage/taskrouter-tokens.rst +0 -98
- data/docs/usage/taskrouter.rst +0 -440
- data/docs/usage/token-generation.rst +0 -115
- data/docs/usage/transcriptions.rst +0 -32
- data/docs/usage/twiml.rst +0 -69
- data/docs/usage/validation.rst +0 -107
- data/examples/taskrouter.examples.rb +0 -86
- data/issue_template.md +0 -25
- data/lib/twilio-ruby/rest/addresses.rb +0 -12
- data/lib/twilio-ruby/rest/addresses/dependent_phone_numbers.rb +0 -6
- data/lib/twilio-ruby/rest/applications.rb +0 -6
- data/lib/twilio-ruby/rest/authorized_connect_apps.rb +0 -6
- data/lib/twilio-ruby/rest/available_phone_numbers.rb +0 -13
- data/lib/twilio-ruby/rest/available_phone_numbers/country.rb +0 -10
- data/lib/twilio-ruby/rest/available_phone_numbers/local.rb +0 -11
- data/lib/twilio-ruby/rest/available_phone_numbers/mobile.rb +0 -11
- data/lib/twilio-ruby/rest/available_phone_numbers/toll_free.rb +0 -11
- data/lib/twilio-ruby/rest/base_client.rb +0 -131
- data/lib/twilio-ruby/rest/call_feedback.rb +0 -28
- data/lib/twilio-ruby/rest/call_feedback_summary.rb +0 -13
- data/lib/twilio-ruby/rest/calls.rb +0 -33
- data/lib/twilio-ruby/rest/conferences.rb +0 -12
- data/lib/twilio-ruby/rest/conferences/participants.rb +0 -23
- data/lib/twilio-ruby/rest/connect_apps.rb +0 -6
- data/lib/twilio-ruby/rest/errors.rb +0 -14
- data/lib/twilio-ruby/rest/incoming_phone_numbers.rb +0 -17
- data/lib/twilio-ruby/rest/incoming_phone_numbers/local.rb +0 -13
- data/lib/twilio-ruby/rest/incoming_phone_numbers/mobile.rb +0 -13
- data/lib/twilio-ruby/rest/incoming_phone_numbers/toll_free.rb +0 -13
- data/lib/twilio-ruby/rest/instance_resource.rb +0 -87
- data/lib/twilio-ruby/rest/ip-messaging/channels.rb +0 -15
- data/lib/twilio-ruby/rest/ip-messaging/credentials.rb +0 -19
- data/lib/twilio-ruby/rest/ip-messaging/members.rb +0 -8
- data/lib/twilio-ruby/rest/ip-messaging/messages.rb +0 -8
- data/lib/twilio-ruby/rest/ip-messaging/roles.rb +0 -8
- data/lib/twilio-ruby/rest/ip-messaging/services.rb +0 -17
- data/lib/twilio-ruby/rest/ip-messaging/users.rb +0 -8
- data/lib/twilio-ruby/rest/ip_messaging_client.rb +0 -100
- data/lib/twilio-ruby/rest/keys.rb +0 -6
- data/lib/twilio-ruby/rest/list_resource.rb +0 -100
- data/lib/twilio-ruby/rest/lookups/phone_numbers.rb +0 -17
- data/lib/twilio-ruby/rest/lookups_client.rb +0 -99
- data/lib/twilio-ruby/rest/media.rb +0 -14
- data/lib/twilio-ruby/rest/messages.rb +0 -22
- data/lib/twilio-ruby/rest/monitor/alerts.rb +0 -8
- data/lib/twilio-ruby/rest/monitor/events.rb +0 -8
- data/lib/twilio-ruby/rest/monitor_client.rb +0 -101
- data/lib/twilio-ruby/rest/next_gen_list_resource.rb +0 -36
- data/lib/twilio-ruby/rest/notifications.rb +0 -6
- data/lib/twilio-ruby/rest/outgoing_caller_ids.rb +0 -25
- data/lib/twilio-ruby/rest/pricing/countries.rb +0 -21
- data/lib/twilio-ruby/rest/pricing/messaging.rb +0 -15
- data/lib/twilio-ruby/rest/pricing/phone_numbers.rb +0 -14
- data/lib/twilio-ruby/rest/pricing/voice.rb +0 -15
- data/lib/twilio-ruby/rest/pricing/voice/numbers.rb +0 -19
- data/lib/twilio-ruby/rest/pricing_client.rb +0 -108
- data/lib/twilio-ruby/rest/queues.rb +0 -12
- data/lib/twilio-ruby/rest/queues/members.rb +0 -29
- data/lib/twilio-ruby/rest/recordings.rb +0 -35
- data/lib/twilio-ruby/rest/sandbox.rb +0 -5
- data/lib/twilio-ruby/rest/sip.rb +0 -10
- data/lib/twilio-ruby/rest/sip/credential_lists.rb +0 -11
- data/lib/twilio-ruby/rest/sip/credential_lists/credentials.rb +0 -6
- data/lib/twilio-ruby/rest/sip/domains.rb +0 -12
- data/lib/twilio-ruby/rest/sip/domains/credential_list_mappings.rb +0 -6
- data/lib/twilio-ruby/rest/sip/domains/ip_access_control_list_mappings.rb +0 -6
- data/lib/twilio-ruby/rest/sip/ip_access_control_lists.rb +0 -11
- data/lib/twilio-ruby/rest/sip/ip_access_control_lists/ip_addresses.rb +0 -6
- data/lib/twilio-ruby/rest/sms.rb +0 -11
- data/lib/twilio-ruby/rest/sms/messages.rb +0 -38
- data/lib/twilio-ruby/rest/sms/short_codes.rb +0 -8
- data/lib/twilio-ruby/rest/task_router/activities.rb +0 -8
- data/lib/twilio-ruby/rest/task_router/events.rb +0 -8
- data/lib/twilio-ruby/rest/task_router/reservations.rb +0 -8
- data/lib/twilio-ruby/rest/task_router/statistics.rb +0 -26
- data/lib/twilio-ruby/rest/task_router/task_queues.rb +0 -17
- data/lib/twilio-ruby/rest/task_router/task_queues_statistics.rb +0 -15
- data/lib/twilio-ruby/rest/task_router/tasks.rb +0 -15
- data/lib/twilio-ruby/rest/task_router/workers.rb +0 -19
- data/lib/twilio-ruby/rest/task_router/workers_statistics.rb +0 -8
- data/lib/twilio-ruby/rest/task_router/workflow_statistics.rb +0 -7
- data/lib/twilio-ruby/rest/task_router/workflows.rb +0 -11
- data/lib/twilio-ruby/rest/task_router/workspace_statistics.rb +0 -7
- data/lib/twilio-ruby/rest/task_router/workspaces.rb +0 -17
- data/lib/twilio-ruby/rest/task_router_client.rb +0 -176
- data/lib/twilio-ruby/rest/tokens.rb +0 -7
- data/lib/twilio-ruby/rest/transcriptions.rb +0 -6
- data/lib/twilio-ruby/rest/trunking/credential_lists.rb +0 -8
- data/lib/twilio-ruby/rest/trunking/ip_access_control_lists.rb +0 -8
- data/lib/twilio-ruby/rest/trunking/origination_urls.rb +0 -8
- data/lib/twilio-ruby/rest/trunking/phone_numbers.rb +0 -8
- data/lib/twilio-ruby/rest/trunking/trunks.rb +0 -19
- data/lib/twilio-ruby/rest/trunking_client.rb +0 -106
- data/lib/twilio-ruby/rest/usage.rb +0 -10
- data/lib/twilio-ruby/rest/usage/records.rb +0 -21
- data/lib/twilio-ruby/rest/usage/triggers.rb +0 -12
- data/lib/twilio-ruby/rest/utils.rb +0 -49
- data/lib/twilio-ruby/task_router.rb +0 -0
- data/lib/twilio-ruby/task_router/capability.rb +0 -230
- data/lib/twilio-ruby/task_router/workflow_builder.rb +0 -135
- data/lib/twilio-ruby/twiml/response.rb +0 -16
- data/lib/twilio-ruby/util/access_token.rb +0 -158
- data/lib/twilio-ruby/util/capability.rb +0 -64
- data/lib/twilio-ruby/util/client_config.rb +0 -29
- data/spec/rest/account_spec.rb +0 -89
- data/spec/rest/address_spec.rb +0 -11
- data/spec/rest/call_feedback_spec.rb +0 -12
- data/spec/rest/call_feedback_summary_spec.rb +0 -9
- data/spec/rest/call_spec.rb +0 -22
- data/spec/rest/client_spec.rb +0 -277
- data/spec/rest/conference_spec.rb +0 -11
- data/spec/rest/instance_resource_spec.rb +0 -15
- data/spec/rest/ip-messaging/channel_spec.rb +0 -21
- data/spec/rest/ip-messaging/service_spec.rb +0 -30
- data/spec/rest/ip_messaging_client_spec.rb +0 -21
- data/spec/rest/key_spec.rb +0 -11
- data/spec/rest/lookups/phone_number_spec.rb +0 -28
- data/spec/rest/message_spec.rb +0 -12
- data/spec/rest/monitor_client_spec.rb +0 -17
- data/spec/rest/numbers_spec.rb +0 -58
- data/spec/rest/pricing_client_spec.rb +0 -60
- data/spec/rest/queue_spec.rb +0 -11
- data/spec/rest/recording_spec.rb +0 -11
- data/spec/rest/sms/message_spec.rb +0 -37
- data/spec/rest/sms/messages_spec.rb +0 -31
- data/spec/rest/task_router/reservation_spec.rb +0 -14
- data/spec/rest/task_router/statistics_spec.rb +0 -37
- data/spec/rest/task_router/task_queue_spec.rb +0 -9
- data/spec/rest/token_spec.rb +0 -7
- data/spec/rest/trunking/trunk_spec.rb +0 -36
- data/spec/rest/utils_spec.rb +0 -45
- data/spec/task_router/workflow_builder_spec.rb +0 -501
- data/spec/task_router_deprecated_spec.rb +0 -139
- data/spec/task_router_spec.rb +0 -110
- data/spec/task_router_taskqueue_spec.rb +0 -111
- data/spec/task_router_worker_spec.rb +0 -146
- data/spec/task_router_workspace_spec.rb +0 -110
- data/spec/util/access_token_spec.rb +0 -161
- data/spec/util/capability_spec.rb +0 -186
- data/spec/util/client_config_spec.rb +0 -21
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This code was generated by
|
|
3
|
+
# \ / _ _ _| _ _
|
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
|
5
|
+
# / /
|
|
6
|
+
|
|
7
|
+
module Twilio
|
|
8
|
+
module REST
|
|
9
|
+
class Fax < Domain
|
|
10
|
+
class V1 < Version
|
|
11
|
+
class FaxContext < InstanceContext
|
|
12
|
+
class FaxMediaList < ListResource
|
|
13
|
+
##
|
|
14
|
+
# Initialize the FaxMediaList
|
|
15
|
+
# @param [Version] version Version that contains the resource
|
|
16
|
+
# @param [String] fax_sid The unique SID identifier of the fax for which this
|
|
17
|
+
# media is associated.
|
|
18
|
+
# @return [FaxMediaList] FaxMediaList
|
|
19
|
+
def initialize(version, fax_sid: nil)
|
|
20
|
+
super(version)
|
|
21
|
+
|
|
22
|
+
# Path Solution
|
|
23
|
+
@solution = {
|
|
24
|
+
fax_sid: fax_sid
|
|
25
|
+
}
|
|
26
|
+
@uri = "/Faxes/#{@solution[:fax_sid]}/Media"
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
##
|
|
30
|
+
# Lists FaxMediaInstance records from the API as a list.
|
|
31
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
|
32
|
+
# memory before returning.
|
|
33
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
34
|
+
# guarantees to never return more than limit. Default is no limit
|
|
35
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
36
|
+
# the default value of 50 records. If no page_size is defined
|
|
37
|
+
# but a limit is defined, stream() will attempt to read the
|
|
38
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
39
|
+
# @return [Array] Array of up to limit results
|
|
40
|
+
def list(limit: nil, page_size: nil)
|
|
41
|
+
self.stream(
|
|
42
|
+
limit: limit,
|
|
43
|
+
page_size: page_size
|
|
44
|
+
).entries
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
##
|
|
48
|
+
# Streams FaxMediaInstance records from the API as an Enumerable.
|
|
49
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
50
|
+
# is reached.
|
|
51
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
52
|
+
# guarantees to never return more than limit. Default is no limit
|
|
53
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
54
|
+
# the default value of 50 records. If no page_size is defined
|
|
55
|
+
# but a limit is defined, stream() will attempt to read the
|
|
56
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
57
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
|
58
|
+
def stream(limit: nil, page_size: nil)
|
|
59
|
+
limits = @version.read_limits(limit, page_size)
|
|
60
|
+
|
|
61
|
+
page = self.page(
|
|
62
|
+
page_size: limits[:page_size],
|
|
63
|
+
)
|
|
64
|
+
|
|
65
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
##
|
|
69
|
+
# When passed a block, yields FaxMediaInstance records from the API.
|
|
70
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
71
|
+
# is reached.
|
|
72
|
+
def each
|
|
73
|
+
limits = @version.read_limits
|
|
74
|
+
|
|
75
|
+
page = self.page(
|
|
76
|
+
page_size: limits[:page_size],
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
@version.stream(page,
|
|
80
|
+
limit: limits[:limit],
|
|
81
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
##
|
|
85
|
+
# Retrieve a single page of FaxMediaInstance records from the API.
|
|
86
|
+
# Request is executed immediately.
|
|
87
|
+
# @param [String] page_token PageToken provided by the API
|
|
88
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
|
89
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
|
90
|
+
# @return [Page] Page of FaxMediaInstance
|
|
91
|
+
def page(page_token: :unset, page_number: :unset, page_size: :unset)
|
|
92
|
+
params = Twilio::Values.of({
|
|
93
|
+
'PageToken' => page_token,
|
|
94
|
+
'Page' => page_number,
|
|
95
|
+
'PageSize' => page_size,
|
|
96
|
+
})
|
|
97
|
+
response = @version.page(
|
|
98
|
+
'GET',
|
|
99
|
+
@uri,
|
|
100
|
+
params
|
|
101
|
+
)
|
|
102
|
+
FaxMediaPage.new(@version, response, @solution)
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
##
|
|
106
|
+
# Retrieve a single page of FaxMediaInstance records from the API.
|
|
107
|
+
# Request is executed immediately.
|
|
108
|
+
# @param [String] target_url API-generated URL for the requested results page
|
|
109
|
+
# @return [Page] Page of FaxMediaInstance
|
|
110
|
+
def get_page(target_url)
|
|
111
|
+
response = @version.domain.request(
|
|
112
|
+
'GET',
|
|
113
|
+
target_url
|
|
114
|
+
)
|
|
115
|
+
FaxMediaPage.new(@version, response, @solution)
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
##
|
|
119
|
+
# Provide a user friendly representation
|
|
120
|
+
def to_s
|
|
121
|
+
'#<Twilio.Fax.V1.FaxMediaList>'
|
|
122
|
+
end
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
class FaxMediaPage < Page
|
|
126
|
+
##
|
|
127
|
+
# Initialize the FaxMediaPage
|
|
128
|
+
# @param [Version] version Version that contains the resource
|
|
129
|
+
# @param [Response] response Response from the API
|
|
130
|
+
# @param [Hash] solution Path solution for the resource
|
|
131
|
+
# @return [FaxMediaPage] FaxMediaPage
|
|
132
|
+
def initialize(version, response, solution)
|
|
133
|
+
super(version, response)
|
|
134
|
+
|
|
135
|
+
# Path Solution
|
|
136
|
+
@solution = solution
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
##
|
|
140
|
+
# Build an instance of FaxMediaInstance
|
|
141
|
+
# @param [Hash] payload Payload response from the API
|
|
142
|
+
# @return [FaxMediaInstance] FaxMediaInstance
|
|
143
|
+
def get_instance(payload)
|
|
144
|
+
FaxMediaInstance.new(
|
|
145
|
+
@version,
|
|
146
|
+
payload,
|
|
147
|
+
fax_sid: @solution[:fax_sid],
|
|
148
|
+
)
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
##
|
|
152
|
+
# Provide a user friendly representation
|
|
153
|
+
def to_s
|
|
154
|
+
'<Twilio.Fax.V1.FaxMediaPage>'
|
|
155
|
+
end
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
class FaxMediaContext < InstanceContext
|
|
159
|
+
##
|
|
160
|
+
# Initialize the FaxMediaContext
|
|
161
|
+
# @param [Version] version Version that contains the resource
|
|
162
|
+
# @param [String] fax_sid The unique SID identifier of the fax.
|
|
163
|
+
# @param [String] sid A 34 character string that uniquely identifies this fax
|
|
164
|
+
# media.
|
|
165
|
+
# @return [FaxMediaContext] FaxMediaContext
|
|
166
|
+
def initialize(version, fax_sid, sid)
|
|
167
|
+
super(version)
|
|
168
|
+
|
|
169
|
+
# Path Solution
|
|
170
|
+
@solution = {
|
|
171
|
+
fax_sid: fax_sid,
|
|
172
|
+
sid: sid,
|
|
173
|
+
}
|
|
174
|
+
@uri = "/Faxes/#{@solution[:fax_sid]}/Media/#{@solution[:sid]}"
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
##
|
|
178
|
+
# Fetch a FaxMediaInstance
|
|
179
|
+
# @return [FaxMediaInstance] Fetched FaxMediaInstance
|
|
180
|
+
def fetch
|
|
181
|
+
params = Twilio::Values.of({})
|
|
182
|
+
|
|
183
|
+
payload = @version.fetch(
|
|
184
|
+
'GET',
|
|
185
|
+
@uri,
|
|
186
|
+
params,
|
|
187
|
+
)
|
|
188
|
+
|
|
189
|
+
FaxMediaInstance.new(
|
|
190
|
+
@version,
|
|
191
|
+
payload,
|
|
192
|
+
fax_sid: @solution[:fax_sid],
|
|
193
|
+
sid: @solution[:sid],
|
|
194
|
+
)
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
##
|
|
198
|
+
# Deletes the FaxMediaInstance
|
|
199
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
200
|
+
def delete
|
|
201
|
+
@version.delete('delete', @uri)
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
##
|
|
205
|
+
# Provide a user friendly representation
|
|
206
|
+
def to_s
|
|
207
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
|
208
|
+
"#<Twilio.Fax.V1.FaxMediaContext #{context}>"
|
|
209
|
+
end
|
|
210
|
+
end
|
|
211
|
+
|
|
212
|
+
class FaxMediaInstance < InstanceResource
|
|
213
|
+
##
|
|
214
|
+
# Initialize the FaxMediaInstance
|
|
215
|
+
# @param [Version] version Version that contains the resource
|
|
216
|
+
# @param [Hash] payload payload that contains response from Twilio
|
|
217
|
+
# @param [String] fax_sid The unique SID identifier of the fax for which this
|
|
218
|
+
# media is associated.
|
|
219
|
+
# @param [String] sid A 34 character string that uniquely identifies this fax
|
|
220
|
+
# media.
|
|
221
|
+
# @return [FaxMediaInstance] FaxMediaInstance
|
|
222
|
+
def initialize(version, payload, fax_sid: nil, sid: nil)
|
|
223
|
+
super(version)
|
|
224
|
+
|
|
225
|
+
# Marshaled Properties
|
|
226
|
+
@properties = {
|
|
227
|
+
'sid' => payload['sid'],
|
|
228
|
+
'account_sid' => payload['account_sid'],
|
|
229
|
+
'fax_sid' => payload['fax_sid'],
|
|
230
|
+
'content_type' => payload['content_type'],
|
|
231
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
|
232
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
|
233
|
+
'url' => payload['url'],
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
# Context
|
|
237
|
+
@instance_context = nil
|
|
238
|
+
@params = {
|
|
239
|
+
'fax_sid' => fax_sid,
|
|
240
|
+
'sid' => sid || @properties['sid'],
|
|
241
|
+
}
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
##
|
|
245
|
+
# Generate an instance context for the instance, the context is capable of
|
|
246
|
+
# performing various actions. All instance actions are proxied to the context
|
|
247
|
+
# @return [FaxMediaContext] FaxMediaContext for this FaxMediaInstance
|
|
248
|
+
def context
|
|
249
|
+
unless @instance_context
|
|
250
|
+
@instance_context = FaxMediaContext.new(
|
|
251
|
+
@version,
|
|
252
|
+
@params['fax_sid'],
|
|
253
|
+
@params['sid'],
|
|
254
|
+
)
|
|
255
|
+
end
|
|
256
|
+
@instance_context
|
|
257
|
+
end
|
|
258
|
+
|
|
259
|
+
##
|
|
260
|
+
# @return [String] A string that uniquely identifies this fax media
|
|
261
|
+
def sid
|
|
262
|
+
@properties['sid']
|
|
263
|
+
end
|
|
264
|
+
|
|
265
|
+
##
|
|
266
|
+
# @return [String] Account SID
|
|
267
|
+
def account_sid
|
|
268
|
+
@properties['account_sid']
|
|
269
|
+
end
|
|
270
|
+
|
|
271
|
+
##
|
|
272
|
+
# @return [String] Fax SID
|
|
273
|
+
def fax_sid
|
|
274
|
+
@properties['fax_sid']
|
|
275
|
+
end
|
|
276
|
+
|
|
277
|
+
##
|
|
278
|
+
# @return [String] Media content type
|
|
279
|
+
def content_type
|
|
280
|
+
@properties['content_type']
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
##
|
|
284
|
+
# @return [Time] The date this fax media was created
|
|
285
|
+
def date_created
|
|
286
|
+
@properties['date_created']
|
|
287
|
+
end
|
|
288
|
+
|
|
289
|
+
##
|
|
290
|
+
# @return [Time] The date this fax media was updated
|
|
291
|
+
def date_updated
|
|
292
|
+
@properties['date_updated']
|
|
293
|
+
end
|
|
294
|
+
|
|
295
|
+
##
|
|
296
|
+
# @return [String] The URL of this resource
|
|
297
|
+
def url
|
|
298
|
+
@properties['url']
|
|
299
|
+
end
|
|
300
|
+
|
|
301
|
+
##
|
|
302
|
+
# Fetch a FaxMediaInstance
|
|
303
|
+
# @return [FaxMediaInstance] Fetched FaxMediaInstance
|
|
304
|
+
def fetch
|
|
305
|
+
context.fetch
|
|
306
|
+
end
|
|
307
|
+
|
|
308
|
+
##
|
|
309
|
+
# Deletes the FaxMediaInstance
|
|
310
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
311
|
+
def delete
|
|
312
|
+
context.delete
|
|
313
|
+
end
|
|
314
|
+
|
|
315
|
+
##
|
|
316
|
+
# Provide a user friendly representation
|
|
317
|
+
def to_s
|
|
318
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
|
319
|
+
"<Twilio.Fax.V1.FaxMediaInstance #{values}>"
|
|
320
|
+
end
|
|
321
|
+
end
|
|
322
|
+
end
|
|
323
|
+
end
|
|
324
|
+
end
|
|
325
|
+
end
|
|
326
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This code was generated by
|
|
3
|
+
# \ / _ _ _| _ _
|
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
|
5
|
+
# / /
|
|
6
|
+
|
|
7
|
+
module Twilio
|
|
8
|
+
module REST
|
|
9
|
+
class IpMessaging < Domain
|
|
10
|
+
##
|
|
11
|
+
# Initialize the IpMessaging Domain
|
|
12
|
+
def initialize(twilio)
|
|
13
|
+
super
|
|
14
|
+
|
|
15
|
+
@base_url = 'https://ip-messaging.twilio.com'
|
|
16
|
+
@host = 'ip-messaging.twilio.com'
|
|
17
|
+
@port = 443
|
|
18
|
+
|
|
19
|
+
# Versions
|
|
20
|
+
@v1 = nil
|
|
21
|
+
@v2 = nil
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
##
|
|
25
|
+
# Version v1 of ip_messaging
|
|
26
|
+
def v1
|
|
27
|
+
@v1 ||= V1.new self
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
##
|
|
31
|
+
# Version v2 of ip_messaging
|
|
32
|
+
def v2
|
|
33
|
+
@v2 ||= V2.new self
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
##
|
|
37
|
+
# @param [String] sid The sid
|
|
38
|
+
# @return [Twilio::REST::Chat::V2::CredentialInstance] if sid was passed.
|
|
39
|
+
# @return [Twilio::REST::Chat::V2::CredentialList]
|
|
40
|
+
def credentials(sid=:unset)
|
|
41
|
+
self.v2.credentials(sid)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
##
|
|
45
|
+
# @param [String] sid The sid
|
|
46
|
+
# @return [Twilio::REST::Chat::V2::ServiceInstance] if sid was passed.
|
|
47
|
+
# @return [Twilio::REST::Chat::V2::ServiceList]
|
|
48
|
+
def services(sid=:unset)
|
|
49
|
+
self.v2.services(sid)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
##
|
|
53
|
+
# Provide a user friendly representation
|
|
54
|
+
def to_s
|
|
55
|
+
'#<Twilio::REST::IpMessaging>'
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This code was generated by
|
|
3
|
+
# \ / _ _ _| _ _
|
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
|
5
|
+
# / /
|
|
6
|
+
|
|
7
|
+
module Twilio
|
|
8
|
+
module REST
|
|
9
|
+
class IpMessaging
|
|
10
|
+
class V1 < Version
|
|
11
|
+
##
|
|
12
|
+
# Initialize the V1 version of IpMessaging
|
|
13
|
+
def initialize(domain)
|
|
14
|
+
super
|
|
15
|
+
@version = 'v1'
|
|
16
|
+
@credentials = nil
|
|
17
|
+
@services = nil
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
##
|
|
21
|
+
# @param [String] sid The sid
|
|
22
|
+
# @return [Twilio::REST::Chat::V1::CredentialInstance] if sid was passed.
|
|
23
|
+
# @return [Twilio::REST::Chat::V1::CredentialList]
|
|
24
|
+
def credentials(sid=:unset)
|
|
25
|
+
if sid.nil?
|
|
26
|
+
raise ArgumentError, 'sid cannot be nil'
|
|
27
|
+
elsif sid == :unset
|
|
28
|
+
@credentials ||= CredentialList.new self
|
|
29
|
+
else
|
|
30
|
+
CredentialContext.new(self, sid)
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
##
|
|
35
|
+
# @param [String] sid The sid
|
|
36
|
+
# @return [Twilio::REST::Chat::V1::ServiceInstance] if sid was passed.
|
|
37
|
+
# @return [Twilio::REST::Chat::V1::ServiceList]
|
|
38
|
+
def services(sid=:unset)
|
|
39
|
+
if sid.nil?
|
|
40
|
+
raise ArgumentError, 'sid cannot be nil'
|
|
41
|
+
elsif sid == :unset
|
|
42
|
+
@services ||= ServiceList.new self
|
|
43
|
+
else
|
|
44
|
+
ServiceContext.new(self, sid)
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
##
|
|
49
|
+
# Provide a user friendly representation
|
|
50
|
+
def to_s
|
|
51
|
+
'<Twilio::REST::IpMessaging::V1>'
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,403 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This code was generated by
|
|
3
|
+
# \ / _ _ _| _ _
|
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
|
5
|
+
# / /
|
|
6
|
+
|
|
7
|
+
module Twilio
|
|
8
|
+
module REST
|
|
9
|
+
class IpMessaging < Domain
|
|
10
|
+
class V1 < Version
|
|
11
|
+
class CredentialList < ListResource
|
|
12
|
+
##
|
|
13
|
+
# Initialize the CredentialList
|
|
14
|
+
# @param [Version] version Version that contains the resource
|
|
15
|
+
# @return [CredentialList] CredentialList
|
|
16
|
+
def initialize(version)
|
|
17
|
+
super(version)
|
|
18
|
+
|
|
19
|
+
# Path Solution
|
|
20
|
+
@solution = {}
|
|
21
|
+
@uri = "/Credentials"
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
##
|
|
25
|
+
# Lists CredentialInstance records from the API as a list.
|
|
26
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
|
27
|
+
# memory before returning.
|
|
28
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
29
|
+
# guarantees to never return more than limit. Default is no limit
|
|
30
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
31
|
+
# the default value of 50 records. If no page_size is defined
|
|
32
|
+
# but a limit is defined, stream() will attempt to read the
|
|
33
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
34
|
+
# @return [Array] Array of up to limit results
|
|
35
|
+
def list(limit: nil, page_size: nil)
|
|
36
|
+
self.stream(
|
|
37
|
+
limit: limit,
|
|
38
|
+
page_size: page_size
|
|
39
|
+
).entries
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
##
|
|
43
|
+
# Streams CredentialInstance records from the API as an Enumerable.
|
|
44
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
45
|
+
# is reached.
|
|
46
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
47
|
+
# guarantees to never return more than limit. Default is no limit
|
|
48
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
49
|
+
# the default value of 50 records. If no page_size is defined
|
|
50
|
+
# but a limit is defined, stream() will attempt to read the
|
|
51
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
52
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
|
53
|
+
def stream(limit: nil, page_size: nil)
|
|
54
|
+
limits = @version.read_limits(limit, page_size)
|
|
55
|
+
|
|
56
|
+
page = self.page(
|
|
57
|
+
page_size: limits[:page_size],
|
|
58
|
+
)
|
|
59
|
+
|
|
60
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
##
|
|
64
|
+
# When passed a block, yields CredentialInstance records from the API.
|
|
65
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
66
|
+
# is reached.
|
|
67
|
+
def each
|
|
68
|
+
limits = @version.read_limits
|
|
69
|
+
|
|
70
|
+
page = self.page(
|
|
71
|
+
page_size: limits[:page_size],
|
|
72
|
+
)
|
|
73
|
+
|
|
74
|
+
@version.stream(page,
|
|
75
|
+
limit: limits[:limit],
|
|
76
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
##
|
|
80
|
+
# Retrieve a single page of CredentialInstance records from the API.
|
|
81
|
+
# Request is executed immediately.
|
|
82
|
+
# @param [String] page_token PageToken provided by the API
|
|
83
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
|
84
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
|
85
|
+
# @return [Page] Page of CredentialInstance
|
|
86
|
+
def page(page_token: :unset, page_number: :unset, page_size: :unset)
|
|
87
|
+
params = Twilio::Values.of({
|
|
88
|
+
'PageToken' => page_token,
|
|
89
|
+
'Page' => page_number,
|
|
90
|
+
'PageSize' => page_size,
|
|
91
|
+
})
|
|
92
|
+
response = @version.page(
|
|
93
|
+
'GET',
|
|
94
|
+
@uri,
|
|
95
|
+
params
|
|
96
|
+
)
|
|
97
|
+
CredentialPage.new(@version, response, @solution)
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
##
|
|
101
|
+
# Retrieve a single page of CredentialInstance records from the API.
|
|
102
|
+
# Request is executed immediately.
|
|
103
|
+
# @param [String] target_url API-generated URL for the requested results page
|
|
104
|
+
# @return [Page] Page of CredentialInstance
|
|
105
|
+
def get_page(target_url)
|
|
106
|
+
response = @version.domain.request(
|
|
107
|
+
'GET',
|
|
108
|
+
target_url
|
|
109
|
+
)
|
|
110
|
+
CredentialPage.new(@version, response, @solution)
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
##
|
|
114
|
+
# Retrieve a single page of CredentialInstance records from the API.
|
|
115
|
+
# Request is executed immediately.
|
|
116
|
+
# @param [credential.PushService] type The type
|
|
117
|
+
# @param [String] friendly_name The friendly_name
|
|
118
|
+
# @param [String] certificate The certificate
|
|
119
|
+
# @param [String] private_key The private_key
|
|
120
|
+
# @param [Boolean] sandbox The sandbox
|
|
121
|
+
# @param [String] api_key The api_key
|
|
122
|
+
# @param [String] secret The secret
|
|
123
|
+
# @return [CredentialInstance] Newly created CredentialInstance
|
|
124
|
+
def create(type: nil, friendly_name: :unset, certificate: :unset, private_key: :unset, sandbox: :unset, api_key: :unset, secret: :unset)
|
|
125
|
+
data = Twilio::Values.of({
|
|
126
|
+
'Type' => type,
|
|
127
|
+
'FriendlyName' => friendly_name,
|
|
128
|
+
'Certificate' => certificate,
|
|
129
|
+
'PrivateKey' => private_key,
|
|
130
|
+
'Sandbox' => sandbox,
|
|
131
|
+
'ApiKey' => api_key,
|
|
132
|
+
'Secret' => secret,
|
|
133
|
+
})
|
|
134
|
+
|
|
135
|
+
payload = @version.create(
|
|
136
|
+
'POST',
|
|
137
|
+
@uri,
|
|
138
|
+
data: data
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
CredentialInstance.new(
|
|
142
|
+
@version,
|
|
143
|
+
payload,
|
|
144
|
+
)
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
##
|
|
148
|
+
# Provide a user friendly representation
|
|
149
|
+
def to_s
|
|
150
|
+
'#<Twilio.IpMessaging.V1.CredentialList>'
|
|
151
|
+
end
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
class CredentialPage < Page
|
|
155
|
+
##
|
|
156
|
+
# Initialize the CredentialPage
|
|
157
|
+
# @param [Version] version Version that contains the resource
|
|
158
|
+
# @param [Response] response Response from the API
|
|
159
|
+
# @param [Hash] solution Path solution for the resource
|
|
160
|
+
# @return [CredentialPage] CredentialPage
|
|
161
|
+
def initialize(version, response, solution)
|
|
162
|
+
super(version, response)
|
|
163
|
+
|
|
164
|
+
# Path Solution
|
|
165
|
+
@solution = solution
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
##
|
|
169
|
+
# Build an instance of CredentialInstance
|
|
170
|
+
# @param [Hash] payload Payload response from the API
|
|
171
|
+
# @return [CredentialInstance] CredentialInstance
|
|
172
|
+
def get_instance(payload)
|
|
173
|
+
CredentialInstance.new(
|
|
174
|
+
@version,
|
|
175
|
+
payload,
|
|
176
|
+
)
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
##
|
|
180
|
+
# Provide a user friendly representation
|
|
181
|
+
def to_s
|
|
182
|
+
'<Twilio.IpMessaging.V1.CredentialPage>'
|
|
183
|
+
end
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
class CredentialContext < InstanceContext
|
|
187
|
+
##
|
|
188
|
+
# Initialize the CredentialContext
|
|
189
|
+
# @param [Version] version Version that contains the resource
|
|
190
|
+
# @param [String] sid The sid
|
|
191
|
+
# @return [CredentialContext] CredentialContext
|
|
192
|
+
def initialize(version, sid)
|
|
193
|
+
super(version)
|
|
194
|
+
|
|
195
|
+
# Path Solution
|
|
196
|
+
@solution = {
|
|
197
|
+
sid: sid,
|
|
198
|
+
}
|
|
199
|
+
@uri = "/Credentials/#{@solution[:sid]}"
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
##
|
|
203
|
+
# Fetch a CredentialInstance
|
|
204
|
+
# @return [CredentialInstance] Fetched CredentialInstance
|
|
205
|
+
def fetch
|
|
206
|
+
params = Twilio::Values.of({})
|
|
207
|
+
|
|
208
|
+
payload = @version.fetch(
|
|
209
|
+
'GET',
|
|
210
|
+
@uri,
|
|
211
|
+
params,
|
|
212
|
+
)
|
|
213
|
+
|
|
214
|
+
CredentialInstance.new(
|
|
215
|
+
@version,
|
|
216
|
+
payload,
|
|
217
|
+
sid: @solution[:sid],
|
|
218
|
+
)
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
##
|
|
222
|
+
# Update the CredentialInstance
|
|
223
|
+
# @param [String] friendly_name The friendly_name
|
|
224
|
+
# @param [String] certificate The certificate
|
|
225
|
+
# @param [String] private_key The private_key
|
|
226
|
+
# @param [Boolean] sandbox The sandbox
|
|
227
|
+
# @param [String] api_key The api_key
|
|
228
|
+
# @param [String] secret The secret
|
|
229
|
+
# @return [CredentialInstance] Updated CredentialInstance
|
|
230
|
+
def update(friendly_name: :unset, certificate: :unset, private_key: :unset, sandbox: :unset, api_key: :unset, secret: :unset)
|
|
231
|
+
data = Twilio::Values.of({
|
|
232
|
+
'FriendlyName' => friendly_name,
|
|
233
|
+
'Certificate' => certificate,
|
|
234
|
+
'PrivateKey' => private_key,
|
|
235
|
+
'Sandbox' => sandbox,
|
|
236
|
+
'ApiKey' => api_key,
|
|
237
|
+
'Secret' => secret,
|
|
238
|
+
})
|
|
239
|
+
|
|
240
|
+
payload = @version.update(
|
|
241
|
+
'POST',
|
|
242
|
+
@uri,
|
|
243
|
+
data: data,
|
|
244
|
+
)
|
|
245
|
+
|
|
246
|
+
CredentialInstance.new(
|
|
247
|
+
@version,
|
|
248
|
+
payload,
|
|
249
|
+
sid: @solution[:sid],
|
|
250
|
+
)
|
|
251
|
+
end
|
|
252
|
+
|
|
253
|
+
##
|
|
254
|
+
# Deletes the CredentialInstance
|
|
255
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
256
|
+
def delete
|
|
257
|
+
@version.delete('delete', @uri)
|
|
258
|
+
end
|
|
259
|
+
|
|
260
|
+
##
|
|
261
|
+
# Provide a user friendly representation
|
|
262
|
+
def to_s
|
|
263
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
|
264
|
+
"#<Twilio.IpMessaging.V1.CredentialContext #{context}>"
|
|
265
|
+
end
|
|
266
|
+
end
|
|
267
|
+
|
|
268
|
+
class CredentialInstance < InstanceResource
|
|
269
|
+
##
|
|
270
|
+
# Initialize the CredentialInstance
|
|
271
|
+
# @param [Version] version Version that contains the resource
|
|
272
|
+
# @param [Hash] payload payload that contains response from Twilio
|
|
273
|
+
# @param [String] sid The sid
|
|
274
|
+
# @return [CredentialInstance] CredentialInstance
|
|
275
|
+
def initialize(version, payload, sid: nil)
|
|
276
|
+
super(version)
|
|
277
|
+
|
|
278
|
+
# Marshaled Properties
|
|
279
|
+
@properties = {
|
|
280
|
+
'sid' => payload['sid'],
|
|
281
|
+
'account_sid' => payload['account_sid'],
|
|
282
|
+
'friendly_name' => payload['friendly_name'],
|
|
283
|
+
'type' => payload['type'],
|
|
284
|
+
'sandbox' => payload['sandbox'],
|
|
285
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
|
286
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
|
287
|
+
'url' => payload['url'],
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
# Context
|
|
291
|
+
@instance_context = nil
|
|
292
|
+
@params = {
|
|
293
|
+
'sid' => sid || @properties['sid'],
|
|
294
|
+
}
|
|
295
|
+
end
|
|
296
|
+
|
|
297
|
+
##
|
|
298
|
+
# Generate an instance context for the instance, the context is capable of
|
|
299
|
+
# performing various actions. All instance actions are proxied to the context
|
|
300
|
+
# @return [CredentialContext] CredentialContext for this CredentialInstance
|
|
301
|
+
def context
|
|
302
|
+
unless @instance_context
|
|
303
|
+
@instance_context = CredentialContext.new(
|
|
304
|
+
@version,
|
|
305
|
+
@params['sid'],
|
|
306
|
+
)
|
|
307
|
+
end
|
|
308
|
+
@instance_context
|
|
309
|
+
end
|
|
310
|
+
|
|
311
|
+
##
|
|
312
|
+
# @return [String] The sid
|
|
313
|
+
def sid
|
|
314
|
+
@properties['sid']
|
|
315
|
+
end
|
|
316
|
+
|
|
317
|
+
##
|
|
318
|
+
# @return [String] The account_sid
|
|
319
|
+
def account_sid
|
|
320
|
+
@properties['account_sid']
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
##
|
|
324
|
+
# @return [String] The friendly_name
|
|
325
|
+
def friendly_name
|
|
326
|
+
@properties['friendly_name']
|
|
327
|
+
end
|
|
328
|
+
|
|
329
|
+
##
|
|
330
|
+
# @return [credential.PushService] The type
|
|
331
|
+
def type
|
|
332
|
+
@properties['type']
|
|
333
|
+
end
|
|
334
|
+
|
|
335
|
+
##
|
|
336
|
+
# @return [String] The sandbox
|
|
337
|
+
def sandbox
|
|
338
|
+
@properties['sandbox']
|
|
339
|
+
end
|
|
340
|
+
|
|
341
|
+
##
|
|
342
|
+
# @return [Time] The date_created
|
|
343
|
+
def date_created
|
|
344
|
+
@properties['date_created']
|
|
345
|
+
end
|
|
346
|
+
|
|
347
|
+
##
|
|
348
|
+
# @return [Time] The date_updated
|
|
349
|
+
def date_updated
|
|
350
|
+
@properties['date_updated']
|
|
351
|
+
end
|
|
352
|
+
|
|
353
|
+
##
|
|
354
|
+
# @return [String] The url
|
|
355
|
+
def url
|
|
356
|
+
@properties['url']
|
|
357
|
+
end
|
|
358
|
+
|
|
359
|
+
##
|
|
360
|
+
# Fetch a CredentialInstance
|
|
361
|
+
# @return [CredentialInstance] Fetched CredentialInstance
|
|
362
|
+
def fetch
|
|
363
|
+
context.fetch
|
|
364
|
+
end
|
|
365
|
+
|
|
366
|
+
##
|
|
367
|
+
# Update the CredentialInstance
|
|
368
|
+
# @param [String] friendly_name The friendly_name
|
|
369
|
+
# @param [String] certificate The certificate
|
|
370
|
+
# @param [String] private_key The private_key
|
|
371
|
+
# @param [Boolean] sandbox The sandbox
|
|
372
|
+
# @param [String] api_key The api_key
|
|
373
|
+
# @param [String] secret The secret
|
|
374
|
+
# @return [CredentialInstance] Updated CredentialInstance
|
|
375
|
+
def update(friendly_name: :unset, certificate: :unset, private_key: :unset, sandbox: :unset, api_key: :unset, secret: :unset)
|
|
376
|
+
context.update(
|
|
377
|
+
friendly_name: friendly_name,
|
|
378
|
+
certificate: certificate,
|
|
379
|
+
private_key: private_key,
|
|
380
|
+
sandbox: sandbox,
|
|
381
|
+
api_key: api_key,
|
|
382
|
+
secret: secret,
|
|
383
|
+
)
|
|
384
|
+
end
|
|
385
|
+
|
|
386
|
+
##
|
|
387
|
+
# Deletes the CredentialInstance
|
|
388
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
389
|
+
def delete
|
|
390
|
+
context.delete
|
|
391
|
+
end
|
|
392
|
+
|
|
393
|
+
##
|
|
394
|
+
# Provide a user friendly representation
|
|
395
|
+
def to_s
|
|
396
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
|
397
|
+
"<Twilio.IpMessaging.V1.CredentialInstance #{values}>"
|
|
398
|
+
end
|
|
399
|
+
end
|
|
400
|
+
end
|
|
401
|
+
end
|
|
402
|
+
end
|
|
403
|
+
end
|