---
title: "Konektor Twilio Flex"
description: "Kompletní průvodce integrací Twilio Flex pro synchronizaci interakcí kontaktního centra, aktivity agentů a zákaznických konverzací s Brevo přes Tajo."
url: https://tajo.io/cz/docs/connectors/custom/twilio-flex/
markdown: https://tajo.io/cz/docs/connectors/custom/twilio-flex.md
lang: cs-CZ
robots: noindex
---

Požádejte o přednostní přístup

Zadejte své jméno a pracovní e-mailovou adresu. Pošleme vám odkaz pro potvrzení žádosti o přístup k Tajo.

# Konektor Twilio Flex

Stav konektoru: Plánováno Zatím nevytvořeno. Tajo tento konektor dnes neprovozuje.

| Zdrojové pole | Cílové pole | Ukázková hodnota |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Propojte své kontaktní centrum Twilio Flex s Brevo pro sjednocenou historii zákaznických interakcí, marketingové toky po konverzaci a analytiku zapojení řízenou podporou přes Tajo.

## Přehled

| Vlastnost | Hodnota |
| --- | --- |
| **Platforma** | Twilio Flex |
| **Kategorie** | Vlastní |
| **Složitost nastavení** | Pokročilá |
| **Oficiální integrace** | Ne |
| **Synchronizovaná data** | Zákazníci, Konverzace, Události |
| **Použitá API** | Flex API, Conversations API, TaskRouter API |
| **Ověření** | Account SID + Auth Token / API klíč |
| **Základní URL** | `https://flex-api.twilio.com` |

## Funkce

- **Synchronizace konverzací** – Přeposílejte hlasové, SMS, WhatsApp a chatové interakce do časových os Brevo
- **Obohacení zákaznického profilu** – Synchronizujte zákaznická data Flex na atributy kontaktů Brevo
- **Kampaně po interakci** – Spouštějte pracovní toky Brevo po ukončení konverzací podpory
- **Sledování událostí CSAT** – Synchronizujte výsledky průzkumů spokojenosti jako události Brevo
- **Data o aktivitě agentů** – Sledujte metriky výkonu agentů pro operační reporting
- **Analytika front** – Přeposílejte data o čekací době a opuštění pro optimalizaci zkušenosti

## Předpoklady

Než začnete, ujistěte se, že máte:

1. Účet Twilio s povoleným Flex
2. Account SID a Auth Token Twilio
3. Instanci Flex s aktivními kanály (hlas, SMS, chat nebo WhatsApp)
4. Nakonfigurovaný workspace TaskRouter
5. Účet Brevo s přístupem k API
6. Účet Tajo s aktivním předplatným

## Ověření

Twilio Flex používá standardní metody ověřování Twilio.

### Přihlašovací údaje účtu

```bash
# Základní ověření: Account SID jako uživatelské jméno, Auth Token jako heslo
curl -X GET "https://flex-api.twilio.com/v1/Configuration" \
  -u "$TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN"
```

### API klíč (doporučeno pro produkci)

1. Přejděte do **Twilio Console** > **Account** > **API keys & tokens**
2. Klikněte na **Create API Key**
3. Vyberte typ klíče **Standard**
4. Bezpečně uložte SID a Secret

```bash
curl -X GET "https://flex-api.twilio.com/v1/Configuration" \
  -u "$TWILIO_API_KEY_SID:$TWILIO_API_KEY_SECRET"
```

Auth Token vs API klíč

Váš Auth Token má plný přístup k účtu. Pro produkci používejte místo toho vymezené API klíče. API klíče lze odvolat jednotlivě bez narušení ostatních integrací.

### Připojení k Tajo

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

## Konfigurace

### Základní nastavení

```yaml
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
```

### Mapování polí

Mapujte zákaznická a interakční data Flex na atributy Brevo:

```yaml
field_mapping:
  # Zákaznická pole
  identity: FLEX_IDENTITY
  friendly_name: FIRSTNAME
  attributes.email: email
  attributes.phone: SMS

  # Metriky interakcí
  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

  # Vlastní atributy
  customer_tier: VIP_TIER
  account_id: ACCOUNT_ID
```

### Mapování událostí

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

## Koncové body API

Tajo se integruje s následujícími koncovými body Twilio Flex a souvisejících API:

