Σύνδεσμος Twilio Flex

Συνδέστε το κέντρο επαφών Twilio Flex με το Brevo για ενοποιημένο ιστορικό αλληλεπιδράσεων πελατών, ροές marketing μετά τη συνομιλία και αναλυτικά αφοσίωσης βάσει υποστήριξης μέσω Tajo.

Επισκόπηση

ΙδιότηταΤιμή
ΠλατφόρμαTwilio Flex
ΚατηγορίαΠροσαρμοσμένο
Πολυπλοκότητα ΡύθμισηςΠροχωρημένη
Επίσημη ΕνσωμάτωσηΌχι
Δεδομένα που ΣυγχρονίζονταιΠελάτες, Συνομιλίες, Εκδηλώσεις
APIs που ΧρησιμοποιούνταιFlex API, Conversations API, TaskRouter API
ΠιστοποίησηAccount SID + Auth Token / API Key
Βασικό URLhttps://flex-api.twilio.com

Χαρακτηριστικά

  • Συγχρονισμός συνομιλίας - Προώθηση αλληλεπιδράσεων φωνής, SMS, WhatsApp και chat σε χρονοδιαγράμματα Brevo
  • Εμπλουτισμός προφίλ πελάτη - Συγχρονισμός δεδομένων πελατών Flex σε χαρακτηριστικά επαφών Brevo
  • Καμπάνιες μετά αλληλεπίδραση - Ενεργοποίηση ροών εργασίας Brevo μετά το τέλος συνομιλιών υποστήριξης
  • Παρακολούθηση εκδηλώσεων CSAT - Συγχρονισμός αποτελεσμάτων έρευνας ικανοποίησης ως εκδηλώσεις Brevo
  • Δεδομένα δραστηριότητας πράκτορα - Παρακολούθηση μετρικών απόδοσης πράκτορα για επιχειρησιακές αναφορές
  • Αναλυτικά ουράς - Προώθηση δεδομένων χρόνου αναμονής και εγκατάλειψης για βελτιστοποίηση εμπειρίας

Προαπαιτούμενα

Πριν ξεκινήσετε, βεβαιωθείτε ότι διαθέτετε:

  1. Λογαριασμό Twilio με ενεργοποιημένο Flex
  2. Τα Account SID και Auth Token Twilio
  3. Instance Flex με ενεργά κανάλια (φωνή, SMS, chat ή WhatsApp)
  4. Ρυθμισμένο χώρο εργασίας TaskRouter
  5. Λογαριασμό Brevo με πρόσβαση API
  6. Λογαριασμό Tajo με ενεργή συνδρομή

Πιστοποίηση

Το Twilio Flex χρησιμοποιεί τις τυπικές μεθόδους πιστοποίησης Twilio.

Διαπιστευτήρια Λογαριασμού

Terminal window
# Basic Auth: Account SID as username, Auth Token as password
curl -X GET "https://flex-api.twilio.com/v1/Configuration" \
-u "$TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN"

API Key (Συνιστάται για Παραγωγή)

  1. Μεταβείτε στο Twilio Console > Λογαριασμός > API keys & tokens
  2. Κάντε κλικ Δημιουργία API Key
  3. Επιλέξτε τύπο κλειδιού Standard
  4. Αποθηκεύστε το SID και το Secret με ασφάλεια
Terminal window
curl -X GET "https://flex-api.twilio.com/v1/Configuration" \
-u "$TWILIO_API_KEY_SID:$TWILIO_API_KEY_SECRET"

Auth Token έναντι API Key

Το Auth Token σας έχει πλήρη πρόσβαση λογαριασμού. Για παραγωγή, χρησιμοποιήστε αντ’ αυτού API Keys με εύρος. Τα API Keys μπορούν να ανακληθούν μεμονωμένα χωρίς διακοπή άλλων ενσωματώσεων.

Σύνδεση στο Tajo

Terminal window
tajo connectors install twilio-flex \
--account-sid $TWILIO_ACCOUNT_SID \
--auth-token $TWILIO_AUTH_TOKEN \
--flex-flow-sid $TWILIO_FLEX_FLOW_SID

Διαμόρφωση

Βασική Ρύθμιση

connectors:
twilio_flex:
enabled: true
account_sid: "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
flex_flow_sid: "FOXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
sync:
conversations: true
tasks: true
customers: true
csat: true
agent_activity: false
lists:
support_contacts: 32
csat_respondents: 33
channels:
- voice
- sms
- whatsapp
- webchat

