Chuyển tới nội dung chính

Hướng dẫn kết nối ZCC

A. Giới thiệu

1. Tổng quan về Zalo Cloud Connect (ZCC)

Zalo Cloud Connect (ZCC) là tính năng Gọi thoại nâng cao, kết nối đến hệ thống tổng đài SIP của Doanh nghiệp và vận hành qua API. Để thiết lập và sử dụng tính năng Gọi thoại ZCC, OA của Doanh nghiệp cần sử dụng gói dịch vụ Tăng trưởng hoặc Toàn diện.

Sau khi thiết lập cấu hình kết nối cuộc gọi giữa Tổng đài của Doanh nghiệp và người dùng Zalo thành công, Tổng đài viên của Doanh nghiệp (call agent) có thể nhận cuộc gọi từ người dùng Zalo hoặc thực hiện cuộc gọi đến người dùng Zalo.

  • Cuộc gọi có thể là cuộc gọi thoại (audio) hoặc cuộc gọi hình ảnh (video).

  • Đối với cuộc gọi từ Tổng đài viên của Doanh nghiệp đến người dùng Zalo, có 2 phương thức:

    • Thông qua User ID (UID) của người dùng Zalo: Tổng đài viên của Doanh nghiệp có thể thực hiện cuộc gọi đến người dùng Zalo đã tương tác với OA trong 30 ngày gần nhất.
    • Thông qua số điện thoại (SĐT) của người dùng Zalo: Để thực hiện cuộc gọi từ OA đến người dùng Zalo thông qua ZCC bằng SĐT, OA cần gửi yêu cầu Gọi thoại với chi phí 440đ/yêu cầu (bao gồm VAT) và cần nhận được sự đồng ý từ khách hàng. Người dùng Zalo có thời gian là 24 giờ để phản hồi. Khi yêu cầu được đồng ý, OA có thể gọi ra miễn phí trong vòng 30 ngày.
Lưu ý
  • Tính năng cuộc gọi hình ảnh (video) hiện là tính năng thử nghiệm, chỉ khả dụng đối với một số Doanh nghiệp phù hợp. Nếu có nhu cầu sử dụng, Doanh nghiệp vui lòng gửi mail về địa chỉ oa@zalo.me bằng email với đuôi email doanh nghiệp, với các thông tin như sau:

    • Tên OA và OAID
    • Gói dịch vụ OA đang sử dụng
    • Lĩnh vực hoạt động của Doanh nghiệp
    • Tổng số lượng cuộc gọi dự kiến
    • Mục đích sử dụng ZCC video call
    • Cách thức triển khai và vận hành luồng gọi video

    Tùy vào đặc điểm OA, BQT OA sẽ xem xét và quyết định việc hỗ trợ việc mở luồng video call thử nghiệm cho OA.

  • Xem thêm Tổng quan về Gọi thoại ZCC tại đây: Tổng quan về Gọi thoại.

Hình: Mô hình kết nối cuộc gọi giữa người dùng Zalo và Call Center của Doanh nghiệp

Hình: Tổng quan các bước kết nối cuộc gọi giữa Zalo Official Account và Call Center của Doanh nghiệp

2. Mục đích tài liệu này

Tài liệu này dành cho các Doanh nghiệp có nhu cầu sử dụng tính năng gọi thoại nâng cao Zalo Cloud Connect (ZCC), giúp bộ phận kỹ thuật ở phía Doanh nghiệp nắm rõ các thông số trong việc cấu hình đấu nối trung kế cho các cuộc gọi thoại (audio) và gọi hình ảnh (video) giữa hệ thống Zalo và các Call Center của Doanh nghiệp.

3. Đối tượng sử dụng tài liệu

Tài liệu này dành cho nhân viên kỹ thuật, người phụ trách hệ thống, người trực tiếp thực hiện công tác vận hành và cấu hình các trung kế (SIP Trunk) của hệ thống Call Center của Doanh nghiệp. Người sử dụng tài liệu cần có các kiến thức sau:

  • Kiến thức cơ bản về IP/Network, biết nền tảng VoIP, tổng đài IP, Call Center,…
  • Cách thực hiện cấu hình các trung kế SIP, giao thức SIP.

4. Phạm vi tài liệu

Phạm vi của tài liệu này bao gồm:

  • Các thông số, điều kiện đầu vào cần có từ Doanh nghiệp
  • Các bước để thiết lập hệ thống gọi giữa người dùng Zalo và nhân viên tổng đài của Doanh nghiệp (qua hệ thống tổng đài - Call Center)
  • Cách thực hiện cuộc gọi audio và gọi video giữa hệ thống Doanh nghiệp và người dùng Zalo thông qua hệ thống ZCC.

