有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
注意
TCCC 是加载 SDK 后的全局变量,可直接访问。

通用结构

AgentStatus

座席状态。
字段
描述
free
空闲
busy
忙碌
arrange
话后整理
notReady
示忙
rest
小休

ServerType

端服务类型,描述电话类型会话时使用的端类型。
字段
描述
staffSeat
Web 座席类型
staffPhoneSeat
座席手机类型
miniProgramSeat
小程序类型
staffExtensionSeat
话机类型

CommonSDKResponse

参数
类型
必填
备注
options
status
'success' |'error'
SDK API 调用结果,成功时返回 success,失败返回 error
errorMsg
string
错误信息,当 status 为 error 时返回

Call(电话客服和音频客服相关接口函数)

电话呼出

tccc.Call.startOutboundCall(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
phoneNumber
String
被叫号码
phoneDesc
String
号码备注,在通话条中会替代号码显示
uui
String
用户自定义数据,传入后可通过 电话 CDR 事件 推送返回
skillGroupId
String
指定技能组内绑定的外呼号码
callerPhoneNumber
String
指定外呼号码
servingNumberGroupIds
String[]
指定号码 ID 列表
phoneEncodeType
'number'
目前仅支持'number',在开启 号码映射 时强制使用真实号码

tccc.Call.startOutboundCall(options): Promise<CallResponse>

CallResponse 描述如下:
参数
类型
必填
备注
response
sessionId
String
指定会话 ID
calleeLocation
String
被叫号码归属地址
calleePhoneNumber
String
被叫号码
callerPhoneNumber
String
外呼时使用的主叫号码
serverType
String
表示外呼时使用的端类型,可选值有:staffSeat,staffPhoneSeat,staffExtensionSeat。详细说明参见 会话服务类型
remark
String
被叫号码备注

接听会话

tccc.Call.accept(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID,从 tccc.events.callIn 事件中获取

挂断会话

tccc.Call.hungUp(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

删除会话

tccc.Call.deleteCall(options)

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

静音

tccc.Call.muteMic(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

取消静音

tccc.Call.unmuteMic(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

当前是否静音

tccc.Call.isMicMuted(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

发起内部通话

tccc.Call.startInternalCall(): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
calleeUserId
String
被叫座席账号
useMobile
Boolean
是否呼叫对方手机

转接会话

tccc.Call.transfer(): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID
skillGroupId
String
转接到指定技能组
userId
String
转接到指定座席

呼叫保持

tccc.Call.hold(): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

取消通话保持

tccc.Call.unHold(): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

发送分机号

tccc.Call.sendDigits(): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID
dtmfText
String
需要发送的分机号

Chat(在线客服相关接口函数)

接听会话

tccc.Chat.accept(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

结束会话

tccc.Chat.end(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

转接会话

tccc.Chat.transfer(): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID
skillGroupId
String
转接到指定技能组
userId
String
转接到指定座席

Video(视频客服相关接口函数)

接听会话

tccc.Video.accept(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

挂断会话

tccc.Video.end(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

静音

tccc.Video.muteMic(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

取消静音

tccc.Video.unmuteMic(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

关闭摄像头

tccc.Video.muteVideo(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

开启摄像头

tccc.Video.unmuteVideo(options): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

转接会话

tccc.Video.transfer(): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
sessionId
String
指定会话 ID
skillGroupId
String
转接到指定技能组
userId
String
转接到指定座席

Agent(座席状态相关接口函数)

更多座席状态枚举类型请参见 座席状态

上线

tccc.Agent.online(): void

下线

tccc.Agent.offline(): void

设置座席状态

tccc.Agent.setStatus(optoins): Promise<CommonSDKResponse>

参数
类型
必填
备注
options
status
String
座席状态,可选值:
free: 空闲
rest: 小休
arrange: 话后整理
notReady: 示忙
stopNotReady: 停止示忙
restReason
String
小休原因

获取座席状态

tccc.Agent.getStatus():AgentStatus

Devices(设备相关接口函数)

检测当前浏览器是否支持

tccc.Devices.isBrowserSupported(): boolean

说明
TCCC Web SDK 支持 Chrome 56、Edge80以上的浏览器。

返回麦克风设备列表

tccc.Devices.getMicrophones(): Promise<MediaDeviceInfo []>

返回扬声器设备列表

tccc.Devices.getSpeakers(): Promise<MediaDeviceInfo []>

UI(用户界面相关接口函数)

隐藏 SDK 所有 UI

tccc.UI.hide(): void

显示 SDK 所有 UI

tccc.UI.show(): void

显示浮动按钮

tccc.UI.showfloatButton(): void

隐藏浮动按钮

tccc.UI.hidefloatButton(): void

显示工作台

tccc.UI.showWorkbench(): void

隐藏工作台

tccc.UI.hideWorkbench(): void

Events(事件)

事件监听

tccc.on(event, callback)

取消事件监听

tccc.off(event, callback)

SDK 初始化完成

tccc.events.ready

当 SDK 初始化完成时触发,此时可安全调用API

会话呼入

tccc.events.callIn

会话呼入类型包括:
phone:电话会话
im:在线会话
voip:音频会话
video:视频会话
internal:内线会话

电话会话呼入

参数
类型
必填
备注
options
sessionId
String
会话 ID
type
'phone'
电话会话类型
timeout
Number
会话接入超时时长,0代表不超时
calleePhoneNumber
String
被叫号码
callerPhoneNumber
String
主叫号码
callerLocation
String
主叫号码归属地
remark
String
备注
ivrPath
{key: String, label: String}[]
-
用户的 IVR 按键路径,key 表示对应按键,label 表示对应的按键标签
protectedCallee
String
在开启号码映射时存在,表示被叫
protectedCaller
String
在开启号码映射时存在,表示主叫
serverType
'staffSeat' | 'staffPhoneSeat' | 'staffExtensionSeat'
表示呼入到座席哪一端,staffSeat 为默认值,表示 Web 座席;StaffPhoneSeat 表示呼入到座席手机,MiniProgramSeat 表示小程序座席,staffExtensionSeat 表示呼入到座席绑定的话机

在线会话呼入

参数
类型
必填
备注
options
sessionId
String
会话 ID
type
'phone'
电话会话类型
timeout
Number
会话接入超时时长,0代表不超时
nickname
String
用户昵称
avatar
String
用户头像
remark
String
备注
peerSource
String
渠道来源
channelName
String
自定义参数
clientData
String
用户自定义参数

音频会话呼入

参数
类型
必填
备注
options
sessionId
String
会话 ID
type
'voip'
音频会话类型
timeout
Number
会话接入超时时长,0代表不超时
callee
String
渠道入口
calleeRemark
String
渠道入口备注
userId
String
用户的 openId
nickname
String
用户授权后可获得微信昵称
avatar
String
用户授权后可获得微信头像
remark
String
备注
peerSource
String
主叫号码归属地
ivrPath
{key: String, label: String}[]
用户的 IVR 按键路径,key 表示对应按键,label 表示对应的按键标签
clientData
String
用户自定义参数

视频会话呼入

参数
类型
必填
备注
options
sessionId
String
会话 ID
type
'video'
视频会话类型
timeout
String
会话接入超时时长,0代表不超时
userId
String
用户的 openId
nickname
String
用户授权后可获得微信昵称
avatar
String
用户授权后可获得微信头像
remark
String
备注

内部会话呼入

参数
类型
必填
备注
options
sessionId
String
会话 ID
type
'internal'
内部会话类型
timeout
Number
会话接入超时时长,0代表不超时
peerUserId
String
主叫座席的账号

座席接入会话

tccc.events.userAccessed

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

会话超时转接事件

tccc.events.autoTransfer

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

会话结束事件

tccc.events.sessionEnded

参数
类型
必填
备注
options
sessionId
String
指定会话 ID
closeBy
String
表示挂断方:
client:用户挂断
seat:座席挂断
admin:系统挂断
timer:定时器挂断
mainReason
String
仅在电话类型,并且挂断方为"admin"时存在,表示挂断原因
subReason
String
仅在电话类型,并且挂断方为"admin"时存在,表示挂断的详细原因

外呼成功事件

tccc.events.callOuted

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

外呼对方接听事件

tccc.events.calloutAccepted

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

会话转接事件

tccc.events.transfer

参数
类型
必填
备注
options
sessionId
String
指定会话 ID

座席状态变更事件

tccc.events.statusChanged

参数
类型
必填
备注

options
status
详细说明请参见 座席状态


语音识别事件

tccc.events.asr

参数
类型
必填
备注

options
sessionId
String
指定会话 ID

result
ASR识别结果
语音识别结果,结构体参考文档

flow
'IN' | 'OUT'
识别方向
IN: 用户侧
OUT: 座席侧