tencent cloud

文档反馈

最后更新时间:2024-04-01 17:50:58

    创建实例和事件回调

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

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

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

    登录相关接口函数

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

    登录示例代码

    TCCCTypeDef.TCCCLoginParams loginParams = new TCCCTypeDef.TCCCLoginParams();
    /// 登录的坐席ID,通常为邮箱地址
    loginParams.userId = "";
    /// 登录票据,在登录模式为Agent必填。更多详情请参见[创建 SDK 登录
    /// Token](https://www.tencentcloud.com/document/product/679/49227?from_cn_redirect=1)
    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
    描述
    call
    发起通话
    answer
    接听来电
    terminate
    结束通话
    sendDTMF
    发送 DTMF(双音多频信号)
    mute
    静音
    unmute
    取消静音

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

    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
    描述
    setAudioCaptureVolume
    设定本地音频的采集音量
    getAudioCaptureVolume
    获取本地音频的采集音量
    setAudioPlayoutVolume
    设定远端音频的播放音量
    getAudioPlayoutVolume
    获取远端音频的播放音量
    setAudioRoute
    设置音频路由

    调试相关接口

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

    获取SDK版本示例代码

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

    错误和警告事件

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

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

    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
    描述
    onNewSession
    新会话事件。包括呼入和呼出
    onEnded
    会话结束事件
    onAudioVolume
    音量大小的反馈回调
    onNetworkQuality
    网络质量的实时统计回调

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

    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
    描述
    onConnectionLost
    SDK 与云端的连接已经断开
    onTryToReconnect
    SDK 正在尝试重新连接到云端
    onConnectionRecovery
    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 的房间
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持