Skip to content
A React Native wrapper for the Twilio mobile SDK
Branch: develop
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
RNTwilioExample Android lib Oct 24, 2016
android Android lib Oct 24, 2016
.gitignore Android lib Oct 24, 2016
.npmignore Android lib Oct 24, 2016
LICENSE Android lib Oct 24, 2016
index.js Android lib Oct 24, 2016
package.json 1.0.0 Oct 27, 2016 Android lib Oct 24, 2016

A React Native wrapper for the Twilio mobile SDK

npm version

This library implement the superseeded Twilio Client SDK. Twilio has moved to the new Programmable Voice SDK.

Run npm install react-native-twilio --save in your project directory

Installation iOS

  1. Open your project in XCode, right click on Libraries and click Add Files to "Your Project Name"
  2. Within node_modules, find react-native-twilio/ios and add RCTTwilio.xcodeproj to your project.
  3. Add libRCTTwilio.a to Build Phases -> Link Binary With Libraries

Installation Android

Add the lib to android/settings.gradle

include ':react-native-twilio'
project(':react-native-twilio').projectDir = new File(settingsDir,

Add the lib dependency to app/build.gradle

dependencies {
    compile fileTree(dir: "libs", include: ["*.jar"])
    compile ""
    compile project(':react-native-twilio') // <----

Import the library in your

import android.util.Log;

import com.facebook.react.ReactApplication;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;

import com.rogchap.react.modules.twilio.TwilioPackage; // <----

import java.util.Arrays;
import java.util.List;

public class MainApplication extends Application implements ReactApplication {

  private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {

     * Returns whether dev mode should be enabled.
     * This enables e.g. the dev menu.
    protected boolean getUseDeveloperSupport() {
        return BuildConfig.DEBUG;

     * A list of packages used by the app. If the app uses additional views
     * or modules besides the default ones, add more packages here.
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
        new MainReactPackage(),
        new TwilioPackage() // <----

  public ReactNativeHost getReactNativeHost() {
      return mReactNativeHost;


configure your AndroidManifest.xml file

      <uses-permission android:name="android.permission.INTERNET" />


      <!-- Twilio -->
      <service android:name="com.twilio.client.TwilioClientService" android:exported="false" android:stopWithTask="true"/>
      <!-- Twilio -->

For a full example check the full working example


Have a look at the Twilio Client SDK for details.

const Twilio = require('react-native-twilio');


componentWillMount() {
  // or 
  Twilio.addEventListener('deviceReady', this._deviceReady);
  Twilio.addEventListener('deviceDidStartListening', this._deviceDidStartListening);
  Twilio.addEventListener('deviceDidStopListening', this._deviceDidStopListening);
  Twilio.addEventListener('deviceDidReceiveIncoming', this._deviceDidReceiveIncoming);
  Twilio.addEventListener('connectionDidStartConnecting', this._connectionDidStartConnecting);
  Twilio.addEventListener('connectionDidConnect', this._connectionDidConnect);
  Twilio.addEventListener('connectionDidDisconnect', this._connectionDidDisconnect);
  Twilio.addEventListener('connectionDidFail', this._connectionDidFail);


Twilio.connect({To: '+61234567890'});





MIT License

You can’t perform that action at this time.