Twilio Client SDK
Overview
The Twilio Client SDK lets you bring high-quality VoIP calling directly into your web and mobile applications. Use the Twilio Client SDKs to build click-to-call applications, soft phone services, contact center applications, and more.
Want to get started right away?
Jump right in with our Twilio Client Quickstart!
The twilio.js Library
Connect TwiML voice applications to the browser using the twilio.js Library.
Twilio Client iOS SDK
Add voice-over-IP to your iOS applications with the Twilio Client iOS SDK.
Twilio Client Android SDK
Add voice-over-IP to your Android applications with the Twilio Client Android SDK.
How It Works
You setup your device and establish a connection to Twilio. Audio from your device's microphone is sent to Twilio, and Twilio plays audio through your device's speakers, like on a normal phone call. But with Twilio Client, your device need not be a phone.
When you initiate a connection using Twilio Client, you're not connecting to
another phone directly. Rather, you're connecting to Twilio and instructing
Twilio to fetch TwiML from your server to handle the connection. This is
analogous to the way Twilio handles incoming calls from a real phone. All the
same TwiML verbs and nouns that are available for handling Twilio Voice calls
are also available for handling Twilio Client connections.
We've also added a new <Client>
noun for dialing to a Client.
Twilio Applications
Because Twilio Client connections aren't made to a specific phone number,
Twilio relies on a Twilio Application within your account
to determine how to interact with your server. A Twilio Application is just a
convenient way to store a set of URLs, like the VoiceUrl
and SmsUrl
on
a phone number, but without locking them to a specific phone number. This makes
Twilio Applications perfect for handling connections from Twilio Client
(which is actually why we created them in the first place).
So when your device initiates a Twilio Client connection to Twilio, a request
is made to the VoiceUrl
property of an Application within your account.
You specify the Application you're connecting to with a
Capability Token. Twilio uses the TwiML response from its
request to that Application's VoiceUrl
to direct what happens with the
Client connection.
Security
Twilio Client SDK
Channel | Type |
---|---|
Signaling | WSS (TLS) |
Media | DTLS-SRTP (AES_CM_128_HMAC_SHA1_80) |
iOS & Android Voice SDK 3.0
Channel | Type |
---|---|
Signaling | TLSv1.2 |
Media | DTLS-SRTP (AES_CM_128_HMAC_SHA1_80) |
iOS & Android Voice SDK 2.0
Channel | Type |
---|---|
Signaling | TLSv1.2 |
Media | (SDES) SRTP (AES_CM_128/256_HMAC_SHA1_32/80) |
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.