Other call features

Fetching Participants list#

In order to fetch all the participants in the call, use below method

ArrayList<String> userList = CallManager.getCallUsersList();

Fetching Call Connected list#

To fetch the connected users in the call, use below method

ArrayList<String> userList = CallManager.getCallConnectedUsersList();

Fetching Call Users list in Ringing status#

To fetch the users in the ringing state of the call, use below method

ArrayList<String> userList = CallManager.getRingingStatusUserList();

Fetching Outgoing call Timeout Users list#

To fetch the userslist who don't ack in the outgoing call after timeout, use below method

ArrayList<String> userList = CallManager.getTimeOutUsersList();

Fetching Invite call Timeout Users list#

To fetch the userslist who don't ack in the invite call after timeout, use below method

ArrayList<String> userList = CallManager.getInviteTimeOutUsersList();

Fetching Reconnecting Users list#

To fetch the users in the reconnecting state of the call, use below method

ArrayList<String> userList = CallManager.getReconnectingUsersList();

Check mute status of user in call#

At any time in call, you can able to check the audio/video mute status of the end user in call.

To check the audio muted status, call the below method:

ArgumentTypeDescription
END_USER_JIDStringjid of the end call user
CallManager.isRemoteAudioMuted(END_USER_JID);

To check the video muted status, call the below method:

ArgumentTypeDescription
END_USER_JIDStringjid of the end call user
CallManager.isRemoteVideoMuted(END_USER_JID);

Get Call status of the UserId#

In order to get the call status of the given UserId, use below method

String callStatus = CallManager.getCallStatus(END_USER_JID);
ArgumentTypeDescription
END_USER_JIDStringjid of the end call user

callStatus value will be anyone of the values of annotation class CallStatus.

callStatus ValueCall event
CallStatus.CALLINGthe initial state of the call
CallStatus.CONNECTINGThe current call is in connecting state
CallStatus.RINGINGthe remote user is having internet and acknowledged the call
CallStatus.CONNECTEDthe call is successfully connected and audio/video tracks transmission is about to start
CallStatus.DISCONNECTEDthe call is disconnected and call UI can be closed
CallStatus.RECONNECTINGthe call is in reconnecting state
CallStatus.RECONNECTEDthe call is connected back after a reconnecting state
CallStatus.ON_HOLDthe remote user has put your call on hold, it will happedn when the remote user attended gsm call
CallStatus.ON_RESUMEthe remote user has resumed your call after a on hold, it will happen when the remote user disconnected gsm call
CallStatus.OUTGOING_CALL_TIME_OUTwhen we don't receive ack for the outgoing call from the remote user within 30 seconds
CallStatus.INCOMING_CALL_TIME_OUTWhen we don't receive ack for the incoming call from the caller within 30 seconds
CallStatus.USER_JOINEDuser is joined to the call
CallStatus.USER_LEFTuser is left from the call
CallStatus.INVITE_CALL_TIME_OUTWhen we don't receive ack for the call invite from the invited user within 30 seconds

Get Own userId#

In order to get the own userId which is passed to SDk, use below method

String userId = CallManager.getCurrentUserId();

Get GroupId of the current call#

In order to get the groupId of the ongoing call, use below method

String groupId = CallManager.getGroupID();

Get callType of the current call#

In order to get the callType of the ongoing call, use below method

String callType = CallManager.getCallType();

callType value will be anyone of the values of annotation class CallType

CallType ValueDescription
CallType.AUDIO_CALLthe call is Audio
CallType.VIDEO_CALLthe call is Video

Get CallMode of the current call#

In order to get the callMode of the ongoing call, use below method

String callMode = CallManager.getCallMode();

callMode value will be anyone of the values of annotation class CallMode

CallMode ValueDescription
CallMode.ONE_TO_ONEthe call is between 2 user
CallMode.ONE_TO_MANYthe call is between group of members

Get CallDirection of the current call#

In order to get the callDirection of the ongoing call, use below method

String callDirection = CallManager.getCallDirection();

callDirection value will be anyone of the values of annotation class CallDirection

CallDirection ValueDescription
CallDirection.INCOMING_CALLthe call is a incoming call
CallDirection.OUTGOING_CALLthe call is an outgoing call

Check Call is Connected#

In order to check the ongoing call is connected with atleast of one user in the call, use below method

Boolean isConnected = CallManager.isCallConnected();

Check Call is OneToOne#

In order to check the ongoing call is made between single user, use below method

Boolean isOneToOneCall = CallManager.isOneToOneCall();

Clear Call Log#

To Clear the entire history of the call log corresponding to the current user, use below method.

CallLogManager.clearCallLog(CallLogActionListener);

Delete Call Log#

To Delete the selected call log from the call log entry of the current user, use below method.

CallLogManager.deleteCallLog(List<String> callId,CallLogActionListener callLogListener);

Fetch Call Logs#

This method will Fetch the Call Logs and updates the call log details to the server from the local db.

CallLogManager.uploadUnSyncedCallLogs();