Voice Call (Twilio)

Voice Call (Twilio)

🚀 语音呼叫 MCP 服务器

这是一个借助 Twilio 和 OpenAI 构建的实时语音通话服务器项目。它支持多语言通话,可处理复杂的电话业务逻辑,还能提供详细的通话记录与分析,为电话业务提供了强大的支持。

🚀 快速开始

安装要求

系统要求

  • 操作系统:推荐使用 Linux,也支持 macOS
  • 内存:至少 4GB
  • CPU:双核及以上

依赖项

  1. Node.js (>=16.0)
  2. PostgreSQL 或其他支持的数据库
  3. Twilio 账户
  4. OpenAI API 密钥

安装指南

# 克隆仓库
git clone https://github.com/your-repo.git
cd your-repo

# 安装依赖
npm install

# 配置环境变量
export TWILIO_ACCOUNT_SID=your_sid
export TWILIO_AUTH_TOKEN=your_token
export OPENAI_API_KEY=your_key

配置指南

环境变量配置

在项目根目录下创建 .env 文件,添加以下内容:

TWILIO_ACCOUNT_SID=your_account SID
TWILIO_AUTH_TOKEN=your_auth token
OPENAI_API_KEY=your_openai key
DB_URI=postgresql://localhost:5432/voip_calls

业务逻辑配置

编辑 config/businessLogic.js 文件,添加自定义的通话规则:

module.exports = {
languageSupport: ['zh-CN', 'en-US', 'de-DE'],
fallbackLanguage: 'zh-CN',
callTimeout: 30000 // 30秒超时
};

✨ 主要特性

  • 多语言支持:支持多种语言的实时语音识别和生成。
  • 智能路由:根据规则自动将呼叫路由到不同处理节点。
  • 录音功能:保存所有通话的录音文件。
  • 数据分析:提供通话时长、用户意图等详细分析报告。

📦 安装指南

上文已详细介绍安装要求、安装步骤和配置方法,此处不再赘述。

💻 使用示例

基础用法

// 客服逻辑配置
const { createVoiceCall } = require('voip-service');

createVoiceCall({
fromNumber: '1234567890',
toNumber: '0987654321',
language: 'zh-CN',
callbackUrl: 'http://localhost:3000/api/call-back'
}).then(call => {
console.log('Call created:', call.sid);
});

📚 详细文档

序列图

呼叫流程

  1. 用户发起呼叫:通过 Twilio 发起语音呼叫。
  2. AI 接听:OpenAI 的实时语音模型开始处理通话内容。
  3. 智能交互:AI 根据预设的业务逻辑与用户进行对话。
  4. 记录存档:所有通话内容自动存储到本地数据库。

为什么选择 MCP

  • 高性能:基于 Twilio 的可靠通信平台和 OpenAI 的强大 AI 能力。
  • 易扩展:支持快速添加新的语言和业务逻辑。
  • 高可用性:内置容错机制,确保服务稳定运行。

注意事项

  1. 电话号码格式:所有号码必须使用 E.164 标准(例如 +1234567890)。
  2. 速率限制:注意 Twilio 和 OpenAI 账户的速率限制和计费情况。
  3. 语音对话:AI 实时处理自然对话。
  4. 通话时长:控制通话时长以节省费用。
  5. 公网暴露:ngrok 隧道随机 URL 公开暴露,需注意安全。

故障排除

常见问题

  1. “电话号码必须是 E.164 格式”

    • 确保号码以“+”开头并包含国家代码。
  2. “无效凭证”

    • 检查 TWILIO_ACCOUNT_SIDTWILIO_AUTH_TOKEN 是否正确。
  3. “OpenAI API 错误”

    • 验证 OPENAI_API_KEY 是否有效且有足够的额度。
  4. “ngrok 隧道启动失败”

    • 确保 NGROK_AUTHTOKEN 有效且未过期。

贡献指南

欢迎贡献!以下是待改进的领域:

  • 支持更多 AI 模型
  • 增加数据库集成以存储对话历史
  • 提高延迟和响应时间以提升通话体验
  • 加强错误处理和恢复机制
  • 添加更多预设对话模板

📄 许可证

项目采用 MIT 许可证,详情请参阅 LICENSE 文件。


如需更多信息,请访问我们的 文档页面 或加入 开发者社区

  • 0 关注
  • 0 收藏,27 浏览
  • system 提出于 2025-10-03 14:42

相似服务问题

相关AI产品