Twilio Flex Bağlayıcısı

Birleşik müşteri etkileşim geçmişi, konuşma sonrası pazarlama akışları ve destek odaklı etkileşim analitiği için Twilio Flex çağrı merkezinizi Tajo üzerinden Brevo’ya bağlayın.

Genel Bakış

ÖzellikDeğer
PlatformTwilio Flex
KategoriÖzel
Kurulum Karmaşıklığıİleri Düzey
Resmi EntegrasyonHayır
Senkronize Edilen VeriMüşteriler, Konuşmalar, Olaylar
Kullanılan API’lerFlex API, Conversations API, TaskRouter API
Kimlik DoğrulamaAccount SID + Auth Token / API Anahtarı
Temel URLhttps://flex-api.twilio.com

Özellikler

  • Konuşma senkronizasyonu - Sesli, SMS, WhatsApp ve sohbet etkileşimlerini Brevo zaman çizelgelerine iletin
  • Müşteri profili zenginleştirme - Flex müşteri verilerini Brevo kişi özniteliklerine senkronize edin
  • Etkileşim sonrası kampanyalar - Destek konuşmaları sona erdikten sonra Brevo iş akışlarını tetikleyin
  • CSAT olay takibi - Memnuniyet anket sonuçlarını Brevo olayları olarak senkronize edin
  • Temsilci aktivite verileri - Operasyonel raporlama için temsilci performans metriklerini izleyin
  • Sıra analitiği - Deneyim optimizasyonu için bekleme süresi ve terk verilerini iletin

Ön Koşullar

Başlamadan önce şunlara sahip olduğunuzdan emin olun:

  1. Flex etkinleştirilmiş bir Twilio hesabı
  2. Twilio Account SID ve Auth Token’ınız
  3. Aktif kanallara (ses, SMS, sohbet veya WhatsApp) sahip bir Flex örneği
  4. Yapılandırılmış TaskRouter çalışma alanı
  5. API erişimi olan bir Brevo hesabı
  6. Etkin aboneliği olan bir Tajo hesabı

Kimlik Doğrulama

Twilio Flex, Twilio’nun standart kimlik doğrulama yöntemlerini kullanır.

Hesap Kimlik Bilgileri

Terminal window
# Basic Auth: kullanıcı adı olarak Account SID, parola olarak Auth Token
curl -X GET "https://flex-api.twilio.com/v1/Configuration" \
-u "$TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN"

API Anahtarı (Üretim için Önerilen)

  1. Twilio Console > Account > API keys & tokens bölümüne gidin
  2. Create API Key öğesine tıklayın
  3. Standard anahtar türünü seçin
  4. SID ve Secret’ı güvenli şekilde saklayın
Terminal window
curl -X GET "https://flex-api.twilio.com/v1/Configuration" \
-u "$TWILIO_API_KEY_SID:$TWILIO_API_KEY_SECRET"

Auth Token ve API Anahtarı Karşılaştırması

Auth Token’ınız tam hesap erişimine sahiptir. Üretim için bunun yerine kapsamlı API Anahtarları kullanın. API Anahtarları, diğer entegrasyonları etkilemeden tek tek iptal edilebilir.

Tajo’ya Bağlanma

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

Yapılandırma

Temel Kurulum

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

Alan Eşleştirme

Flex müşteri ve etkileşim verilerini Brevo özniteliklerine eşleyin:

field_mapping:
# Müşteri alanları
identity: FLEX_IDENTITY
friendly_name: FIRSTNAME
attributes.email: email
attributes.phone: SMS
# Etkileşim metrikleri
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
# Özel öznitelikler
customer_tier: VIP_TIER
account_id: ACCOUNT_ID

Olay Eşleştirme

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

API Uç Noktaları

Tajo, aşağıdaki Twilio Flex ve ilgili API uç noktalarıyla entegre olur:

Uç NoktaYöntemAPIAmaç
/v1/ConfigurationGETFlexFlex yapılandırmasını al
/v1/InteractionsGETFlexEtkileşimleri listele
/v1/ChannelsGETFlexFlex kanallarını listele
/v1/WebChannelsPOSTFlexWeb sohbet kanalı oluştur
/v1/ConversationsGETConversationsKonuşmaları listele
/v1/Conversations/{sid}/MessagesGETConversationsKonuşma mesajlarını listele
/v1/Conversations/{sid}/ParticipantsGETConversationsKatılımcıları listele
/v1/Workspaces/{sid}/TasksGETTaskRouterGörevleri listele
/v1/Workspaces/{sid}/WorkersGETTaskRouterÇalışanları (temsilcileri) listele
/v1/Workspaces/{sid}/TaskQueuesGETTaskRouterGörev sıralarını listele
/v1/Workspaces/{sid}/EventsGETTaskRouterÇalışma alanı olaylarını listele

