Module: VoiceML
- Defined in:
- lib/voiceml.rb,
lib/voiceml/hosts.rb,
lib/voiceml/client.rb,
lib/voiceml/errors.rb,
lib/voiceml/version.rb,
lib/voiceml/transport.rb,
lib/voiceml/models/sip.rb,
lib/voiceml/models/calls.rb,
lib/voiceml/models/media.rb,
lib/voiceml/models/common.rb,
lib/voiceml/models/queues.rb,
lib/voiceml/models/siprec.rb,
lib/voiceml/resources/sip.rb,
lib/voiceml/models/pricing.rb,
lib/voiceml/models/streams.rb,
lib/voiceml/resources/base.rb,
lib/voiceml/models/accounts.rb,
lib/voiceml/models/messages.rb,
lib/voiceml/models/payments.rb,
lib/voiceml/models/voice_v1.rb,
lib/voiceml/resources/calls.rb,
lib/voiceml/models/routes_v2.rb,
lib/voiceml/resources/queues.rb,
lib/voiceml/models/recordings.rb,
lib/voiceml/resources/pricing.rb,
lib/voiceml/models/conferences.rb,
lib/voiceml/models/diagnostics.rb,
lib/voiceml/resources/messages.rb,
lib/voiceml/resources/voice_v1.rb,
lib/voiceml/models/applications.rb,
lib/voiceml/models/messaging_v1.rb,
lib/voiceml/resources/routes_v2.rb,
lib/voiceml/models/assistants_v1.rb,
lib/voiceml/models/notifications.rb,
lib/voiceml/resources/recordings.rb,
lib/voiceml/models/transcriptions.rb,
lib/voiceml/resources/conferences.rb,
lib/voiceml/resources/diagnostics.rb,
lib/voiceml/resources/applications.rb,
lib/voiceml/resources/messaging_v1.rb,
lib/voiceml/models/conversations_v1.rb,
lib/voiceml/resources/assistants_v1.rb,
lib/voiceml/resources/notifications.rb,
lib/voiceml/models/outgoing_caller_ids.rb,
lib/voiceml/resources/conversations_v1.rb,
lib/voiceml/models/user_defined_messages.rb,
lib/voiceml/models/incoming_phone_numbers.rb,
lib/voiceml/resources/incoming_phone_numbers.rb
Overview
Official Ruby SDK for the VoiceML REST API.
VoiceML is VoiceTel's outbound voice + AMD service with a Twilio-compatible REST surface
(https://voiceml.voicetel.com). The wire shape, auth model, error codes, and pagination
envelope all match Twilio's documented behaviour — so existing Twilio client patterns
map across.
Defined Under Namespace
Modules: Hosts, Pageable, PaymentBankAccountType, PaymentCapture, PaymentInput, PaymentMethod, PaymentSessionStatus, PaymentTokenType, V1Pageable Classes: Account, ApiError, Application, ApplicationList, ApplicationsResource, AssistantsV1Assistant, AssistantsV1AssistantFeedbacksScope, AssistantsV1AssistantKnowledgeScope, AssistantsV1AssistantList, AssistantsV1AssistantMessagesScope, AssistantsV1AssistantScope, AssistantsV1AssistantToolsScope, AssistantsV1AssistantWithToolsAndKnowledge, AssistantsV1AssistantsResource, AssistantsV1Feedback, AssistantsV1FeedbackList, AssistantsV1Knowledge, AssistantsV1KnowledgeChunk, AssistantsV1KnowledgeChunkList, AssistantsV1KnowledgeChunksScope, AssistantsV1KnowledgeList, AssistantsV1KnowledgeResource, AssistantsV1KnowledgeScope, AssistantsV1KnowledgeStatus, AssistantsV1KnowledgeStatusScope, AssistantsV1Message, AssistantsV1MessageList, AssistantsV1PoliciesResource, AssistantsV1Policy, AssistantsV1PolicyList, AssistantsV1Resource, AssistantsV1SendMessageResponse, AssistantsV1Session, AssistantsV1SessionList, AssistantsV1SessionMessagesScope, AssistantsV1SessionScope, AssistantsV1SessionsResource, AssistantsV1Tool, AssistantsV1ToolList, AssistantsV1ToolWithPolicies, AssistantsV1ToolsResource, AuthenticationError, BadRequestError, Balance, BaseResource, Call, CallList, CallPayment, CallTranscription, CallsResource, Client, Conference, ConferenceList, ConferencesResource, ConfigurationError, ConflictError, ConversationsV1ConfigAddress, ConversationsV1ConfigAddressList, ConversationsV1Configuration, ConversationsV1ConfigurationResource, ConversationsV1ConfigurationWebhook, ConversationsV1Conversation, ConversationsV1ConversationList, ConversationsV1ConversationMessage, ConversationsV1ConversationMessageList, ConversationsV1ConversationMessageReceipt, ConversationsV1ConversationMessageReceiptList, ConversationsV1ConversationParticipant, ConversationsV1ConversationParticipantList, ConversationsV1ConversationScopedWebhook, ConversationsV1ConversationScopedWebhookList, ConversationsV1ConversationWithParticipants, ConversationsV1ConversationWithParticipantsResource, ConversationsV1ConversationsResource, ConversationsV1Credential, ConversationsV1CredentialList, ConversationsV1CredentialsResource, ConversationsV1ParticipantConversation, ConversationsV1ParticipantConversationList, ConversationsV1ParticipantConversationsResource, ConversationsV1Resource, ConversationsV1Role, ConversationsV1RoleList, ConversationsV1RolesResource, ConversationsV1Service, ConversationsV1ServiceBinding, ConversationsV1ServiceBindingList, ConversationsV1ServiceConfiguration, ConversationsV1ServiceConversation, ConversationsV1ServiceConversationList, ConversationsV1ServiceConversationMessage, ConversationsV1ServiceConversationMessageList, ConversationsV1ServiceConversationMessageReceipt, ConversationsV1ServiceConversationMessageReceiptList, ConversationsV1ServiceConversationParticipant, ConversationsV1ServiceConversationParticipantList, ConversationsV1ServiceConversationScopedWebhook, ConversationsV1ServiceConversationScopedWebhookList, ConversationsV1ServiceConversationWithParticipants, ConversationsV1ServiceList, ConversationsV1ServiceNotification, ConversationsV1ServiceParticipantConversation, ConversationsV1ServiceParticipantConversationList, ConversationsV1ServiceRole, ConversationsV1ServiceRoleList, ConversationsV1ServiceScopeResource, ConversationsV1ServiceUser, ConversationsV1ServiceUserConversation, ConversationsV1ServiceUserConversationList, ConversationsV1ServiceUserList, ConversationsV1ServiceWebhookConfiguration, ConversationsV1ServicesResource, ConversationsV1User, ConversationsV1UserConversation, ConversationsV1UserConversationList, ConversationsV1UserList, ConversationsV1UsersResource, DiagnosticsResource, Error, ErrorBody, EventsList, GoneError, HealthFailure, HealthStatus, IncomingPhoneNumber, IncomingPhoneNumberList, IncomingPhoneNumbersResource, Media, MediaList, Message, MessageList, MessagesResource, MessagingService, MessagingServiceList, MessagingV1Resource, MessagingV1ServicesResource, NotFoundError, NotImplementedAPIError, Notification, NotificationsList, NotificationsResource, OutgoingCallerId, OutgoingCallerIdList, Participant, ParticipantList, PermissionDeniedError, PricingCountriesList, PricingCountriesResource, PricingCountryRef, PricingInboundCallPrice, PricingMessagingCountry, PricingOutboundCallPrice, PricingOutboundCallPriceWithOrigin, PricingOutboundPrefixPrice, PricingOutboundPrefixPriceWithOrigin, PricingOutboundSMSPrice, PricingPhoneNumberCountry, PricingPhoneNumberPrice, PricingProduct, PricingResource, PricingTrunkingCountry, PricingTrunkingNumber, PricingV1Resource, PricingV1VoiceNumbersResource, PricingV2Resource, PricingV2TrunkingNumbersResource, PricingV2VoiceNumbersResource, PricingVoiceCountry, PricingVoiceCountryV2, PricingVoiceNumber, PricingVoiceNumberV2, Queue, QueueList, QueueMember, QueueMemberList, QueuesResource, RateLimitError, Recording, RecordingAudio, RecordingList, RecordingsResource, RoutesV2PhoneNumber, RoutesV2PhoneNumbersResource, RoutesV2Resource, RoutesV2SipDomain, RoutesV2SipDomainsResource, ScopedTransport, ServerError, SipAuthMappingList, SipCredential, SipCredentialList, SipCredentialListList, SipCredentialListMappingList, SipCredentialListPage, SipCredentialListsResource, SipDomain, SipDomainList, SipDomainMapping, SipDomainsResource, SipIpAccessControlList, SipIpAccessControlListList, SipIpAccessControlListMappingList, SipIpAccessControlListsResource, SipIpAddress, SipIpAddressList, SipResource, SiprecList, SiprecSession, Stream, StreamList, TranscriptionList, Transport, UserDefinedMessage, ValidationRequest, VoiceV1ByocTrunk, VoiceV1ByocTrunkList, VoiceV1ByocTrunksResource, VoiceV1ConnectionPoliciesResource, VoiceV1ConnectionPolicy, VoiceV1ConnectionPolicyList, VoiceV1ConnectionPolicyTarget, VoiceV1ConnectionPolicyTargetList, VoiceV1DialingPermissionsResource, VoiceV1DialingPermissionsSettings, VoiceV1IpRecord, VoiceV1IpRecordList, VoiceV1IpRecordsResource, VoiceV1Resource, VoiceV1SourceIpMapping, VoiceV1SourceIpMappingList, VoiceV1SourceIpMappingsResource
Constant Summary collapse
- ERROR_CLASSES =
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
{ 400 => BadRequestError, 401 => AuthenticationError, 403 => PermissionDeniedError, 404 => NotFoundError, 409 => ConflictError, 410 => GoneError, 429 => RateLimitError, 501 => NotImplementedAPIError }.freeze
- VERSION =
'0.9.2'
Class Method Summary collapse
-
.error_from_response(status_code, message, code: nil, body: nil, more_info: nil) ⇒ Object
private
Map an HTTP status to the most specific
ApiErrorsubclass.
Class Method Details
.error_from_response(status_code, message, code: nil, body: nil, more_info: nil) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Map an HTTP status to the most specific ApiError subclass.
69 70 71 72 73 74 |
# File 'lib/voiceml/errors.rb', line 69 def self.error_from_response(status_code, , code: nil, body: nil, more_info: nil) klass = ERROR_CLASSES[status_code] klass ||= ServerError if status_code >= 500 && status_code < 600 klass ||= ApiError klass.new(, status_code: status_code, code: code, body: body, more_info: more_info) end |