Back to articles
Technology Insight

Tự Dựng Tổng Đài AI Đàm Thoại Tự Động (AI Voice Agent) Bằng Retell AI và Kamailio Trên VPS

May 29, 2026

Giới thiệu về xu hướng AI Voice Agent và giải pháp tự lưu trữ (Self-hosted)

Trong kỷ nguyên số hóa hiện nay, việc tự động hóa chăm sóc khách hàng bằng giọng nói không còn xa lạ. Tuy nhiên, thay vì sử dụng các hệ thống IVR (Interactive Voice Response) ấn phím truyền thống, các doanh nghiệp đang chuyển dịch mạnh mẽ sang AI Voice Agent (Trợ lý ảo đàm thoại tự động). Đây là những hệ thống có khả năng nghe, hiểu và phản hồi bằng ngôn ngữ tự nhiên với độ trễ cực thấp (dưới 1 giây), mang lại trải nghiệm như đang nói chuyện với người thật.

Để xây dựng một tổng đài AI chuyên nghiệp, việc kết hợp giữa một nền tảng xử lý trí tuệ nhân tạo xuất sắc và một hạ tầng định tuyến viễn thông mạnh mẽ là chìa khóa thành công. Bài viết này sẽ hướng dẫn bạn cách tự dựng một tổng đài AI Voice Agent hoàn chỉnh bằng cách kết hợp Retell AI (nền tảng tối ưu hóa LLM và xử lý giọng nói thời gian thực) và Kamailio (SIP Proxy mã nguồn mở có hiệu năng cao nhất hiện nay) trên một máy chủ VPS riêng biệt.

---

Tại sao lại chọn sự kết hợp giữa Retell AI và Kamailio?

Khi triển khai tổng đài AI ở quy mô doanh nghiệp, việc phụ thuộc hoàn toàn vào các nhà cung cấp tổng đài đám mây (Cloud PBX) bên thứ ba có thể làm tăng chi phí vận hành đáng kể và hạn chế khả năng tùy biến luồng cuộc gọi. Việc tự dựng SIP Proxy riêng mang lại nhiều lợi thế vượt trội:

  • Retell AI: Nổi tiếng với công nghệ xử lý độ trễ đàm thoại cực thấp, hỗ trợ kết nối trực tiếp qua giao thức WebRTC hoặc SIP Trunking. Retell AI quản lý toàn bộ quá trình STT (Speech-to-Text), LLM Orchestration và TTS (Text-to-Speech) để tạo ra phản hồi thông minh.
  • Kamailio trên VPS: Đóng vai trò là một SIP Router/Proxy hạng nặng. Nó có khả năng xử lý hàng chục ngàn cuộc gọi đồng thời (high concurrency) mà tốn rất ít tài nguyên phần cứng. Kamailio chịu trách nhiệm định tuyến cuộc gọi từ nhà mạng Telco Việt Nam (giao thức SIP) đến Retell AI và ngược lại.
  • Tối ưu chi phí và bảo mật: Doanh nghiệp chỉ trả chi phí xử lý AI theo phút cho Retell AI và tiền cước viễn thông gốc cho nhà mạng, loại bỏ chi phí trung gian. Đồng thời, mọi dữ liệu báo hiệu cuộc gọi (SIP Signaling) đều đi qua VPS do bạn kiểm soát.
---

Kiến trúc tổng thể hệ thống tổng đài AI Voice Agent

Trước khi bắt tay vào cấu hình, chúng ta cần hiểu rõ luồng đi của một cuộc gọi trong hệ thống tự dựng này:

  1. Khách hàng gọi đến: Cuộc gọi xuất phát từ điện thoại di động của khách hàng đi qua mạng viễn thông (PSTN) đến nhà mạng (Telco) mà bạn đăng ký số Hotline (ví dụ: Viettel, VNPT, FPT, CMC).
  2. Định tuyến qua Kamailio: Đầu số Hotline được cấu hình đổ SIP Trunk về địa chỉ IP Public của VPS cài đặt Kamailio. Kamailio tiếp nhận cuộc gọi, thực hiện kiểm tra bảo mật (IP Whitelisting, Rate Limiting) và định tuyến lại (Forward) cuộc gọi này sang định dạng mà Retell AI yêu cầu.
  3. Xử lý tại Retell AI: Cuộc gọi được thiết lập với Retell AI qua Elastic SIP Trunking. Retell AI sẽ kích hoạt Agent AI được chỉ định, thực hiện cuộc hội thoại thời gian thực với khách hàng bằng giọng nói nhân tạo.
---

Hướng dẫn các bước triển khai chi tiết

Bước 1: Chuẩn bị hạ tầng VPS và cài đặt Kamailio

Bạn cần một VPS chạy hệ điều hành Ubuntu Server (khuyến nghị bản 22.04 LTS hoặc 24.04 LTS) có IP tĩnh (Public IP). Cấu hình tối thiểu từ 2 vCPU và 4GB RAM là đã có thể xử lý hàng ngàn cuộc gọi đồng thời nhờ kiến trúc bất đồng bộ của Kamailio.

Tiến hành cập nhật hệ thống và cài đặt Kamailio từ kho lưu trữ chính thức:

sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install -y kamailio kamailio-utils-modules kamailio-tls-modules

