Installation

Install the Client SDK for your target platform before creating a session.

Platform Requirements

Platform Minimum Version Required Permissions
Android SDK 23 (Android 6.0) INTERNET, RECORD_AUDIO
iOS iOS 15.0 Microphone usage (NSMicrophoneUsageDescription in Info.plist)
Web Modern browsers with WebRTC support (Chrome 70+, Firefox 60+, Safari 14.1+, Edge 79+) Microphone access (prompted via browser)

Warning: Version pinning in production The examples below use latest.release (Android) and @latest (CDN) for simplicity. In production applications, always pin to a specific version (e.g., com.vonage:client-sdk-voice:2.3.1 or @vonage/client-sdk@2.3.1) to ensure reproducible builds and avoid unexpected breaking changes on upgrade. Check the Changelog for release notes before upgrading.

NPM

Install with your package manager of choice:

npm i @vonage/client-sdk # or yarn add @vonage/client-sdk # or pnpm add @vonage/client-sdk # or bun add @vonage/client-sdk

Then import the Client SDK:

import clientSDK from '@vonage/client-sdk';

CDN

<script src="https://cdn.jsdelivr.net/npm/@vonage/client-sdk@latest/dist/vonageClientSDK.min.js"></script>

Microphone access

The browser will prompt the user for microphone permission when a call is initiated. No manifest or configuration is needed, but the page must be served over HTTPS (or localhost) for getUserMedia to be available.

  1. Ensure Maven Central is available in your repositories:
dependencyResolutionManagement {
    repositories {
        mavenCentral()
    }
}
  1. Add the Voice SDK dependency:
dependencies {
    implementation("com.vonage:client-sdk-voice:latest.release")
}
  1. Add required permissions to your AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />

You must also request RECORD_AUDIO at runtime before making or answering calls (Android 6.0+).

CocoaPods

Add the Client SDK to your Podfile:

target 'YourApp' do
  use_frameworks!
  pod 'VonageClientSDKVoice'
end

Swift Package Manager

  1. In Xcode, select File -> Add Package Dependencies...
  2. Use https://github.com/Vonage/vonage-client-sdk-ios
  3. Choose your version rule and add the package to your target

Linker Flag

Set -ObjC in your target's Build Settings -> Other Linker Flags (Debug and Release).

Microphone Permission

Add the microphone usage description to your Info.plist:

<key>NSMicrophoneUsageDescription</key>
<string>Required for voice calls</string>

Without this entry, iOS will terminate your app when the SDK requests microphone access.