---
title: "Konektor Slack"
description: "Kompletní průvodce integrací Slack pro odesílání notifikací, synchronizaci dat kanálů a spouštění automatizací Brevo z událostí Slack přes Tajo."
url: https://tajo.io/cz/docs/connectors/custom/slack/
markdown: https://tajo.io/cz/docs/connectors/custom/slack.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 Slack

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ůj pracovní prostor Slack s Brevo přes Tajo pro notifikace marketingu v reálném čase, týmové upozornění na zákaznické události a automatizaci pracovních toků spouštěnou interakcemi Slack.

## Přehled

| Vlastnost | Hodnota |
| --- | --- |
| **Platforma** | Slack |
| **Kategorie** | Vlastní integrace |
| **Složitost nastavení** | Snadná |
| **Oficiální integrace** | Ne |
| **Synchronizovaná data** | Uživatelé, Kanály, Zprávy, Události |
| **Základní URL API** | `https://slack.com/api` |

## Funkce

- **Marketingová upozornění** – Odesílejte notifikace v reálném čase pro události kampaní, nové odběratele a příjmové milníky
- **Notifikace zákaznických událostí** – Upozorňujte týmy na hodnotné zákaznické akce z Brevo
- **Spouštěče pracovních toků** – Používejte interakce Slack (kliknutí na tlačítka, odeslání formulářů) pro spouštění automatizací Brevo
- **Směrování podle kanálů** – Směrujte notifikace do konkrétních kanálů na základě typu události nebo segmentu zákazníků
- **Synchronizace uživatelů** – Mapujte uživatele pracovního prostoru Slack na kontakty Brevo pro interní komunikaci
- **Interaktivní zprávy** – Odesílejte bohaté zprávy s tlačítky a akcemi pro týmové pracovní toky
- **Plánované zprávy** – Plánujte notifikace pro denní/týdenní marketingové shrnutí
- **Podpora vláken** – Seskupujte související notifikace ve vláknech pro organizovanou komunikaci

## Předpoklady

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

