FreeSWITCH二次开发-CTI接口

顶顶通呼叫中心中间件和语音识别等技术介绍

  • 博客(69)
  • 收藏
  • 关注

原创 关于我

鼎鼎就职于顶顶通软件。专门从事呼叫中心软件开发,这个博客主要,介绍FreeSWITCH的一些知识以及开发的模块和软件。如果你对我发表的博文敢兴趣可以通过一下方式联系到我。联系方式微信:cdevelopQQ:1280791187网站:www.ddrj.comFreeSWITCH和呼叫中心相关的技术交流群 :21596142下面介绍一下我从事呼叫中心开发的一下经历。大约2005年,找到了第一份程序员的工作,公司接了一个IVR导航系统的外包项目使用三汇语音卡进行开发的,..

2021-05-21 16:30:11 1392 1

原创 顶顶通专用版本FreeSWITCH安装说明

执行命令 freeswitch 如果正确启动,就说明安装没问题了,关闭freeswitch命令是在启动的程序界面输入shutdown,注意不是bash执行。先在有网络的电脑下载fs.tar.gz和install.sh。​把这2个文件上传到目标服务器同一个目录。执行这个命令自动下载和安装。

2024-08-16 11:50:14 217

原创 顶顶通手机助手拦截方案

在呼叫中心职场,外呼的流程一般是,先用外呼系统打通电话,然后播放一个前置广告语音,语音播放完成后,再转接给坐席。如果不把手机助手接通的电话拦截了,那么会导致人工坐席接到的大量是手机助手接通的电话。现在很多品牌的手机,都自带语音助手,比如我用的是小米手机,就自带小爱助手,可以自动接听各种广告营销电话。现在自动外呼系统拨打出去的电话,号码很容易给标注为广告营销,大部分的通话都是手机助手应答的。外呼电话中,大约有5%-10%是单通无声的,顶顶通语音助手拦截方案,可以把无声电话自动挂了,解决坐席接到很多无声电话。

2024-08-08 21:33:20 144

原创 顶顶通语音信箱手机助手拦截方案

在电话自动外呼系统,常见的问题是被叫号码开通了语音信箱,或者运营商自动给开通了小秘书服务,一旦电话打不通,就会先播放一个类似这样的提示音,你拨打的电话已经开启了来电小秘书,请在滴声后留言。还有一个问题就是去电号码给标注成广告营销,手机的语音助手功能给自动应答,播放一个类似这样提示音,你好我是机主的小秘书,请问你找机主有什么事。总体可以分成2类。

2024-07-02 11:26:35 395

原创 顶顶通电话黑名单系统介绍

3 拦截条件 可根据Ip,主叫,被叫 设置拦截规则。5 可以和质检系统集成,质检风险通话自动加入黑名单。2 支持外部黑名单,并自动加入本地黑名单。4 拦截规则,支持高频拦截,靓号拦截。1 可批量导入黑名单,白名单。

2024-04-29 16:55:47 216

原创 手机靓号正则表达式

0)){4}\d (倒序)88|99结尾 : 被叫号码中最后两位的数字是88或者99。AAA(3A) : 被叫号码中出现同一个数字连续出现三次的。AAAA(4A) : 被叫号码中出现同一个数字连续出现四次的。AAAAA(5A) : 被叫号码中出现同一个数字连续出现五次的。AAAAAA(6A) : 被叫号码中出现同一个数字连续出现六次的。如果不过滤重复数字可以直接用 (\d{2})\1。如果不过滤重复数字可以直接用 (\d{3})\1。如果不过滤重复数字可以直接用 (\d{4})\1。

2024-04-09 12:58:49 686

原创 顶顶通呼叫中心中间件如果实现座席签入、签出、小休功能

动态线路支持:线路名字设置为前缀set:集合名,就会通过redis的set中获取线路集合,方便动态修改线路组成员,线路成员集合修改后,需要执行配置改变通知,cti模块才会重新加载线路组成员。只需要把坐席线路动态加入排队关联的坐席线路组就可以实现签入 签出 排队的功能。小休 就是座席暂停接电话,只需要把坐席线路的并发设置成0,就可以实现小休功能。签入 签出 一般是指签入到某个排队。

