Skip to content

Latest commit

 

History

History

audiocall

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

Voximplant Audio Call Demo with ConnectionService integration

This demo demonstrates audio call of the Voximplant Android SDK with/without ConnectionService integration. The application supports audio calls between the current Android app and other apps that use any Voximplant SDK. It uses two ways to control calls:

  • Default (AudioCallManagerDefault)
  • Integration with self-managed ConnectionService (AudioCallManagerTelecom)

The choice of implementation depends on the device's Android version and the FEATURE_TELECOM or FEATURE_CONNECTION_SERVICE availability in the system.

ConnectionService is an abstract service that could be implemented by any apps which either:

  1. Can make phone calls (VoIP or otherwise) and want those calls to be integrated into the built-in phone app. Referred to as a system managed ConnectionService.
  2. Are a standalone calling app and don't want their calls to be integrated into the built-in phone app. Referred to as a self-managed ConnectionService. ConnectionService requires Android API level 23 according to the official Android documentation, but this app uses Connection.PROPERTY_SELF_MANAGED which requires API level 26.

Features

The application is able to:

  • log in to the Voximplant Cloud
  • make an audio call
  • receive an incoming call
  • put a call on hold / take it off hold
  • change an audio device (speaker, receiver, wired headset, bluetooth headset) during a call
  • mute audio during a call
  • receive push notifications (requires additional setup)
  • proximity sensor usage

Install the app

From the source code

  1. Clone this repository
  2. Select AudioCall and build the project using Android Studio

Download the application build

Use the invite link to get access the latest builds and subscribe for the application updates.

⚠️    Please consider that you need to set up a Voximplant account to make calls. Please follow the instructions below.
⚠️    Push notifications require additional setup. If the application is built from the source code, set up push notifications. If the application was installed from the invite link, push notifications cannot be configured.

Getting started

To get started, you'll need to register a free Voximplant developer account.

You'll need the following:

  • Voximplant application
  • two Voximplant users
  • VoxEngine scenario
  • routing setup

Automatic

We've implemented a special template to enable you to quickly use the demo – just install SDK tutorial from our marketplace:

Manual

You can set up it manually using our quickstart guide and tutorials

VoxEngine scenario example:

require(Modules.PushService);
VoxEngine.addEventListener(AppEvents.CallAlerting, (e) => {
const newCall = VoxEngine.callUserDirect(
  e.call,
  e.destination,
  e.callerid,
  e.displayName,
  null
);
VoxEngine.easyProcess(e.call, newCall, ()=>{}, true);
});

Usage

User login

Log in using:

  • Voximplant user name in the format user@app.account
  • password

Call

Main Ongoing call Incoming call Failed call

Connection service

Find more information about Voximplant Android SDK integration with the ConnectionService here.

Useful links

  1. Quickstart
  2. Voximplant Android SDK reference
  3. Using Voximplant Android SDK
  4. HowTo's

Have a question

  • contact us via support@voximplant.com
  • create an issue
  • join our developer community