1. Pracovní prostor Slack s administrátorským přístupem
2. Aplikaci Slack vytvořenou na [api.slack.com/apps](https://api.slack.com/apps)
3. Bot token s požadovanými rozsahy
4. Účet Brevo s přístupem k API
5. Účet Tajo

## Ověření

### Bot Token (doporučeno)

Nainstalujte aplikaci Slack do svého pracovního prostoru a pro přístup k API použijte bot token.

1. Vytvořte aplikaci na [api.slack.com/apps](https://api.slack.com/apps)
2. Přidejte požadované rozsahy OAuth v části “OAuth & Permissions”
3. Nainstalujte aplikaci do pracovního prostoru
4. Zkopírujte Bot User OAuth Token (`xoxb-...`)

```bash
curl -X POST "https://slack.com/api/chat.postMessage" \
  -H "Authorization: Bearer xoxb-YOUR-BOT-TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"channel": "C01234567", "text": "Hello from Tajo!"}'
```

### OAuth 2.0

Pro distribuci integrace Slack do více pracovních prostorů:

```bash
# Autorizační URL
https://slack.com/oauth/v2/authorize?
  client_id={client_id}&
  scope=chat:write,channels:read,users:read&
  redirect_uri={redirect_uri}

# Výměna tokenů
curl -X POST "https://slack.com/api/oauth.v2.access" \
  -d "client_id={client_id}" \
  -d "client_secret={client_secret}" \
  -d "code={auth_code}"
```

#### Požadované rozsahy bota

```
chat:write           # Odesílání zpráv
channels:read        # Výpis kanálů
channels:history     # Čtení zpráv kanálu
users:read           # Výpis uživatelů pracovního prostoru
users:read.email     # Čtení e-mailových adres uživatelů
reactions:write      # Přidávání reakcí ke zprávám
files:write          # Nahrávání souborů
```

Přístup k e-mailu uživatele

Rozsah `users:read.email` je nutný pro párování uživatelů Slack s kontakty Brevo. Bez něj bude mapování uživatelů omezeno na zobrazovaná jména.

## Konfigurace

### Základní nastavení

```yaml
connectors:
  slack:
    enabled: true
    bot_token: "${SLACK_BOT_TOKEN}"
    signing_secret: "${SLACK_SIGNING_SECRET}"

    # Kanály pro notifikace
    channels:
      marketing: "C01234567"
      sales: "C01234568"
      support: "C01234569"
      alerts: "C01234570"

    # Směrování událostí
    notifications:
      new_subscriber:
        channel: marketing
        template: subscriber_alert
      high_value_order:
        channel: sales
        template: order_alert
      support_ticket:
        channel: support
        template: ticket_alert
```

### Mapování polí

Mapujte uživatelská data Slack na atributy kontaktů Brevo:

#### Výchozí mapování

| Parameter | Type | Description |
| --- | --- | --- |
| `profile.email` required | string | E-mail uživatele (jedinečný identifikátor pro párování v Brevo) |
| `real_name` optional | string | Celé jméno, rozdělené na FIRSTNAME/LASTNAME |
| `profile.phone` optional | string | Mapuje se na atribut SMS |
| `profile.title` optional | string | Pracovní pozice |
| `tz` optional | string | Časové pásmo uživatele |
| `is_admin` optional | boolean | Stav administrátora pracovního prostoru |
| `team_id` optional | string | ID týmu pracovního prostoru |
| `status_text` optional | string | Vlastní stav uživatele |

## Metody API

### Zasílání zpráv

| Metoda | Koncový bod | Popis |
| --- | --- | --- |
| `POST` | `chat.postMessage` | Odeslání zprávy do kanálu |
| `POST` | `chat.update` | Aktualizace existující zprávy |
| `POST` | `chat.delete` | Smazání zprávy |
| `POST` | `chat.scheduleMessage` | Naplánování zprávy |
| `POST` | `chat.postEphemeral` | Odeslání dočasné zprávy uživateli |

### Kanály

| Metoda | Koncový bod | Popis |
| --- | --- | --- |
| `GET` | `conversations.list` | Výpis kanálů |
| `GET` | `conversations.info` | Informace o kanálu |
| `GET` | `conversations.members` | Výpis členů kanálu |
| `GET` | `conversations.history` | Získání zpráv kanálu |

### Uživatelé

| Metoda | Koncový bod | Popis |
| --- | --- | --- |
| `GET` | `users.list` | Výpis uživatelů pracovního prostoru |
| `GET` | `users.info` | Informace o uživateli |
| `GET` | `users.lookupByEmail` | Vyhledání uživatele podle e-mailu |
| `GET` | `users.conversations` | Výpis kanálů uživatele |

### Interakce

| Metoda | Koncový bod | Popis |
| --- | --- | --- |
| `POST` | `views.open` | Otevření modálního zobrazení |
| `POST` | `views.update` | Aktualizace modálního zobrazení |
| `POST` | `reactions.add` | Přidání reakce emoji |

## Události

### Notifikace Brevo do Slack

| Událost | Spouštěč | Akce Slack |
| --- | --- | --- |
| `new_subscriber` | Vytvořen kontakt v Brevo | Příspěvek do #marketing |
| `campaign_sent` | Odeslána e-mailová kampaň | Zveřejnění shrnutí do #marketing |
| `order_placed` | Zjištěna hodnotná objednávka | Příspěvek do #sales s podrobnostmi |
| `cart_abandoned` | Košík opuštěn na 30 min | Příspěvek do #sales pro sledování |
| `ticket_created` | Otevřen supportní tiket | Příspěvek do #support |
| `unsubscribed` | Kontakt se odhlásil | Upozornění do #marketing |

### Spouštěče Slack do Brevo

| Událost Slack | Spouštěč | Akce Brevo |
| --- | --- | --- |
| `message_action` | Vlastní zástupce zprávy | Přidat kontakt do seznamu nebo spustit automatizaci |
| `block_actions` | Kliknutí na tlačítko ve zprávě | Aktualizovat atribut kontaktu nebo odeslat e-mail |
| `view_submission` | Odeslán modální formulář | Vytvořit kontakt nebo spustit pracovní tok |

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

// Připojení Slack
await tajo.connectors.connect('slack', {
  botToken: process.env.SLACK_BOT_TOKEN,
  signingSecret: process.env.SLACK_SIGNING_SECRET
});
```

### Odesílání marketingových notifikací

```javascript
// Odeslání notifikace při hodnotné objednávce
await tajo.slack.notify({
  channel: 'sales',
  event: 'order_placed',
  data: {
    customerEmail: 'customer@example.com',
    orderValue: '$1,250.00',
    products: ['Premium Widget', 'Pro Service'],
    isFirstOrder: true
  },
  template: {
    blocks: [
      {
        type: 'header',
        text: { type: 'plain_text', text: 'New High-Value Order' }
      },
      {
        type: 'section',
        fields: [
          { type: 'mrkdwn', text: '*Customer:*\ncustomer@example.com' },
          { type: 'mrkdwn', text: '*Amount:*\n$1,250.00' }
        ]
      },
      {
        type: 'actions',
        elements: [
          {
            type: 'button',
            text: { type: 'plain_text', text: 'View in Brevo' },
            url: 'https://app.brevo.com/contacts'
          }
        ]
      }
    ]
  }
});
```

### Zpracování interakcí Slack

```javascript
import crypto from 'crypto';

app.post('/slack/interactions', async (req, res) => {
  // Ověření podpisu požadavku Slack
  const timestamp = req.headers['x-slack-request-timestamp'];
  const signature = req.headers['x-slack-signature'];
  const sigBasestring = `v0:${timestamp}:${req.rawBody}`;
  const mySignature = 'v0=' + crypto
    .createHmac('sha256', process.env.SLACK_SIGNING_SECRET)
    .update(sigBasestring)
    .digest('hex');

  if (signature !== mySignature) {
    return res.status(401).send('Unauthorized');
  }

  const payload = JSON.parse(req.body.payload);

  // Zpracování akcí tlačítek
  if (payload.type === 'block_actions') {
    await tajo.connectors.handleWebhook('slack', {
      type: 'interaction',
      action: payload.actions[0].action_id,
      userId: payload.user.id,
      payload
    });
  }

  res.status(200).send();
});
```

## Omezení rychlosti

Limity rychlosti Slack API používají vrstvený systém:

| Vrstva | Limit | Běžné metody |
| --- | --- | --- |
| Vrstva 1 | 1 požadavek/minutu | `chat.delete`, `conversations.kick` |
| Vrstva 2 | 20 požadavků/minutu | `conversations.history`, `users.info` |
| Vrstva 3 | 50 požadavků/minutu | `conversations.list`, `users.list` |
| Vrstva 4 | 100 požadavků/minutu | `chat.postMessage` |
| Speciální | Různé | `chat.postMessage` do stejného kanálu: 1/s |

Další limity:

- **Web API**: Burstový limit s krátkodobým omezováním
- **Events API**: Opakování doručení pro 3 pokusy
- **Příchozí webhooky**: 1 zpráva/s na URL webhooku
- **Block Kit**: Maximálně 50 bloků na zprávu

Rychlost příspěvků do kanálu

Příspěvky do stejného kanálu jsou omezeny přibližně na 1 zprávu za sekundu. Dávkujte notifikace nebo používejte vlákna pro zamezení omezování rychlosti.

## Řešení problémů

### Časté problémy

| Problém | Příčina | Řešení |
| --- | --- | --- |
| `not_authed` | Neplatný bot token | Přeinstalujte aplikaci a zkopírujte nový bot token |
| `channel_not_found` | Bot není v kanálu | Pozvěte bota do cílového kanálu |
| `missing_scope` | Požadovaný rozsah nebyl udělen | Přidejte rozsah a přeinstalujte aplikaci |
| Událost nebyla přijata | Odběr událostí není nastaven | Nakonfigurujte URL Event Subscriptions |
| Timeout interakce | Odpověď >3 sekundy | Okamžitě odpovězte s 200, zpracovávejte asynchronně |

### Režim ladění

Povolte podrobné protokolování:

```yaml
connectors:
  slack:
    debug: true
    log_level: verbose
    log_events: true
```

### Test připojení

```bash
tajo connectors test slack
# ✓ Bot token platný
# ✓ Pracovní prostor přístupný
# ✓ Kanály čitelné
# ✓ Odesílání zpráv povoleno
# ✓ Odběry událostí aktivní
```

## Osvědčené postupy

1. **Používejte Block Kit** – Vytvářejte bohaté, interaktivní zprávy s frameworkem Block Kit Slack
2. **Reagujte rychle** – Potvrzujte interakce do 3 sekund, zpracovávejte asynchronně
3. **Vlákněte související zprávy** – Seskupujte související notifikace ve vláknech pro snížení šumu
4. **Směrujte podle kanálu** – Odesílejte různé typy událostí do příslušných týmových kanálů
5. **Zahrňte akční tlačítka** – Přidávejte tlačítka “View in Brevo” pro rychlý přístup k zákaznickým datům
6. **Implementujte unfurling** – Zobrazujte bohaté náhledy pro odkazy Brevo sdílené ve Slack

## Zabezpečení

- **Bot Token** – Přístupový token s rozsahem OAuth a granulovanými oprávněními
- **Podepisování požadavků** – Ověření podpisu HMAC SHA-256 pro příchozí požadavky
- **OAuth 2.0** – Průmyslově standardní autorizace pro distribuci do více pracovních prostorů
- **Šifrování TLS** – Veškerá komunikace API šifrována přes HTTPS
- **Rotace tokenů** – Automatická rotace tokenů pro zvýšené zabezpečení

## Související zdroje

- [Dokumentace Slack API](https://api.slack.com/methods)
- [Slack Block Kit Builder](https://app.slack.com/block-kit-builder)
- [Slack Events API](https://api.slack.com/events-api)
- [Konektor Brevo](https://tajo.io/cz/docs/connectors/marketing/brevo)
- [Dovednost synchronizace zákazníků](https://tajo.io/cz/docs/skills/data-sync/customer-sync)
