RCCallPlusClient

abstract class RCCallPlusClient

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard
abstract fun accept(callId: String)
接听通话。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onAccept 方法获取执行结果。
当发生网络断开或IM链接断开等情况导致请求失败时,该方法会根据SDK内部的策略进行重试。如果重试一直失败,最长等待时间约为47秒,然后返回失败监听。
Link copied to clipboard
abstract fun cancelChangeMediaType(transactionId: String)
取消已经发起的切换媒体类型请求。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onCancelChangeMediaType 方法获取执行结果。
当发生网络断开或IM链接断开等情况导致请求失败时,该方法会根据SDK内部的策略进行重试。如果重试一直失败,最长等待时间约为47秒,然后返回失败监听。
Link copied to clipboard
清除当前用户通话记录。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onDeleteAllCallRecordsFromServer 方法获取执行结果。
Link copied to clipboard
abstract fun deleteCallRecordsFromServer(callIds: List<String>)
批量删除通话记录。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onDeleteCallRecordsFromServer 方法获取执行结果。
Link copied to clipboard
abstract fun enableMicrophone(enable: Boolean): RCCallPlusResultCode
是否开启麦克风。 该方法为同步方法
Link copied to clipboard
abstract fun enableSpeaker(enable: Boolean)
设置是否切换听筒为扬声器。 该方法为同步方法
Link copied to clipboard
从服务器查询当前用户未结束的通话记录。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onGetAvailableCallRecordsFromServer 方法获取执行结果。
Link copied to clipboard
abstract fun getCallRecordsFromServer(syncTime: Long, count: Int)
获取当前用户通话记录。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onGetCallRecordsFromServer 方法获取执行结果。
Link copied to clipboard
abstract fun getCurrentCallSession(): RCCallPlusSession
获取当前通话实体,通话实体中维护着当前通话的所有信息。
Link copied to clipboard
Link copied to clipboard
open fun getVersion(): String
获取SDK版本号码
Link copied to clipboard
abstract fun hangup()
挂断通话。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onHangup 方法获取执行结果。
abstract fun hangup(callId: String)
挂断指定通话。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onHangup 方法获取执行结果。
Link copied to clipboard
abstract fun init(config: RCCallPlusConfig): RCCallPlusResultCode
初始化并设置通话全局配置,重复调用该方法时SDK内部会重新初始化。
Link copied to clipboard
abstract fun invite(userIds: List<String>)
邀请用户加入通话。本端用户正在通话时,可以使用该方法邀请用户加入本通话。 调用该方法后会触发以下回调:
  • 被邀请用户会收到 onReceivedCall 回调。
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onInvite 方法获取执行结果。
当发生网络断开或IM链接断开等情况导致请求失败时,该方法会根据SDK内部的策略进行重试。如果重试一直失败,最长等待时间约为47秒,然后返回失败监听。
Link copied to clipboard
本地麦克风是否开启。 获取的是 enableMicrophone 设置后的值 该方法为同步方法
Link copied to clipboard
abstract fun joinCall(callId: String)
加入多人通话。 方法使用场景:
  • 场景一:A、B、C用户正在群通话时,其中一个用户挂断后,只要该群通话未结束。曾经参与过群通话的用户可以直接加入。
  • 场景二:收到群通话呼叫后,可以使用该方法直接加入。
调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onJoinCall 方法获取执行结果。
当发生网络断开或IM链接断开等情况导致请求失败时,该方法会根据SDK内部的策略进行重试。如果重试一直失败,最长等待时间约为47秒,然后返回失败监听。
Link copied to clipboard
abstract fun muteAllRemoteAudio(mute: Boolean)
通话过程中,设置所有远端用户是否静音,默认否 如果设置为true,后续订阅的远端用户声音也会被静音 该功能只是不播放远端用户的声音,依然在接收订阅成功的音频流
Link copied to clipboard
abstract fun removeVideoView(userIds: List<String>)
删除远端用户的视频流渲染视图
Link copied to clipboard
abstract fun replyChangeMediaType(transactionId: String, isAgreed: Boolean)
响应通话中的切换媒体类型请求。 同意升级后,SDK内部会自动发布摄像头流。为了远端用户能正常观看需要开发者调用 startCamerastartCamera 打开摄像头 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onReplyChangeMediaType 方法获取执行结果。
当发生网络断开或IM链接断开等情况导致请求失败时,该方法会根据SDK内部的策略进行重试。如果重试一直失败,最长等待时间约为47秒,然后返回失败监听。
Link copied to clipboard
abstract fun requestChangeMediaType(mediaType: RCCallPlusMediaType)
通话中请求将音频通话切换为视频通话。 远端用户同意升级后,SDK内部会自动发布摄像头流。为了远端用户能正常观看需要开发者调用 startCamerastartCamera 打开摄像头 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onRequestChangeMediaType 方法

    当发生网络断开或IM链接断开等情况导致请求失败时,该方法会根据SDK内部的策略进行重试。如果重试一直失败,最长等待时间约为47秒,然后返回失败监听。

