Přeskočit na obsah

Jak připojit ChatbotIQ ke Slacku

Propojte bota ChatbotIQ se svým pracovním prostorem ve Slacku, aby se ho kolegové mohli ptát v kanálech nebo v přímých zprávách. Každé vlákno ve Slacku se stane samostatnou konverzací ve vašem Přehledu ChatbotIQ a započítá se do stejného tarifu jako chaty z webového widgetu.


  • Musíte být Admin nebo Owner pracovního prostoru ChatbotIQ.
  • Musíte být Owner pracovního prostoru ve Slacku, do kterého chcete aplikaci nainstalovat. Slack totiž instalaci aplikací mimo Slack Marketplace povoluje jen vlastníkům.
  • Bot ChatbotIQ, kterého chcete použít, už musí existovat. Který bot bude odpovídat, lze později přepnout bez opětovné instalace.

Připojení Slacku k botovi

Sekce “Připojení Slacku k botovi”
  1. Otevřete bota v Přehledu.
  2. Kliknutím na “Design a nasazení” otevřete Playground.
  3. Přepněte na záložku Nasazení.
  4. Klikněte na dlaždici Slack a poté na “Připojit ke Slacku”.
  5. Slack vás vyzve k výběru pracovního prostoru a schválení potřebných oprávnění. Klikněte na Allow.
  6. Vrátíte se zpět na záložku Nasazení, kde uvidíte Připojeno k {vašemu pracovnímu prostoru}.

Ve Slacku teď můžete:

  • Napsat botovi přímou zprávu (DM): otevřete bota v postranním panelu (nebo ho najděte přes hledání „ChatbotIQ“ v sekci Apps) a prostě pište. Přímé zprávy fungují hned po instalaci, bez dalšího nastavení.
  • Zmínit bota v kanálu: @ChatbotIQ jaké jsou naše zásady vrácení peněz? Bot ale musí být nejdřív členem daného kanálu (viz níže).
  • Pokračovat ve vlákně: znovu bota zmiňte. Každá odpověď ve vlákně vyžaduje @ChatbotIQ, stejně jako u slackových aplikací Claude od Anthropic nebo ChatGPT od OpenAI. Tak to platforma Slack podporuje.

Zatímco bot přemýšlí, potvrdí vaši zprávu reakcí :hourglass:, a pak odpoví přímo ve vlákně. Zdroje, ze kterých odpověď vychází, se připojí jako patička s číslovanými citacemi.

Přidání bota do kanálu

Sekce “Přidání bota do kanálu”

Kvůli soukromí doručuje Slack zmínky v kanálu jen botům, kteří jsou jeho členy. Bota přidáte takto:

  • napište do kanálu /invite @ChatbotIQ, nebo
  • napište rovnou @ChatbotIQ <vaše otázka>. Slack zobrazí dialog “This person isn’t in the channel. Add ChatbotIQ?”, kde kliknete na Add to Channel, nebo
  • otevřete panel s detaily kanálu → záložka Integrations → Add apps → vyberte ChatbotIQ.

Jakmile je bot členem, zmínky v daném kanálu fungují, dokud ho někdo neodebere. Bot vidí jen zprávy, ve kterých je výslovně zmíněn, běžnou konverzaci v kanálu nečte (právě proto si neřekneme o oprávnění channels:history).