Αντιστοίχιση Πεδίων

Αντιστοίχηση δεδομένων πελάτη και αλληλεπίδρασης Flex σε χαρακτηριστικά Brevo:

field_mapping:
# Customer fields
identity: FLEX_IDENTITY
friendly_name: FIRSTNAME
attributes.email: email
attributes.phone: SMS
# Interaction metrics
last_conversation_date: LAST_SUPPORT_DATE
total_conversations: SUPPORT_TICKET_COUNT
avg_wait_time: AVG_WAIT_TIME
last_csat_score: CSAT_SCORE
preferred_channel: PREFERRED_CHANNEL
# Custom attributes
customer_tier: VIP_TIER
account_id: ACCOUNT_ID

Αντιστοίχιση Εκδηλώσεων

event_mapping:
task.created: SUPPORT_REQUESTED
task.completed: SUPPORT_RESOLVED
task.canceled: SUPPORT_ABANDONED
conversation.ended: CONVERSATION_ENDED
survey.completed: CSAT_SUBMITTED

Endpoints API

Το Tajo ενσωματώνεται με τα ακόλουθα endpoints API Twilio Flex και σχετικών:

EndpointΜέθοδοςAPIΣκοπός
/v1/ConfigurationGETFlexΛήψη διαμόρφωσης Flex
/v1/InteractionsGETFlexΛίστα αλληλεπιδράσεων
/v1/ChannelsGETFlexΛίστα καναλιών Flex
/v1/WebChannelsPOSTFlexΔημιουργία καναλιού web chat
/v1/ConversationsGETConversationsΛίστα συνομιλιών
/v1/Conversations/{sid}/MessagesGETConversationsΛίστα μηνυμάτων συνομιλίας
/v1/Conversations/{sid}/ParticipantsGETConversationsΛίστα συμμετεχόντων
/v1/Workspaces/{sid}/TasksGETTaskRouterΛίστα εργασιών
/v1/Workspaces/{sid}/WorkersGETTaskRouterΛίστα εργαζομένων (πρακτόρων)
/v1/Workspaces/{sid}/TaskQueuesGETTaskRouterΛίστα ουρών εργασιών
/v1/Workspaces/{sid}/EventsGETTaskRouterΛίστα εκδηλώσεων χώρου εργασίας

Παραδείγματα Κώδικα

Αρχικοποίηση Συνδέσμου

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,
authToken: process.env.TWILIO_AUTH_TOKEN,
flexFlowSid: process.env.TWILIO_FLEX_FLOW_SID
});

Συγχρονισμός Ιστορικού Συνομιλίας

await tajo.connectors.sync('twilio-flex', {
type: 'incremental',
resources: ['conversations'],
since: '2024-01-01',
channels: ['voice', 'sms', 'whatsapp']
});
const status = await tajo.connectors.status('twilio-flex');
console.log(status);
// {
// connected: true,
// lastSync: '2024-03-15T16:00:00Z',
// conversationsTracked: 12400,
// customersLinked: 8900,
// agentsMonitored: 45
// }

Ενεργοποιητής Καμπάνιας Μετά τη Συνομιλία

// Trigger a Brevo follow-up after a support conversation ends
app.post('/webhooks/flex/task-complete', async (req, res) => {
const task = req.body;
await tajo.connectors.handleEvent('twilio-flex', {
type: 'task.completed',
payload: {
taskSid: task.TaskSid,
customerEmail: task.TaskAttributes?.email,
channel: task.TaskChannelUniqueName,
duration: task.Age,
queueName: task.TaskQueueFriendlyName
}
});
res.status(200).send('OK');
});

Ενσωμάτωση Plugin Flex

// Inside a Flex UI Plugin - send data to Tajo
import { FlexPlugin } from '@twilio/flex-plugin';
class TajoPlugin extends FlexPlugin {
init(flex, manager) {
flex.Actions.addListener('afterCompleteTask', async (payload) => {
await fetch('https://api.tajo.io/webhooks/flex/task-complete', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
TaskSid: payload.task.sid,
TaskAttributes: payload.task.attributes,
TaskChannelUniqueName: payload.task.taskChannelUniqueName,
Age: payload.task.age
})
});
});
}
}

Όρια Ρυθμού

