> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Slack

## जानकारी

Slack इंटीग्रेशन, ElevenLabs एजेंट को Slack में संदेश भेजने और पाने देता है। कनेक्ट होने के बाद, एजेंट का किसी चैनल में उल्लेख किए जाने पर वह थ्रेड में जवाब देता है और हर थ्रेड के लिए अलग बातचीत का कॉन्टेक्स्ट बनाए रखता है।

## क्षमताएं

| क्षमता                  | सहायता                                                                                                                                                                                  |
| ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ज़ीरो रिटेंशन मोड (ZRM) | समर्थित नहीं                                                                                                                                                                            |
| ट्रिगर में अटैचमेंट     | इनकमिंग संदेशों में इमेज (PNG, JPEG, GIF, WebP) और PDF फ़ाइलें, जब एजेंट सेटिंग्स में **फ़ाइल अटैचमेंट की अनुमति दें** सक्षम हो और एजेंट का LLM इमेज या डॉक्यूमेंट इनपुट सपोर्ट करता हो |
| टूल में अटैचमेंट        | समर्थित नहीं — टूल सिर्फ़ टेक्स्ट पर काम करते हैं                                                                                                                                       |

## सेटअप

इंटीग्रेशन कनेक्ट करने के दो तरीके देता है:

* **OAuth** — अपने वर्कस्पेस में साझा ElevenLabs Slack ऐप इंस्टॉल करें। एक Slack वर्कस्पेस, एक ElevenLabs कनेक्शन से मैप होता है। सबसे तेज़ सेटअप, Slack ऐप मैनेजमेंट की ज़रूरत नहीं।
* **अपना ऐप इस्तेमाल करें** — अपने बनाए और स्वामित्व वाले Slack ऐप से कनेक्ट करें। इसका इस्तेमाल तब करें, जब आपको बॉट अपने ब्रांड के तहत दिखाना हो या आपके वर्कस्पेस की नीतियों के अनुसार ऐप किसी एडमिन को इंस्टॉल करना हो।

### विकल्प A — OAuth

ऐप इंस्टॉल करने वाले यूज़र के पास लक्षित Slack वर्कस्पेस में ऐप जोड़ने की अनुमति होनी चाहिए।

#### इंटीग्रेशन पेज खोलें

ElevenLabs डैशबोर्ड में **Agents** > **Integrations** पर जाएं और **Slack** चुनें।

#### Connect पर क्लिक करें

**OAuth** क्रेडेंशियल चुनें और **Connect** पर क्लिक करें। आपको Slack पर रीडायरेक्ट किया जाएगा, जहां आप चुन सकते हैं कि ElevenLabs ऐप किस वर्कस्पेस में इंस्टॉल करना है और अनुरोधित स्कोप को मंज़ूरी दे सकते हैं।

#### रीडायरेक्ट पूरा करें

मंज़ूरी के बाद Slack आपको वापस ElevenLabs पर रीडायरेक्ट करता है और कनेक्शन बन जाता है। Slack वर्कस्पेस ID अपने-आप रिकॉर्ड होती है और ट्रिगर कॉन्फ़िगर करते समय इस्तेमाल होती है।

### विकल्प B — अपना Slack ऐप इस्तेमाल करें

अगर आप चाहते हैं कि बॉट आपके ऐप नाम और आइकन के साथ दिखे, या आपके वर्कस्पेस में ऐप्स को आपके एडमिन द्वारा रिव्यू और इंस्टॉल किया जाना ज़रूरी हो, तो इसका इस्तेमाल करें।

#### Slack ऐप बनाएं

