Trình Kết Nối Twilio Flex

Kết nối Twilio Flex contact center với Brevo qua Tajo để đồng bộ conversation histories, customer interactions và support data, cung cấp cái nhìn 360° về khách hàng.

Tổng Quan

Thuộc TínhGiá Trị
Nền TảngTwilio Flex
Danh MụcTùy Chỉnh
Độ Phức Tạp Thiết LậpNâng Cao
Tích Hợp Chính ThứcKhông
Dữ Liệu Đồng BộConversations, Tasks, Workers, Contacts
Loại APITwilio REST API
Xác ThựcAccount SID + Auth Token hoặc API Key

Tính Năng

  • Đồng bộ conversation - Nhập Twilio Flex conversations sang lịch sử liên hệ Brevo
  • Dữ liệu task - Đồng bộ TaskRouter tasks và attributes sang Brevo events
  • Thông tin agent - Liên kết conversations với nhân viên Flex trong Brevo
  • Đồng bộ contacts - Tích hợp Twilio contact data với hồ sơ Brevo
  • Sự kiện webhook - Forward Flex events sang Brevo triggers

Yêu Cầu

Trước khi bắt đầu, hãy đảm bảo bạn có:

  1. Tài khoản Twilio với Flex được bật
  2. Account SID và Auth Token
  3. Flex instance SID
  4. Tài khoản Brevo với quyền truy cập API
  5. Tài khoản Tajo

Xác Thực

Auth Token vs API Key

Auth Token cấp quyền truy cập đầy đủ vào tài khoản Twilio. Đối với production, hãy tạo API Key/Secret riêng biệt với quyền hạn chế thay vì sử dụng Auth Token chính.

Tạo API Key

Terminal window
# Tạo API Key qua REST API
curl -X POST "https://api.twilio.com/2010-04-01/Accounts/{AccountSid}/Keys.json" \
-u "ACCOUNT_SID:AUTH_TOKEN" \
-d "FriendlyName=Tajo Integration"

Xác Thực Cơ Bản

Terminal window
curl "https://flex-api.twilio.com/v1/Interactions" \
-u "API_KEY_SID:API_KEY_SECRET"

Cấu Hình

Thiết Lập Cơ Bản

connectors:
twilio_flex:
enabled: true
account_sid: "${TWILIO_ACCOUNT_SID}"
api_key: "${TWILIO_API_KEY}"
api_secret: "${TWILIO_API_SECRET}"
flex_instance_sid: "${FLEX_INSTANCE_SID}"
sync:
conversations: true
tasks: true
workers: false
contacts: true

Ánh Xạ Trường

field_mapping:
# Contact fields
customer_email: email
customer_name: FULLNAME
customer_phone: SMS
# Conversation fields
conversation_sid: LAST_CONVERSATION_ID
channel: LAST_CONTACT_CHANNEL
created: LAST_CONTACT_DATE
# Task fields
task_attributes.issue_type: SUPPORT_ISSUE_TYPE
task_attributes.priority: SUPPORT_PRIORITY

API Endpoints

Phương ThứcEndpointMô Tả
GET/v1/InteractionsLiệt kê Flex Interactions
GET/v1/Interactions/{sid}Lấy chi tiết Interaction
GET/v2010-04-01/Accounts/{sid}/ConversationsLiệt kê Conversations
GET/v2010-04-01/Accounts/{sid}/Conversations/{sid}/ParticipantsParticipants của conversation
GET/v1/Workspaces/{sid}/TasksLiệt kê TaskRouter Tasks
GET/v1/Workspaces/{sid}/WorkersLiệt kê Workers

Ví Dụ Code

Khởi Tạo Trình Kết Nối

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
await tajo.connectors.connect('twilio-flex', {
accountSid: process.env.TWILIO_ACCOUNT_SID,
apiKey: process.env.TWILIO_API_KEY,
apiSecret: process.env.TWILIO_API_SECRET,
flexInstanceSid: process.env.FLEX_INSTANCE_SID
});

Đồng Bộ Conversations Sang Brevo

// Đồng bộ Twilio Flex conversations sang Brevo
await tajo.connectors.sync('twilio-flex', {
type: 'incremental',
resources: ['conversations'],
since: new Date(Date.now() - 7 * 24 * 60 * 60 * 1000).toISOString()
});

Event Streams

Tajo hỗ trợ Twilio Event Streams cho updates theo thời gian thực. Thay vì polling API, hãy cấu hình Event Stream sink để forward events trực tiếp đến Tajo webhook endpoint.

Giới Hạn Tốc Độ

Tài NguyênGiới Hạn
REST API100 yêu cầu/giây
Conversation API100 yêu cầu/giây
Task fetch20 yêu cầu/giây

Khắc Phục Sự Cố

Sự CốNguyên NhânGiải Pháp
401 UnauthorizedCredentials không hợp lệXác minh Account SID và Auth Token
Interactions rỗngFlex chưa được cấu hìnhKiểm tra Flex instance SID
Conversations thiếuKhoảng thời gian không đúngĐiều chỉnh date range filter
Webhook không nhậnURL không thể truy cậpĐảm bảo Tajo webhook URL có thể truy cập từ internet

Tài Nguyên Liên Quan

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
Trợ lý AI

Xin chào! Hãy hỏi tôi về tài liệu.