参与文档共建赢好礼> HOT

TUICalling API(Android)

最近更新时间:2022-06-02 15:36:31

TUICalling 是基于腾讯云实时音视频(TRTC)和即时通信 IM 服务组合而成的,支持1v1和多人视频通话。TUICalling 是一个开源的 Class,依赖腾讯云的两个闭源 SDK,具体的实现过程请参见 实时视频通话(Android)

  • TRTC SDK:使用 TRTC SDK 作为低延时音视频通话组件。
  • IM SDK:使用 IM SDK 发送和处理信令消息。
说明:

TUIKit 系列组件同时使用了腾讯云 实时音视频 TRTC即时通信 IM 两个基础 PaaS 服务,开通实时音视频后会同步开通即时通信IM服务。即时通信 IM 服务详细计费规则请参见 即时通信 - 价格说明,TRTC 开通会默认关联开通 IM SDK 的体验版,仅支持100个 DAU。

TUICalling API 概览

SDK 基础函数

API 描述
sharedInstance 组件单例
call C2C 邀请通话
setCallingListener 设置监听器。
setCallingBell 设置铃声(建议在30s以内)
enableMuteMode 开启静音模式
enableCustomViewRoute 开启自定义视图

TUICallingListener API 概览

事件回调

API 描述
shouldShowOnCallView 被叫时请求拉起接听页面
onCallStart 呼叫开始回调。主叫、被叫均会触发
onCallEnd 通话回调。主叫、被叫均会触发
onCallEvent 通话事件回调

Type API 概览

通话类型

enum 描述
AUDIO 音频通话
VIDEO 视频通话

Role API 概览

用户角色类型

enum 描述
CALL 通话发起方(主叫)
CALLED 通话接听方(被叫)

Event API 概览

事件类型

enum 描述
CALL_START 通话开始
CALL_SUCCEED 通话接通成功
CALL_END 通话结束
CALL_FAILED 通话失败

SDK 基础函数

sharedInstance

sharedInstance 是 TUICalling 的组件单例。

public static TUICallingImpl sharedInstance();

call

C2C 邀请通话。

void call(String[] userIDs, Type type);

参数如下表所示:

参数 类型 含义
userIDs String[] 通话用户 ID 列表
type TUICalling.Type 通话类型:音频/视频

setCallingListener

设置监听器。

void setCallingListener(TUICallingListener listener);

参数如下表所示:

参数 类型 含义
listener TUICallingListener TUIcalling 组件监听器

setCallingBell

设置铃声(建议在30s以内)。

void setCallingBell(String filePath);

参数如下表所示:

参数 类型 含义
filePath String 铃音资源路径

enableMuteMode

开启静音模式。

void enableMuteMode(boolean enable);

参数如下表所示:

参数 类型 含义
enable boolean 是否开启静音模式

enableCustomViewRoute

开启自定义视图。
开启后,会在呼叫/被叫开始回调中,接收到 CallingView 的实例,由开发者自行决定展示方式。

注意:

必须全屏或者与屏幕等比例展示,否则会有展示异常。

void enableCustomViewRoute(boolean enable);

参数如下表所示:

参数 类型 含义
enable boolean 是否开启自定义视图

TUICallingListener 回调函数

shouldShowOnCallView

是否同意被叫时请求拉起接听页面。

boolean shouldShowOnCallView();

参数如下表所示:

参数 类型 含义
返回值 boolean 是否同意

onCallStart

呼叫开始回调。主叫、被叫均会触发。

 void onCallStart(String[] userIDs, TUICalling.Type type, TUICalling.Role role, View tuiCallingView);

参数如下表所示:

参数 类型 含义
userIDs String[] 通话用户 ID 列表。
type TUICalling.Type 通话类型:音频/视频
role TUICalling.Role 用户角色类型:主叫/被叫
tuiCallingView View 通话视图 View。enableCustomViewRoute 设置为 false 时,view 为 null

onCallEnd

通话结束回调。主叫、被叫均会触发。

 void onCallEnd(String[] userIDs, TUICalling.Type type, TUICalling.Role role, long totalTime);

参数如下表所示:

参数 类型 含义
userIDs String[] 通话用户 ID 列表
type TUICalling.Type 通话类型:音频/视频
role TUICalling.Role 用户角色类型:主叫/被叫
totalTime long 通话时长,单位:秒

onCallEvent

通话事件回调。

void onCallEvent(TUICalling.Event event, TUICalling.Type type, TUICalling.Role role, String message);

参数如下表所示:

参数 类型 含义
event TUICalling.Event 通话事件类型
type TUICalling.Type 通话类型:音频/视频
role TUICalling.Role 用户角色类型:主叫/被叫
message String 事件的描述信息
目录