2024-03-21 14:26:28 223

原创 顶顶通呼叫中心中间件(基于FreeSWITCH)对接mrcp asr 和 tts配置

顶顶通呼叫中心中间件通过asrproxy程序对接各种asr和tts,本文主要讲解 asrproxy程序 对接 mrcp v1 和 mrcp v2的配置。

2024-03-05 11:06:42 991

原创 新一代电话机器人开源PHP源代码

使用easyswoole 框架开发的 新一代电话机器人开源PHP源码。包含 AI外呼管理,话术管理,CRM管理,坐席管理等功能。包含 线路管理,代理商管理等功能。

2024-03-02 22:10:34 1975

原创 ccadmin - 可免费试用的 FreeSWITCH web管理后台

顶顶通呼叫中心中间件Web后台管理系统简称CCAdmin-Web,用于管理和配置顶顶通呼叫中心中间件。因为顶顶通呼叫中心中间件是基于FreeSWITCH开发的,所以CCAdmin本质上也是一个FreeSWITCH管理后台,CCAdmin有windows版本,macos版本,和Web版本。本文主要介绍CCAdmin-Web版本。

2024-03-01 18:57:45 922

原创 freeswitch sofia user(分机)掉线检测相关的配置

整理不易转载请注明来源于顶顶通博客。

2024-01-06 10:54:22 876

原创 FreeSWITCH 拨打带分机号的电话之实现原理(即真人接听检测))

大部分手机也支持直接拨号 “虚拟号,分机号”,免去了手动输入分机号的麻烦,android的实现原理也是接通后延时1秒发送按键(DTMF)实现的。真人接通前可能出现的 声音是彩铃,回铃音, 呼叫失败的各种提示音,只要不符合以上特征就可以认为是真人接听了。为了解决隐私号不够用的问题,平台给一个虚拟号分配了4位的分机号,1个虚拟号就可以对应9999个真实的手机号了。2、平台转接真实的被叫后,真实的被叫拒接、无法接通、关机等情况,比如提示音”你拨打的电话正忙请稍后再拨”呼叫有分机号的虚拟号(隐私号)

2023-12-24 14:34:11 2221

原创 预测式外呼如何解决播放开场白和转接人工无缝连接

顶顶通呼叫中心中间件,有一个播放背景音的功能,可以手机接通后,把开场白当背景音播放,然后进入排队,排队不用配置等待音乐,直接把开场白当等待音乐,坐席接通后,开场白如果还没播放完成,坐席和手机,都可以听到这个开场白,坐席可以通过按键终止播放开场白,直接和人工对话,这样就可以开场白和坐席说话无缝连接了。顶顶通呼叫中心中间件,可以让坐席预先录音,通话过程人工说话和播放录音可以随时切换,播放录音过程,手机和坐席都可以听到对方的声音和播放的录音的声音,可以快速无缝切换。

2023-12-22 23:58:53 668

原创 FreeSWITCH回铃音补偿

回铃音就是拨打电话时,电话接通之前听到的嘟嘟的声音,如果拨打了开通了彩铃的手机,听到的是音乐声,彩铃也是一种回铃音,5G时代,又有了视频彩铃这样更新的回铃音方式了。

2023-12-21 00:00:44 1475 1

原创 顶顶通电话实时质介绍

顶顶通电话实时质检系统包含了顶顶通语音识别系统,使用的是开源语音识别模型,如果对语音识别要求不是特别高,就不需要购买第三方语音识别了。如果对语音识别准确率要求比较高,也可以购买第三方语音识别,比如阿里云,科大讯飞等厂家的在线语音识别。以2000并发,接通率10%,200并发接通为例,建议配置是 2台 服务器,CPU40核心起双路2个CPU(比如志强金牌6133),内存16-24G,硬盘500G。可以购买二手服务器比较便宜。外呼系统 -> vos -> 质检系统 -> vos -> 落地。

2023-11-29 19:07:26 858 1

原创 funasr适配windows之大坑静态库中的静态实例不初始化

