Reve Systems Android Voice Call SDK: Configuration and Usage
Reve Voice SDK for Android provides you with the Opportunity to make VOIP (Voice over Internet Protocol) Calls and Peer to Peer calls.
Follow the steps below to integrate Reve Voice SDK with your native android app.
Step 1. Installation: In build.gradle in your project file, make sure you have the following items
buildscript {
repositories {
google()
mavenCentral()
}
dependencies {
classpath "com.android.tools.build:gradle:7.0.3"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.31"
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
You will need both mavencentral() and google() repositories for this project. Also use classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.31"
if you intend to use Kotlin in your project.
Now in your settings.gradle file you need to add the following maven repository
repositories {
google()
mavenCentral()
jcenter()
maven {
url "https://maven.iptelephony.revesoft.com/artifactory/libs-release-local/"
}
maven { url 'https://jitpack.io' }
}
Finally add the following line in your app/build.gradle file's dependencies tab
dependencies {
...
implementation 'com.revesoft.sdk:revecallsdk:1.0.1'
...
}
Step 2. Configuration: In this step you need to configure the AppConfig according to the Configuration provided to you by Reve Systems.
Your app has to be configured exactly as the credentials and attributes provided, otherwise you will not be able to connect to the server properly. You have to build an instance of the class AppConfig and pass it to the SIPWrapper.startSIP(context: Context, appConfig:AppConfig)
method. You have to build an instance the following way.
In kotlin
var myConfigBuilder = AppConfig.newBuilder()
.withDialerName("SDK_DIALER")
.withDialerType(DialerType.TEST)
.withDialerVersion("1.0.0")
.withDefaultCountry("bd")
.withVersionCode(1)
.withSDKClientCredentials("operator1", "1234")
.withAPIKey("[Your API Key]")
var appConfig = AppConfig(myConfigBuilder)
In Java
MyConfigBuilder myConfigBuilder = AppConfig.newBuilder()
.withDialerName("SDK_DIALER")
.withDialerType(DialerType.TEST)
.withDialerVersion("1.0.0")
.withDefaultCountry("bd")
.withVersionCode(1)
.withSDKClientCredentials("operator1", "1234")
.withAPIKey("[Your API Key]")
AppConfig appConfig = new AppConfig(myConfigBuilder);
Follow the Instructions to get your own API Key.
Step 3. Setting User Credentials: Set the username and Password of the end user in UserInfo class. Taking these two pieces of information from the UI is recommended.
UserInfo.setUsername(AppUI.getusername())
UserInfo.setPassword(AppUI.getSipPassword())
Step 4. Starting the Call Functionalities At this stage The configuration of the App is complete. Now you can start to activate the functionalities of this sdk. You have to call the function SIPWrapper.startSIP(context: Context, appConfig:AppConfig)
. This method starts the components that lets you start/receive and end calls. Here context is recommended to be the default applicationContext and the appConfig is what you created in Step 2.
If all the configuration is ok, this function will start the core components of this sdk. You have to make sure that you are using the exact configuration provided by Reve Systems. You can call this method inside an activity or a service.
Step 5. Permission: Make sure to ask for permissions for Audio record and Make Calls in your app. Otherwise the sdk wont work.
Step 6. Call Handling: The aforementioned SIPWrapper.startSIP(Context,AppConfig)
function will initialize CallHandler, a class for all types of call related activites. You can now make a call by simply using CallHandler.makeCall(number:String)
function.
function and end call by usingCallHandler.endCall()
function. You can receive Peer to Peer calls by using CallHandler.acceptCall(callid:String)
.
Check out the Call Handling guide for details on Handling of calls using this SDK and UI integration with Native App.