Programmable Chat has been deprecated and is no longer supported. Instead, we'll be focusing on the next generation of chat: Twilio Conversations. Find out more about the EOL process here.
If you're starting a new project, please visit the Conversations Docs to begin. If you've already built on Programmable Chat, please visit our Migration Guide to learn about how to switch.
Twilio provides client-side Programmable Chat SDKs for browser-based web applications as well as for native iOS and Android applications.
Intending to write back-end JavaScript with Twilio in Node.js to support your front-end client? Check out the Twilio Node.js SDK.
The latest version of the JavaScript SDK for Chat is available on Twilio's CDN. To include it on your web page, add the following <script>
tag:
<script src="https://media.twiliocdn.com/sdk/js/chat/v5.0/twilio-chat.min.js"></script>
The Twilio.Chat
namespace will then be available in the window scope of your JavaScript application.
The JS Programmable Chat SDK is also available from NPM.
The Android SDK is distributed as a direct download from Twilio's CDN. It can also be installed directly within a Gradle build file using Maven Central.
Download the Programmable Chat Client library for Android from the Twilio CDN.
Twilio Programmable Chat is available from Maven Central.
To install via Gradle, include the following in your Gradle build file:
1allprojects {2repositories {3mavenCentral()4}5}67/**8* Declare dependencies9* @see http://www.gradle.org/docs/current/userguide/userguide_single.html#sec:how_to_declare_your_dependencies10*/11dependencies {12implementation 'com.twilio:chat-android:7.0.1'13}
The Programmable Chat SDK for iOS is available through the CocoaPods and Swift Package Manager dependency managers, or by direct download.
We ship .dSYM
files which can assist in crash reporting for versions of Programmable Chat for iOS 2.3.2 and above. You can read more about integrating these dSYMs. If you use Google Firebase Crashlytics in your application, you are encouraged to perform these additional steps when integrating Programmable Chat.
To install the SDK using CocoaPods, add the following to your Podfile, changing MyTarget
to the name of your target:
1source 'https://github.com/CocoaPods/Specs'23target 'MyTarget' do4pod 'TwilioChatClient', '~> 5.0.1'5end
To install the SDK with Swift Package Manager, add the following dependency to your project:
https://github.com/twilio/twilio-chat-ios
https://github.com/twilio/twilio-chat-ios
into the search field in the Choose Package Repository dialog, then click Next.We also offer the SDK for direct download if your project does not use CocoaPods or Swift Package Manager. To add Programmable Chat to your project, download the Chat Client framework.
.zip
file..xcframework
file(s) inside the directory created..xcframework
file(s) into your project, making sure they are dropped in the Embedded Binaries section of your project target's settings. Select Copy items if needed when prompted. If the framework files do not appear in the Embedded Binaries for your target, you will receive a Reason: image not found
error during compilation.libc++.tbd
as a dependency if it is not already there.You will need to repeat these steps to add a Run Script step that calls remove_archs
for Twilio AccessManager if you are using it in your project too.
A demo client implementation for each of the SDKs is available freely via GitHub. These are updated to use the latest SDK versions and implement almost all the available functionality. These implementations are intended for reference purposes only.
Platform | Demo App |
---|---|
JavaScript | https://github.com/twilio/twilio-chat-demo-js |
iOS | https://github.com/twilio/twilio-chat-demo-ios |
Android | https://github.com/twilio/twilio-chat-demo-kotlin |
Additional third-party bindings and reference implementations are available for the following frameworks.
Framework | Demo App |
---|---|
React Native | https://github.com/twilio/TwilioChatJsReactNative |
Cordova | https://github.com/twilio/twilio-chat-js-cordova-exampleThis implementation requires the following plugins: • https://github.com/twilio/cordova-plugin-twilio-common • https://github.com/twilio/cordova-plugin-twilio-chat |
Web console | https://github.com/twilio/twilio-chat-console-webapp.jsFCM pushes are functional in this demo |