呼叫中心中间件(mod_cti基于FreeSWITCH)-通话记录(CDR)接口
创始人
2024-01-31 07:07:49
0

支持把FreeSWITCH的通话记录写入mysql,sqlserver,oracle等数据库,也可以写入redis的list,或者PUBLISH到redis的channel,方便业务程序实时获取通话记录。

使用说明

如果一个通话是A呼叫B,那么就有2个通话记录,一个叫aleg,一个叫bleg。
如果自动外呼或者呼入IVR这样没转接给其他电话或者分机的,就只有一个通话记录。

  • uuid 这个通话的callid,整个系统唯一的。
  • destination_number 一般是拨打的号码(自动外呼的如果接通了,就变成了自动外呼配置的目的地(路由条件))
  • caller_id_number 主叫号码 (来电显示的号码)
  • callee_id_number 被叫号码(DID号),业务系统建议使用dial_number这个cti定义的变量

    分机互打

    主叫方

  • account 分机号
  • direction inbound (分机呼叫fs,所以是呼入)
  • originator 空
  • bridge_uuid 最后通话的对方的UUID
  • call_source dialplan(拨号方案里面设置的)
  • source_name 主叫分机号(拨号方案里面设置的)
  • dial_number 被叫分机号(拨号方案里面设置的)

    被叫方

  • account 分机号
  • direction outbound (fs呼叫分机,所以是呼出)
  • originator 主叫方uuid
  • bridge_uuid 最后通话的对方的UUID,因为一个通话可能给转移和多个人对话,所以和originator可能不是一个UUID
  • call_source dialplan(拨号方案里面设置的)
  • source_name 主叫分机号(拨号方案里面设置的)
  • dial_number 被叫分机号(拨号方案里面设置的)

    分机呼出

    被叫方

  • account 如果外呼使用的实际线路是网关,就是网关名,如果不是网关对接的是通线路组外呼的,就是线路名。
  • 其他参数和分机互打的被叫方一样。

    自动外呼

    注意:自动外呼的通话记录主叫被叫记录接通和未接通是不一样的。下面描述这些差异。
  • destination_number 未接通的通话是被叫号码,接通的通话是外呼任务配置的路由条件。
  • caller_id_number 未接通的通话是主叫号码,接通的通话是被叫号码(就是自动外呼拨打的号码)
  • callee_id_number 未接通的通话是被叫号码,接通的通话是主叫号码(就是自动外呼设置的主叫号码),如果转接给了分机或者其他手机,这个值就变成了转接的被叫号码。
  • call_source queuedialer
  • source_name 外呼队列名字
  • dial_number 被叫号码
  • cti_line_group_name 外呼使用的线路组

排队呼叫分机

  • call_source acd
  • source_name 排队名字
  • source_number 原始主叫号码
  • dial_number 分机线路名字
  • cti_line_group_name 分机所属线路组

配置说明,在cti.json中添加cdr配置,cdr.json文件路径在cdr.conf.xml中配置,默认时fs的conf目录。

 
"cdr": {"details": true,"fields": [ "rtp_last_audio_codec_string","number:billsec", "number:duration","record_filename","jsipid:sip_h_X-jssipid" ],"redis": {"channel": "cdr","list": "cdr"},"database": {"dbtype": "mysql","connectionstring": "","username": "","password": "","table": "cdr","real": false},"log":false
}
  • details 是否记录所有的CDR信息。JSON格式。
  • fields 要记录那些通道变量,number:开始的表示使用数字格式。可以自定义需要记录的通道变量,数据库中也要添加同名字段,如果变量名和数据库字段名字不一样,可以”字段名:变量名”这样,也可以组合2个通道变量记录到一个字段”字段名:${通道变量1}${通道变量2}”。
  • redis 配置CDR记录到redis的信息,如果不需要记录到redis,就不要配置这个。
  • database.dbtype 数据库类型 比如mysql ,sqlserver
  • connectionstring 连接串。mysql例子:127..0.0.1,3306@dbname sqlserevr例子:tcp:127.0.0.1,1433@dbname
  • username 用户名
  • password
  • table 表名
  • real 是否启用CDR实时模式,实时模式创建通道的时候插入记录,通话状态变化更新记录,非实时模式通话挂断才记录到CDR

自定义字段

例子记录外呼队列的自定义变量到CDR

  • 外呼队列添加自定义变量

  • mysql添加一个 queue_name的字段
  • cdr.json的 “fields”: [ “rtp_last_audio_codec_string”,”number:billsec”, “number:duration”,”record_filename” ,”queue_name”] 添加queue_name这个自定义变量名。
  • 线路也可以同样的方式添加自定义变量到CDR。

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...