Menu

Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

Overview of Twilio Client

Twilio Client extends the power of Twilio beyond the traditional telephone network. In the past, the only way to transport audio into and out of Twilio was via PSTN using telephones. With Twilio Client you are no longer restricted to building Twilio applications that rely on interacting with traditional telephones. And best of all, your existing applications will already work with Twilio Client.

Embed Voice Conversation in Web & Mobile Apps

Twilio Client Features

  • Built-in orchestration of the signaling, media routing, and STUN/TURN services required.
  • Bridge calls to the PSTN carrier network, SIP endpoints, or to other browser & mobile clients.
  • Embed voice calling into native apps with Echo Cancellation and Automatic Gain Control (AGC) built in.
  • Dynamic call-routing optimization ensures the fastest voice transmission between callers.

Supported Platforms

Web Browsers

The Twilio Client JavaScript SDK will work on any browser which supports WebRTC. Check http://clientsupport.twilio.com/ to see if your browser is compatible. Check this site for details on other browsers.

iOS Devices

The Twilio Client iOS SDK works on Apple devices running iOS 6.0 or later.

Android Devices

The Twilio Client Android SDK works in your Android apps targeting Android API Level 9 or later.

Requirements

  1. A server application hosted on a publicly accessible Internet host.
  2. A client on one of the supported platforms.
  3. The required network connectivity and bandwidth.

Key Concepts

Client

A web browser or an iOS or Android device running the Twilio Client SDK. This is what the user uses to make and receive calls.

Server

A publicly accessible Internet host running your custom server application. It handles supplying Capability Tokens for the Clients as well as providing TwiML instructions to your TwiML App. Generating capability tokens is easiest when using a server-side language for which there is a Twilio helper library. These include C#, Java, Node.js, PHP, Python, and Ruby.

TwiML App

A configuration profile created in the Twilio Console that will be used to specify the webhook URL that Twilio will request when a connection is made from a Client instance into Twilio. This webhook will be handled by your Server which should respond to Twilio with TwiML instructions for what to do with the Client connection. For example the TwiML could tell Twilio to call second phone number, call another Client instance, put the Client into a conference or provide it an IVR menu.

Capability Token

Supplied by a Server, Clients require a Capability Token in order to connect to Twilio. The token tells Twilio what account to use as well as what the client can do such as make or receive calls (i.e. its capabilities).

David Prothero Devin Rader
Rate this page:

Need some help?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd browsing the Twilio tag on Stack Overflow.