跳到主要内容

被叫方操作

本页介绍作为被叫方如何处理来电及相关操作。

监听来电

初始化 CallLib 客户端实例时,您需要传入 onSession 函数以监听来电。

onSession 的参数中可获取来电通话的 session 实例,您需要为该实例注册通话过程中的事件监听。详情请参见通话事件说明

extra 是呼叫方在发起呼叫或邀请时传入的字符串类型的消息扩展信息。

示例代码

typescript
/**
* CallLib 客户端初始化
*/
const caller: RCCallClient = RongIMLib.installPlugin(callInstaller, {
/**
* 监听来电,会产生一个新的 session 对象(必填)
* @param session 来电会话实例
* @param extra 呼叫方附加信息
*/
onSession: (session: RCCallSession, extra?: string) => {
/**
* 通话的 session 实例,需要注册通话过程中的事件监听
* session.registerSessionListener({...})
*/
},
// ... 其他配置项
})

接听通话

调用 session 对象的 accept 方法接听通话。

接口

JavaScript
session.accept(constraints);

参数说明

参数类型必填说明
constraintsIMediaStreamConstraints媒体约束

示例代码

typescript
const { code } = await session.accept();
if (code === RCCallErrorCode.SUCCESS) {
// 接听成功
}

拒绝或挂断通话

调用 session 对象的 hungup 方法可拒绝或挂断通话。SDK 内部会自动将拒绝或挂断的原因通知给对方。

接口

JavaScript
session.hungup()

参数说明

示例代码

typescript
const { code } = await session.hungup();
if (code === RCCallErrorCode.SUCCESS) {
// 挂断成功
}

设置推送信息

被叫方可在接听或挂断前调用 setPushConfig 方法,为呼叫和挂断设置自定义的推送信息。

接口

JavaScript
caller.setPushConfig(callPushConfig, hungupPushConfig)

参数说明

参数类型必填说明
callPushConfigIPushConfig呼叫推送信息
hungupPushConfigIPushConfig挂断推送信息

示例代码

typescript
/**
* 设置呼叫、挂断推送数据
* @param callPushConfig 呼叫推送配置
* @param callPushConfig.pushTitle 呼叫推送标题
* @param callPushConfig.pushContent 呼叫推送内容
* @param hungupPushConfig 挂断推送配置
* @param hungupPushConfig.pushTitle 挂断推送标题
* @param hungupPushConfig.pushContent 挂断推送内容
*/
caller.setPushConfig(callPushConfig, hungupPushConfig);