昨天晚上funasr团队的大佬反馈windows下 funasr-wss-server 加载lm模型失败,今天一大早,我就开始研究为啥加载失败,先linux测试一下了一下,发现也是加载lm模型失败,我回退到适配 windows之前的版本测试,是正常加载的,唯一的修改就是把openfst由动态库改成了静态库,我改回编译动态库,加载正常。通过跟踪代码发现静态库的时候vector没有FstRegister,为啥没注册呢,又在哪里注册的呢,通过跟踪动态库的调用堆栈,发现是初始化的时候注册的。

2023-11-15 19:27:34 298

原创 FreeSWITCH 卡通道(通道死锁)完美解决

根据之前的分析,多个线程操作一个通道就有出现死锁的概率,因为fs的switch_core_session_read_frame和switch_core_session_write_frame的实现存在死锁的可能。就是把 switch_core_session_read_frame和switch_core_session_write_frame里面同步消息改成异步消息switch_core_session_queue_message。每天晚上呼叫结束,通过 status 命令,都可以看到几个无法释放的通道。

2023-11-12 17:03:31 926

原创 通过顶顶通呼叫中心中间件玩转FreeSWITCH媒体流

cti_unicast 通过media_bug挂了2个回调SMBF_READ_STREAM和SMBF_WRITE_REPLACE,其中 SMBF_READ_STREAM,用来把媒体流推送到远端UDP端口,SMBF_READ_STREAM用来把远端发送来的声音混音到fs的放音。很多人需要直接获取原始的声音流,然后自己处理,其实FreeSWITCH也是支持的,只是知道的极少,FreeSWITCH原生支持 unicast 通过udp 把声音流推送到一个UDP端口,和播放网络的声音流。用户说话停止自动停止推流。

2023-11-12 16:06:22 1945

原创 顶顶通语音识别使用说明

顶顶通语音识别(语音识别 一句话识别 实时流识别 funasr Whisper)

2023-11-11 09:07:08 1380

原创 呼叫中心系统如何对接大模型

自chatgpt3.5发布以来,各种大模型飞速发展,各行各业都有接入大模型的需求,呼叫中心行业非常适合通过接入大模型用AI来回答用户的各种咨询,降低人力资源,使用顶顶通呼叫中心中间件,只需要100行不到的代码,就可以非常简单容易的让电话机器人系统,呼叫中心系统快速接入各种大模型。

2023-11-11 08:14:26 821

原创 顶顶通呼叫中心中间件,支持坐席长签了

顶顶通呼叫中心中间件,支持长签了,长签就是坐席呼叫一个特别号码,接通后不挂机,一直等待接电话,没电话呼入的时候,听背景音乐。一般用自动应答来实现呼入免操作直接接通,但是有的客户习惯长签模式,顶顶通呼叫中心中间件长签后,不光支持排队分配的电话直接接听,其他电话也一样可以呼入,做到了长签,却不占线。

2023-10-22 15:52:32 284

原创 顶顶通ASR安装配置说明

下载语音识别模型 链接:https://pan.baidu.com/s/1IuDkDeytZOqf7tAbIb6h1Q 提取码:6vg6。安装asrproxy到/ddt/asrproxy,模型解压到 /ddt/asrproxy/model。联系顶顶通申请Asrproxy授权,勾选asrserver模块。

2023-10-11 15:41:31 943

原创 顶顶通电话机器人接口对接开源ASR(语音识别)

目前大部分用户使用的都是在线ASR按照分钟或者按次付费,之前开源ASR效果太差不具备商用的条件,随着 阿里达摩院发布了大量开源数据集或者海量工业数据训练的模型,识别效果已经和商用ASR差距非常小,完全具备了很多场景代替商用ASR的能力。顶顶通也全系列产品进行了是适配,基于开源的ASR和模型发布了顶顶通语音识别系统。费用低,本地部署,不需要按调用次数或者按时间付费。也节约了流量费。

2023-10-08 13:35:58 1774

原创 freeswitch 多线程简单分析(通道死锁)

