有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

创建实例和事件回调

API
描述
创建 TCCCWorkstation 实例(单例模式)
销毁 TCCCWorkstation 实例(单例模式)
设置 TCCCWorkstation 事件回调

创建实例和设置事件回调示例代码

// 创建实例和设置事件回调
TCCCWorkstation tcccSDK = TCCCWorkstation.sharedInstance(getApplicationContext());
tcccSDK.setListener(new TCCCListener() {});

登录相关接口函数

API
描述
SDK 登录
检查 SDK 是否已登录
SDK 退出登录

登录示例代码

TCCCTypeDef.TCCCLoginParams loginParams = new TCCCTypeDef.TCCCLoginParams();
/// 登录的坐席ID,通常为邮箱地址
loginParams.userId = "";
/// 登录票据,在登录模式为Agent必填。更多详情请参见[创建 SDK 登录
/// Token](/document/product/679/49227)
loginParams.token = "";
/// 腾讯云联络中心应用ID,通常为1400开头
loginParams.sdkAppId = 0;
// 必须知道为坐席模式
loginParams.type = TCCCTypeDef.TCCCLoginType.Agent;
?
tcccSDK.login(loginParams, new TXCallback() {
@Override
public void onSuccess() {
// login success
}
?
@Override
public void onError(int code, String desc) {
// login error
}
});

呼叫相关接口函数

API
描述
发起通话
接听来电
结束通话
发送 DTMF(双音多频信号)
静音
取消静音

发起呼叫和结束呼叫示例代码

TCCCTypeDef.TCCCStartCallParams callParams =new TCCCTypeDef.TCCCStartCallParams();
//格式 <scheme> : <user> @<host>,如 sip:1343xxxx@1400xxxx.tccc.qcloud.com,其中1343xxxx为手机号,1400xxxx为您的tccc应用ID
callParams.to = "sip:1343xxxx@1400xxxx.tccc.qcloud.com";
// 发起通话
tcccSDK.call(callParams, new TXCallback() {
@Override
public void onSuccess() {
// call success
}
?
@Override
public void onError(int code, String desc) {
// call error
}
});
// 结束通话
tcccSDK.terminate();

音频设备接口函数

API
描述
设定本地音频的采集音量
获取本地音频的采集音量
设定远端音频的播放音量
获取远端音频的播放音量
设置音频路由

调试相关接口

API
描述
获取 SDK 版本信息
设置 Log 输出级别
启用/禁用控制台日志打印
调用实验性接口

获取SDK版本示例代码

// 获取SDK 版本号
TCCCWorkstation.getSDKVersion();

错误和警告事件

API
描述
错误事件回调
警告事件回调

处理错误回调事件回调示例代码

tcccSDK.setListener(new TCCCListener() {
/**
* 错误事件回调
* 错误事件,表示 SDK 抛出的不可恢复的错误,比如进入房间失败或设备开启失败等。
* @param errCode 错误码
* @param errMsg 错误信息
* @param extraInfo 扩展信息字段,个别错误码可能会带额外的信息帮助定位问题
*/
@Override
public void onError(int errCode, String errMsg, Bundle extraInfo) {
super.onError(errCode, errMsg, extraInfo);
}
?
/**
* 警告事件回调
* 警告事件,表示 SDK 抛出的提示性问题,比如音频出现卡顿或 CPU 使用率太高等。
* @param warningCode 警告码
* @param warningMsg 警告信息
* @param extraInfo 扩展信息字段,个别警告码可能会带额外的信息帮助定位问题
*/
@Override
public void onWarning(int warningCode, String warningMsg, Bundle extraInfo) {
super.onWarning(warningCode, warningMsg, extraInfo);
}
});

呼叫相关事件回调

API
描述
新会话事件。包括呼入和呼出
会话结束事件
音量大小的反馈回调
网络质量的实时统计回调

处理接听和坐席挂断事件回调示例代码

tcccSDK.setListener(new TCCCListener() {
@Override
public void onNewSession(TCCCTypeDef.ITCCCSessionInfo info) {
super.onNewSession(info);
// 新会话事件。包括呼入和呼出,可通过 info.sessionDirection 判断是呼入还是呼出
}
?
@Override
public void onEnded(int reason, String reasonMessage, String sessionId) {
super.onEnded(reason, reasonMessage, sessionId);
// 会话结束
}
?
@Override
public void onAccepted(String sessionId) {
super.onAccepted(sessionId);
// 对端接听
}
});

