呼叫中心中间件(mod_cti基于FreeSWITCH)-使用指南

本指南使用ccadmin工具作为配置工具,用户可以根据本指南掌握cti中间件的配置和用法,然后开发出自己的web配置界面。ccadmin的实现原理是通过操作redis来实现配置呼叫中心系统,开发web配置界面也是一样,只需要通过操作redis就可以完成呼叫中心系统的配置。

开始使用

启动fs

  • 后台启动FreeSWTICH freeswitch -nonat -nc -nosql

  • 如果遇到启动问题,需要前台直接启动FreeSWITCH看输出日志 freeswitch -nonat -nosql

执行fs命令

  • FreeSWITCH 已经启动了,进入控制台命令 fs_cli

  • 在FreeSWITCH控制台可以执行FreeSWTICH的命令,比如下图就是执行status命令,退出控制台的方法时执行命令 /exit
    正在上传…重新上传取消

  • 生产环境系统运行时会输出大量的日志,也可以不进入控制台在shell终端执行FreeSWTICH命令fs_cli -x "status",双引号里面的就是需要执行的命令。
    正在上传…重新上传取消

退出fs

  • 退出FreeSWITCH,在控制台执行 shutdown
  • 如果shutdown关闭程序卡了也可以直接kill -9 pgrep freeswitch杀进程

修改控制台输出日志

  • 调整控制台输出日志等级,在控制台执行 console loglevel 6 0-7,7是debug等级 0是console等级。快捷方法按F7直接设置为0,按F8设置为debug。
    正在上传…重新上传取消

查看fs的相关路径

  • 查看FreeSWTICH日志文件声音文件等路径 fs控制台执行 global_getvar会输出全部的全局变量

    • log_dir就是日志文件目录
    • recordings_dir录音文件目录
    • sounds_dir和sound_prefix放音文件目录(sound_prefix更优先)
    • conf_dir配置文件目录(cti.json在这个目录,cti.conf.xml在${conf_dir}/autoload_configs这个目录)
    • storage_dir是http缓存文件目录(cti的tts文件也会缓存到这个目录)
    • mod_dir模块文件目录(mod_cti.so就是在这个目录)。

    正在上传…重新上传取消

查看cti模块状态

  • 输出cti模块的信息cti status

    • domain cti.conf.xml里面配置的域名,用来区分多个freeswitch
    • redis_ready 执行同步redis命令的连接是否就绪
    • redis_async 执行异步redis命令的连接是否就绪
    • redis_subscribe 接收redis订阅发布消息的连接是否就绪(redis配置的外呼任务,线路组,排队技能组等配置改变就是通过redis的订阅发布模式通知cti模块的。)
    • sad_ready 噪音人声模型是否加载成功

      正在上传…重新上传取消

跟踪sip信令

  • 输出sip信令日志 在控制台执行 sofia global siptrace on,就会输出信令日志到控制台,关闭的方法是 sofia global siptrace off

  • 遇到复杂的媒体问题,比如通话没声音,需要tcpdump抓包 ,shell终端(不是fs控制台)执行 tcpdump -i 网卡 udp -w 1.pcap就会把网络数据抓包到1.pcap,可以在windows电脑安装Wireshark打开抓包文件进行分析。

基础配置

配置SIP端口

默认有2个sofia profile 分别为internal和external,internal主要用来注册分机(auth-calls 必须是勾选),external用来对接网关(网关配置为all)。如果需要修改sip端口,参照下图修改internal和external的sip-port端口。修改sip端口需要重启fs或者重载sofia模块才可以生效。sip端口同时支持tcp和udp,一般都是用UDP的,没特殊要求防火墙开放UDP端口就可以。

正在上传…重新上传取消

配置公网IP

如果需要公网使用sip服务,需要配置公网IP,如果内网使用直接配置为本机内网IP。注意external_ip=1.1.1.1 这样的IP格式,不要后面有空格。

正在上传…重新上传取消

设置RTP端口范围

rtp端口就是传输声音的端口,一个通话需要2个端口,一个是rtp一个是rtcp。端口范围必须是双数,默认16384到32768(UDP端口,不是TCP端口),如果需要设置其他范围可以按照下图所示修改。

正在上传…重新上传取消

设置日志等级

开发阶段需要设置日志等级为debug,上线后可以改成其他等级。默认是打开了 console,info,notice,warning,err,crit,alert,如果需要打开debug日志修改为 debug,console,info,notice,warning,err,crit,alert 就可以。rollover一个日志文件最大多少字节,maximun-rotae 最大保留多少个日志文件。logfile设置日志文件目录。查看日志文件默认目录的方法 执行命令 global_getvar log_dir,修改日志配置生效的方法是执行命令reload mod_logfile

正在上传…重新上传取消

查看sofia(SIP模块)状态

运维调试界面点一下sip,就会显示sip状态,如果显示不了说明sofia模块没加载成功,可以执行 fs命令 reload mod_sofia,看看输出什么错误。如果修改了sip配置需要重启fs或者重启sofia模块,才能生效。查看data里面的ip和端口是不是和设置的一致。

正在上传…重新上传取消

CCAdmin执行fs命令

如果mod_cti模块和redis连接时正常的,就可以这样通过CCAdmin工具执行执行fs命令。

正在上传…重新上传取消

CCAdmin监视fs日志

可以通过查看日志文件,或者进入fs控制台fs_cli监视fs日志,ccadmin也可以监视fs日志(生成环境建议只能通过tail -f freeswitch.log)来监视fs日志。

呼叫中心中间件(mod_cti基于FreeSWITCH)-使用指南_第1张图片

IPPBX

这章节介绍ippbx场景下的配置方法

添加分机

CCAdmin创建分机

分机配置里面添加一个分机,密码要设置复杂点,添加分机是实时生效的。创建分机其实就是往redis写入一个数据。

呼叫中心中间件(mod_cti基于FreeSWITCH)-使用指南_第2张图片

sip客户端注册分机

这里下载 sip客户端,

正在上传…重新上传取消

如果显示注册成功说明分机配置正确了。如果出现注册超时408,就检测防火墙和云服务器的网络完全是否开放好了sip端口。

CCAdmin查看在线分机

CCAdmin的运维调试 SIP, internal的user点一下刷新,就可以显示已经注册的分机。

呼叫中心中间件(mod_cti基于FreeSWITCH)-使用指南_第3张图片

通话测试

sip的internal默认是使用internal这个路由,internal路由启用放音测试,sip软电话呼叫echo,进行回音测试。电话接通后如果听到提示音,提示音之后可以听到自己说话的声音,说明rtp端口和redis连接都没问题了。(生产环境的路由需要根据业务情况启用,路由要小心配置,防止电话给盗打,不需要的拨号方案不要启用)。

正在上传…重新上传取消

呼叫中心中间件(mod_cti基于FreeSWITCH)-使用指南_第4张图片

呼叫中心中间件(mod_cti基于FreeSWITCH)-使用指南_第5张图片

分机互打

再创建一个分机,sip客户端可以同时注册多个分机(同一个软件的2个分机互打),也可以再找个 

你可能感兴趣的:(机器人,中间件,java,开发语言)