tencent cloud

文档反馈

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

    API 概览

    创建实例和事件回调

    API
    描述
    sharedInstance
    创建 TCCCWorkstation 实例(单例模式)
    destroyInstance
    销毁 TCCCWorkstation 实例(单例模式),建议您在不使用 tccc 的时候卸载 tccc 实例
    on
    设置 TCCCWorkstation 事件回调
    off
    取消 TCCCWorkstation 事件回调

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

    // 引入TCCC相关包
    import {TcccWorkstation,TCCCLoginType,TCCCAudioRoute,TCCCEndReason} from "tccc-sdk-uniapp";
    // 创建实例和设置事件回调
    const tcccSDK = TCCCWorkstation.sharedInstance();
    // 错误事件回调
    tcccSDK.on('onError',(errCode,errMsg) => {
    });
    // 通话结束回调
    tcccSDK.on('onEnded',(reason,reasonMessage,sessionId) => {
    if (reason == TCCCEndReason.Error) {
    // 呼叫异常
    }
    });
    // 对端接听回调
    tcccSDK.on('onAccepted',(sessionId) => {
    });
    // 释放所有事件回调监听
    tcccSDK.off('*');

    登录相关接口函数

    API
    描述
    login
    SDK 登录
    checkLogin
    检查 SDK 登录状态,建议您在页面 onShow 的时候调用
    logout
    SDK 退出登录

    登录示例代码

    // 其中sdkAppId、userId、token的获取参考关键概念对应的字段。
    // 座席登录
    tcccSDK.login({
    sdkAppID: sdkAppId,
    userId: userID,
    token: token,
    type: type,
    },(code,message) => {
    if (code == TcccErrorCode.ERR_NONE) {
    // 登录成功
    } else {
    // 登录失败
    }
    });
    // 手机应用程序在切换到后台时,操作系统会暂停应用程序的进程以节省资源。我们建议您在 onShow 的时候做一个登录状态检查
    tcccSDK.checkLogin(code,message) => {
    if (code == TcccErrorCode.ERR_NONE) {
    // 已登录
    } else {
    // 未登录
    }
    });

    呼叫相关接口函数

    API
    描述
    call
    发起通话
    answer
    接听来电
    terminate
    结束通话
    sendDTMF
    发送 DTMF(双音多频信号)
    mute
    静音
    unmute
    取消静音
    startPlayMusic
    开始播放音乐
    stopPlayMusic
    停止播放音乐

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

    // 发起呼叫
    tcccSDK.call({
    to: '134xxxx', // 被叫号码(必填)
    remark: "xxx", // 号码备注,在通话条中会替代号码显示(可选)
    uui: "xxxx", // 户自定义数据(可选)
    }, (code,message) => {
    if (code == TcccErrorCode.ERR_NONE) {
    // 发起成功
    } else {
    // 发起失败
    }
    });
    
    // 结束通话
    tcccSDK.terminate();
    // 接听来听
    tcccSDK.answer((code,message) => {
    if (code == TcccErrorCode.ERR_NONE) {
    // 接听成功
    } else {
    // 接听失败
    }
    });

    音频设备接口函数

    API
    描述
    setAudioCaptureVolume
    设定本地音频的采集音量
    getAudioCaptureVolume
    获取本地音频的采集音量
    setAudioPlayoutVolume
    设定远端音频的播放音量
    getAudioPlayoutVolume
    获取远端音频的播放音量
    setAudioRoute
    设置音频路由
    // TCCCAudioRoute.Earpiece 为耳麦
    // 设置为扬声器
    const route = TCCCAudioRoute.Speakerphone;
    tcccSDK.getDeviceManager().setAudioRoute(route);

    调试相关接口

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

    获取SDK版本示例代码

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

    错误和警告事件

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

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

    // 错误事件回调
    tcccSDK.on('onError',(errCode,errMsg) => {
    });
    // 警告事件回调
    tcccSDK.on('onWarning',(warningCode,warningMsg) => {
    });

    呼叫相关事件回调

    API
    描述
    onNewSession
    新会话事件。包括呼入和呼出
    onAccepted
    对端接听回调
    onEnded
    会话结束事件
    onAudioVolume
    音量大小的反馈回调
    onNetworkQuality
    网络质量的实时统计回调

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

    // 会话结束事件
    tcccSDK.on("onEnded",(reason,reasonMessage,sessionId) => {
    var msg = reasonMessage;
    if (reason == TCCCEndReason.Error) {
    msg = "系统异常"+reasonMessage;
    } else if (reason == TCCCEndReason.Timeout) {
    msg = "超时挂断";
    } else if (reason == TCCCEndReason.LocalBye) {
    msg = "您已挂断";
    } else if (reason == TCCCEndReason.RemoteBye) {
    msg = "对方已挂断";
    } else if (reason == TCCCEndReason.Rejected) {
    msg = "对方已拒接";
    } else if (reason == TCCCEndReason.RemoteCancel) {
    msg = "对方已取消";
    }
    });
    // 新会话事件。包括呼入和呼出
    tcccSDK.on('onNewSession',(res) => {
    const sessionDirection = res.sessionDirection;
    if (sessionDirection == TCCCSessionDirection.CallIn) {
    // 呼入,因手机切后台的时候是不能收到该事件的。所以这里建议您开通手机接听的能力
    } else if (sessionDirection == TCCCSessionDirection.CallOut){
    // 呼出
    }
    });
    // 对端已接听
    tcccSDK.on('onAccepted',(sessionId) => {
    });
    // 网络质量的实时统计回调
    tcccSDK.on('onNetworkQuality',(localQuality) => {
    const quality = localQuality.quality;
    // ///当前网络一般
    // TCCCQuality_Poor = 3,
    // ///当前网络较差
    // TCCCQuality_Bad = 4,
    // ///当前网络很差
    // TCCCQuality_Vbad = 5,
    // ///当前网络不满足 通话 的最低要求
    // TCCCQuality_Down = 6,
    
    });
    // 音量大小的反馈回调.volume从0到100,数值越大表示声音越大。
    tcccSDK.on('onAudioVolume',(userId,volume) => {
    
    });

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

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

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

    tcccSDK.on('onConnectionLost',(serverType) => {
    // 与云端的连接已经断开
    });
    tcccSDK.on('onTryToReconnect',(serverType) => {
    // 正在尝试重新连接到云端
    });
    tcccSDK.on('onConnectionRecovery',(serverType) => {
    // 与云端的连接已经恢复
    });

    API 错误码

    基础错误码

    符号
    含义
    ERR_NONE
    0
    无错误。成功
    ERR_HTTP_REQUEST_FAILURE
    -10001
    Http 请求失败,请检查网络连接情况
    ERR_HTTP_TOKEN_ERROR
    -10002
    token 登录票据不正确或者已过期
    ERR_HTTP_GETSIPINFO_ERROR
    -10003
    获取座席配置失败。请联系我们
    ERR_NETWORK_CANNOT_RESET
    -10004
    正在通话中,禁止重置网络操作&发起外呼
    ERR_HAD_LOGGEDOUT
    -10005
    您已经退出登录了,请重新登录
    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_PAYMENTREQUIRED
    402
    付费要求,通常是座席许可满了
    ERR_SIP_FORBIDDEN
    403
    密码错误,或者是被踢了
    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 电话支持