Kod Örnekleri

Bağlayıcıyı Başlatma

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

Konuşma Geçmişini Senkronize Etme

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

Konuşma Sonrası Kampanya Tetikleyicisi

// Bir destek konuşması sona erdikten sonra Brevo takibini tetikle
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');
});

Flex Eklenti Entegrasyonu

// Bir Flex UI Eklentisi içinde - Tajo'ya veri gönder
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
})
});
});
}
}

Hız Sınırları

Twilio, API’leri genelinde hız sınırları uygular:

APIHız SınırıNotlar
Flex APIsaniyede 100 istekHesap başına
Conversations APIsaniyede 100 istekHesap başına
TaskRouter APIsaniyede 30 okuma isteğiÇalışma alanı başına
TaskRouter Eventssaniyede 20 istekÇalışma alanı başına

Event Streams

Yüksek hacimli olay işleme için TaskRouter olaylarını yoklamak yerine Twilio Event Streams kullanmayı düşünün. Event Streams olayları webhook’lar veya Kinesis aracılığıyla gerçek zamanlı olarak iletir.

Sorun Giderme

Yaygın Sorunlar

SorunNedenÇözüm
401 UnauthorizedGeçersiz SID veya belirteçTwilio Console’da Account SID ve Auth Token’ı doğrulayın
403 ForbiddenFlex etkin değilTwilio hesabınızda Flex’in etkinleştirildiğinden emin olun
Konuşmalar eksikYanlış tarih aralığıSenkronizasyon tarih aralığını genişletin veya konuşma durumunu kontrol edin
Görevler izlenmiyorTaskRouter çalışma alanı uyuşmazlığıDoğru çalışma alanı SID’sini doğrulayın
Eklenti tetiklenmiyorOlay dinleyicisi kaydedilmemişFlex eklentisinin dağıtıldığından ve aktif olduğundan emin olun

Hata Ayıklama Modu

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

Bağlantı Testi

Terminal window
tajo connectors test twilio-flex
# ✓ Flex API bağlantısı başarılı
# ✓ Conversations API erişilebilir
# ✓ TaskRouter çalışma alanı bulundu
# ✓ Temsilci listesi okunabilir
# ✓ Sıra yapılandırması yüklendi

En İyi Uygulamalar

  1. Auth Token yerine API Anahtarı kullanın - API Anahtarları kapsamlandırılabilir ve tek tek iptal edilebilir
  2. Event Streams’ten yararlanın - Push tabanlı olaylar TaskRouter yoklamaktan daha verimlidir
  3. Bir Flex Eklentisi oluşturun - Görev tamamlama olaylarını gerçek zamanlı yakalamak için UI eklentisi kullanın
  4. Kanalları tutarlı şekilde eşleyin - Sesli, SMS ve sohbet verilerini birleşik Brevo olaylarında normalize edin
  5. CSAT puanlarını izleyin - Deneyim odaklı segmentasyon için memnuniyet verilerini Brevo’ya senkronize edin
  6. Sıra metriklerini izleyin - Proaktif müşteri iletişimini tetiklemek için bekleme süresi verilerini kullanın

Güvenlik

  • Account SID + Auth Token - Standart Twilio kimlik doğrulaması
  • API Anahtarları - Üretim kullanımı için iptal edilebilir, kök olmayan kimlik bilgileri
  • Yalnızca HTTPS - Tüm API iletişimi TLS 1.2+ ile şifrelenir
  • Webhook Doğrulaması - Twilio webhook imzalarını X-Twilio-Signature ile doğrulayın
  • PCI Uyumluluğu - Twilio Flex PCI DSS Level 1 uyumludur
  • Şifreli Depolama - Kimlik bilgileri Tajo’da şifreli olarak saklanır

İlgili Kaynaklar

Subscribe to updates

developer-docs

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

auto-detect
AI Asistan

Merhaba! Belgeler hakkında her şeyi sorabilirsiniz.