Feedback

TUICallKit

TUICallKit API 简介

TUICallKit API 是音视频通话组件的含 UI 接口,使用 TUICallKit API,您可以通过简单接口快速实现一个类微信的音视频通话场景,更详细的接入步骤,详情请参见 快速接入TUICallKit。

API 概览

API
含义
login
登录。
logout
退出登录。
calls
发起单人或多人通话
call
进行一对一通话,支持自定义房间ID、通话超时、离线推送内容等。
groupCall
进行群组通话,支持自定义房间ID、通话超时、离线推送内容等。
加入群组通话。
自定义用户的铃声。
设置自己的昵称和头像。
开启/关闭静音模式
打开/关闭铃声。
设置屏幕方向。
on
监听 TUICallKit 事件
off
取消监听 TUICallKit 事件

API 详情

login

登录。这一步骤至关重要,只有在成功登录之后,您才能正常使用 TUICallKit 提供的各项功能。
TUICallKit.login(
{
sdkAppId: 0,
userId: '',
userSig: '',
},
(res) => {
console.log('login success');
},
(errCode, errMsg) => {
console.log('login error');
}
);
参数
类型
含义
sdkAppId
Number
Tencent RTC 控制台 创建的音视频应用的唯一标识 SDKAppID。
userId
String
客户根据自己的业务自定义用户 ID,只允许包含大小写英文字母(a-z A-Z)、数字(0-9)及下划线和连词符。
userSig
String
Tencent RTC 控制台 创建的音视频应用的 SDKSecretKey。

logout

退出登录,退出登录后将不再监听任何 TUICallKit 的事件。
TUICallKit.login(
(res) => {
console.log('login success', res);
},
(errCode, errMsg) => {
console.log('login error', errCode, errMsg);
}
);

calls

发起单人或多人通话。
TUICallKit.calls(
{
userIdList: userIDList,
mediaType: MediaType.Audio,
callParams: {
offlinePushInfo: {
title: '',
desc: '',
},
},
},
() => {
console.log('calls success');
},
() => {
console.log('calls error');
}
);
参数
类型
含义
userIdList
Array<String>
目标用户的 userId 列表
mediaType
MediaType
通话的媒体类型,比如视频通话、语音通话。
MediaType.Audio :语音通话。
MediaType.Video :视频通话。
callParams
通话扩展参数,例如:房间号、通话邀请超时时间,离线推送自定义内容等。

call

拨打电话(1v1通话),支持自定义房间号、通话邀请超时时间,离线推送内容等。
TUICallKit.call(
{
userId: calleeID,
mediaType: MediaType.Audio,
callParams: {
offlinePushInfo: {
title: '',
desc: '',
},
},
},
() => {
console.log('call success');
},
() => {
console.log('call error');
}
);
参数
类型
含义
userId
String
目标用户的 userId
mediaType
MediaType
通话的媒体类型,比如视频通话、语音通话。
MediaType.Audio :语音通话。
MediaType.Video :视频通话。
callParams
通话扩展参数,例如:房间号、通话邀请超时时间,离线推送自定义内容等。

groupCall

发起群组通话。
TUICallKit.groupCall(
{
userIdList: userIDList,
mediaType: MediaType.Audio,
groupId: '',
},
(res) => {
console.log('groupCall success', res);
},
(errCode, errMsg) => {
console.log('groupCall error', errCode, errMsg);
}
);
参数
类型
含义
groupId
String
此次群组通话的群 ID。
userIdList
Array<String>
被呼叫的用户列表。
mediaType
MediaType
通话的媒体类型,比如视频通话、语音通话
MediaType.Audio :语音通话。
MediaType.Video :视频通话。
callParams
通话扩展参数,例如:房间号、通话邀请超时时间,离线推送自定义内容等

joinInGroupCall

加入群组中已有的音视频通话。
TUICallKit.joinInGroupCall(
{
roomId: '',
groupId: '',
mediaType: '',
}
);
参数
类型
含义
roomId
RoomId
此次通话的音视频房间 ID
groupId
String
此次群组通话的群 ID
mediaType
MediaType
通话的媒体类型,比如视频通话、语音通话

setCallingBell

设置自定义来电铃音。
仅限传入本地 MP3 格式的文件地址,需要确保该文件目录是应用可以访问的。
使用 import 方式引入铃声文件。
如需恢复默认铃声,filePath 传空即可。
String filePath = '';
TUICallKit.setCallingBell(filePath);
参数
类型
含义
filePath
String
铃声文件地址

setSelfInfo

设置用户昵称、头像。用户昵称不能超过500字节,用户头像必须是 URL 格式。
var nickname: string = 'user';
var avatar: string = '';
TUICallKit.setSelfInfo(nickname, userAvatar,
(res) => {
console.log('groupCall success', res);
},
(errCode, errMsg) => {
console.log('groupCall error', errCode, errMsg);
}
);
参数如下表所示:
参数
类型
含义
nickname
string
目标用户的昵称
avatar
string
目标用户的头像

enableMuteMode

开启/关闭来电铃声。开启后,收到通话请求时,不会播放来电铃声。
Boolean enable = true
TUICallKit.enableMuteMode(enable);
参数
类型
含义
enable
Boolean
开启/关闭来电铃声。默认 false。

enableVirtualBackground

开启/关闭模糊背景功能。通过调用接口,您可以在 UI 上显示模糊背景的功能按钮,点击按钮可直接启用模糊背景功能。
Boolean enable = true
TUICallKit.enableVirtualBackground(enable);
参数
类型
含义
enable
Boolean
enable = true 显示模糊背景按钮
enable = false 不显示模糊背景按钮

setScreenOrientation

设置屏幕显示模式。
Number orientation = 0
TUICallKit.setScreenOrientation(orientation);
参数
类型
含义
orientation
Number
orientation = 0 :竖屏显示。
orientation = 1 :横屏显示。
orientation = 2 :根据当前设备的状态自动选择最佳的显示方式.

on

您可以通过以下示例代码监听 TUICallKit 事件。事件详情请参见 TUICallEvent
TUICallKit.on(TUICallEvent.onCallReceived, (res: any) => {
console.log('onUserReject userId=' + res.userId);
});
参数
类型
含义
type
String
TUICallKit 您监听的事件,事件列表请参见 TUICallEvent
params
Any
事件所携带的信息,详情请参见 TUICallEvent

off

您可以通过以下示例代码,取消监听 TUICallKit 事件。
TUICallKit.off(TUICallEvent.onCallReceived);