如果媒体没初始化,就通过消息 SWITCH_MESSAGE_INDICATE_TRANSCODING_NECESSARY 去执行初始化媒体的代码,上一篇说了,可以再switch_core_session_receive_message之前先解锁session->codec_read_mutex,就可以避免这次死锁,可是switch_core_media_read_frame里面有大量的 switch_core_session_receive_message调用,如果多线程操作一个通道,都有出现死锁的概率。

2023-08-05 10:09:33 862

原创 freeswitch 1.10.10-dev录音早期媒体卡通道的bug分析

最后卡在switch_core_media_set_codec函数里面的switch_core_session_lock_codec_write(session)步骤。Thread 2 (Thread 0x7f9d2f76b700 (LWP 30595)): 的调用堆栈 函数 switch_core_session_read_frame 里面调用了switch_core_session_perform_receive_message,我查看了一下这个提交说明。接下来就是分析代码找出死锁原因了。

2023-08-03 23:29:40 1659

原创 FreeSWITCH之分机单点登录和限制分机并发

经常有用户问我,可以限制分机只能一个终端登录吗?我说不可以,只要用户名密码正确都可以登录的,你业务的需求是什么,用户说,我想一个分机只能一个并发。我说这个是可以的,拨号方案配置一下就可以了。详细请看 https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Modules/mod_expr_6587353。下面就讲解一下 顶顶通cti模块 怎么配置限制一个分机只能一个并发。

2023-07-04 08:37:48 646

原创 FreeSWITCH libsofia websocket (wss) js.sip sipjs突然全部掉线注册不上的BUG

FreeSWITCH libsofia websocket (wss) js.sip sipjs突然全部掉线注册不上的BUG 最近1年经常有人和我说这个问题,我说你用更老版本的libsofia库就好了,1年过去了,FreeSWITCH官方还没解决这个BUG,我只好自己动手了,经过一上午和一中午的分析和测试,成功定位问题并且解决,如果您也遇到这个问题,可以联系我付费获取修复bug的libsofia库。

2023-06-27 13:51:21 464

原创 FreeSWITCH常见bug记录

跟踪FreeSWITCH代码,发现是 switch_xml.c 的函数preprocess,解析xml有问题,为了让mod_cti.so能兼容有bug版本的fs,就不修复这个bug,生成XML的时候保证cmd在data前面就可以了。今天遇到一个FreeSWITCH xml 解析bug ,因为使用的qt的xml库,属性名是用的是QMultiHash。保存,顺序是随机的,有时候生成的vars cmd和data的顺序是这样子。,发现竟然不生效,必须。2023年6月25日。

2023-06-25 19:47:23 322

原创 电话机器人开发

电话机器人,也有人叫语音对话机器人,外呼机器人等,主要是通过ASR(语音识别)和TTS(文本转语音)模拟真人和用户通话,可用于问卷调查,自动催缴,外呼营销等业务,支持百度,科大,阿里云等ASR系统,可以真人预先录音,用户完全察觉不到是机器人。电话机器人和文本对话机器人的区别是,文本机器人是文字对话,电话机器人是语音对话。最近很火的chatgpt就是文本对话机器人。

2023-04-12 10:32:22 1587

原创 顶顶通呼叫中心中间件(mod_cti基于FreeSWITCH)-语音识别(asr)接口

APP例子:APIasrproxy_addr asrproxy程序IIP和端口vad_modevad_min_active_time_ms 说话时间大于这个值才开始提交ASRvad_max_end_silence_time_ms 静音时间大于这个值认为说话停止vad_level vad检测灵敏度 0-3,值越大越迟钝,建议3vad_filter 噪音过滤等级0-1.0,建议0.2,值越大过滤范围越大,会导致小的声音给过滤。0.8启用神经网络的噪音过滤。

2023-04-08 08:15:39 5333

原创 FreeSWITCH信号音检测(忙音检测,呼叫进度检测)

FreeSWTICH有2种信号音检测方法一种,还有一个是,我们先介绍第一种。如果需要可以识别出 彩铃,空号,关机,停机,彩铃,通话中,语音信箱,语音留言,等可以使用顶顶通开发的FreeSWITCH mod_da2模块,详细请看。

