一、项目背景:重新定义企业通信
在数字化转型浪潮中,呼叫中心系统已成为企业客户服务的关键枢纽。然而传统解决方案存在两大痛点:闭源系统的高昂成本与复杂协议的集成门槛。为此,我们推出开源项目 openCallHub,基于 Java 17 + Spring Boot 3 构建,集成了 FreeSWITCH、Kamailio 等通信组件,为企业提供灵活可定制的智能通信解决方案。
二、技术架构解析
1. 核心功能模块
模块 | 技术实现 | 业务场景 |
---|---|---|
SIP 通信层 | Kamailio 负载均衡 + FreeSWITCH 媒体处理 | 支持千级并发呼叫 |
IVR 语音导航 | XML 流程引擎 + MRCP 语音交互 | 自动话务分配、智能质检 |
外呼任务管理 | Quartz 定时调度 + 号码过滤算法 | 预测式外呼、客户满意度调查 |
实时坐席控制 | WebSocket + Redis 状态同步 | 强拆/监听/三方通话等高级功能 |
语音分析服务 | MRCP V2 + 阿里云/讯飞语音引擎 | 实时语音转文字、关键词识别 |
2. 关键技术栈
-
通信协议栈:SIP/RTP/WebRTC/MRCP V2
-
服务框架:Spring Boot 3.3.1 + Spring Security + MyBatis-Plus
-
高可用方案:Kamailio集群 + Redis哨兵 + MySQL主从
-
AI集成:语音识别(ASR)/语音合成(TTS)/自然语言处理(NLP)
三、快速部署指南
1. 开发环境搭建
#环境准备
安装JDK17、Redis、MySQL、Freeswitch、Kamailio
# 克隆项目
git clone https://github.com/iFindCallCenter/openCallHub.git
cd openCallHub
# 初始化数据库
mysql -u root -p < doc/system.sql
# 配置 application.yml(数据库、Redis、ESL 连接)
### 2. 启动服务
```
# 编译并运行
mvn clean install
java -jar och-api-0.0.1.jar
2. 生产环境拓扑
建议采用分布式部署:
-
信令层:Kamailio集群(TCP/UDP 5060)
-
媒体层:FreeSWITCH节点组(RTP 16384-32768)
-
应用层:Spring Boot微服务 + Nginx负载均衡
-
数据层:MySQL Galera集群 + Redis Cluster
四、特色功能演示
1. 智能IVR流程设计器
2. MRCP实现
六、应用场景案例
1. 电商客服中心
-
智能路由:根据客户画像分配专属坐席
-
订单查询:语音自助服务降低人工压力
-
投诉预警:实时语音情感分析
2. 政务热线
-
智能回访:自动外拨+满意度调查
-
多方会议:跨部门协同处理
-
话务质检:100%全量语音分析
七、未来演进路线
版本 | 重点功能 | 预计发布时间 |
---|---|---|
v1.0 | 基础呼叫功能+IVR | 2025 Q2 |
v2.0 | 智能质检+CRM集成 | 2025 Q3 |
v3.0 | 全渠道接入(微信/网页) | 2025 Q4 |
八、立即参与
三种方式加入生态:
-
代码贡献:提交PR优化核心模块
-
生态共建:开发插件/驱动适配
-
企业应用:在生产环境部署试用
九、项目地址