Link copied to clipboard
abstract fun setAudioConfig(config: RCCallPlusAudioConfig): RCCallPlusResultCode
设置本地音频配置。 必须与 startCallacceptjoinCall 方法前设置才有效
Link copied to clipboard
abstract fun setAudioFrameListener(audioFrameListener: IRCCallPlusAudioFrameListener)
设置本地音频采集数据回调。 多次设置会覆盖,以最后一次设置生效 设置为"null"时,释放监听资源
Link copied to clipboard
abstract fun setCallPlusEventListener(listener: IRCCallPlusEventListener)
设置通话事件监听。 多次设置会覆盖,以最后一次设置生效 设置为"null"时,释放监听资源 如果需要通过该监听由 onReceivedCall 回调接收PUSH通知的通话。则需要在IM初始化和连接前注册
Link copied to clipboard
abstract fun setCallPlusResultListener(listener: IRCCallPlusResultListener)
设置通话API结果回调监听。 多次设置会覆盖,以最后一次设置生效 设置为"null"时,释放监听资源
Link copied to clipboard
abstract fun setCallPlusStatusReportListener(statusReportListener: IRCCallPlusStatusReportListener)
设置通话质量数据监听。 多次设置会覆盖,以最后一次设置生效 设置为"null"时,释放监听资源
Link copied to clipboard
abstract fun setVideoConfig(config: RCCallPlusVideoConfig): RCCallPlusResultCode
设置视频分辨率、码率、帧率。此方法支持通话过程中动态设置。
Link copied to clipboard
abstract fun setVideoFrameListener(videoFrameListener: IRCCallPlusVideoFrameListener)
设置本地视频采集回调。 多次设置会覆盖,以最后一次设置生效 设置为"null"时,释放监听资源 回调返回的数据类型 (RCRTCVideoFrame#getCaptureType()) 通过 RCCallPlusConfig.Builder.enableEncoderTexture(bool) 控制。

         RCCallPlusConfig config = RCCallPlusConfig.Builder.create()
                .enableEncoderTexture(false) //视频流采集方式
                .build();
         RCCallPlusResultCode resultCode = RCCallPlusClient.getInstance().init(config);
Link copied to clipboard
abstract fun setVideoView(localVideoView: RCCallPlusLocalVideoView)
设置本端用户摄像头采集的视频流渲染视图,要释放本端视图,再次设置null即可
abstract fun setVideoView(remoteVideoViewList: List<RCCallPlusRemoteVideoView>)
设置远端用户视频流渲染视图
Link copied to clipboard
abstract fun startCall(userIds: List<String>, callType: RCCallPlusType, mediaType: RCCallPlusMediaType)
发起呼叫。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onStartCall 方法获取执行结果。
当发生网络断开或IM链接断开等情况导致请求失败时,该方法会根据SDK内部的策略进行重试。如果重试一直失败,最长等待时间约为47秒,然后返回失败监听。
Link copied to clipboard
abstract fun startCamera()
abstract fun startCamera(cameraId: Int, mirror: Boolean)
开启摄像头数据采集。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onStartCamera 方法获取执行结果。
Link copied to clipboard
abstract fun stopCamera()
关闭摄像头。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onStopCamera 方法获取执行结果。
Link copied to clipboard
abstract fun switchCamera()
切换前后摄像头。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onSwitchCamera 方法获取执行结果。
abstract fun switchCamera(cameraId: Int, mirror: Boolean)
切换指定摄像头。 调用该方法后会触发以下回调:
  • 该方法内部为异步执行。本地用户通过注册的 setCallPlusResultListener 监听的 onSwitchCamera 方法获取执行结果。
Link copied to clipboard
abstract fun unInit()
反初始化通话引擎。 如果在调用销毁时有正在进行的通话,销毁前SDK内部会调用挂断方法。 会释放给 RCCallPlusClient 对象设置的所有监听