2023-04-05 12:02:40 899

原创 smartivr 5.0 接口说明 (智能电话机器人话术开发接口)

FreeSWITCH 电话机器人 smartivr 接口文档

2023-04-04 22:37:12 633

原创 FreeSWITCH 空号识别 (mod_da2使用说明)

mod_da2是顶顶通开发的一个FreeSWITCH的定制模块,用来对接顶顶通回铃音检测服务(别称 空号检测),在呼叫前设置通道变量,就可以在呼叫的时候启动空号识别。

2023-04-04 22:29:37 1584

原创 顶顶通呼叫中心中间件(mod_cti基于FreeSWITCH)

顶顶通呼叫中心中间件包含IPPBX、自动外呼、质检、ACD、呼叫路由等呼叫中心功能,也包含电话机器人开发接口(ASR【对接了华为云,腾讯云,科大讯飞,阿里云,捷通华声等,mrcp等语音识别接口】,TTS【支持外呼时预先文字转换成声音和mrcp实时TTS】,VAD【集成噪音人声识别引擎】),话术引擎等ai机器人功能。所有数据都存储redis【话单可以存储到数据库】,支持群集,超大并发,可用于开发呼叫中心系统,智能外呼机器人系统,机器人客服系统。

2023-04-02 09:38:10 708

原创 顶顶通呼叫中心中间件(mod_cti基于FreeSWITCH)-http cli 接口

http cli的原理是cti模块实现了一个http server 接收http get请求,执行FreeSWITCH命令后把执行结果返回给http client,常用的使用场景包含http接口实现挂断指定的通话,http接口实现点击拨号(先呼叫坐席电话,座席接听后再呼叫客户电话),以及监听,强插,转接电话等功能。

2023-04-02 09:34:46 571

原创 顶顶通呼叫中心中间件(mod_cti基于FreeSWITCH)-常见问题

本文档以faq的方式解答常见问题,如果你的配置和本文档描述的有点不一样是正常的,本文档以ccadmin1.09导入的默认配置讲解的。

2023-04-02 09:32:41 508

原创 顶顶通新一代FreeSWITCH电话机器人开发接口

顶顶通新一代FreeSWITCH智能客服接口,包含脚本解析引擎和话术编辑器2部分,支持语音话术编辑器生成标准json。

2023-04-02 09:30:40 530

原创 FreeSWITCH 1.10.9 顶顶通专用版发布了

经常有用户反馈FreeSWITCH 高并发下,10天半个月的就会崩溃一次,我让用户开coredump,看了一下崩溃时的调用堆栈,不是我程序的问题,FS的bug导致的,也只是偶发现象,我就懒得分析了。我经过2小时的仔细分析,发现了这个影响很大,存在很久的bug,为了让购买了smartivr 正版授权的用户 ,方便升级,特意花费2天时间打包一个编译好的 fs 1.10.9 程序包。下载的程序包的bin目录和lib目录mod目录替换到 /usr/local/freeswitch ,然后重启fs就可以了。

2023-03-14 18:37:24 1031

原创 FreeSWITCH 电话机器人 VAD 打断 ASR集成 全功能开源代码

FreeSWITCH 电话机器人 VAD 打断 ASR集成 全功能开源例子

2023-02-28 23:51:19 2451

原创 顶顶通VAD(支持噪音人声识别)二次开发接口发布拉

VAD语音活动检测(Voice Activity Detection,VAD)算法的难点是分析噪音还是人声,顶顶通公司经过1年的努力,基于20G的噪音声音文件和100G的正常人声的声音文件,使用tdnn(时延神经网络)和 lstm(长短期记忆网络)训练出噪音人声音判别模型。现在发布二次开发供大家测试。和FreeSWITCH集成的开源例子 再这里。

2023-02-27 12:17:17 465

开源语音识别 funasr windows版本二进制包

开源语音识别 funasr windows版本二进制包,如果提示无法运行可以试试先安装 VC_redist.x64(2022).exe vc运行时库。

2023-11-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除