对外事件推送

获取事件推送的数据需要第三方系统提供一个接收七陌推送数据的接口,目前可推送的内容包括通话记录,坐席状态,满意度调查等

1.通话状态推送

1.1 平台对外提供四类通话事件接口:

  • 呼叫振铃Ring(话务进入呼叫中心触发的事件)
  • 被呼振铃Ringing
  • 接通Link
  • 通话结束Hangup (Unlink也当成Hangup处理,用来记录通话记录只接收此事件类型即可)

1.2 通话接口可以提供如下数据

注:参数名固定,必须用我们定义的,传递方式必须是get
具体参数含义见:

参数名 描述
CallNo 主叫号码
CalledNo 被叫号码
CallSheetID 通话记录ID,CallSheetID 是这条通话记录再DB中的唯一id
refCallSheetId 转接前通话的CallSheetID,可以用来定位转接电话的上一通通话
CallID 通话ID,通话连接的在系统中的唯一标识。CallID 是在通话进行中channel的id,可以用这个id来挂断通话之类的操作。一个call有一个CallID,但一个call可能会出现在多个通话中,比如呼入转接。
CallType 通话类型:dialout外呼通话,normal普通来电,transfer转接电话,dialTransfer外呼转接
Ring 通话振铃时间(话务进入呼叫中心系统的时间)
RingingDate 被叫振铃开始时间
RingingTimestamp 被叫振铃开始时间(呼入是按座席振铃的时间,外呼按客户振铃的时间)
Begin 通话接通时间(呼入是按座席接起的时间,外呼按客户接起的时间,如果没接听的话为空)
End 通话结束时间
QueueTime 来电进入技能组时间
Agent 处理坐席的工号
Exten 处理坐席的工号,历史原因该字段与Agent相同
AgentName 处理坐席的姓名
Queue 通话进入的技能组名称
State 接听状态:dealing(已接),notDeal(振铃未接听),leak(ivr放弃),queueLeak(排队放弃),blackList(黑名单),voicemail(留言)
CallState 事件状态:Ring, Ringing, Link, Hangup(Unlink也当成Hangup处理)
ActionID 通过接口调用时,该字段会保存请求的actionID,其它情况下该字段为空
WebcallActionID 通过调用webcall接口,该字段会保存请求的actionID,其它情况下该字段为空
RecordFile 通话录音文件名:用户要访问录音时,在该文件名前面加上服务路径即可,如:FileServer/RecordFile
FileServer 通过FileServer中指定的地址加上RecordFile的值可以获取录音
Province 目标号码的省,例如北京市。呼入为来电号码,呼出为去电号码
District 目标号码的市,例如北京市。呼入为来电号码,呼出为去电号码
IVRKEY 通话在系统中选择的按键菜单,10004@0。格式为:按键菜单的节点编号@选择的菜单按键。如果为多级菜单则为:10004@0-10005@1。
AccountId 账户编号字段,默认不推送有需求的客户对接时联系七陌技术支持人员进行开通
AccountName 账户名称字段,默认不推送有需求的客户对接时联系七陌技术支持人员进行开通
CdrVar 软电话条中自定义参数
附:可以通过增加的弹屏变量的方式,在推送的参数中增加客户自定义参数用于传递唯一标示。

1.3 事件推送对接示例

用户可以提供针对某个事件的接收url接口。当有事件产生时,平台会访问这个url,在url路径中传递参数。

如接收Hangup事件的url:

//此url仅为举例,实际url为平台使用者提供给七陌,并配置到云客服的接口  
www.xxxx.com/callback  

系统在收到hangup事件时便会访问,并传递参数,如下例:

http://www.xxxx.com/callback?CallNo=13589771577
&CallSheetID=2966c9e8-8066-4b91-93a9-c43c9f2f6036&CalledNo=01050854063
&CallID=cc-ali-9-1434111238.12986&CallType=normal
&RecordFile=monitor/cc.ali.1.9/20150612/20150612-201434_N00000000605_10001092_1
3589771577_01050854063_10001092_cc-ali-9-1434111238.12986.mp3
&Ring=2015-06-12 20:13:58&Begin=2015-06-12 20:14:50&End=2015-06-12 20:15:42
&QueueTime=2015-06-12 20:14:34&Queue=其他&Agent=8007&Exten=8007&AgentName=郭小芳
&ActionID=&CallState=Unlink&State=dealing&FileServer=http://121.40.138.123
&RingTime=1434111274.035155&IVRKEY=10004@0&Province=山东省&District=烟台市&CdrVar=12345678901234&RingingDate=2018-08-09 09:49:25  

2.坐席状态推送

坐席状态接口提供坐席的上线/离线,置闲/置忙状态事件

2.1.坐席上线/离线

2.2.坐席置忙/置闲

接口提供的字段:

参数名 描述
Type 事件类型:login登录/登出,busy置忙/置闲
Exten 坐席工号,如8001
ExtenType 坐席登录方式,none|Local|sip|gateway:无电话方式|直线方式|软电话方式|网关方式
State 状态:1(登录/置忙),0(登出/置闲)
Agent 坐席
Time 发生时间
BusyType 置忙类型:1忙碌,2小休,3-9 xx(客户自定义),99 系统置忙(每个外呼或呼入通话接通时,系统都会将坐席置忙,等通话结束+后处理时长过后,系统会将坐席置成坐席的前一个状态)

3.满意度结果推送

来电成功进行满意度评价之后,7moor系统将调用接口,将评价的按键送给接口。

字段只有2个:

参数名 描述
CallSheetID 通话记录的唯一id,用来表示,这个满意度的结果是属于哪一通通话的。
SurveyContent 满意度按键的值

4.事件推送失败重发功能

我们的事件推送支持失败重发,需要单独提出对您的账号开启事件失败重发功能,否则此功能默认不开启。

开启失败重发功能后,第三方接收消息的接口接收成功后需要返回给我们字符串200 。

如果我们推送后接口返回的值中不是字符串200,我们则认为第三方接口接收失败。进入重发流程,一条失败的消息,会在 10秒、30秒、60秒、600秒 后重发,直到第三方接口返回200。如果这4次重发都失败,我们将不会再重发。重发彻底失败的消息,我们会记录下来,第三方可以找我们索取。