• Stars
    star
    211
  • Rank 186,867 (Top 4 %)
  • Language
    Java
  • License
    MIT License
  • Created over 10 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Sample applications illustrating best practices using OpenTok Android SDK.

Opentok Android SDK Samples

Tokbox is now known as Vonage

Check documentation to understand Video API basic concepts. See instructions below in order to open Android project and set up the credentials.

The Android projects in this directory demonstrate typical use cases and features available in the OpenTok Android SDK:

  • Basic-Video-Chat (Java, Kotlin) demonstrates how to publish and subscribe to streams in a session. Best place to start
  • Simple-Multiparty (Java) demonstrates how to enable/disable audio/video streams and how to swap camera
  • Multiparty-Constraint-Layout (Java, Kotlin) demonstrates how to use ConstraintLayout to position all the videos in a multiparty session
  • Signaling (Java) demonstrates how to send text messages
  • Archiving (Java, Kotlin) demonstrates how to utilize OpenTok server to start, stop, and playback session recordings
  • Frame-Metadata (Java) demonstrates how to send and receive additional metadata associated with each video frame
  • Basic-Video-Capturer (Java) demonstrates how to create a custom video capturer using Camera class
  • Basic-Video-Capturer-Camera-2 (Java) demonstrates how to create a custom video capturer using Camera2 class
  • Basic-Video-Renderer (Java) demonstrates how to create a custom video renderer
  • Basic-Audio-Driver (Java, Kotlin) demonstrates how to publish a random audio signal and save audio streams to the file.
  • Advanced-Audio-Driver (Java, Kotlin) demonstrates how to create a more advanced custom audio driver
  • Basic-Video-Driver (Java) demonstrates how to create a custom video driver
  • Live-Photo-Capture (Java, Kotlin) demonstrates how to capture an image from a subscribed video stream
  • Picture-In-Picture (Java) demonstrates how to use the Picture-in-Picture mode
  • Screen-Sharing (Java) demonstrates how to publish a screen-sharing video, using the WebView as the source
  • Phone-Call-Detection (Java, Kotlin) demonstrates how to detect incoming and outgoing phone calls
  • ARCore-Integration (Java) demonstrates how to use Google ARCore with Opentok
  • Basic-VoIP-Call (Java) demonstrates how to use Android Connection Service (https://developer.android.com/reference/android/telecom/ConnectionService) with the OpenTok Android SDK.

Open project

  1. Clone this repository [email protected]:opentok/opentok-android-sdk-samples.git
  2. Start Android Studio
  3. In the Quick Start panel, click Open an existing Android Studio Project
  4. Navigate to the repository folder, select the desired project subfolder, and click Choose

Set up credentials

You will need a valid TokBox account for most of the sample projects. OpenTok credentials (API_KEY, SESSION_ID, TOKEN) are stored inside OpenTokConfig class. For these sample applications, credentials can be retrieved from the Dashboard and hardcoded in the application, however for a production environment server should provide these credentials (check Basic-Video-Chat project).

Note: To facilitate testing connect to the same session using OpenTok Playground (web client).

Development and Contributing

Feel free to copy and modify the source code herein for your projects. Please consider sharing your modifications with us, especially if they might benefit other developers using the OpenTok Android SDK. See the License for more information.

Interested in contributing? You ❀️ pull requests! See the Contribution guidelines.

Testing

Projects consistancy is qurded by separate test project located in the .test directory. To run tests use these commands:

  1. cd .test
  2. ./gradlew clean test

Getting Help

You love to hear from you so if you have questions, comments or find a bug in the project, let us know! You can either:

More Repositories

1

opentok-react-native

OpenTok React Native - a library for OpenTok iOS and Android SDKs
Swift
211
star
2

opentok-ios-sdk-samples

Example applications that use the OpenTok iOS SDK
Objective-C
200
star
3

opentok-web-samples

Sample applications for using OpenTok.js
JavaScript
196
star
4

opentok-node

OpenTok Server SDK for node.js
JavaScript
165
star
5

OpenTok-PHP-SDK

OpenTok PHP Server SDK
PHP
140
star
6

opentok-ios-sdk-samples-swift

Sample applications using the OpenTok iOS SDK in Swift
Swift
136
star
7

opentok-network-test

Sample app to test network connectivity and statistics (bps, packet-lost)
Objective-C
111
star
8

CallKit

A sample app to demonstrate how to integrate Apple CallKit into OpenTok iOS SDK
Objective-C
110
star
9

OpenTok-Ruby-SDK

OpenTok Server SDK for Ruby
Ruby
110
star
10

opentok-react

React components for OpenTok.js
JavaScript
107
star
11

opentok-rtc

OpenTok demo application
JavaScript
106
star
12

one-to-one-sample-apps

DEPRECATED: OpenTok One-to-One Communication Sample App
JavaScript
99
star
13

screensharing-extensions

Sample code for developing an OpenTok screen-sharing extension for Google Chrome and Firefox
HTML
80
star
14

Opentok-Python-SDK

OpenTok Python SDK
Python
73
star
15

Opentok-.NET-SDK

Official .NET Server SDK for OpenTok
C#
57
star
16

opentok-network-test-js

A node module that lets you check network connectivity to resources and services required to use OpenTok
TypeScript
57
star
17

broadcast-sample-app

OpenTok Broadcast Sample Application
JavaScript
54
star
18

opentok-react-native-samples

Sample applications using OpenTok and React Native
Java
52
star
19

accelerator-sample-apps-js

CSS
35
star
20

archiving-composer

Sample apps for using OpenTok archiving building blocks API and ffmpeg to generate composed files from individual archives
JavaScript
31
star
21

accelerator-core-ios

Syntax sugar of OpenTok iOS SDK with Audio/Video communication including screen sharing
Objective-C
31
star
22

learning-opentok-web

JavaScript
27
star
23

Opentok-Java-SDK

OpenTok Server SDK for Java
Java
26
star
24

learning-opentok-ios

Sample code for learning how to use the OpenTok iOS SDK
Objective-C
26
star
25

accelerator-core-js

Accelerator Core provides a simple way to integrate real-time audio/video into your web application using the OpenTok Platform
JavaScript
25
star
26

learning-opentok-php

PHP
25
star
27

learning-opentok-android

Java
25
star
28

opentok-video-call-center

Sample code for building a basic agent queuing system
Vue
20
star
29

opentok-elearning-samples

Sample applications highlighting integrations between OpenTok and Learning Management Systems (LMS)
JavaScript
19
star
30

opentok-linux-sdk-samples

OpenTok Linux SDK Samples
C++
16
star
31

web-components

Web Components to be used with OpenTok video
JavaScript
16
star
32

ARKitSample

Sample App using ARKit Apple framework
Swift
16
star
33

accelerator-screen-sharing-js

Accelerator Screen Sharing JS provides an easy way to get started in implementing interoperable screen sharing using the OpenTok platform.
JavaScript
16
star
34

opentok-hardware-setup.js

JavaScript
14
star
35

interactive-broadcast-js

JavaScript
13
star
36

accelerator-textchat-ios

OpenTok Text Chat Accelerator Pack enables text messages between mobile or browser-based devices.
Objective-C
13
star
37

learning-opentok-node

A sample app of OpenTok Node Server SDK
JavaScript
13
star
38

opentok-flutter-basic-video-chat

Kotlin
11
star
39

ARFrameMetadata

Sample application using the Frame Meta Data API on iOS with ARKit
Swift
10
star
40

opentok-webinar

Simple Webinar (1 to many broadcast) application powered by OpenTok WebRTC SDKs https://tokinar.herokuapp.com/
JavaScript
10
star
41

accelerator-sample-apps-ios

A comprehensive sample app built by OpenTok Accelerator Packs
Objective-C
10
star
42

json2code

Code generator for JSON serialization and deserialization on iOS and Android based on json schema
Java
9
star
43

opentok-windows-sdk-samples

Sample applications illustrating best practices using OpenTok Windows SDK
C#
9
star
44

accelerator-core-android

An easy way to integrate OpenTok SDK to any Android applications
Java
8
star
45

opentok-reconnection

Sample app to illustrate how reconnection feature works.
Java
7
star
46

insights-dashboard-sample

Sample React app utilizing the OpenTok Insights GraphQL API
JavaScript
6
star
47

accelerator-textchat-js

Accelerator Text Chat JS provides functionality you can add to your OpenTok applications that enables users to exchange text messages between mobile or browser-based devices.
JavaScript
6
star
48

opentok-archive-transcription-demo

Sample code for transcribing OpenTok video archives to text
JavaScript
5
star
49

interactive-broadcast-api

JavaScript
5
star
50

ux-components

Reusable React Components for TokBox
TypeScript
5
star
51

opentok-nexmo-sip

OpenTok SIP Interconnect samples with Nexmo Voice API
JavaScript
5
star
52

accelerator-sample-apps-android

A sample app built by OpenTok Accelerator Packs
Kotlin
4
star
53

accelerator-annotation-android

Java
4
star
54

interactive-broadcast-android

Java
3
star
55

accelerator-annotation-js

JavaScript
2
star
56

misc-opentok-accelerators

DEPRECATED: Old versions of the OpenTok Accelerator packs
JavaScript
2
star
57

accelerator-textchat-android

Accelerator Text Chat Android provides functionality you can add to your OpenTok applications that enables users to exchange text messages between mobile or browser-based devices.
Java
2
star
58

opentok-macos-sdk-samples

Objective-C
2
star
59

token-encoder

Generates tokens for `X-TB-TOKEN-AUTH` header when using OpenTok REST API.
JavaScript
2
star
60

opentok-swiftui-basic-video-chat

Swift
1
star
61

opentok-jwt

Node module to generate a JWT token given an apiKey and secret.
JavaScript
1
star
62

opentok-embed-appointment

A simple demo for setting up appointments with the OpenTok Embed
JavaScript
1
star