V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Dingo
V2EX  ›  程序员

如何搭建一个外呼系统,不使用网易七鱼这样的第三方。主要是不了解如何用电脑把电话拨出去

  •  
  •   Dingo · 2023-05-10 16:43:26 +08:00 · 3777 次点击
    这是一个创建于 590 天前的主题,其中的信息可能已经有所发展或是发生改变。

    主要是不了解如何用电脑把电话拨出去

    29 条回复    2023-05-12 13:49:16 +08:00
    ilovey482i
        1
    ilovey482i  
       2023-05-10 16:46:21 +08:00
    你要有相应的硬件,然后用 SDK 控制硬件拨号
    totoro52
        2
    totoro52  
       2023-05-10 16:55:47 +08:00
    你这种只能跟运营商买设备和端口,自己搭建的都是套运营商的 API ,全部都要跟运营商申请的,而且不是想申请就申请得到的。
    westoy
        3
    westoy  
       2023-05-10 16:56:49 +08:00   ❤️ 1
    你这个想法有点刑啊。 做外呼业务要电信增值业务方面的证, 而且分区域性和全网的。
    totoro52
        4
    totoro52  
       2023-05-10 16:58:00 +08:00
    @westoy 是的,而且特别麻烦特别难申请,动不动就封端口封线路
    Soo0
        5
    Soo0  
       2023-05-10 17:03:51 +08:00 via iPhone
    电信线路 问他信令方式 等参数,搞个中继网关和你的软件配合就可以了。别说呼出 直接呼出 Ai ,有人回答或者说话了你在人工介入都可以。就是非正规会被局停 拔线 让你去喝茶。
    Bantes
        6
    Bantes  
       2023-05-10 17:24:35 +08:00
    搭建 FreeSwitch 服务器做呼叫中心系统,线路服务商线路拉进来接语音网关设备,网关设备后台设置 SIP 服务器连接到呼叫中心系统。后面还有好多,配置网关、桥接、协议、设备在内网服务器在外网还要配穿透、内网话机、拨号路由等,现在基本上都是用第三方提供的服务了,自己搭建高频外呼的话线路还容易被封
    acbot
        7
    acbot  
       2023-05-10 17:26:21 +08:00
    要看外线的接入方式
    1. 如果外线是电话线,古老的方式就是在电脑上安装一个板卡(差不多就是以前电话线拨号上网的那个网卡)然后配合拨号软件就可以了,但是现在很少在新建方案中使用了;现在的方式就是将电话线接到语音网关上转换成 SIP 电话,电脑上安装一个通用 SIP 电话就可以了。
    2. 如果外线本身就是 IP 化的了(光改之后基本都是这种了只是运营商在用户侧的设备上又将 SIP 转换成了电话线),直接电脑上安装 SIP 电话软件就可以了

    具体你可以搜索一下 sip ims voip FXO/FXS 网关
    Dingo
        8
    Dingo  
    OP
       2023-05-10 17:31:18 +08:00
    @acbot 我看上面的评论说要相关的证,是需要的么?
    Dingo
        9
    Dingo  
    OP
       2023-05-10 17:33:10 +08:00
    @acbot 你说的第二种方式,我可以理解为 IP 电话么?
    lshero
        10
    lshero  
       2023-05-10 17:35:54 +08:00
    找一个复古的调制解调器就可以用电脑把电话打出去,如果想搞一个演示的话找远古时期的带语音功能的 3G 上网卡也可以搞外呼
    acbot
        11
    acbot  
       2023-05-10 17:57:23 +08:00
    @Dingo 对,实质就是语音 IP 化;要不要证主要是看你用来做什么和规模有多大等因素
    SelectLanguages
        12
    SelectLanguages  
       2023-05-10 18:14:08 +08:00
    今天做,明天测,后天用,大后天喝茶。
    hdp5252
        13
    hdp5252  
       2023-05-10 18:19:39 +08:00
    你还可以买个 SIP 协议的电话呼叫账号,配合 asterisk 就可以呼叫了
    evefree2
        14
    evefree2  
       2023-05-10 18:34:16 +08:00
    买落地,接 freeswitch/asterisk 就行
    YonyBlackie
        15
    YonyBlackie  
       2023-05-10 22:11:04 +08:00
    如果自己有外线,在公司内部需要有一套 PBX ,自己的电脑可以装软电话,在电脑上操作,从 PBX 出局,如果有居家办公的需求,可以在公司搭载一套 SBC ,员工居家也能使用公司外线让电话出局。
    opengps
        16
    opengps  
       2023-05-10 23:07:06 +08:00
    配合电话交换机,专门对接呼叫中心用的
    nuk
        17
    nuk  
       2023-05-11 00:16:16 +08:00
    如果申请一批号码段的 sip trunk 比较麻烦,但是申请一批号码,然后自己注册,或者做 fxo 来呼出就很简单,不要被投诉基本上没啥风险。
    512357301
        18
    512357301  
       2023-05-11 00:39:37 +08:00 via Android
    花钱对接第三方反倒是最简单的,他们有公有云,可以直接登录
    icegaze
        19
    icegaze  
       2023-05-11 00:48:04 +08:00 via Android
    我做过三年外呼中心,
    建议直接交给有资质的外呼中心最好…

    国家要求是有呼叫中心类的 SP 证书,
    这个要求你在通管局查一下,
    注册资本都要 1000 万以上的。
    然后,
    自己建一个 100-300 人的中心,
    设备成本 10 万,
    人员成本每月 3000xN ,
    房租每月 2-10 万,
    ……………

    不划算的。
    ccc825
        20
    ccc825  
       2023-05-11 00:50:34 +08:00
    VOIP ,国外的 skype 或者 google voice 。

    国内不太了解,不过之前任职的公司有这种需求,方案是买手机办卡,然后写了个简易的安卓 app + web 后台实现。
    icegaze
        21
    icegaze  
       2023-05-11 00:54:09 +08:00 via Android
    系统软件硬件反而是最简单的:

    普通电话线,或者 ISDN ,或者 E1 线路,或者 IMS 专线,,,根据你的呼叫设备而定,越后面的越贵。系统到座席一般都是 tcp 的 SIP 电话,用电脑当作电话也可以,反正座席也要用电脑工作。

    然后软件,中间件,主要是管理话务流程,加载 CRM 系统,甚至知识库系统等等

    然后后台要有录音,可按号码以及时间以及座席工号进行检索,,,要能保存 180 天以上。
    DonaldY
        22
    DonaldY  
       2023-05-11 01:24:13 +08:00
    @Bantes 想问下,webrtc 方式呢?如何交互呢?线路商如何接入?
    ccadb
        23
    ccadb  
       2023-05-11 09:18:25 +08:00
    公司内部使用,没有任何问题。我们单位是我实施的,买了套星纵科技(就是原来的朗视)的 IPPBX ,把电信放到我们单位的 ONU 破解了,把里面的固化账号导出来,然后把 ONU 注册固化取消,接入 IPPBX 注册,然后将号码分配给下面的分机。我们是 30 个固化号码,内部使用快半年了,毫无问题。
    ccadb
        24
    ccadb  
       2023-05-11 09:18:43 +08:00
    @ccadb 固话
    doveyoung
        25
    doveyoung  
       2023-05-11 11:16:22 +08:00
    服务端硬件:语音网关和运营商的线路和软件的服务器
    服务端软件:freeswitch
    客户端硬件:电脑或 IP 话机或手机
    客户端软件:关键词 SIP

    服务端方面,服务器和软件可以替换掉,好像华为的交换机有这个功能,我看相关的文档有点难啃,现在用的系统是找服务商做的。等有兴趣的时候再研究
    Bantes
        26
    Bantes  
       2023-05-11 13:06:19 +08:00
    @DonaldY 接入模式还是一样,freeswitch 服务端安装 webrtc 相关模块和配置好 stun/turn 服务器,webrtc 客户端连接到 freeswitch 服务器就好了,记得 fs 官方有 webrtc 的案例
    markgor
        27
    markgor  
       2023-05-11 14:43:29 +08:00
    办理专线的话需要许可证。
    只弄过 E1/T1/SIP Trunk/模拟线 这几种,不知道你问的是哪种。
    >用电脑把电话拨出去
    要通过介质传递。这问题就像用电脑如何连上广域网一样。可以是光纤也可以通过同轴也可以通过铜线.....
    E1/T1 是线路,上面还要跑协议,具体什么协议要问运营商,不过好像现在都是跑 ss7 了
    SIP 的话就类似网络电话,通过网络走,但要对端支持。
    模拟线路就是普通的电话线,有 fsk 和 dtmf 制式区别。
    太久没碰我也忘记的 7788 了,大概是 E1 先通道数比较多,T1 通道数比较少,两者都是一个 DChannel 做控制,其余 BChannel 做通话,好处是稳定,且支持通道相对多,如果电脑接的话需要购买板卡。
    Sip 的话就简单很多,只要保证网络稳定即可,不需要额外购买设备,直接配置好去对方服务器认证成功就行了,现在电信的光猫就是带这个功能,走 SIP 去认证,再输出模拟线。

    模拟线路,就平时普通的 2 芯电话线,如果电脑接入的话要购买板卡,坏处是线路状态靠声音检测而非数字传输,从而导致有时不准确,需要一直调整,另外一条线只支持一个通道。

    之前我们用的哈里斯,然后改 asterisk ,但太久的事了,基本都忘记了。
    asterisk 的话有提供 api 接口,可以理解为有 cli ,程序 telnet 过去然后丢命令即可。
    里面会涉及到通道变量等的信息。
    当时我们自己搞,实现 自动拨号,动态队列,动态 sip 账号,sip 分机状态,录音,监听,通道插入,和简单的知识库还有弹屏功能。
    sip 分机状态:Out (离线)、Wrap (挂机)、Ready (空闲)、Busy(通话中)

    外呼:上传一堆号码,配置同时拨号数量,asterisk 就会对这些号码进行拨号,拨通后就会丢到 queue 里面,播放着音乐,等待话务员 ready 接听。
    当 sip 分机状态为 Ready 时,asterisk 会自动把 queue 里的等待线路转移到分机上,此时就能开始对话了。同时程序也能通过 sip 分机号查询到入线信息,从而进行弹屏。
    这个是外呼功能,现在如果你接到推销的电话,接听后一会才有人说话的,基本就是走这个模式。

    呼入:配置了队列,入线后会一层层往下掉,比如队列 1 等待 30 秒 会去队列 2 ,队列 2 等待 60 秒会去队列 9.
    然后其实大致和外呼流程一样,业务 ready 就进线,至于为何一个个队列跳,是因为有些是专项项目,会配有专人接听,但人数不多,为了保证接听成功率,所以会一级级向下跳,对了前面忘记说了,话务员登入的时候是需要选择队列登入的。

    录音:监听 asterisk 的 bridge 状态,接通( agent 和客户)的时候,传递录音命令给 asterisk 。

    监听:通道插入:
    其实就是丢个 asterisk 的命令过去,传递监听或插入的分机号,和目标通道。

    IVR:
    静态的,写死,每次变动都要 reload ;
    动态的,丢去 api 网关,由 api 返回结果执行。
    大致上就是这样了,上述都是应用上的功能,实际之前最头疼的是信令,asterisk 自带的 ss7 和中国 ss7 有出入,后来还是找了 openVox 的人帮忙重新修改编译 asterisk 才解决。

    性能:
    当时项目不大,agent 数量大概 100 个左右,3 条 T1 ,1 条 E1. asterisk 硬件配置是普通的双路 L5630/32G D3 ,语音信令主要走 G729->ulaw->alaw->gsm 。
    echo cancel 是走软件算法,有时候会因此导致出现通话质量不佳的情况,但几率小。
    DonaldY
        28
    DonaldY  
       2023-05-11 21:26:39 +08:00
    @Bantes 感谢回复。
    想问下,如果要录音等功能,是不是要有中间件( webrtc 服务器)。流程是这样:客户端( webrtc ) -> webrtc 服务器 -> fs ?
    Bantes
        29
    Bantes  
       2023-05-12 13:49:16 +08:00
    @DonaldY fs 自带录音功能的,默认关闭的,配置里打开就可以了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2746 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 14:08 · PVG 22:08 · LAX 06:08 · JFK 09:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.