与云端连接情况的事件回调

API
描述
SDK 与云端的连接已经断开
SDK 正在尝试重新连接到云端
SDK 与云端的连接已经恢复

与云端连接情况的事件回调示例代码

tcccSDK.setListener(new TCCCListener() {
/**
* SDK 与云端的连接已经断开
* SDK 会在跟云端的连接断开时抛出此事件回调,导致断开的原因大多是网络不可用或者网络切换所致,
* 比如用户在通话中走进电梯时就可能会遇到此事件。 在抛出此事件之后,SDK 会努力跟云端重新建立连接,
* 重连过程中会抛出 onTryToReconnect,连接恢复后会抛出 onConnectionRecovery 。
* 所以,SDK 会在如下三个连接相关的事件中按如下规律切换:
*/
@Override
public void onConnectionLost(TCCCServerType serverType) {
super.onConnectionLost(serverType);
}
?
/**
* SDK 正在尝试重新连接到云端
* SDK 会在跟云端的连接断开时抛出 onConnectionLost,之后会努力跟云端重新建立连接并抛出本事件,
* 连接恢复后会抛出 onConnectionRecovery。
*/
@Override
public void onTryToReconnect(TCCCServerType serverType) {
super.onTryToReconnect(serverType);
}
?
/**
* SDK 与云端的连接已经恢复
* SDK 会在跟云端的连接断开时抛出 onConnectionLost,之后会努力跟云端重新建立连接并抛出onTryToReconnect,
* 连接恢复后会抛出本事件回调。
*/
@Override
public void onConnectionRecovery(TCCCServerType serverType) {
super.onConnectionRecovery(serverType);
}
});
?

API 错误码

基础错误码

符号
含义
ERR_SIP_SUCCESS
200
成功
ERR_UNRIGIST_FAILURE
20001
登录失败
ERR_ANSWER_FAILURE
20002
接听失败,通常是trtc进房失败
ERR_SIPURI_WRONGFORMAT
20003
URI 格式错误。

SIP相关错误码

符号
含义
ERR_SIP_BAD_REQUEST
400
错误请求
ERR_SIP_UNAUTHORIZED
401
未授权(用户名密码不对情况)
ERR_SIP_AUTHENTICATION_REQUIRED
407
代理需要认证,请检查是否已经调用登录接口
ERR_SIP_REQUESTTIMEOUT
408
请求超时(网络超时)
ERR_SIP_REQUEST_TERMINATED
487
请求终止(网络异常,网络中断场景下)
ERR_SIP_SERVICE_UNAVAILABLE
503
服务不可用
ERR_SIP_SERVER_TIMEOUT
504
服务超时

音频设备相关错误码

符号
含义
ERR_MIC_START_FAIL
-1302
打开麦克风失败。设备,麦克风的配置程序(驱动程序)异常,禁用后重新启用设备,或者重启机器,或者更新配置程序
ERR_MIC_NOT_AUTHORIZED
-1317
麦克风设备未授权,通常在移动设备出现,可能是权限被用户拒绝了
ERR_MIC_SET_PARAM_FAIL
-1318
麦克风设置参数失败
ERR_MIC_OCCUPY
-1319
麦克风正在被占用中,例如移动设备正在通话时,打开麦克风会失败
ERR_MIC_STOP_FAIL
-1320
停止麦克风失败
ERR_SPEAKER_START_FAIL
-1321
打开扬声器失败,例如在 Windows 或 Mac
ERR_SPEAKER_SET_PARAM_FAIL
-1322
扬声器设置参数失败
ERR_SPEAKER_STOP_FAIL
-1323
停止扬声器失败
ERR_UNSUPPORTED_SAMPLERATE
-1306
不支持的音频采样率

网络相关错误码

符号
含义
ERR_RTC_ENTER_ROOM_FAILED
-3301
进入房间失败,请查看 onError 中的 -3301 对应的 msg 提示确认失败原因
ERR_RTC_REQUEST_IP_TIMEOUT
-3307
请求 IP 和 Sig 超时,请检查网络是否正常,或网络防火墙是否放行 UDP
ERR_RTC_CONNECT_SERVER_TIMEOUT
-3308
请求进房超时,请检查是否断网或者是否开启 VPN,您也可以切换 4G 进行测试确认
ERR_RTC_ENTER_ROOM_REFUSED
-3340
进房请求被拒绝,请检查是否连续调用 enterRoom 进入相同 ID 的房间
?


http://www.vxiaotou.com