TRTCCalling 是基于腾讯云实时音视频(TRTC)和即时通信 IM 服务组合而成的,支持1v1音视频通话。TRTCCalling 是一个开源的 Class,依赖腾讯云的两个闭源 SDK,具体的实现过程请参见 实时语音通话(Flutter)。
API | 描述 |
---|---|
sharedInstance | 组件单例。 |
destroySharedInstance | 销毁组件单例。 |
registerListener | 增加事件回调。 |
unRegisterListener | 移除回调接口。 |
destroy | 销毁函数,如果无需再运行该实例,请调用该接口。 |
login | 登录组件接口,所有功能需要先进行登录后才能使用。 |
logout | 登出组件接口,登出后无法再进行拨打操作。 |
API | 描述 |
---|---|
call | 单人通话邀请。 |
accept | 接受当前通话。 |
reject | 拒绝当前通话。 |
hangup | 结束当前通话。 |
API | 描述 |
---|---|
setMicMute | 静音本地音频采集。 |
setHandsFree | 设置免提。 |
API | 描述 |
---|---|
onError | 错误回调。 |
API | 描述 |
---|---|
onReject | 拒绝通话回调。 |
onNoResp | 对方无回应回调。 |
onLineBusy | 通话忙线回调。 |
API | 描述 |
---|---|
onInvited | 被邀请通话回调。 |
onCallingCancel | 当前通话被取消回调。 |
onCallingTimeOut | 当前通话超时回调。 |
API | 描述 |
---|---|
onUserEnter | 用户进入通话回调。 |
onUserLeave | 用户离开通话回调。 |
onUserAudioAvailable | 用户是否开启音频上行回调。 |
onUserVoiceVolume | 用户通话音量回调。 |
onCallEnd | 通话结束回调。 |
sharedInstance 是 TRTCCalling 的组件单例。
static Future<TRTCCalling> sharedInstance();
销毁组件单例。
static void destroySharedInstance();
销毁函数,如果无需再运行该实例,请调用该接口。
void destroy();
TRTCCalling 事件回调,您可以通过 TRTCCallingDelegate 获得 TRTCCalling 的各种状态通知。
void registerListener(VoiceListenerFunc func);
移除回调接口。
void unRegisterListener(VoiceListenerFunc func);
登录组件。
Future<ActionCallback> login(int sdkAppId, String userId, String userSig);
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
sdkAppID | int | 您可以在实时音视频控制台 >【应用管理】> 应用信息中查看 SDKAppID。 |
userId | String | 当前用户的 ID,字符串类型,只允许包含英文字母(a-z 和 A-Z)、数字(0-9)、连词符(-)和下划线(_)。 |
userSig | String | 腾讯云设计的一种安全保护签名,获取方式请参考 如何计算及使用 UserSig。 |
登出组件。
Future<ActionCallback> logout();
单人通话邀请,当前处于通话中也可继续调用邀请他人。
Future<ActionCallback> call(String userId, int type);
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
userId | String | 呼叫用户 ID。 |
type | int | 1 表示语音通话,2 表示视频通话。 |
接受当前通话。当您作为被邀请方收到 onInvited()
的回调时,可以调用该函数接听来电。
Future<ActionCallback> accept();
拒绝当前通话。当您作为被邀请方收到 onInvited()
的回调时,可以调用该函数拒绝来电。
Future<ActionCallback> reject();
挂断当前通话。当您处于通话中,可以调用该函数结束通话。
void hangup();
静音本地音频采集。
void setMicMute(bool isMute);
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
isMute | bool | true 表示麦克风关闭,false 表示麦克风打开。 |
静音远端音频。
void setHandsFree(bool isHandsFree);
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
isHandsFree | bool | true 表示开启免提,false 表示关闭免提。 |
错误回调。
说明:SDK 不可恢复的错误,一定要监听,并分情况给用户适当的界面提示。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
code | int | 错误码。 |
msg | String | 错误信息。 |
拒绝通话回调。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
userId | String | 拒绝用户的 ID。 |
对方无回应回调。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
userId | String | 无回应用户的 ID。 |
通话忙线回调。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
userId | String | 忙线用户的 ID。 |
被邀请通话回调。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
sponsor | String | 发起方的 ID。 |
userIds | List<String> | 除自己外被邀请 ID 列表。 |
isFromGroup | bool | 是否多人通话邀请。 |
type | int | 1 表示语音通话,2 表示视频通话。 |
当前通话被取消回调。接收方未处理请求,邀请方取消后会收到此回调。
当前通话超时回调。
用户进入通话回调。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
userId | String | 进入通话用户 ID。 |
用户离开通话回调。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
userId | String | 离开通话用户 ID。 |
用户是否开启音频上行回调。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
userId | String | 通话用户 ID。 |
available | boolean | 用户音频是否可用。 |
用户通话音量回调。
参数如下表所示:
参数 | 类型 | 含义 |
---|---|---|
userVolumes | List | 所有正在说话的房间成员的音量,取值范围:0 - 100。 |
totalVolume | int | 所有远端成员的总音量, 取值范围:0 - 100。 |
通话结束回调。
本页内容是否解决了您的问题?