[Slack API: Your Apps](https://api.slack.com/apps) पर जाएं और **Create New App** > **From scratch** पर क्लिक करें। ऐप को नाम दें और वह Slack वर्कस्पेस चुनें जिसमें इसे इंस्टॉल करना है।

#### बॉट स्कोप जोड़ें

**OAuth & Permissions** खोलें और ये Bot Token Scopes जोड़ें:

`app_mentions:read`, `channels:history`, `channels:join`, `channels:manage`, `chat:write`, `files:read`, `groups:history`, `groups:write`, `im:history`, `reactions:write`.

फिर **Install to Workspace** पर क्लिक करें और मंज़ूरी दें। **Bot User OAuth Token** कॉपी करें (`xoxb-` से शुरू होता है)।

#### साइनिंग सीक्रेट कॉपी करें

**Basic Information** > **App Credentials** खोलें और **Signing Secret** कॉपी करें।

#### ElevenLabs में कनेक्शन बनाएं

ElevenLabs डैशबोर्ड में **Integrations** पर जाएं, **Add integration** बटन पर क्लिक करें और **Slack** चुनें। **Bring your own app** क्रेडेंशियल चुनें। बॉट टोकन और साइनिंग सीक्रेट पेस्ट करें, फिर सेव करें। ElevenLabs Slack के साथ टोकन वेरिफ़ाई करता है और आपकी वर्कस्पेस id रिकॉर्ड करता है।

कनेक्शन बनने के बाद, कनेक्शन पेज आपके Slack ऐप की पहचान से बने दो वेबहुक URL दिखाता है। उसी ElevenLabs वर्कस्पेस से दोबारा कनेक्ट किया गया वही Slack ऐप हमेशा वही URL बनाता है — इसलिए आप Slack ऐप की कॉन्फ़िगरेशन फिर से अपडेट किए बिना कनेक्शन हटा और दोबारा बना सकते हैं। अगले चरणों के लिए वह पेज खुला रखें।

#### Event Subscriptions कॉन्फ़िगर करें

अपने Slack ऐप में **Event Subscriptions** खोलें, इवेंट सक्षम करें और ElevenLabs कनेक्शन पेज से **Events URL** को **Request URL** में पेस्ट करें। Slack आपके दिए साइनिंग सीक्रेट से URL वेरिफ़ाई करेगा।

चैनलों में एजेंट का व्यवहार कैसा हो, इसके आधार पर बॉट इवेंट्स सब्सक्राइब करें:

* **सिर्फ़ उल्लेख** — `app_mention` सब्सक्राइब करें। एजेंट सिर्फ़ तब जवाब देता है, जब कोई यूज़र बॉट को `@`-मेंशन करता है।
* **सभी संदेश** — `message.channels` और `message.groups` सब्सक्राइब करें। एजेंट उन चैनलों में हर संदेश का जवाब देता है जिनमें बॉट है, बिना मेंशन के।

अगर आप **SlackDirectMessage** ट्रिगर इस्तेमाल करते हैं, तो `message.im` भी सब्सक्राइब करें।

जब तक आप डुप्लिकेट डिलीवरी संभालना नहीं चाहते, `app_mention` और `message.*` चैनल इवेंट्स दोनों सब्सक्राइब न करें। जब कोई यूज़र बॉट को `@`-मेंशन करता है, Slack उसी संदेश के लिए `app_mention` और `message` दोनों इवेंट भेज सकता है, जिससे एजेंट दो बार जवाब देता है।

#### Interactivity कॉन्फ़िगर करें

**Interactivity & Shortcuts** खोलें, इंटरैक्टिविटी सक्षम करें और ElevenLabs कनेक्शन पेज से **Interactivity URL** को **Request URL** में पेस्ट करें।

#### मांगे जाने पर दोबारा इंस्टॉल करें

अगर स्कोप या इवेंट बदलने के बाद Slack ऐप दोबारा इंस्टॉल करने के लिए कहे, तो बदलाव लागू करने के लिए ऐसा करें।

> **Note**
>
> साझा ElevenLabs OAuth ऐप के ज़रिए एक Slack वर्कस्पेस को सिर्फ़ एक बार कनेक्ट किया जा सकता है। किसी अलग ElevenLabs वर्कस्पेस से दोबारा इंस्टॉल करने पर `duplicate Slack workspace` त्रुटि मिलती है — पहले मौजूदा कनेक्शन हटाएं। अपने ऐप वाले कनेक्शन स्वतंत्र होते हैं और इनमें टकराव नहीं होता।

## OAuth स्कोप

ElevenLabs Slack ऐप इन स्कोप का अनुरोध करता है:

| स्कोप               | उद्देश्य                                                                                         |
| ------------------- | ------------------------------------------------------------------------------------------------ |
| `app_mentions:read` | वे संदेश पाएं जिनमें बॉट को `@`-मेंशन किया गया है।                                               |
| `channels:history`  | उन पब्लिक चैनलों के संदेश पढ़ें जिनमें बॉट है।                                                   |
| `channels:join`     | ट्रिगर बनने पर बॉट को पब्लिक चैनलों में अपने-आप शामिल होने दें।                                  |
| `channels:manage`   | चैनल मैनेजमेंट कार्रवाइयां करें।                                                                 |
| `chat:write`        | चैनलों और थ्रेड में संदेश पोस्ट करें।                                                            |
| `files:read`        | संदेशों से अटैच की गई फ़ाइलें डाउनलोड करें, ताकि एजेंट इमेज और PDF पढ़ सके।                      |
| `groups:history`    | उन प्राइवेट चैनलों के संदेश पढ़ें जिनमें बॉट है।                                                 |
| `groups:write`      | प्राइवेट चैनलों में काम करें।                                                                    |
| `im:history`        | बॉट के साथ डायरेक्ट मैसेज चैनलों के संदेश पढ़ें।                                                 |
| `reactions:write`   | रिएक्शन जोड़ें और हटाएं, जिनका इस्तेमाल संदेशों और एजेंट टूल के थिंकिंग इंडिकेटर के लिए होता है। |

## एजेंट टूल

जब आप किसी एजेंट में Slack टूल जोड़ते हैं, तो ये बिल्ट-इन टूल उपलब्ध होते हैं:

| टूल                     | विवरण                                                                                                                                                                                                                                                                                                                                                                                                   |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `slack_add_reaction`    | इमोजी रिएक्शन जोड़ता है। डिफ़ॉल्ट रूप से, चैनल और संदेश `ts` को `integration__slack_channel_id` और `integration__slack_trigger_message_ts` से भरा जाता है; मॉडल सिर्फ़ इमोजी शॉर्टकोड चुनता है (कोलन के बिना), उदाहरण के लिए `thumbsup`। Slack-ट्रिगर वाली बातचीत के बाहर ये वेरिएबल मौजूद नहीं होते, जब तक आप उन्हें सेट न करें—अगर मॉडल को चैनल और `ts` साफ़ तौर पर पास करना हो, तो टूल स्कीमा बदलें। |
| `slack_remove_reaction` | इमोजी रिएक्शन हटाता है (जोड़ने वाले टूल जैसे ही डिफ़ॉल्ट)। Slack के अनुसार, कॉल करने वाला बॉट सिर्फ़ वही रिएक्शन हटा सकता है जिन्हें उसने खुद जोड़ा था; [reactions.remove](https://docs.slack.dev/reference/methods/reactions.remove) देखें।                                                                                                                                                            |

## कनेक्शन हटाना

**Integrations** पेज से कनेक्शन हटाने पर Slack वर्कस्पेस से ElevenLabs Slack ऐप अनइंस्टॉल हो जाता है। हटाने के बाद, बॉट किसी भी चैनल में मौजूद नहीं रहता।

अपने ऐप वाले कनेक्शन के लिए, ElevenLabs उस ऐप को अनइंस्टॉल नहीं कर सकता जिसका स्वामित्व उसका नहीं है — कनेक्शन हटाने से सिर्फ़ लोकल मैपिंग हटती है। अपने Slack वर्कस्पेस से बॉट को पूरी तरह हटाने के लिए, Slack एडमिन सेटिंग्स से ऐप अनइंस्टॉल करें।

## ट्रिगर कॉन्फ़िगर करें

इंटीग्रेशन एक ट्रिगर, **SlackMessage**, उपलब्ध कराता है। कॉन्फ़िगर किए गए चैनल में बॉट को नया यूज़र संदेश दिखने पर यह सक्रिय होता है।

#### SlackMessage ट्रिगर जोड़ें

अपने एजेंट के कॉन्फ़िगरेशन पेज पर नया ट्रिगर जोड़ें और **SlackMessage** चुनें।

#### एजेंट और चैनल चुनें

ट्रिगर फ़ील्ड कॉन्फ़िगर करें:

* **Agent**: बातचीत संभालने वाला एजेंट।
* **Channel ID**: Slack चैनल ID, उदाहरण के लिए `C0123456789`। UI में Slack में चैनल खोलने के लिए डीप लिंक मिलता है।

#### ट्रिगर सेव करें

ट्रिगर सेव करें। ElevenLabs बॉट को पब्लिक चैनलों में अपने-आप आमंत्रित करता है। बाद में ट्रिगर हटाने पर बॉट वह चैनल छोड़ देता है।

> **Info**
>
> Slack ऐप्स को प्राइवेट चैनलों में अपने-आप शामिल होने की अनुमति नहीं देता। प्राइवेट चैनल के लिए, ट्रिगर सेव करने के बाद उस चैनल में `/invite
>   @Eleven` चलाएं, ताकि बॉट संदेश देख सके।

> **Warning**
>
> हर `(Slack workspace, channel)` जोड़ी के लिए सिर्फ़ एक ट्रिगर की अनुमति है। डुप्लिकेट बनाने के बजाय मौजूदा ट्रिगर संपादित करें।

## DM ट्रिगर कॉन्फ़िगर करें

**SlackDirectMessage** ट्रिगर किसी भी Slack यूज़र को बॉट को डायरेक्ट मैसेज भेजकर एजेंट से चैट करने देता है। चैनल ट्रिगर के विपरीत, इसमें `@` मेंशन की ज़रूरत नहीं है — बॉट के साथ DM में यूज़र का भेजा हर संदेश प्रोसेस होता है।

#### SlackDirectMessage ट्रिगर जोड़ें

अपने एजेंट के कॉन्फ़िगरेशन पेज पर नया ट्रिगर जोड़ें और **SlackDirectMessage** चुनें।

#### एजेंट चुनें

DM बातचीत संभालने वाला **Agent** चुनें।

#### ट्रिगर सेव करें

ट्रिगर सेव करें। वर्कस्पेस का कोई भी Slack यूज़र अब बॉट के साथ DM खोलकर बातचीत शुरू कर सकता है।

> **Info**
>
> BYO ऐप्स के लिए, सुनिश्चित करें कि आपने `message.im` बॉट इवेंट सब्सक्राइब किया है और `im:history` बॉट स्कोप जोड़ा है। इन्हें जोड़ने के बाद मांगे जाने पर ऐप दोबारा इंस्टॉल करें।

> **Warning**
>
> हर Slack कनेक्शन के लिए सिर्फ़ एक DM ट्रिगर की अनुमति है। एजेंट बदलने के लिए, मौजूदा ट्रिगर संपादित करें।

## Slack में बॉट से बात करना

ट्रिगर सक्रिय होने और बॉट के चैनल में होने के बाद, चैनल थ्रेड में बातचीत शुरू करें। थ्रेड कैसे जारी रखना है, यह आपके Slack ऐप के इवेंट सब्सक्रिप्शन पर निर्भर करता है (OAuth सिर्फ़-उल्लेख वाला व्यवहार इस्तेमाल करता है)।

### सिर्फ़-उल्लेख (`app_mention`)

#### उल्लेख के साथ थ्रेड शुरू करें

नया थ्रेड शुरू करने के लिए चैनल में बॉट का उल्लेख करें, उदाहरण के लिए `@Eleven what's the status of
    order 1234?`। बॉट उस संदेश के नीचे थ्रेड में जवाब देता है।

#### थ्रेड जारी रखें

जिन संदेशों का जवाब आप बॉट से चाहते हैं, उन सभी में बॉट का फिर से उल्लेख करें, उसी थ्रेड के अंदर फॉलो-अप में भी। उल्लेख के बिना संदेशों को अनदेखा किया जाता है।

### सभी संदेश (`message.channels`, `message.groups`)

#### थ्रेड शुरू करें

उस चैनल में कोई भी संदेश भेजें जहां बॉट मौजूद है। बॉट उस संदेश के नीचे थ्रेड में जवाब देता है। आपको बॉट को `@`-मेंशन करने की ज़रूरत नहीं है।

#### थ्रेड जारी रखें

बॉट का उल्लेख किए बिना उसी थ्रेड में जवाब दें। थ्रेड का हर नया संदेश प्रोसेस होता है।

जब बॉट जवाब बना रहा होता है, वह यूज़र के ट्रिगर करने वाले संदेश पर `:eyes:` रिएक्शन जोड़ता है और जवाब पोस्ट होने पर उसे हटा देता है।

Channel Message ट्रिगर की **Respond to messages from** सेटिंग तय करती है कि कौन एजेंट को ट्रिगर कर सकता है:

* **Only humans** (डिफ़ॉल्ट): दूसरे बॉट और Slack वर्कफ़्लो के संदेशों को अनदेखा किया जाता है। यह सुरक्षित डिफ़ॉल्ट है और मौजूदा ट्रिगर का व्यवहार बनाए रखता है।
* **Humans and bots**: दूसरे बॉट और वर्कफ़्लो से पोस्ट किए गए संदेश (लेगसी `bot_message` इवेंट्स समेत) भी एजेंट को ट्रिगर करते हैं।

दोनों सेटिंग में बॉट हमेशा अपने संदेशों को अनदेखा करता है — Slack के साइन किए वेबहुक में बॉट-यूज़र और ऐप पहचान का इस्तेमाल करके — इसलिए खुद का उल्लेख होने पर भी वह कभी खुद को जवाब नहीं देता। वह संपादित संदेशों (`message_changed`) और हटाए गए संदेशों (`message_deleted`) को भी अनदेखा करता रहता है। यह `message` और `app_mention` इवेंट संभालता है और पब्लिक व प्राइवेट दोनों चैनलों में काम करता है।

> **Note**
>
> सिर्फ़ `bot_id` वाले लेगसी बॉट इवेंट भेजने वाले की पहचान करते हैं, लेकिन पाने वाले ऐप की नहीं। इन्हें दूसरे बॉट के संदेश माना जाता है; इस Slack ऐप के लिए सेल्फ़-लूप डिटेक्शन आधुनिक Slack इवेंट पेलोड में शामिल बॉट-यूज़र या ऐप पहचान का इस्तेमाल करता है।

> **Warning**
>
> अगर आपका Slack ऐप `app_mention` और `message.channels` / `message.groups` दोनों सब्सक्राइब करता है, तो एक `@`-मेंशन से एजेंट के दो जवाब ट्रिगर हो सकते हैं। दोनों में से सिर्फ़ एक मोड सब्सक्राइब करें।

## बातचीत मॉडल

बातचीत ID हर `(agent_id, channel_id, thread_ts)` के लिए निर्धारित होती है:

* नया Slack थ्रेड, नई ElevenLabs बातचीत से मैप होता है।
* उसी थ्रेड को जारी रखने पर वही बातचीत जारी रहती है, जिसमें ट्रांसक्रिप्ट हिस्ट्री और डायनामिक वेरिएबल शामिल हैं।

चैट हिस्ट्री बनाते समय, बॉट Slack थ्रेड को सीधे पढ़ता है। Slack सदस्यों और दूसरे बॉट के संदेशों को यूज़र टर्न माना जाता है, जबकि बॉट के अपने संदेशों को एजेंट टर्न माना जाता है। एजेंट के प्रोसेस करने से पहले बॉट यूज़र के उल्लेख (`<@BOT_USER_ID>`) को `@<agent_name>` में फिर से लिखा जाता है।

### डायनामिक वेरिएबल

जब कोई एजेंट Slack से चलता है, तो प्रॉम्प्ट और टूल में ये डायनामिक वेरिएबल उपलब्ध होते हैं:

| वेरिएबल                                 | विवरण                                                                                       |
| --------------------------------------- | ------------------------------------------------------------------------------------------- |
| `integration__slack_channel_id`         | Slack चैनल ID।                                                                              |
| `integration__slack_thread_ts`          | Slack थ्रेड टाइमस्टैम्प।                                                                    |
| `integration__slack_user_id`            | Slack भेजने वाले की ID। यह यूज़र ID है, या बिना यूज़र वाले लेगसी बॉट इवेंट्स के लिए बॉट ID। |
| `integration__slack_team_id`            | Slack वर्कस्पेस (टीम) ID।                                                                   |
| `integration__slack_connection_id`      | ElevenLabs इंटीग्रेशन कनेक्शन ID।                                                           |
| `integration__slack_trigger_message_ts` | उस संदेश का Slack `ts` जिसने इस एजेंट टर्न को ट्रिगर किया (चैनल में यूनिक संदेश ID)।        |

इन्हें प्रॉम्प्ट और टूल कॉल में रेफरेंस करने का तरीका जानने के लिए [डायनामिक वेरिएबल](/docs/hi/eleven-agents/customization/personalization/dynamic-variables) देखें।

## समस्या निवारण

### फ़ाइल अटैचमेंट काम नहीं कर रहे

जब कोई यूज़र Slack में इमेज या PDF अटैच करता है, लेकिन एजेंट उसे प्रोसेस नहीं करता (या ऐसा व्यवहार करता है जैसे कोई फ़ाइल भेजी ही न गई हो), तो नीचे दिए गए जांच चरणों का पालन करें।

#### पुष्टि करें कि Slack ऐप में files:read है

बॉट को Slack से अटैचमेंट डाउनलोड करने के लिए `files:read` बॉट स्कोप चाहिए।

* **अपना ऐप इस्तेमाल करें** — [Slack API: Your Apps](https://api.slack.com/apps) में अपना ऐप खोलें, **OAuth & Permissions** पर जाएं और देखें कि **Bot Token Scopes** के तहत `files:read` सूचीबद्ध है। अगर आपने इसे हाल ही में जोड़ा है, तो ऐप को अपने वर्कस्पेस में दोबारा इंस्टॉल करें, ताकि टोकन नया स्कोप ले सके।

#### पुष्टि करें कि एजेंट मॉडल फ़ाइल इनपुट सपोर्ट करता है

फ़ाइल अटैचमेंट तभी फ़ॉरवर्ड होते हैं जब एजेंट का LLM मल्टीमॉडल इनपुट सपोर्ट करता हो — फ़ाइल प्रकार के आधार पर इमेज इनपुट और/या डॉक्यूमेंट (PDF) इनपुट। एजेंट कॉन्फ़िगरेशन में **Agent** टैब खोलें और चुना गया मॉडल देखें। अगर मॉडल अटैचमेंट प्रकार सपोर्ट नहीं करता, तो ऐसा मॉडल चुनें जो करता हो।

#### एजेंट सेटिंग्स में Allow file attachments सक्षम करें

एजेंट के कॉन्फ़िगरेशन पेज पर **Settings** > **Advanced** खोलें। **Multimodal input** के तहत **Allow file attachments** चालू करें। एजेंट सेव करें। इस सेटिंग के बिना, Slack अटैचमेंट को अनदेखा किया जाता है, भले ही Slack ऐप और मॉडल फ़ाइलें सपोर्ट करते हों।

## उपयोगी लिंक

* [Slack API दस्तावेज़](https://api.slack.com/docs)
* [Slack ऐप अनुमतियां](https://api.slack.com/scopes)