被叫方操作
本页介绍作为被叫方如何处理来电及相关操作。
监听来电
初始化 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({...})
*/
},
// ... 其他配置项
})
接听通话
接口
JavaScript
session.accept(constraints);
参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| constraints | IMediaStreamConstraints | 否 | 媒体约束 |
示例代码
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)
参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| callPushConfig | IPushConfig | 是 | 呼叫推送信息 |
| hungupPushConfig | IPushConfig | 是 | 挂断推送信息 |
示例代码
typescript
/**
* 设置呼叫、挂断推送数据
* @param callPushConfig 呼叫推送配置
* @param callPushConfig.pushTitle 呼叫推送标题
* @param callPushConfig.pushContent 呼叫推送内容
* @param hungupPushConfig 挂断推送配置
* @param hungupPushConfig.pushTitle 挂断推送标题
* @param hungupPushConfig.pushContent 挂断推送内容
*/
caller.setPushConfig(callPushConfig, hungupPushConfig);