Twilio Flex Connector

Poveži svoj kontaktni center Twilio Flex z Brevo za enotno zgodovino interakcij s strankami, marketinške tokove po konverzaciji in analitiko angažiranja na osnovi podpore prek Tajo.

Pregled

LastnostVrednost
PlatformaTwilio Flex
KategorijaPo meri
Zahtevnost nastavitveNapredna
Uradna integracijaNe
Sinhronizirani podatkiStranke, pogovori, dogodki
Uporabljeni API-jiFlex API, Conversations API, TaskRouter API
AvtentikacijaAccount SID + Auth Token / API Key
Osnovni URLhttps://flex-api.twilio.com

Funkcionalnosti

  • Sinhronizacija pogovorov – posreduj glasovne, SMS, WhatsApp in klepetalniške interakcije v časovnice Brevo
  • Obogatitev profila stranke – sinhroniziraj podatke stranke Flex v atribute stikov Brevo
  • Kampanje po interakciji – sproži delovne tokove Brevo po zaključku pogovorov podpore
  • Sledenje CSAT dogodkom – sinhroniziraj rezultate anket o zadovoljstvu kot dogodke Brevo
  • Podatki o dejavnosti agentov – sledi meritvam uspešnosti agentov za operativno poročanje
  • Analitika čakalnih vrst – posreduj podatke o čakalnem času in opustitvi za optimizacijo izkušnje

Predpogoji

Preden začneš, se prepričaj, da imaš:

  1. Račun Twilio z omogočenim Flex
  2. Twilio Account SID in Auth Token
  3. Instanco Flex z aktivnimi kanali (glas, SMS, klepet ali WhatsApp)
  4. Konfigurirano delovno okolje TaskRouter
  5. Brevo račun z dostopom do API
  6. Tajo račun z aktivno naročnino

Avtentikacija

Twilio Flex uporablja standardne metode avtentikacije Twilio.

Poverilnice računa

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 ključ (priporočeno za produkcijo)

  1. Pojdi na Twilio Console > Account > API keys & tokens
  2. Klikni Create API Key
  3. Izberi vrsto ključa Standard
  4. Varno shrani SID in skrivnost
Terminal window
curl -X GET "https://flex-api.twilio.com/v1/Configuration" \
-u "$TWILIO_API_KEY_SID:$TWILIO_API_KEY_SECRET"

Auth Token vs API ključ

Tvoj Auth Token ima popoln dostop do računa. Za produkcijo namesto tega uporabi obsegaste API ključe. API ključe je mogoče posamično preklicati, ne da bi motili druge integracije.

Povezovanje s 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

Konfiguracija

Osnovna nastavitev

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

Preslikava polj

Preslikaj podatke o strankah in interakcijah Flex v atribute 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

Preslikava dogodkov

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

Končne točke API

Tajo se integrira z naslednjimi končnimi točkami Twilio Flex in sorodnih API-jev:

Končna točkaMetodaAPINamen
/v1/ConfigurationGETFlexPridobi konfiguracijo Flex
/v1/InteractionsGETFlexSeznam interakcij
/v1/ChannelsGETFlexSeznam kanalov Flex
/v1/WebChannelsPOSTFlexUstvarjanje spletnega klepetalnega kanala
/v1/ConversationsGETConversationsSeznam pogovorov
/v1/Conversations/{sid}/MessagesGETConversationsSeznam sporočil v pogovoru
/v1/Conversations/{sid}/ParticipantsGETConversationsSeznam udeležencev
/v1/Workspaces/{sid}/TasksGETTaskRouterSeznam nalog
/v1/Workspaces/{sid}/WorkersGETTaskRouterSeznam delavcev (agentov)
/v1/Workspaces/{sid}/TaskQueuesGETTaskRouterSeznam čakalnih vrst
/v1/Workspaces/{sid}/EventsGETTaskRouterSeznam dogodkov delovnega okolja

Primeri kode

Inicializacija konektorja

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
});

Sinhronizacija zgodovine pogovorov

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
// }

Sprožilec kampanje po pogovoru

// 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');
});

Integracija vtičnika 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
})
});
});
}
}

Omejitve hitrosti

Twilio uveljavlja omejitve hitrosti za vse svoje API-je:

APIOmejitev hitrostiOpombe
Flex API100 zahtevkov/sekundoNa račun
Conversations API100 zahtevkov/sekundoNa račun
TaskRouter API30 zahtevkov za branje/sekundoNa delovno okolje
Dogodki TaskRouter20 zahtevkov/sekundoNa delovno okolje

Event Streams

Za obdelavo dogodkov z velikim obsegom razmisli o uporabi Twilio Event Streams namesto anketiranja dogodkov TaskRouter. Event Streams potiskajo dogodke v realnem času prek webhooks ali Kinesis.

Odpravljanje težav

Pogoste težave

TežavaVzrokRešitev
401 UnauthorizedNeveljaven SID ali žetonPreveri Account SID in Auth Token v Twilio Console
403 ForbiddenFlex ni omogočenZagotovi, da je Flex aktiviran na računu Twilio
Manjkajoči pogovoriNapačno datumsko obdobjeRazširi datumsko obdobje sinhronizacije ali preveri stanje pogovora
Naloge niso sledeneNeujemanje delovnega okolja TaskRouterPreveri pravilen SID delovnega okolja
Vtičnik ne delujePoslušalec ni registriranPreveri, ali je vtičnik Flex nameščen in aktiven

Način odpravljanja napak

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

Preizkus povezave

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

Najboljše prakse

  1. Uporabljaj API ključe namesto Auth Tokenov – API ključe je mogoče obsegasto dodeliti in posamično preklicati
  2. Izkoristi Event Streams – dogodki na osnovi potiskanja so učinkovitejši od anketiranja TaskRouter
  3. Zgradi vtičnik Flex – z vtičnikom UI zajemi dogodke zaključenih nalog v realnem času
  4. Dosledno preslikavaj kanale – normaliziraj glasovne, SMS in klepetalniške podatke v enotne dogodke Brevo
  5. Sledi oceni CSAT – sinhroniziraj podatke o zadovoljstvu v Brevo za segmentacijo na osnovi izkušnje
  6. Spremljaj metrike čakalnih vrst – podatke o čakalnem času uporabi za sproži proaktivno komunikacijo s strankami

Varnost

  • Account SID + Auth Token – standardna avtentikacija Twilio
  • API ključi – preklicljive poverilnice brez korenskega dostopa za produkcijo
  • Samo HTTPS – vsa komunikacija API šifrirana prek TLS 1.2+
  • Preverjanje Webhooks – preverjanje podpisov Twilio webhook z X-Twilio-Signature
  • Skladnost s PCI – Twilio Flex je certificiran PCI DSS Level 1
  • Šifrirano shranjevanje – poverilnice šifrirane v mirovanju v Tajo

Povezani viri

Subscribe to updates

developer-docs

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

auto-detect
AI pomočnik

Živjo! Vprašajte me o dokumentaciji.