Το Twilio επιβάλλει όρια ρυθμού σε όλα τα APIs:

APIΌριο ΡυθμούΣημειώσεις
Flex API100 αιτήματα/δευτ.Ανά λογαριασμό
Conversations API100 αιτήματα/δευτ.Ανά λογαριασμό
TaskRouter API30 αιτήματα ανάγνωσης/δευτ.Ανά χώρο εργασίας
TaskRouter Events20 αιτήματα/δευτ.Ανά χώρο εργασίας

Event Streams

Για επεξεργασία εκδηλώσεων μεγάλου όγκου, εξετάστε τη χρήση Twilio Event Streams αντί για polling εκδηλώσεων TaskRouter. Το Event Streams ωθεί εκδηλώσεις σε πραγματικό χρόνο μέσω webhooks ή Kinesis.

Αντιμετώπιση Προβλημάτων

Συνήθη Προβλήματα

ΠρόβλημαΑιτίαΛύση
401 UnauthorizedΜη έγκυρο SID ή tokenΕπαληθεύστε Account SID και Auth Token στο Twilio Console
403 ForbiddenΤο Flex δεν είναι ενεργοποιημένοΒεβαιωθείτε ότι το Flex είναι ενεργοποιημένο στον λογαριασμό Twilio
Λείπουν συνομιλίεςΛανθασμένο εύρος ημερομηνιώνΕπεκτείνετε εύρος ημερομηνιών συγχρονισμού ή ελέγξτε κατάσταση συνομιλίας
Οι εργασίες δεν παρακολουθούνταιΑναντιστοιχία χώρου εργασίας TaskRouterΕπαληθεύστε το σωστό SID χώρου εργασίας
Το plugin δεν ενεργοποιείταιΟ ακροατής εκδηλώσεων δεν εγγράφηκεΕλέγξτε ότι το plugin Flex είναι αναπτυγμένο και ενεργό

Λειτουργία Εντοπισμού Σφαλμάτων

connectors:
twilio_flex:
debug: true
log_level: verbose
log_api_calls: true

Δοκιμή Σύνδεσης

Terminal window
tajo connectors test twilio-flex
# ✓ Flex API connection successful
# ✓ Conversations API accessible
# ✓ TaskRouter workspace found
# ✓ Agent list readable
# ✓ Queue configuration loaded

Βέλτιστες Πρακτικές

  1. Χρησιμοποιήστε API Keys αντί Auth Tokens - Τα API Keys μπορούν να έχουν εύρος και να ανακληθούν μεμονωμένα
  2. Αξιοποιήστε Event Streams - Εκδηλώσεις βάσει push είναι πιο αποδοτικές από polling TaskRouter
  3. Δημιουργήστε Plugin Flex - Χρησιμοποιήστε plugin UI για καταγραφή εκδηλώσεων ολοκλήρωσης εργασίας σε πραγματικό χρόνο
  4. Αντιστοιχίστε κανάλια με συνέπεια - Κανονικοποιήστε δεδομένα φωνής, SMS και chat σε ενοποιημένες εκδηλώσεις Brevo
  5. Παρακολουθήστε βαθμολογίες CSAT - Συγχρονίστε δεδομένα ικανοποίησης στο Brevo για τμηματοποίηση βάσει εμπειρίας
  6. Παρακολουθήστε μετρικές ουράς - Χρησιμοποιήστε δεδομένα χρόνου αναμονής για ενεργοποίηση προληπτικής επικοινωνίας πελατών

Ασφάλεια

  • Account SID + Auth Token - Τυπική πιστοποίηση Twilio
  • API Keys - Ανακλητά, μη-root διαπιστευτήρια για χρήση παραγωγής
  • Μόνο HTTPS - Όλη η επικοινωνία API κρυπτογραφείται μέσω TLS 1.2+
  • Επικύρωση Webhook - Επαλήθευση υπογραφών webhook Twilio με X-Twilio-Signature
  • Συμμόρφωση PCI - Το Twilio Flex είναι συμβατό με PCI DSS Level 1
  • Κρυπτογραφημένη Αποθήκευση - Τα διαπιστευτήρια κρυπτογραφούνται σε ηρεμία στο Tajo

Σχετικοί Πόροι

Subscribe to updates

developer-docs

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

auto-detect
AI Βοηθός

Γεια! Ρωτήστε με οτιδήποτε για την τεκμηρίωση.