这个项目能做什么

AI Native Call Center 是一个开源联络中心平台,AI 在其中是默认的应答者,而非附加功能。呼入电话到达 FreeSWITCH 后,由应用自身终结的 speech-to-speech 语音模型进行应答;在提供商支持的情况下,G.711 音频按字节原样透传。流程引擎引导对话经历各个阶段并调用工具,判断何时需要人工坐席;转接时将来电者路由到 mod_callcenter 队列并附带完整上下文,因此坐席界面会在电话响起之前自动弹出。 整个系统以单个 Go 二进制文件交付,其中包含 REST API、服务器推送事件(SSE)流以及嵌入式 React Web 界面,底层由 PostgreSQL 和 FreeSWITCH 支撑。FreeSWITCH 通过 Lua 从数据库读取其 directory(用户目录)、dialplan(拨号计划)和队列,因此新增分机、队列或号码只需修改数据库,而无需编辑配置文件。每一路在线通话都被建模为一个 actor,由单个 goroutine 作为其唯一的变更者,从而消除了共享状态锁。 核心能力包括:界面与机器人全面支持中英双语;每次部署在启动时选定单一提供商(中国大陆使用 Qwen,其他地区使用 OpenAI);人设、规则与机器人语音版本化并一同发布;内置工具能够以对话式应答而非报错的方式优雅拒绝(例如队列已关闭);每段对话拥有统一的通话记录,包含一份 CDR、转写文本和录音,无论由机器人、队列还是坐席处理;录音可存储到文件系统或任何兼容 S3 的存储;坐席桌面具备在线状态、软电话栏和回呼功能;主管墙板提供实时队列视图与坐席名单。 HTTP API 采用规范优先(spec-first)方式,以 docs/openapi.json 作为唯一事实来源,同时生成 Go 服务端和 TypeScript 客户端。项目附带种子数据(一个团队、两个队列、六个双语流程、十八部模拟客户电话以及一周的历史记录),因此部署后墙板即有数据展示,软电话可以立即呼叫机器人。扩展点涵盖:以 profile 形式接入新的语音提供商、以经过校验的 JSON 文档定义新流程、遵循绑定设计系统新增界面,以及将外部集成作为流程后端 URL 背后的服务。该项目明确排除在进程内部实现任何 ASR+LLM+TTS 级联流水线,将这种组合保留给独立服务。采用 Apache-2.0 许可证。