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,438 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This code was generated by
|
|
3
|
+
# \ / _ _ _| _ _
|
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
|
5
|
+
# / /
|
|
6
|
+
|
|
7
|
+
module Twilio
|
|
8
|
+
module REST
|
|
9
|
+
class Preview < Domain
|
|
10
|
+
class Sync < Version
|
|
11
|
+
class ServiceContext < InstanceContext
|
|
12
|
+
class SyncListList < ListResource
|
|
13
|
+
##
|
|
14
|
+
# Initialize the SyncListList
|
|
15
|
+
# @param [Version] version Version that contains the resource
|
|
16
|
+
# @param [String] service_sid The service_sid
|
|
17
|
+
# @return [SyncListList] SyncListList
|
|
18
|
+
def initialize(version, service_sid: nil)
|
|
19
|
+
super(version)
|
|
20
|
+
|
|
21
|
+
# Path Solution
|
|
22
|
+
@solution = {
|
|
23
|
+
service_sid: service_sid
|
|
24
|
+
}
|
|
25
|
+
@uri = "/Services/#{@solution[:service_sid]}/Lists"
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
##
|
|
29
|
+
# Retrieve a single page of SyncListInstance records from the API.
|
|
30
|
+
# Request is executed immediately.
|
|
31
|
+
# @param [String] unique_name The unique_name
|
|
32
|
+
# @return [SyncListInstance] Newly created SyncListInstance
|
|
33
|
+
def create(unique_name: :unset)
|
|
34
|
+
data = Twilio::Values.of({
|
|
35
|
+
'UniqueName' => unique_name,
|
|
36
|
+
})
|
|
37
|
+
|
|
38
|
+
payload = @version.create(
|
|
39
|
+
'POST',
|
|
40
|
+
@uri,
|
|
41
|
+
data: data
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
SyncListInstance.new(
|
|
45
|
+
@version,
|
|
46
|
+
payload,
|
|
47
|
+
service_sid: @solution[:service_sid],
|
|
48
|
+
)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
##
|
|
52
|
+
# Lists SyncListInstance records from the API as a list.
|
|
53
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
|
54
|
+
# memory before returning.
|
|
55
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
56
|
+
# guarantees to never return more than limit. Default is no limit
|
|
57
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
58
|
+
# the default value of 50 records. If no page_size is defined
|
|
59
|
+
# but a limit is defined, stream() will attempt to read the
|
|
60
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
61
|
+
# @return [Array] Array of up to limit results
|
|
62
|
+
def list(limit: nil, page_size: nil)
|
|
63
|
+
self.stream(
|
|
64
|
+
limit: limit,
|
|
65
|
+
page_size: page_size
|
|
66
|
+
).entries
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
##
|
|
70
|
+
# Streams SyncListInstance records from the API as an Enumerable.
|
|
71
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
72
|
+
# is reached.
|
|
73
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
74
|
+
# guarantees to never return more than limit. Default is no limit
|
|
75
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
76
|
+
# the default value of 50 records. If no page_size is defined
|
|
77
|
+
# but a limit is defined, stream() will attempt to read the
|
|
78
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
79
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
|
80
|
+
def stream(limit: nil, page_size: nil)
|
|
81
|
+
limits = @version.read_limits(limit, page_size)
|
|
82
|
+
|
|
83
|
+
page = self.page(
|
|
84
|
+
page_size: limits[:page_size],
|
|
85
|
+
)
|
|
86
|
+
|
|
87
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
##
|
|
91
|
+
# When passed a block, yields SyncListInstance records from the API.
|
|
92
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
93
|
+
# is reached.
|
|
94
|
+
def each
|
|
95
|
+
limits = @version.read_limits
|
|
96
|
+
|
|
97
|
+
page = self.page(
|
|
98
|
+
page_size: limits[:page_size],
|
|
99
|
+
)
|
|
100
|
+
|
|
101
|
+
@version.stream(page,
|
|
102
|
+
limit: limits[:limit],
|
|
103
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
##
|
|
107
|
+
# Retrieve a single page of SyncListInstance records from the API.
|
|
108
|
+
# Request is executed immediately.
|
|
109
|
+
# @param [String] page_token PageToken provided by the API
|
|
110
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
|
111
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
|
112
|
+
# @return [Page] Page of SyncListInstance
|
|
113
|
+
def page(page_token: :unset, page_number: :unset, page_size: :unset)
|
|
114
|
+
params = Twilio::Values.of({
|
|
115
|
+
'PageToken' => page_token,
|
|
116
|
+
'Page' => page_number,
|
|
117
|
+
'PageSize' => page_size,
|
|
118
|
+
})
|
|
119
|
+
response = @version.page(
|
|
120
|
+
'GET',
|
|
121
|
+
@uri,
|
|
122
|
+
params
|
|
123
|
+
)
|
|
124
|
+
SyncListPage.new(@version, response, @solution)
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
##
|
|
128
|
+
# Retrieve a single page of SyncListInstance records from the API.
|
|
129
|
+
# Request is executed immediately.
|
|
130
|
+
# @param [String] target_url API-generated URL for the requested results page
|
|
131
|
+
# @return [Page] Page of SyncListInstance
|
|
132
|
+
def get_page(target_url)
|
|
133
|
+
response = @version.domain.request(
|
|
134
|
+
'GET',
|
|
135
|
+
target_url
|
|
136
|
+
)
|
|
137
|
+
SyncListPage.new(@version, response, @solution)
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
##
|
|
141
|
+
# Provide a user friendly representation
|
|
142
|
+
def to_s
|
|
143
|
+
'#<Twilio.Preview.Sync.SyncListList>'
|
|
144
|
+
end
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
class SyncListPage < Page
|
|
148
|
+
##
|
|
149
|
+
# Initialize the SyncListPage
|
|
150
|
+
# @param [Version] version Version that contains the resource
|
|
151
|
+
# @param [Response] response Response from the API
|
|
152
|
+
# @param [Hash] solution Path solution for the resource
|
|
153
|
+
# @return [SyncListPage] SyncListPage
|
|
154
|
+
def initialize(version, response, solution)
|
|
155
|
+
super(version, response)
|
|
156
|
+
|
|
157
|
+
# Path Solution
|
|
158
|
+
@solution = solution
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
##
|
|
162
|
+
# Build an instance of SyncListInstance
|
|
163
|
+
# @param [Hash] payload Payload response from the API
|
|
164
|
+
# @return [SyncListInstance] SyncListInstance
|
|
165
|
+
def get_instance(payload)
|
|
166
|
+
SyncListInstance.new(
|
|
167
|
+
@version,
|
|
168
|
+
payload,
|
|
169
|
+
service_sid: @solution[:service_sid],
|
|
170
|
+
)
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
##
|
|
174
|
+
# Provide a user friendly representation
|
|
175
|
+
def to_s
|
|
176
|
+
'<Twilio.Preview.Sync.SyncListPage>'
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
class SyncListContext < InstanceContext
|
|
181
|
+
##
|
|
182
|
+
# Initialize the SyncListContext
|
|
183
|
+
# @param [Version] version Version that contains the resource
|
|
184
|
+
# @param [String] service_sid The service_sid
|
|
185
|
+
# @param [String] sid The sid
|
|
186
|
+
# @return [SyncListContext] SyncListContext
|
|
187
|
+
def initialize(version, service_sid, sid)
|
|
188
|
+
super(version)
|
|
189
|
+
|
|
190
|
+
# Path Solution
|
|
191
|
+
@solution = {
|
|
192
|
+
service_sid: service_sid,
|
|
193
|
+
sid: sid,
|
|
194
|
+
}
|
|
195
|
+
@uri = "/Services/#{@solution[:service_sid]}/Lists/#{@solution[:sid]}"
|
|
196
|
+
|
|
197
|
+
# Dependents
|
|
198
|
+
@sync_list_items = nil
|
|
199
|
+
@sync_list_permissions = nil
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
##
|
|
203
|
+
# Fetch a SyncListInstance
|
|
204
|
+
# @return [SyncListInstance] Fetched SyncListInstance
|
|
205
|
+
def fetch
|
|
206
|
+
params = Twilio::Values.of({})
|
|
207
|
+
|
|
208
|
+
payload = @version.fetch(
|
|
209
|
+
'GET',
|
|
210
|
+
@uri,
|
|
211
|
+
params,
|
|
212
|
+
)
|
|
213
|
+
|
|
214
|
+
SyncListInstance.new(
|
|
215
|
+
@version,
|
|
216
|
+
payload,
|
|
217
|
+
service_sid: @solution[:service_sid],
|
|
218
|
+
sid: @solution[:sid],
|
|
219
|
+
)
|
|
220
|
+
end
|
|
221
|
+
|
|
222
|
+
##
|
|
223
|
+
# Deletes the SyncListInstance
|
|
224
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
225
|
+
def delete
|
|
226
|
+
@version.delete('delete', @uri)
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
##
|
|
230
|
+
# Access the sync_list_items
|
|
231
|
+
# @return [SyncListItemList]
|
|
232
|
+
# @return [SyncListItemContext] if index was passed.
|
|
233
|
+
def sync_list_items(index=:unset)
|
|
234
|
+
raise ArgumentError, 'index cannot be nil' if index.nil?
|
|
235
|
+
|
|
236
|
+
if index != :unset
|
|
237
|
+
return SyncListItemContext.new(
|
|
238
|
+
@version,
|
|
239
|
+
@solution[:service_sid],
|
|
240
|
+
@solution[:sid],
|
|
241
|
+
index,
|
|
242
|
+
)
|
|
243
|
+
end
|
|
244
|
+
|
|
245
|
+
unless @sync_list_items
|
|
246
|
+
@sync_list_items = SyncListItemList.new(
|
|
247
|
+
@version,
|
|
248
|
+
service_sid: @solution[:service_sid],
|
|
249
|
+
list_sid: @solution[:sid],
|
|
250
|
+
)
|
|
251
|
+
end
|
|
252
|
+
|
|
253
|
+
@sync_list_items
|
|
254
|
+
end
|
|
255
|
+
|
|
256
|
+
##
|
|
257
|
+
# Access the sync_list_permissions
|
|
258
|
+
# @return [SyncListPermissionList]
|
|
259
|
+
# @return [SyncListPermissionContext] if identity was passed.
|
|
260
|
+
def sync_list_permissions(identity=:unset)
|
|
261
|
+
raise ArgumentError, 'identity cannot be nil' if identity.nil?
|
|
262
|
+
|
|
263
|
+
if identity != :unset
|
|
264
|
+
return SyncListPermissionContext.new(
|
|
265
|
+
@version,
|
|
266
|
+
@solution[:service_sid],
|
|
267
|
+
@solution[:sid],
|
|
268
|
+
identity,
|
|
269
|
+
)
|
|
270
|
+
end
|
|
271
|
+
|
|
272
|
+
unless @sync_list_permissions
|
|
273
|
+
@sync_list_permissions = SyncListPermissionList.new(
|
|
274
|
+
@version,
|
|
275
|
+
service_sid: @solution[:service_sid],
|
|
276
|
+
list_sid: @solution[:sid],
|
|
277
|
+
)
|
|
278
|
+
end
|
|
279
|
+
|
|
280
|
+
@sync_list_permissions
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
##
|
|
284
|
+
# Provide a user friendly representation
|
|
285
|
+
def to_s
|
|
286
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
|
287
|
+
"#<Twilio.Preview.Sync.SyncListContext #{context}>"
|
|
288
|
+
end
|
|
289
|
+
end
|
|
290
|
+
|
|
291
|
+
class SyncListInstance < InstanceResource
|
|
292
|
+
##
|
|
293
|
+
# Initialize the SyncListInstance
|
|
294
|
+
# @param [Version] version Version that contains the resource
|
|
295
|
+
# @param [Hash] payload payload that contains response from Twilio
|
|
296
|
+
# @param [String] service_sid The service_sid
|
|
297
|
+
# @param [String] sid The sid
|
|
298
|
+
# @return [SyncListInstance] SyncListInstance
|
|
299
|
+
def initialize(version, payload, service_sid: nil, sid: nil)
|
|
300
|
+
super(version)
|
|
301
|
+
|
|
302
|
+
# Marshaled Properties
|
|
303
|
+
@properties = {
|
|
304
|
+
'sid' => payload['sid'],
|
|
305
|
+
'unique_name' => payload['unique_name'],
|
|
306
|
+
'account_sid' => payload['account_sid'],
|
|
307
|
+
'service_sid' => payload['service_sid'],
|
|
308
|
+
'url' => payload['url'],
|
|
309
|
+
'links' => payload['links'],
|
|
310
|
+
'revision' => payload['revision'],
|
|
311
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
|
312
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
|
313
|
+
'created_by' => payload['created_by'],
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
# Context
|
|
317
|
+
@instance_context = nil
|
|
318
|
+
@params = {
|
|
319
|
+
'service_sid' => service_sid,
|
|
320
|
+
'sid' => sid || @properties['sid'],
|
|
321
|
+
}
|
|
322
|
+
end
|
|
323
|
+
|
|
324
|
+
##
|
|
325
|
+
# Generate an instance context for the instance, the context is capable of
|
|
326
|
+
# performing various actions. All instance actions are proxied to the context
|
|
327
|
+
# @return [SyncListContext] SyncListContext for this SyncListInstance
|
|
328
|
+
def context
|
|
329
|
+
unless @instance_context
|
|
330
|
+
@instance_context = SyncListContext.new(
|
|
331
|
+
@version,
|
|
332
|
+
@params['service_sid'],
|
|
333
|
+
@params['sid'],
|
|
334
|
+
)
|
|
335
|
+
end
|
|
336
|
+
@instance_context
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
##
|
|
340
|
+
# @return [String] The sid
|
|
341
|
+
def sid
|
|
342
|
+
@properties['sid']
|
|
343
|
+
end
|
|
344
|
+
|
|
345
|
+
##
|
|
346
|
+
# @return [String] The unique_name
|
|
347
|
+
def unique_name
|
|
348
|
+
@properties['unique_name']
|
|
349
|
+
end
|
|
350
|
+
|
|
351
|
+
##
|
|
352
|
+
# @return [String] The account_sid
|
|
353
|
+
def account_sid
|
|
354
|
+
@properties['account_sid']
|
|
355
|
+
end
|
|
356
|
+
|
|
357
|
+
##
|
|
358
|
+
# @return [String] The service_sid
|
|
359
|
+
def service_sid
|
|
360
|
+
@properties['service_sid']
|
|
361
|
+
end
|
|
362
|
+
|
|
363
|
+
##
|
|
364
|
+
# @return [String] The url
|
|
365
|
+
def url
|
|
366
|
+
@properties['url']
|
|
367
|
+
end
|
|
368
|
+
|
|
369
|
+
##
|
|
370
|
+
# @return [String] The links
|
|
371
|
+
def links
|
|
372
|
+
@properties['links']
|
|
373
|
+
end
|
|
374
|
+
|
|
375
|
+
##
|
|
376
|
+
# @return [String] The revision
|
|
377
|
+
def revision
|
|
378
|
+
@properties['revision']
|
|
379
|
+
end
|
|
380
|
+
|
|
381
|
+
##
|
|
382
|
+
# @return [Time] The date_created
|
|
383
|
+
def date_created
|
|
384
|
+
@properties['date_created']
|
|
385
|
+
end
|
|
386
|
+
|
|
387
|
+
##
|
|
388
|
+
# @return [Time] The date_updated
|
|
389
|
+
def date_updated
|
|
390
|
+
@properties['date_updated']
|
|
391
|
+
end
|
|
392
|
+
|
|
393
|
+
##
|
|
394
|
+
# @return [String] The created_by
|
|
395
|
+
def created_by
|
|
396
|
+
@properties['created_by']
|
|
397
|
+
end
|
|
398
|
+
|
|
399
|
+
##
|
|
400
|
+
# Fetch a SyncListInstance
|
|
401
|
+
# @return [SyncListInstance] Fetched SyncListInstance
|
|
402
|
+
def fetch
|
|
403
|
+
context.fetch
|
|
404
|
+
end
|
|
405
|
+
|
|
406
|
+
##
|
|
407
|
+
# Deletes the SyncListInstance
|
|
408
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
409
|
+
def delete
|
|
410
|
+
context.delete
|
|
411
|
+
end
|
|
412
|
+
|
|
413
|
+
##
|
|
414
|
+
# Access the sync_list_items
|
|
415
|
+
# @return [sync_list_items] sync_list_items
|
|
416
|
+
def sync_list_items
|
|
417
|
+
context.sync_list_items
|
|
418
|
+
end
|
|
419
|
+
|
|
420
|
+
##
|
|
421
|
+
# Access the sync_list_permissions
|
|
422
|
+
# @return [sync_list_permissions] sync_list_permissions
|
|
423
|
+
def sync_list_permissions
|
|
424
|
+
context.sync_list_permissions
|
|
425
|
+
end
|
|
426
|
+
|
|
427
|
+
##
|
|
428
|
+
# Provide a user friendly representation
|
|
429
|
+
def to_s
|
|
430
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
|
431
|
+
"<Twilio.Preview.Sync.SyncListInstance #{values}>"
|
|
432
|
+
end
|
|
433
|
+
end
|
|
434
|
+
end
|
|
435
|
+
end
|
|
436
|
+
end
|
|
437
|
+
end
|
|
438
|
+
end
|
|
@@ -0,0 +1,430 @@
|
|
|
1
|
+
##
|
|
2
|
+
# This code was generated by
|
|
3
|
+
# \ / _ _ _| _ _
|
|
4
|
+
# | (_)\/(_)(_|\/| |(/_ v1.0.0
|
|
5
|
+
# / /
|
|
6
|
+
|
|
7
|
+
module Twilio
|
|
8
|
+
module REST
|
|
9
|
+
class Preview < Domain
|
|
10
|
+
class Sync < Version
|
|
11
|
+
class ServiceContext < InstanceContext
|
|
12
|
+
class SyncListContext < InstanceContext
|
|
13
|
+
class SyncListItemList < ListResource
|
|
14
|
+
##
|
|
15
|
+
# Initialize the SyncListItemList
|
|
16
|
+
# @param [Version] version Version that contains the resource
|
|
17
|
+
# @param [String] service_sid The service_sid
|
|
18
|
+
# @param [String] list_sid The list_sid
|
|
19
|
+
# @return [SyncListItemList] SyncListItemList
|
|
20
|
+
def initialize(version, service_sid: nil, list_sid: nil)
|
|
21
|
+
super(version)
|
|
22
|
+
|
|
23
|
+
# Path Solution
|
|
24
|
+
@solution = {
|
|
25
|
+
service_sid: service_sid,
|
|
26
|
+
list_sid: list_sid
|
|
27
|
+
}
|
|
28
|
+
@uri = "/Services/#{@solution[:service_sid]}/Lists/#{@solution[:list_sid]}/Items"
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
##
|
|
32
|
+
# Retrieve a single page of SyncListItemInstance records from the API.
|
|
33
|
+
# Request is executed immediately.
|
|
34
|
+
# @param [Hash] data The data
|
|
35
|
+
# @return [SyncListItemInstance] Newly created SyncListItemInstance
|
|
36
|
+
def create(data: nil)
|
|
37
|
+
data = Twilio::Values.of({
|
|
38
|
+
'Data' => Twilio.serialize_object(data),
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
payload = @version.create(
|
|
42
|
+
'POST',
|
|
43
|
+
@uri,
|
|
44
|
+
data: data
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
SyncListItemInstance.new(
|
|
48
|
+
@version,
|
|
49
|
+
payload,
|
|
50
|
+
service_sid: @solution[:service_sid],
|
|
51
|
+
list_sid: @solution[:list_sid],
|
|
52
|
+
)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
##
|
|
56
|
+
# Lists SyncListItemInstance records from the API as a list.
|
|
57
|
+
# Unlike stream(), this operation is eager and will load `limit` records into
|
|
58
|
+
# memory before returning.
|
|
59
|
+
# @param [sync_list_item.QueryResultOrder] order The order
|
|
60
|
+
# @param [String] from The from
|
|
61
|
+
# @param [sync_list_item.QueryFromBoundType] bounds The bounds
|
|
62
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
63
|
+
# guarantees to never return more than limit. Default is no limit
|
|
64
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
65
|
+
# the default value of 50 records. If no page_size is defined
|
|
66
|
+
# but a limit is defined, stream() will attempt to read the
|
|
67
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
68
|
+
# @return [Array] Array of up to limit results
|
|
69
|
+
def list(order: :unset, from: :unset, bounds: :unset, limit: nil, page_size: nil)
|
|
70
|
+
self.stream(
|
|
71
|
+
order: order,
|
|
72
|
+
from: from,
|
|
73
|
+
bounds: bounds,
|
|
74
|
+
limit: limit,
|
|
75
|
+
page_size: page_size
|
|
76
|
+
).entries
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
##
|
|
80
|
+
# Streams SyncListItemInstance records from the API as an Enumerable.
|
|
81
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
82
|
+
# is reached.
|
|
83
|
+
# @param [sync_list_item.QueryResultOrder] order The order
|
|
84
|
+
# @param [String] from The from
|
|
85
|
+
# @param [sync_list_item.QueryFromBoundType] bounds The bounds
|
|
86
|
+
# @param [Integer] limit Upper limit for the number of records to return. stream()
|
|
87
|
+
# guarantees to never return more than limit. Default is no limit
|
|
88
|
+
# @param [Integer] page_size Number of records to fetch per request, when not set will use
|
|
89
|
+
# the default value of 50 records. If no page_size is defined
|
|
90
|
+
# but a limit is defined, stream() will attempt to read the
|
|
91
|
+
# limit with the most efficient page size, i.e. min(limit, 1000)
|
|
92
|
+
# @return [Enumerable] Enumerable that will yield up to limit results
|
|
93
|
+
def stream(order: :unset, from: :unset, bounds: :unset, limit: nil, page_size: nil)
|
|
94
|
+
limits = @version.read_limits(limit, page_size)
|
|
95
|
+
|
|
96
|
+
page = self.page(
|
|
97
|
+
order: order,
|
|
98
|
+
from: from,
|
|
99
|
+
bounds: bounds,
|
|
100
|
+
page_size: limits[:page_size],
|
|
101
|
+
)
|
|
102
|
+
|
|
103
|
+
@version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
##
|
|
107
|
+
# When passed a block, yields SyncListItemInstance records from the API.
|
|
108
|
+
# This operation lazily loads records as efficiently as possible until the limit
|
|
109
|
+
# is reached.
|
|
110
|
+
def each
|
|
111
|
+
limits = @version.read_limits
|
|
112
|
+
|
|
113
|
+
page = self.page(
|
|
114
|
+
page_size: limits[:page_size],
|
|
115
|
+
)
|
|
116
|
+
|
|
117
|
+
@version.stream(page,
|
|
118
|
+
limit: limits[:limit],
|
|
119
|
+
page_limit: limits[:page_limit]).each {|x| yield x}
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
##
|
|
123
|
+
# Retrieve a single page of SyncListItemInstance records from the API.
|
|
124
|
+
# Request is executed immediately.
|
|
125
|
+
# @param [sync_list_item.QueryResultOrder] order The order
|
|
126
|
+
# @param [String] from The from
|
|
127
|
+
# @param [sync_list_item.QueryFromBoundType] bounds The bounds
|
|
128
|
+
# @param [String] page_token PageToken provided by the API
|
|
129
|
+
# @param [Integer] page_number Page Number, this value is simply for client state
|
|
130
|
+
# @param [Integer] page_size Number of records to return, defaults to 50
|
|
131
|
+
# @return [Page] Page of SyncListItemInstance
|
|
132
|
+
def page(order: :unset, from: :unset, bounds: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
|
|
133
|
+
params = Twilio::Values.of({
|
|
134
|
+
'Order' => order,
|
|
135
|
+
'From' => from,
|
|
136
|
+
'Bounds' => bounds,
|
|
137
|
+
'PageToken' => page_token,
|
|
138
|
+
'Page' => page_number,
|
|
139
|
+
'PageSize' => page_size,
|
|
140
|
+
})
|
|
141
|
+
response = @version.page(
|
|
142
|
+
'GET',
|
|
143
|
+
@uri,
|
|
144
|
+
params
|
|
145
|
+
)
|
|
146
|
+
SyncListItemPage.new(@version, response, @solution)
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
##
|
|
150
|
+
# Retrieve a single page of SyncListItemInstance records from the API.
|
|
151
|
+
# Request is executed immediately.
|
|
152
|
+
# @param [String] target_url API-generated URL for the requested results page
|
|
153
|
+
# @return [Page] Page of SyncListItemInstance
|
|
154
|
+
def get_page(target_url)
|
|
155
|
+
response = @version.domain.request(
|
|
156
|
+
'GET',
|
|
157
|
+
target_url
|
|
158
|
+
)
|
|
159
|
+
SyncListItemPage.new(@version, response, @solution)
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
##
|
|
163
|
+
# Provide a user friendly representation
|
|
164
|
+
def to_s
|
|
165
|
+
'#<Twilio.Preview.Sync.SyncListItemList>'
|
|
166
|
+
end
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
class SyncListItemPage < Page
|
|
170
|
+
##
|
|
171
|
+
# Initialize the SyncListItemPage
|
|
172
|
+
# @param [Version] version Version that contains the resource
|
|
173
|
+
# @param [Response] response Response from the API
|
|
174
|
+
# @param [Hash] solution Path solution for the resource
|
|
175
|
+
# @return [SyncListItemPage] SyncListItemPage
|
|
176
|
+
def initialize(version, response, solution)
|
|
177
|
+
super(version, response)
|
|
178
|
+
|
|
179
|
+
# Path Solution
|
|
180
|
+
@solution = solution
|
|
181
|
+
end
|
|
182
|
+
|
|
183
|
+
##
|
|
184
|
+
# Build an instance of SyncListItemInstance
|
|
185
|
+
# @param [Hash] payload Payload response from the API
|
|
186
|
+
# @return [SyncListItemInstance] SyncListItemInstance
|
|
187
|
+
def get_instance(payload)
|
|
188
|
+
SyncListItemInstance.new(
|
|
189
|
+
@version,
|
|
190
|
+
payload,
|
|
191
|
+
service_sid: @solution[:service_sid],
|
|
192
|
+
list_sid: @solution[:list_sid],
|
|
193
|
+
)
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
##
|
|
197
|
+
# Provide a user friendly representation
|
|
198
|
+
def to_s
|
|
199
|
+
'<Twilio.Preview.Sync.SyncListItemPage>'
|
|
200
|
+
end
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
class SyncListItemContext < InstanceContext
|
|
204
|
+
##
|
|
205
|
+
# Initialize the SyncListItemContext
|
|
206
|
+
# @param [Version] version Version that contains the resource
|
|
207
|
+
# @param [String] service_sid The service_sid
|
|
208
|
+
# @param [String] list_sid The list_sid
|
|
209
|
+
# @param [String] index The index
|
|
210
|
+
# @return [SyncListItemContext] SyncListItemContext
|
|
211
|
+
def initialize(version, service_sid, list_sid, index)
|
|
212
|
+
super(version)
|
|
213
|
+
|
|
214
|
+
# Path Solution
|
|
215
|
+
@solution = {
|
|
216
|
+
service_sid: service_sid,
|
|
217
|
+
list_sid: list_sid,
|
|
218
|
+
index: index,
|
|
219
|
+
}
|
|
220
|
+
@uri = "/Services/#{@solution[:service_sid]}/Lists/#{@solution[:list_sid]}/Items/#{@solution[:index]}"
|
|
221
|
+
end
|
|
222
|
+
|
|
223
|
+
##
|
|
224
|
+
# Fetch a SyncListItemInstance
|
|
225
|
+
# @return [SyncListItemInstance] Fetched SyncListItemInstance
|
|
226
|
+
def fetch
|
|
227
|
+
params = Twilio::Values.of({})
|
|
228
|
+
|
|
229
|
+
payload = @version.fetch(
|
|
230
|
+
'GET',
|
|
231
|
+
@uri,
|
|
232
|
+
params,
|
|
233
|
+
)
|
|
234
|
+
|
|
235
|
+
SyncListItemInstance.new(
|
|
236
|
+
@version,
|
|
237
|
+
payload,
|
|
238
|
+
service_sid: @solution[:service_sid],
|
|
239
|
+
list_sid: @solution[:list_sid],
|
|
240
|
+
index: @solution[:index],
|
|
241
|
+
)
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
##
|
|
245
|
+
# Deletes the SyncListItemInstance
|
|
246
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
247
|
+
def delete
|
|
248
|
+
@version.delete('delete', @uri)
|
|
249
|
+
end
|
|
250
|
+
|
|
251
|
+
##
|
|
252
|
+
# Update the SyncListItemInstance
|
|
253
|
+
# @param [Hash] data The data
|
|
254
|
+
# @return [SyncListItemInstance] Updated SyncListItemInstance
|
|
255
|
+
def update(data: nil)
|
|
256
|
+
data = Twilio::Values.of({
|
|
257
|
+
'Data' => Twilio.serialize_object(data),
|
|
258
|
+
})
|
|
259
|
+
|
|
260
|
+
payload = @version.update(
|
|
261
|
+
'POST',
|
|
262
|
+
@uri,
|
|
263
|
+
data: data,
|
|
264
|
+
)
|
|
265
|
+
|
|
266
|
+
SyncListItemInstance.new(
|
|
267
|
+
@version,
|
|
268
|
+
payload,
|
|
269
|
+
service_sid: @solution[:service_sid],
|
|
270
|
+
list_sid: @solution[:list_sid],
|
|
271
|
+
index: @solution[:index],
|
|
272
|
+
)
|
|
273
|
+
end
|
|
274
|
+
|
|
275
|
+
##
|
|
276
|
+
# Provide a user friendly representation
|
|
277
|
+
def to_s
|
|
278
|
+
context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
|
|
279
|
+
"#<Twilio.Preview.Sync.SyncListItemContext #{context}>"
|
|
280
|
+
end
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
class SyncListItemInstance < InstanceResource
|
|
284
|
+
##
|
|
285
|
+
# Initialize the SyncListItemInstance
|
|
286
|
+
# @param [Version] version Version that contains the resource
|
|
287
|
+
# @param [Hash] payload payload that contains response from Twilio
|
|
288
|
+
# @param [String] service_sid The service_sid
|
|
289
|
+
# @param [String] list_sid The list_sid
|
|
290
|
+
# @param [String] index The index
|
|
291
|
+
# @return [SyncListItemInstance] SyncListItemInstance
|
|
292
|
+
def initialize(version, payload, service_sid: nil, list_sid: nil, index: nil)
|
|
293
|
+
super(version)
|
|
294
|
+
|
|
295
|
+
# Marshaled Properties
|
|
296
|
+
@properties = {
|
|
297
|
+
'index' => payload['index'].to_i,
|
|
298
|
+
'account_sid' => payload['account_sid'],
|
|
299
|
+
'service_sid' => payload['service_sid'],
|
|
300
|
+
'list_sid' => payload['list_sid'],
|
|
301
|
+
'url' => payload['url'],
|
|
302
|
+
'revision' => payload['revision'],
|
|
303
|
+
'data' => payload['data'],
|
|
304
|
+
'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
|
|
305
|
+
'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
|
|
306
|
+
'created_by' => payload['created_by'],
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
# Context
|
|
310
|
+
@instance_context = nil
|
|
311
|
+
@params = {
|
|
312
|
+
'service_sid' => service_sid,
|
|
313
|
+
'list_sid' => list_sid,
|
|
314
|
+
'index' => index || @properties['index'],
|
|
315
|
+
}
|
|
316
|
+
end
|
|
317
|
+
|
|
318
|
+
##
|
|
319
|
+
# Generate an instance context for the instance, the context is capable of
|
|
320
|
+
# performing various actions. All instance actions are proxied to the context
|
|
321
|
+
# @return [SyncListItemContext] SyncListItemContext for this SyncListItemInstance
|
|
322
|
+
def context
|
|
323
|
+
unless @instance_context
|
|
324
|
+
@instance_context = SyncListItemContext.new(
|
|
325
|
+
@version,
|
|
326
|
+
@params['service_sid'],
|
|
327
|
+
@params['list_sid'],
|
|
328
|
+
@params['index'],
|
|
329
|
+
)
|
|
330
|
+
end
|
|
331
|
+
@instance_context
|
|
332
|
+
end
|
|
333
|
+
|
|
334
|
+
##
|
|
335
|
+
# @return [String] The index
|
|
336
|
+
def index
|
|
337
|
+
@properties['index']
|
|
338
|
+
end
|
|
339
|
+
|
|
340
|
+
##
|
|
341
|
+
# @return [String] The account_sid
|
|
342
|
+
def account_sid
|
|
343
|
+
@properties['account_sid']
|
|
344
|
+
end
|
|
345
|
+
|
|
346
|
+
##
|
|
347
|
+
# @return [String] The service_sid
|
|
348
|
+
def service_sid
|
|
349
|
+
@properties['service_sid']
|
|
350
|
+
end
|
|
351
|
+
|
|
352
|
+
##
|
|
353
|
+
# @return [String] The list_sid
|
|
354
|
+
def list_sid
|
|
355
|
+
@properties['list_sid']
|
|
356
|
+
end
|
|
357
|
+
|
|
358
|
+
##
|
|
359
|
+
# @return [String] The url
|
|
360
|
+
def url
|
|
361
|
+
@properties['url']
|
|
362
|
+
end
|
|
363
|
+
|
|
364
|
+
##
|
|
365
|
+
# @return [String] The revision
|
|
366
|
+
def revision
|
|
367
|
+
@properties['revision']
|
|
368
|
+
end
|
|
369
|
+
|
|
370
|
+
##
|
|
371
|
+
# @return [Hash] The data
|
|
372
|
+
def data
|
|
373
|
+
@properties['data']
|
|
374
|
+
end
|
|
375
|
+
|
|
376
|
+
##
|
|
377
|
+
# @return [Time] The date_created
|
|
378
|
+
def date_created
|
|
379
|
+
@properties['date_created']
|
|
380
|
+
end
|
|
381
|
+
|
|
382
|
+
##
|
|
383
|
+
# @return [Time] The date_updated
|
|
384
|
+
def date_updated
|
|
385
|
+
@properties['date_updated']
|
|
386
|
+
end
|
|
387
|
+
|
|
388
|
+
##
|
|
389
|
+
# @return [String] The created_by
|
|
390
|
+
def created_by
|
|
391
|
+
@properties['created_by']
|
|
392
|
+
end
|
|
393
|
+
|
|
394
|
+
##
|
|
395
|
+
# Fetch a SyncListItemInstance
|
|
396
|
+
# @return [SyncListItemInstance] Fetched SyncListItemInstance
|
|
397
|
+
def fetch
|
|
398
|
+
context.fetch
|
|
399
|
+
end
|
|
400
|
+
|
|
401
|
+
##
|
|
402
|
+
# Deletes the SyncListItemInstance
|
|
403
|
+
# @return [Boolean] true if delete succeeds, true otherwise
|
|
404
|
+
def delete
|
|
405
|
+
context.delete
|
|
406
|
+
end
|
|
407
|
+
|
|
408
|
+
##
|
|
409
|
+
# Update the SyncListItemInstance
|
|
410
|
+
# @param [Hash] data The data
|
|
411
|
+
# @return [SyncListItemInstance] Updated SyncListItemInstance
|
|
412
|
+
def update(data: nil)
|
|
413
|
+
context.update(
|
|
414
|
+
data: data,
|
|
415
|
+
)
|
|
416
|
+
end
|
|
417
|
+
|
|
418
|
+
##
|
|
419
|
+
# Provide a user friendly representation
|
|
420
|
+
def to_s
|
|
421
|
+
values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
|
|
422
|
+
"<Twilio.Preview.Sync.SyncListItemInstance #{values}>"
|
|
423
|
+
end
|
|
424
|
+
end
|
|
425
|
+
end
|
|
426
|
+
end
|
|
427
|
+
end
|
|
428
|
+
end
|
|
429
|
+
end
|
|
430
|
+
end
|