B. Các thông số, điều kiện đầu vào cần có

1. Tài khoản OA

Tài khoản OA của Doanh nghiệp đã được xác thực và đang sử dụng gói phù hợp. Tài khoản sẽ được cấp ID riêng - gọi tắt là OAID dùng để định danh tài khoản OA.

2. Ứng dụng (App) được tạo trên trang Zalo for Developers

Ứng dụng (App) trên trang Zalo for Developers là ứng dụng liên kết với OA, dùng để thực hiện các kết nối kỹ thuật qua API/Webhook. App được tạo và quản lý trên trang Zalo for Developers (https://developers.zalo.me/).

Để cài đặt và thực hiện cuộc gọi ZCC, App cần thỏa mãn các điều kiện sau:

a. Đã được bật “Quyền sử dụng chức năng gọi thoại”: Tại mục Official Account ở trang Quản lý ứng dụng trên trang Zalo for Developers, chọn Thiết lập chung ➜ chọn Quyền: Sử dụng chức năng gọi thoại ➜ chọn Lưu.

b. Đã được xét duyệt “Quyền sử dụng chức năng gọi thoại”: Tại mục Official Account ở trang Quản lý ứng dụng trên trang Zalo for Developers, chọn Đăng ký sử dụng API, chọn Official Account API ➜ nhấn Bật “Sử dụng chức năng gọi thoại” ➜ chọn Nộp xét duyệt.

c. Đã được OA cấp quyền sử dụng chức năng gọi thoại. Xem thêm tại tài liệu hướng dẫn xác thực và ủy quyền cho Ứng dụng: Xác thực và ủy quyền cho Ứng dụng.

3. Thiết bị / hệ thống Call Center

Doanh nghiệp cần có sẵn hệ thống Call Center, tổng đài IP, SBC, Gateway,…với khả năng hỗ trợ kết nối trung kế theo chuẩn SIP cho cuộc gọi thoại (audio call).

Trong trường hợp Doanh nghiệp có nhu cầu sử dụng Video call, cần đảm bảo thêm:

  • Call Center cần hỗ trợ video call khi có nhu cầu sử dụng cuộc gọi có hình ảnh.
  • Tích hợp với API của Zalo để hỗ trợ thêm cho tính năng nhận diện khuôn mặt ở những cuộc gọi có hình ảnh.

4. Đường truyền Internet

  • Dùng Static IP public kết nối với Zalo qua môi trường internet.

  • Băng thông đủ lớn để đáp ứng cho các dịch vụ cần sử dụng trên nền tảng VoIP: cuộc gọi audio call cần có độ trễ thấp, video call (nếu có) sẽ cần băng thông lớn.

  • Băng thông đề xuất:

    • Audio call: 100-120kbps/call
    • Video call:
      • via app: 500-1000kbps/call
      • via web: 1000-1200kbps/call

5. Firewall / SBC (tùy chọn)

Hệ thống của Doanh nghiệp nên có Firewall, thiết bị SBC… để bảo vệ giúp giảm các rủi ro khi kết nối qua môi trường internet. Firewall cần cho phép nhận các gói tin gọi thoại (Trying, Ringing,…).

C. Các bước thực hiện để thiết lập cấu hình kết nối cuộc gọi

1. Khai báo tổng đài trên trang Zalo Developer để kết nối với ZCC

  • Truy cập Menu “Gọi thoại” trên trang quản lý ứng dụng đã tạo ở bước 2 (mục B).

  • Cung cấp các thông tin IP, Port hệ thống tổng đài SIP Doanh nghiệp vào “Cổng kết nối”.

  • Bổ sung các phân luồng tiếp nhận ứng với từng OA:

    • Chọn OA cần tạo luồng.
    • ID: OAID (hệ thống mặc định) + 3 chữ số, giúp App quản lý luồng.
    • Tên: Tên gợi nhớ với luồng.
  • Cấu hình sẵn trên tổng đài của Doanh nghiệp để tiếp nhận với các đầu số tiếp nhận (callee/DID) là chuỗi ID vừa được tạo cho từng luồng (mapping ID này đến từng IVR/Group có sẵn trong tổng đài).

Lưu ý
  • Thiết lập cổng kết nối vào/ra tương ứng với chiều cuộc gọi đến/gọi đi.
  • IP của cổng kết nối (SBC/PBX) cần dùng Static IP public, dùng để kết nối với Zalo qua môi trường internet.

2. Cấu hình trung kế SIP (SIP trunk) giữa SBC/PBX và ZCC

  • Thông tin cấu hình SIP trunk:

    • Server/IP: <AppID>.zcc.openapi.zaloapp.com (AppID từ trang Developer ở mục 2 phần B của tài liệu này)
    • Port: UDP/TCP 5060
    • Codec: PCMU và PCMA cho Audio, H264 cho Video (nếu có)
Lưu ý

Cần kiểm tra và đảm bảo:

  • Server/IP được khai báo theo đúng domain.
  • Port ZCC được khai báo là 5060.
  • Nếu không có DNS, có thể khai báo file hosts cho domain trên ứng với IP 49.213.78.92.
  • Caller/Callee khi gọi ra:

    • Caller/From là OAID tại bước 1 (mục B).

    • Callee/To là UID, hoặc SĐT của người dùng. Tham khảo về cách lấy UID tại đây: Truy xuất danh sách người dùng, Truy xuất chi tiết người dùng.

    • Ví dụ:

      • Gọi ra bằng SĐT: Với OAID = 1234567890, AppID = 9876543210, SĐT của người dùng Zalo là +84xxxxxxxxx:

        • Server/IP: 9876543210.zcc.openapi.zaloapp.com
        • Thông tin khi gọi ra:
          • From: 1234567890@9876543210.zcc.openapi.zaloapp.com
          • To: +84xxxxxxxxx@9876543210.zcc.openapi.zaloapp.com
      • Gọi ra bằng UID: Với OAID = 1234567890, AppID = 9876543210, UID của người dùng Zalo là 99999999999:

        • Server/IP: 9876543210.zcc.openapi.zaloapp.com
        • Thông tin khi gọi ra:
          • From: 1234567890@9876543210.zcc.openapi.zaloapp.com
          • To: 99999999999@9876543210.zcc.openapi.zaloapp.com
  • Caller/Callee nhận cuộc gọi vào:

    • Caller/From là UID.

    • Callee/To là chuỗi OAID kết hợp với mã phân luồng (mã đã thiết lập - xem thêm tại mục 1 phần C trong tài liệu này).

    • Ví dụ: Với OAID = 1234567890, AppID = 9876543210, UID của người dùng Zalo là 999999999:

      • Server/IP: 9876543210.zcc.openapi.zaloapp.com
      • Thông tin khi nhận cuộc gọi vào ứng với mã phân luồng 100:
        • From: 999999999@9876543210.zcc.openapi.zaloapp.com
        • To: 1234567890100@9876543210.zcc.openapi.zaloapp.com
  • Mở firewall, cho phép kết nối đến IP của ZCC:

    • IP Signal: 49.213.78.92, 49.213.78.91, 49.213.78.90
    • Port UDP: 5060 — TCP: 80, 443, 5060, 5061
Lưu ý

Nếu cuộc gọi đã thiết lập nhưng gặp lỗi mạng yếu/không có âm thanh, vui lòng liên hệ Zalo để cập nhật thêm thông tin các IP media.

3. Cấu hình nhánh gọi trên OA Manager và phân bổ về các luồng ở App

  • Vào trang Quản lý OA – OA Manager ➜ chọn OA cần sử dụng ➜ chọn mục Quản lý ➜ chọn Thiết lập cuộc gọi ➜ chọn ZCC.
  • Thực hiện liên kết với luồng đã thiết lập ở App.
  • Kiểm tra nhánh hiển thị khi người dùng tương tác với OA.

D. Thực hiện cuộc gọi ZCC

1. Gọi từ Call Center đến người dùng Zalo

  • Tổng đài viên bấm số và thực hiện gọi ra (UID hoặc SĐT). Nếu trên softphone thì tương tự dưới đây:
Lưu ý
  • Đối với số điện thoại, cần sử dụng đầu số dạng “+84xxxxxxxxx” hoặc “0xxxxxxxxx”.

  • Khi gọi đến người dùng Zalo bằng SĐT của người dùng Zalo, cần có sự đồng ý từ người dùng thông qua bước “Yêu cầu quyền thực hiện cuộc gọi đến người dùng”:

  • Khi gọi đến người dùng Zalo bằng UID, người dùng cần có tương tác với OA trong vòng 30 ngày. API kiểm tra tương tác của người dùng: Truy xuất chi tiết người dùng (tham khảo trường user_last_interaction_date).

  • Code phản hồi tuân theo chuẩn RFC dành cho kết nối SIP Trunk.

2. Gọi từ người dùng Zalo đến Call Center

Người dùng Zalo cần:

  • Đăng nhập Zalo
  • Truy cập vào OA cần tương tác
  • Lựa chọn gọi theo Audio hay Video ở góc trên bên trái
  • Chọn lựa nhánh/danh sách và gọi

Khi đang trên cuộc gọi, phía Tổng đài viên của Doanh nghiệp (call agent) sẽ thấy được thông tin Caller là người dùng Zalo đang gọi đến.