| Koncový bod | Metoda | API | Účel |
| --- | --- | --- | --- |
| `/v1/Configuration` | GET | Flex | Získání konfigurace Flex |
| `/v1/Interactions` | GET | Flex | Výpis interakcí |
| `/v1/Channels` | GET | Flex | Výpis kanálů Flex |
| `/v1/WebChannels` | POST | Flex | Vytvoření webového chat kanálu |
| `/v1/Conversations` | GET | Conversations | Výpis konverzací |
| `/v1/Conversations/{sid}/Messages` | GET | Conversations | Výpis zpráv konverzace |
| `/v1/Conversations/{sid}/Participants` | GET | Conversations | Výpis účastníků |
| `/v1/Workspaces/{sid}/Tasks` | GET | TaskRouter | Výpis úkolů |
| `/v1/Workspaces/{sid}/Workers` | GET | TaskRouter | Výpis pracovníků (agentů) |
| `/v1/Workspaces/{sid}/TaskQueues` | GET | TaskRouter | Výpis front úkolů |
| `/v1/Workspaces/{sid}/Events` | GET | TaskRouter | Výpis událostí workspace |

## Příklady kódu

### Inicializace konektoru

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

### Synchronizace historie konverzací

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

### Spuštění kampaně po konverzaci

```javascript
// Spuštění navazující akce Brevo po ukončení konverzace podpory
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');
});
```

### Integrace Flex pluginu

```javascript
// Uvnitř Flex UI pluginu - odesílání dat do Tajo
import { FlexPlugin } from '@twilio/flex-plugin';

class TajoPlugin extends FlexPlugin {
  init(flex, manager) {
    flex.Actions.addListener('afterCompleteTask', async (payload) => {
      await fetch('https://api.example.com/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
        })
      });
    });
  }
}
```

Caution

Adresa `example.com` výše je jen zástupná hodnota, dokud nebude endpoint Tajo dostupný.

## Omezení rychlosti

Twilio vynucuje limity rychlosti napříč svými API:

| API | Limit rychlosti | Poznámky |
| --- | --- | --- |
| **Flex API** | 100 požadavků/sekundu | Na účet |
| **Conversations API** | 100 požadavků/sekundu | Na účet |
| **TaskRouter API** | 30 požadavků čtení/sekundu | Na workspace |
| **TaskRouter Events** | 20 požadavků/sekundu | Na workspace |

Event Streams

Pro zpracování událostí ve velkém objemu zvažte použití Twilio Event Streams místo pollování událostí TaskRouter. Event Streams push události v reálném čase přes webhooky nebo Kinesis.

## Řešení problémů

### Časté problémy

| Problém | Příčina | Řešení |
| --- | --- | --- |
| 401 Unauthorized | Neplatné SID nebo token | Ověřte Account SID a Auth Token v Twilio Console |
| 403 Forbidden | Flex není povolen | Ujistěte se, že Flex je aktivován na vašem účtu Twilio |
| Chybějící konverzace | Špatný časový rozsah | Rozšiřte rozsah synchronizace nebo zkontrolujte stav konverzace |
| Nesledované úkoly | Neshoda workspace TaskRouter | Ověřte správné SID workspace |
| Plugin se nespouští | Posluchač událostí není registrován | Zkontrolujte, zda je Flex plugin nasazen a aktivní |

### Režim ladění

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

### Test připojení

```bash
tajo connectors test twilio-flex
# ✓ Připojení Flex API úspěšné
# ✓ Conversations API přístupné
# ✓ Nalezen workspace TaskRouter
# ✓ Seznam agentů čitelný
# ✓ Konfigurace front načtena
```

## Osvědčené postupy

1. **Používejte API klíče místo Auth Tokenů** – API klíče lze vymezit a individuálně odvolat
2. **Využívejte Event Streams** – Události na principu push jsou efektivnější než pollování TaskRouter
3. **Sestavte Flex plugin** – Používejte UI plugin pro zachytávání událostí dokončení úkolů v reálném čase
4. **Mapujte kanály konzistentně** – Normalizujte hlasová, SMS a chatová data do sjednocených událostí Brevo
5. **Sledujte skóre CSAT** – Synchronizujte data spokojenosti do Brevo pro segmentaci řízenou zkušeností
6. **Monitorujte metriky front** – Používejte data o čekací době pro spouštění proaktivní zákaznické komunikace

## Zabezpečení

- **Account SID + Auth Token** – Standardní ověřování Twilio
- **API klíče** – Odvolatelné, ne-root přihlašovací údaje pro produkční použití
- **Pouze HTTPS** – Veškerá API komunikace šifrovaná přes TLS 1.2+
- **Ověření webhooků** – Ověřujte podpisy webhooků Twilio pomocí `X-Twilio-Signature`
- **Soulad s PCI** – Twilio Flex splňuje PCI DSS Level 1
- **Šifrované úložiště** – Přihlašovací údaje šifrované v klidu v Tajo

## Související zdroje

- [Konektor Gorgias](https://tajo.io/cz/docs/connectors/support/gorgias)
- [Konektor Jira](https://tajo.io/cz/docs/connectors/custom/jira)
- [Dovednost synchronizace zákazníků](https://tajo.io/cz/docs/skills/data-sync/customer-sync)
- [Brevo Contacts API](https://tajo.io/cz/docs/contact-management)