Sau khi cài đặt, file cấu hình chính của Kamailio nằm tại đường dẫn /etc/kamailio/kamailio.cfg. Bạn sẽ cần tùy chỉnh file này để định nghĩa luật định tuyến (Routing Logic), cho phép nhận diện các yêu cầu INVITE từ Telco và chuyển tiếp đến Retell AI.

Bước 2: Cấu hình SIP Trunking kết nối Telco và Retell AI

Để kết nối thành công, Kamailio cần xử lý hai luồng giao tiếp chính:

1. Kết nối với Nhà mạng (Inbound/Outbound Telco Trunk)

Cấu hình Kamailio để nhận diện dải IP của nhà mạng cung cấp đầu số SIP Trunk. Khi có cuộc gọi đến đầu số của bạn, Kamailio sẽ bắt được gói tin SIP INVITE.

2. Kết nối với Retell AI qua Elastic SIP Trunking

Truy cập vào Dashboard của Retell AI, điều hướng đến mục Phone Numbers và chọn Connect your number via SIP trunking. Tại đây, Retell AI sẽ cung cấp cho bạn một SIP Termination URI (thường có dạng {your_subdomain}.sip.livekit.cloud hoặc tương tự tùy thuộc vào hạ tầng mạng lõi của Retell tại thời điểm cấu hình).

Trong file cấu hình kamailio.cfg, bạn thêm đoạn mã logic định tuyến để chuyển tiếp cuộc gọi vào URI của Retell AI:

route[TO_RETELL] {
    $ru = "sip:" + $rU + "@5t4n6j0wnrl.sip.livekit.cloud";
    route(RELAY);
}

Lưu ý: Retell AI yêu cầu định dạng số điện thoại chuẩn E.164 (ví dụ: +849xxxxxxx cho Việt Nam). Kamailio cần thực hiện biến đổi chuỗi (String Manipulation) để chuẩn hóa số điện thoại từ định dạng của nhà mạng trong nước sang chuẩn E.164 trước khi đẩy lên Retell AI.

Bước 3: Tạo và liên kết AI Agent trên Retell AI

Sau khi hạ tầng kết nối đã thông suốt, phần việc còn lại là tạo "bộ não" cho tổng đài trên Dashboard của Retell AI:

  • Tạo Agent: Thiết lập Prompt (Kịch bản/Hướng dẫn) cho AI. Ví dụ: "Bạn là trợ lý ảo hỗ trợ đặt lịch hẹn cho phòng khám ABC...".
  • Chọn LLM và Giọng nói: Lựa chọn mô hình ngôn ngữ (Retell Turbo, GPT-4o) và cấu hình giọng nói tiếng Việt tự nhiên với ngữ điệu chuẩn, tốc độ phản hồi tối ưu.
  • Ràng buộc số điện thoại (Agent Binding): Nhập số điện thoại Hotline của bạn (định dạng E.164) vào Retell Dashboard và gán Agent vừa tạo cho số điện thoại đó. Khi Kamailio đẩy cuộc gọi có số đích (DID) trùng khớp lên hệ thống, Retell AI sẽ biết chính xác cần phải kích hoạt Agent nào để trả lời khách hàng.
---

Các lưu ý quan trọng về tối ưu hiệu năng và bảo mật

Khi tự vận hành một SIP Proxy như Kamailio trên VPS, bạn phải đặc biệt chú ý đến vấn đề an ninh mạng viễn thông để tránh tình trạng bị tấn công quét cổng SIP (SIP Scanning) hoặc gian lận cước gọi (Toll Fraud):

  • Bảo mật bằng IP Whitelisting: Chỉ cho phép các gói tin SIP từ IP của nhà mạng Telco và IP của Retell AI đi qua tường lửa (UFW/Iptables) vào cổng 5060/5061 của VPS.
  • Cấu hình mã hóa TLS/SRTP: Nếu có thể, hãy cấu hình Kamailio sử dụng giao thức SIP over TLS và SRTP để mã hóa toàn bộ thông tin báo hiệu cũng như luồng âm thanh giữa VPS của bạn và Retell AI, ngăn chặn việc nghe lén cuộc gọi.
  • Sử dụng RTPProxy / RTPEngine: Vì Kamailio chủ yếu xử lý gói tin báo hiệu (Signaling), bạn cần cài đặt thêm RTPEngine trên VPS nếu muốn quản lý, chuyển tiếp hoặc ghi âm trực tiếp luồng dữ liệu thoại (Media/RTP) tại máy chủ của mình thay vì để các endpoint kết nối trực tiếp qua NAT.
---

Kết luận

Tự xây dựng một tổng đài AI Voice Agent bằng cách kết hợp Retell AI và Kamailio trên VPS là giải pháp tối ưu cho những doanh nghiệp muốn làm chủ công nghệ, đảm bảo khả năng mở rộng không giới hạn và tối ưu hóa chi phí vận hành ở mức thấp nhất. Dù việc cấu hình Kamailio ban đầu đòi hỏi kiến thức kỹ thuật nhất định về giao thức SIP, nhưng sự ổn định, hiệu năng vượt trội và tính linh hoạt mà nó mang lại hoàn toàn xứng đáng với công sức đầu tư của bạn.

Tự Dựng Tổng Đài AI Đàm Thoại Tự Động (AI Voice Agent) Bằng Retell AI và Kamailio Trên VPS | DPTCloud