Při instalaci se boti často automaticky přidají do hromadného kanálu pracovního prostoru (např. #all-yourcompany). To řídí nastavení výchozích kanálů vašeho Slacku, ne my.


Přepnutí, který bot odpovídá ve Slacku

Sekce “Přepnutí, který bot odpovídá ve Slacku”

V jednom pracovním prostoru ve Slacku může najednou odpovídat jen jeden bot ChatbotIQ. Přepnete ho takto:

  1. Otevřete záložku Nasazení u nového bota, kterého chcete použít.
  2. V panelu Slack uvidíte hlášku „Směruje na bota {jiný bot}“.
  3. Klikněte na “Použít ve Slacku tohoto bota místo něj”.

Připojení ke Slacku zůstane zachované, takže nemusíte nic přeinstalovávat ani znovu vydávat tokeny.


Na záložce Nasazení u připojeného bota klikněte na “Odpojit”. Bot okamžitě přestane ve Slacku odpovídat. Historie konverzací vám v Přehledu ChatbotIQ zůstane.

Když se později rozhodnete pro opětovnou instalaci, projdete znovu celým OAuth procesem. Po odpojení si tokeny neukládáme.


Přejmenování bota ve Slacku

Sekce “Přejmenování bota ve Slacku”

Ve výchozím nastavení se bot ve všech pracovních prostorech, které aplikaci nainstalují, zobrazuje jako ChatbotIQ. Chcete-li mu u sebe dát vlastní jméno, třeba Acme Support nebo Pricefx Helper, může ho admin vašeho Slacku přejmenovat přímo zevnitř Slacku.

Nejdřív se musíte dostat na stránku Installed Apps svého pracovního prostoru. Nejrychleji takto:

  1. Ve Slacku klikněte na název pracovního prostoru vlevo nahoře, poté na Settings & administration. Zvolte tu z těchto možností, kterou vidíte (štítek se liší podle tarifu): Manage apps • Manage integrations • Apps & integrations.
  2. Stránka, která se načte, má URL https://app.slack.com/apps-manage/<TEAM_ID>/integrations/installed. Pokud je zkratku v menu těžké najít, můžete tuto URL také vložit přímo (nahraďte <TEAM_ID> ID vašeho pracovního prostoru).

Jakmile jste na stránce Installed Apps:

  1. Najděte ChatbotIQ v seznamu (v případě potřeby použijte vyhledávací pole Description includes) a klikněte na jeho jméno.
  2. Přepněte na záložku Configuration.
  3. Pod Bot Users klikněte na Edit vedle bota.
  4. Napište nové jméno do dialogu Edit bot name a klikněte na Save Changes.

Nové jméno se použije pouze pro váš pracovní prostor, ostatní pracovní prostory, které aplikaci nainstalují, stále vidí “ChatbotIQ”. Přejmenování nemění OAuth oprávnění, tokeny ani nic na naší straně.

Pokud je vaše organizace na Enterprise Grid, cesta je podobná, ale směrovaná přes organizaci: Tools & settings → Organization settings → Integrations → Installed Apps, poté odtud otevřete ChatbotIQ.


Ve stejném dialogu Bot Users → Edit může admin pracovního prostoru obvykle spolu se jménem nahrát i vlastní avatar. Slack ukládá avatar pro každý pracovní prostor zvlášť, stejně jako jméno. Pokud chcete avatar, který bude výchozí pro všechny pracovní prostory, ozvěte se nám. Nastavuje se na úrovni ikony aplikace na api.slack.com a spravuje ho ChatbotIQ.


Slack tokeny dávají aplikaci široký přístup k pracovnímu prostoru zákazníka. Integraci jsme proto navrhli tak, aby případné narušení databáze, odcizený tajný klíč nebo zlomyslně přehraná událost zůstaly izolované.

Příchozí (Slack → ChatbotIQ)

Sekce “Příchozí (Slack → ChatbotIQ)”
  • HMAC podpis na každém webhooku. Každá událost, kterou Slack pošle, je podepsána signing secretem vaší Slack aplikace. Podpis ověřujeme na surovém těle požadavku (porovnání v konstantním čase) před parsováním JSON. Padělaná nebo pozměněná událost je odmítnuta s HTTP 401.
  • Okno přehrání 5 minut. Události s časovým razítkem starším než 5 minut jsou odmítnuty, i když je podpis platný. Brání útočníkovi, který zachytí platnou událost a přehraje ji později.
  • Idempotence. Slack opakuje události, když je nepotvrdíme do 3 sekund. Deduplikujeme podle Slackova event_id v Redis s 5minutovým oknem, takže opakování nikdy nezpůsobí dvojité odpovědi ani dvojí účtování.
  • Omezení četnosti na tým. Každý Slack pracovní prostor je omezen na 300 událostí za minutu / 10 000 za hodinu dosahujících našeho workeru, bez ohledu na platnost podpisu. Omezuje dosah jakéhokoli kompromitovaného tajemství.
  • Limit velikosti těla. Datové sady větší než 64 KB jsou odmítnuty před ověřením podpisu. Slack události jsou obvykle 1-5 KB; cokoli většího je buď špatně nakonfigurováno, nebo nepřátelské.
  • Ochrana napříč tenanty. Po načtení instalačního záznamu pro Slack pracovní prostor znovu ověřujeme, že příchozí team_id odpovídá - čímž zabraňujeme jakékoli chybě směrovat událost jednoho zákazníka k botovi jiného zákazníka.
  • Filtr zpráv bot-bot a vlastních zpráv. Zprávy zveřejněné jinými boty (nebo náhodou naším vlastním botem) jsou zahozeny bez zpracování. Brání útokům typu prompt-injection prostřednictvím konverzace mezi boty.
  • Ochrana proti CSRF. Každé instalaci je vydán jednorázový, 10minutový, kryptograficky náhodný state token uložený na straně serveru v Redis. Token je smazán, jakmile ho OAuth callback spotřebuje.
  • PKCE (Proof Key for Code Exchange) při každé instalaci. Brání zachycení autorizačního kódu během přenosu.
  • Přesná shoda redirect URI. Slack vynucuje, aby OAuth redirect URL odpovídala tomu, co je pro naši aplikaci zaregistrováno, znak po znaku. Odcizené client_id nelze přesměrovat jinam.
  • Instalace pouze pro admina. Instalaci mohou zahájit pouze admini nebo vlastníci pracovního prostoru ChatbotIQ. State token váže instalaci k uživateli ChatbotIQ, který ji inicioval.
  • Šifrováno v klidovém stavu. Slack přístupové tokeny a refresh tokeny jsou šifrovány pomocí Fernet (AES-128-CBC + HMAC-SHA-256) klíčem drženým mimo databázi aplikace. Snímek databáze nebo únik zálohy nevydá použitelné tokeny.
  • Nikdy nelogováno. OAuth datové sady odpovědí nejsou nikdy logovány, pouze chybový kód. Dešifrované tokeny zůstávají v paměti po dobu jednoho volání API.
  • Podpora rotace tokenů. Pokud se na straně Slacku přihlásíte k rotaci, přístupové tokeny vyprší každých 12 hodin. Obnovujeme je proaktivně (5minutový předstih) pomocí šifrovaného refresh tokenu a nový pár ukládáme atomicky. Token uniklý v hodině 11 je v hodině 13 neplatný.

Odchozí (ChatbotIQ → Slack)

Sekce “Odchozí (ChatbotIQ → Slack)”
  • Rozbalování odkazů vypnuto. Každý chat.postMessage, který posíláme, nastavuje unfurl_links=false a unfurl_media=false. To blokuje nepřímý prompt-injection útok ve stylu Slack-AI, kde by zlomyslný odkaz v odpovědi bota mohl exfiltrovat data přes Slackův nástroj pro načítání náhledů.
  • Minimální oprávnění. Požadujeme pouze app_mentions:read, chat:write, im:history, im:read a reactions:write. Žádné channels:history (nevidíme zprávy v kanálu, pokud nejsme přímo zmíněni), žádné users:read (nečteme uživatelské profily), žádné files:read. Každé oprávnění je odůvodnitelné a používané.
  • Záloha v podobě prostého textu. Pokud Slack z jakéhokoli důvodu odmítne naše bohaté bloky zpráv, automaticky to opakujeme jako prostý text, aby odpověď přesto dosáhla uživatele - obrana do hloubky proti tichým selháním.
  • Události instalace, odinstalace a přeřazení bota jsou zapisovány do auditního logu s ID uživatele aktéra, IP adresou a User-Agentem.
  • Data konverzací, zpráv a citací zachycená ze Slacku jsou uložena stejným způsobem jako chaty webového widgetu a jsou pokryta našimi postupy Bezpečnost a soukromí.
  • Data, která dostáváme od Slacku, jsou cokoli, co váš tým napíše ve zmínkách nebo přímých zprávách - neodebíráme historii kanálu. Slack je zpracovatel dat pro vaše zprávy během přenosu; ChatbotIQ je sub-zpracovatel.

PříznakPravděpodobná příčinaOprava
Tlačítko “Připojit ke Slacku” nic neděláProhlížeč zablokoval přesměrováníZkuste to znovu v nesoukromé záložce nebo vypněte blokování vyskakovacích oken
OAuth obrazovka říká “Apologies, but ChatbotIQ can’t be installed”Jste přihlášeni do Slack pracovního prostoru, kde nejste vlastníkemPřepněte pracovní prostor (vpravo nahoře na obrazovce souhlasu) nebo se přihlaste do toho, který vlastníte
Bot neodpovídá na @mention v kanáluBot není členem daného kanáluSpusťte /invite @ChatbotIQ v kanálu nebo @mention a použijte Slackovu výzvu “Add to Channel”
Bot neodpovídá na zprávu ve vlákněNezmínili jste bota (@mention) v odpovědiZnovu zmiňte bota - Slack doručuje zprávy z vlákna aplikacím pouze tehdy, když jsou výslovně zmíněny
Bot odpovídá na zmínky v kanálu, ale ne na přímé zprávyBot byl odinstalován nebo bylo odebráno oprávnění pro DMOdpojte a znovu připojte ze záložky Nasazení
Dlouhá odpověď oříznuta s “…response truncated. Try a more specific question.”Odpověď byla příliš dlouhá, aby se vešla do limitů bloků zpráv Slacku, takže byla rozdělena do bloků a omezenaPoložte užší otázku; celá odpověď je ve vašem Přehledu v sekci Konverzace
Všechny odpovědi se zobrazují jako prostý text bez formátováníSlack odmítl datovou sadu Block Kit a my jsme se vrátili k prostému textuNahlaste to podpoře - pravděpodobně okrajový případ tvaru obsahu v našem zpracování Markdownu

Když bot přestane reagovat úplně, podívejte se v Přehledu na stránku Konverzace: řádek se stavem slack, ale bez odpovědi asistenta znamená, že jsme událost přijali, ale odpověď se nepodařila (chyba workeru, vyčerpané kredity nebo výpadek poskytovatele LLM).