Overview

The server side, which uses the OpenTok server SDKs and runs on your server to pass authentication information to the client

The client SDK for building web-based OpenTok applications is OpenTok.js. This JavaScript library provides most of the core functionality for your app, including:

Connecting to a session

Publishing streams to a session

Subscribing to streams in a session

Client SDKs are also available for iOS and Android. All OpenTok client SDKs can interact with one another. You can learn more about the basics of OpenTok clients, servers, sessions and more on our OpenTok Basics page.

Building with OpenTok.js

The best way to learn how to use the OpenTok.js library is to follow our Basic Video Chat tutorial for web:

Once you understand the basics of building with OpenTok.js, you can get more detailed information and learn how to customize your application with our Developer Guides. To investigate specific API classes and methods, you can review the OpenTok.js Reference.

Microsoft Edge 15+ — beta support. Edge version 15+ was released with the latest Windows 10 Creators Update.
Currently, Edge is only supported in relayed sessions; it is not supported in
routed sessions (sessions that use the
OpenTok Media Router).
Edge support is currently in beta. We are working on adding support for additional
OpenTok features in Edge.

Safari 11 on macOS and Safari on iOS 11. For information on video interoperability and other
issues, see the Safari browser support page.

Opera (latest release version)

Safari Browser Support (beta): The upcoming Safari 11 browser for Mac and iOS will be compatible with WebRTC. You can now test this new functionality with the latest beta version of OpenTok.js. See the Safari Support Guide for more.

OpenTok version numbers

You can include the OpenTok.js library in your web page using a <script> tag:

The major version number — This number (the first number) is incremented when
there is a new version that includes an API change that is not backward compatible.

The minor version number — This number (the second number) is incremented when
there is a new version that adds new functionality.

The patch number — This number (the third) is incremented when there is a new
version that fixes bugs or improves performance without adding new functionality.

For example, v2.4.0 is major version 2, minor version 4 (of major version 2), and revision 0
(of v2.4). As revision versions are released, changes are included in the root minor revision.
For example, when v2.2.3 is released, its changes are included in v2.2.

To reference a specific revision, you can include the complete version number (such as "v2.4.0")
in the src attribute. However, we recommend that you specify only the major version
number. TokBox officially supports the current version of the library. If you are loading an older
version, we ask that you upgrade to take advantage of the latest bug fixes and features in the
OpenTok platform.

Important: Always use the libraries we provide unmodified. This ensures that you use the
latest up-to-date, tested code. TokBox does not support the use of modified libraries.

For more information on specific versions of OpenTok.js, see the OpenTok release notes.
To learn when new versions of OpenTok.js become available, subscribe to the
the TokBox Announcements forum.