Download the PHP package voicetel/voiceml without Composer

On this page you can find all versions of the php package voicetel/voiceml. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package voiceml

πŸ“ž VoiceML PHP SDK

The official PHP client for the VoiceML REST API β€” Twilio-compatible outbound voice and answering-machine-detection from VoiceTel, with modern PHP 8.1+ ergonomics and battle-tested Guzzle transport.

Version PHP License Tests Typed

πŸ“š Table of Contents

✨ Features

πŸ›‘οΈ Modern PHP, Strictly Typed

πŸ” Production-Grade Transport

πŸ“ž Complete API Coverage

πŸ§ͺ Tested

πŸ“¦ Clean Distribution

πŸš€ Installation

Requires PHP 8.1 or later and the json extension (bundled with PHP).

🏁 Quickstart

πŸ”‘ Authentication

Every endpoint uses HTTP Basic with your AccountSid as the username and your per-tenant API key as the password β€” identical to Twilio's auth shape, so credentials issued for Twilio code work here unchanged.

For ports from the Twilio PHP SDK, the credential may be passed as authToken: instead of apiKey: β€” they are aliases:

Passing both raises ConfigurationException.

Don't have credentials yet? See voicetel.com/docs/api/v0.9/voiceml/ for issuance and rotation.

🌐 Per-product hosts

VoiceML mirrors Twilio's product-per-subdomain model. Most resources answer on the default host (voiceml.voicetel.com), but two products ride their own subdomains, derived automatically from your baseUrl:

Derivation swaps the voiceml label for a recognised *.voicetel.com host (e.g. east-1.us.voiceml.voicetel.com β†’ east-1.us.messaging.voicetel.com); any other base URL (a self-hosted instance) keeps every product on that single host. Self-hosters can point a product at a custom host explicitly:

πŸ—ΊοΈ Resource Reference

Resource Methods Covers
$client->calls originate, fetch, list, terminate, update + per-call recordings, streams, siprec, transcriptions, notifications, events, payments
$client->conferences list, fetch, end participants (mute / hold / kick), conference-scoped recordings
$client->queues create, list, update, delete peek, dequeue (front or specific member)
$client->applications CRUD on TwiML + callback bundles
$client->recordings account-wide list, metadata, audio fetch, delete follows S3 redirect for audio
$client->messages create, fetch, list, update, delete To/From/DateSent filters; Body redaction; Status=canceled
$client->incomingPhoneNumbers list, fetch, update
$client->notifications fetch, list
$client->conversationsV1 conversations, messages, participants, webhooks, roles, users, credentials, configuration, services rides conversations.voicetel.com
$client->messagingV1->services create, list, fetch, update, delete Messaging Service (MG…); rides messaging.voicetel.com
$client->pricing v1/v2 voice, messaging, phoneNumbers, trunking β€” countries + numbers read-only pricing lookups
$client->diagnostics /health, OpenAPI spec

Every method that takes a request body accepts a typed model imported from VoiceML\Model:

Recording audio

The audio fetch follows VoiceML's single 302β†’S3 redirect transparently:

If the recording is gone (no local file and no S3 key), GoneException is raised.

🚨 Error Handling

All HTTP errors extend VoiceML\Exception\ApiException, which extends VoiceML\Exception\VoiceMLException (a RuntimeException). Catch broadly or narrowly:

Status Exception
400 VoiceML\Exception\BadRequestException
401 VoiceML\Exception\AuthenticationException
403 VoiceML\Exception\PermissionDeniedException
404 VoiceML\Exception\NotFoundException
409 VoiceML\Exception\ConflictException
410 VoiceML\Exception\GoneException
429 VoiceML\Exception\RateLimitException
501 VoiceML\Exception\NotImplementedApiException
5xx VoiceML\Exception\ServerException
other VoiceML\Exception\ApiException

The Twilio-compatible error body (code, message, more_info, status) is parsed into $e->errorCode, $e->getMessage(), $e->moreInfo (also $e->getMoreInfo()), and $e->body.

πŸ“„ Pagination

List operations return a …List model with a Twilio-compatible pagination envelope (page, pageSize, total, nextPageUri, previousPageUri, …). For /Calls and /Messages, use the iterate() generator helper to walk all pages transparently:

For other resources, page manually with $client-><resource>->list(new ListXParams(page: $n)) and walk nextPageUri until null.

πŸ” Migration from twilio-php

The accountSid + API token pair Twilio's SDK validates in its constructor works unchanged here:

Method names follow the resource map above ($client->calls->create(...), $client->queues->list(), …) rather than Twilio's $client->api->v2010->accounts($sid)->calls->create(...) chain β€” flatter, fewer keystrokes, same wire format on the way out. Request bodies are typed VoiceML\Model\… objects instead of associative arrays, so your IDE catches typos before runtime.

⏱️ Rate Limits

VoiceML applies per-tenant rate limits at the edge. The SDK automatically retries 429 responses with Retry-After honored, up to maxRetries (default 2). To bump it:

πŸ› οΈ Development

πŸ“– API Documentation

πŸ™Œ Contributors

Contributions welcome. Open an issue describing the change you want to make, or send a pull request against main.

πŸ’– Sponsors

Sponsor Contribution
VoiceTel Communications Primary development and production hosting

πŸ“„ License

MIT with the Commons Clause restriction. See voicetel.com/legal/.


All versions of voiceml with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
guzzlehttp/guzzle Version ^7.8
ext-json Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package voicetel/voiceml contains the following files

Loading the files please wait ...