स्लैक बोल्ट API और Node.js का उपयोग करके स्लैकबॉट बनाएं
![](https://post.nghiatu.com/assets/images/m/max/724/1*O2u_yKBoPMCf7KiGqB6vCw.png)
ढीला
स्लैक एक लोकप्रिय टीम संचार उपकरण है जो आपकी टीम के वर्कफ़्लो को सरल बनाने के लिए कई प्रकार के एकीकरण और एक्सटेंशन प्रदान करता है । ऐसा ही एक विस्तार स्लैक बॉट है , जो कार्यों को स्वचालित करने और संचार को अधिक कुशल बनाने में मदद करता है।
इस ट्यूटोरियल में, मैं आपको दिखाऊंगा कि नोड.जेएस के साथ स्लैक ऐप्स बनाने के लिए बोल्ट, स्लैक की लाइब्रेरी का उपयोग करके एक स्लैक बॉट कैसे बनाया जाता है जो आपके संदेश के साथ इंटरैक्ट कर सकता है।
पूर्वापेक्षाएँ:
आरंभ करने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित हैं:
· Node.js v12 या उच्चतर आपकी मशीन पर स्थापित है
· एनपीएम आपकी मशीन पर स्थापित है
· JavaScript की बुनियादी समझ, Node.js
किसी कार्यस्थान में बॉट को स्थापित करने के चरण
एक नया स्लैक वर्कस्पेस बनाएं
स्लैक वर्कस्पेस बनाने के लिए नीचे दिए गए चरणों का पालन करें -
1. स्लैक वेबसाइट पर जाएं और 2. एक नया कार्यक्षेत्र बनाएं
पर क्लिक करें 3. अपना ईमेल पता दर्ज करें 4. सेटअप प्रक्रिया को पूरा करने के लिए ऑन-स्क्रीन निर्देशों का पालन करें 5. सत्यापन लिंक पर क्लिक करें आपके ईमेल पते को सत्यापित करने और अपने नए स्लैक कार्यक्षेत्र का उपयोग शुरू करने के लिए ईमेल। 6. चैनल बनाएं, टीम के सदस्यों को आमंत्रित करें, और अपने नए बनाए गए कार्यक्षेत्र में तुरंत संदेश भेजें।
एक नया स्लैक ऐप बनाएं
एक नया स्लैक ऐप बनाने के लिए नीचे दिए गए चरणों का पालन करें - 1. स्लैक एपीआई वेबसाइट
पर जाएं 2. ऐप बनाएं पर क्लिक करें 3. क्रिएट न्यू ऐप पर क्लिक करें 4. अपने ऐप को एक नाम दें और उस कार्यक्षेत्र का चयन करें जिसे आप इसे जोड़ना चाहते हैं। 5. एक बार जब आप ऐसा कर लेते हैं, तो आपको अपने ऐप के मूल सूचना पृष्ठ पर पुनर्निर्देशित कर दिया जाना चाहिए।
![](https://post.nghiatu.com/assets/images/m/max/724/1*6qZ_GDh5oFNLts3zMaKSBA.png)
ओ प्रमाणीकरण और अनुमतियां
इससे पहले कि आपका ऐप स्लैक के साथ संचार कर सके ऐप अनुमतियां सेट करें। आपको ऐप अनुमतियां सेट करने की आवश्यकता है। ऐसा करने के लिए, OAuth और अनुमतियाँ पृष्ठ पर जाएँ और नीचे स्कोप तक स्क्रॉल करें। अपने ऐप में निम्न दायरे जोड़ें:
![](https://post.nghiatu.com/assets/images/m/max/724/1*NvGcIwv00lbhN-kqVuc8Ng.png)
अपने कार्यक्षेत्र में ऐप इंस्टॉल करना
उपरोक्त सभी कॉन्फ़िगरेशन के साथ, ऐप को अब वर्कस्पेस में इंस्टॉल किया जा सकता है। बाएं साइडबार में, सेटिंग → ऐप्स इंस्टॉल करें → वर्कस्पेस पर इंस्टॉल करें पर जाएं ।
![](https://post.nghiatu.com/assets/images/m/max/724/1*wc7pzQvlKh3HxKvPoemcdg.png)
नोट: गोपनीयता संबंधी चिंताओं के कारण स्थापना भाग मुश्किल हो सकता है। प्रत्येक संगठन अपनी प्रक्रिया को आंतरिक रूप से परिभाषित करता है। अपने संगठन के कार्यस्थल में ऐप इंस्टॉल करते समय कृपया इसे ध्यान में रखें। आप स्थापना प्रक्रिया की पूर्वापेक्षाओं के लिए अपने स्लैक व्यवस्थापक से भी जांच कर सकते हैं।
स्लैकबॉट सर्वर सेटअप
अब कुछ कोड लिखते हैं। आपको स्लैकबॉट के लिए एक सर्वर को कॉन्फ़िगर करने की आवश्यकता है जो स्लैकबॉट के लिए भेजे गए अनुरोधों को संभाल सके। कोडिंग का समय !!
नाम के साथ एक निर्देशिका बनाएँ test-bot
और npm आरंभ करें:
mkdir test-bot && cd test-bot
npm init -y
- स्लैक/बोल्ट: इसके विवरण के अनुसार, स्लैक प्लेटफॉर्म के साथ प्रोग्रामिंग शुरू करने का यह सबसे तेज़ तरीका है
- dotenv: यह एक शून्य-निर्भरता मॉड्यूल है जो पर्यावरण चर को .env फ़ाइल से process.env में लोड करता है
yarn add @slack/bolt
yarn add -D dotenv
बॉट के साथ संचार करने से पहले, Slack को पहले आपके बॉट को SIGNING_SECRET
और a से सत्यापित करना होगा BOT_TOKEN
। दोनों को .env फ़ाइल में संग्रहीत किया जाना चाहिए ताकि Git का उपयोग करते समय वे उजागर न हों।
- SIGNING_SECRET: बुनियादी जानकारी → ऐप क्रेडेंशियल्स → साइनिंग सीक्रेट पर नेविगेट करें।
- BOT_TOKEN: सेटिंग पर नेविगेट करें → ऐप इंस्टॉल करें → बॉट उपयोगकर्ता oAuth टोकन।
SLACK_SIGNING_SECRET="YOUR SIGNING SECRET"
SLACK_BOT_TOKEN="YOUR BOT TOKEN"
नामक एक फ़ाइल बनाएँ index.js
, इसे अपनी बॉट निर्देशिका के रूट स्तर पर रखें, और निम्न कोड जोड़ें:
const { App } = require("@slack/bolt");
require("dotenv").config();
// Initializes your app with credentials
const app = new App({
token: process.env.SLACK_BOT_TOKEN,
signingSecret: process.env.SLACK_SIGNING_SECRET,
});
(async () => {
const port = 3000
await app.start(process.env.PORT || port);
console.log('Bolt app started!!');
})();
![](https://post.nghiatu.com/assets/images/m/max/724/1*MzZeV6rDGxwUhb0l0yd-_Q.png)
स्लैकबॉट और हमारा सर्वर कैसे संचार करते हैं
आपके स्लैक ऐप/बॉट को आपके द्वारा बनाए गए सर्वर तक पहुंचने का एक तरीका चाहिए localhost
। स्लैक में सॉकेट मोड नामक एक सुविधा है जो स्लैक को आपके एप्लिकेशन सर्वर से कनेक्ट करने के लिए वेबसाकेट का उपयोग करने की अनुमति देती है।
सेटिंग्स → बेसिक इंफो → ऐप लेवल टोकन पर जाएं। जनरेट टोकन और स्कोप बटन पर क्लिक करें । अपने टोकन को एक नाम दें और अपने ऐप को दो उपलब्ध स्कोप दें:
- कनेक्शन: लिखें
- प्राधिकरण: पढ़ें
![](https://post.nghiatu.com/assets/images/m/max/724/1*ZjDUbvJnu-5NKb6m7A3p7g.png)
इसके बाद सेटिंग → सॉकेट मोड पर जाएं । सक्षम सॉकेट मोड स्विच को टॉगल करें । अंत में, अपनी index.js
फाइल पर जाएं और उस कोड को अपडेट करें जो आपके app
साथ socketMode:true
और आपके को प्रारंभ करता है appToken
:
const app = new App({
token: process.env.SLACK_BOT_TOKEN,
signingSecret: process.env.SLACK_SIGNING_SECRET,
socketMode:true, // enable to use socket mode
appToken: process.env.APP_TOKEN
});
![](https://post.nghiatu.com/assets/images/m/max/724/1*_KQZGsZtlgLZzN9hUzEaVQ.png)
स्लैक में संदेश
आप अपने बॉट का उल्लेख कर सकते हैं या @ और अतिरिक्त पाठ शामिल कर सकते हैं जो आपके बॉट को एक संदेश के रूप में भेजा जाएगा।
स्लैक में, ऐप का उल्लेख एक घटना है । आप अन्य घटनाओं को भी सुन सकते हैं जैसे जब कोई नया उपयोगकर्ता किसी चैनल से जुड़ता है, एक नया चैनल बनाया जाता है, आदि। अपने बॉट/एप को घटनाओं को सुनने की अनुमति देने के लिए, आपको एक घटना सदस्यता स्थापित करने की आवश्यकता होती है।
चूंकि हमने सॉकेट मोड सक्षम किया है, इसलिए हमें स्पष्ट URL निर्दिष्ट करने की आवश्यकता नहीं है।
![](https://post.nghiatu.com/assets/images/m/max/724/1*uGq8a05MZ4rO8DyQjdXgoA.png)
अब, हमें ऐप को कुछ ईवेंट अनुमतियाँ देने की आवश्यकता है। बॉट ईवेंट ड्रॉपडाउन मेनू की सदस्यता लें क्लिक करें और निम्न ईवेंट जोड़ें:
संदेशों से जुड़ी चार घटनाएं हैं।
message.channels
: सार्वजनिक चैनलों में संदेशों को सुनता हैmessage.groups
: निजी चैनलों में संदेशों को सुनता हैmessage.im
: उपयोगकर्ताओं के साथ आपके ऐप के DMs में संदेशों को सुनता हैmessage.mpim
: बहु-व्यक्ति डीएम में संदेशों को सुनता है
![](https://post.nghiatu.com/assets/images/m/max/724/1*WodjrHfTwtaYHqrSvYhckw.png)
app.message("hey", async ({ command, say }) => {
try {
say("Hello Human!");
} catch (error) {
console.log("err")
console.error(error);
}
});
ऐप सेटिंग पेज पर वापस जाएं । फीचर्स के तहत , ऐप होम मेनू विकल्प पर क्लिक करें। नीचे स्क्रॉल करें और संदेश टैब से उपयोगकर्ताओं को स्लैश कमांड और संदेश भेजने की अनुमति के साथ बॉक्स को चेक करें ।
![](https://post.nghiatu.com/assets/images/m/max/724/1*N0Sl1GsfdeX_kI5G7qcGwA.png)
CMD + R
यदि आप Mac पर हैं और CTRL + R
यदि आप PC पर हैं, तो स्लैक को पुनः लोड करें । अब, आपको अपने बॉट को संदेश भेजने में सक्षम होना चाहिए।
ऐप पर वापस जाएं test-bot
और एक संदेश भेजें जैसे @test-bot hey
। आपको बॉट से जवाब मिलना चाहिए।
![](https://post.nghiatu.com/assets/images/m/max/724/1*s5YoZYoW6JXZQDAd5USJRg.png)
हर बार हम वास्तव में सटीक शब्दों का मिलान नहीं कर पाते हैं। हमें यह जांचने का एक तरीका चाहिए कि उपयोगकर्ता हमारे बॉट को जो संदेश भेज रहा है, उसमें कोई कीवर्ड है या उसका केवल कुछ हिस्सा है। उसके लिए, स्लैक हमें रेगेक्स एक्सप्रेशंस का उपयोग करने की अनुमति देता है। उदाहरण के लिए, आइए ऊपर उपयोग किए गए कोड ब्लॉक को इस तरह दिखने के लिए अपडेट करें:
// matches any string with RegEx
app.message(/hi/, async ({ command, say }) => {
try {
say("Hello Human!");
} catch (error) {
console.log("err")
console.error(error);
}
});
![](https://post.nghiatu.com/assets/images/m/max/724/1*H676P-IDfWFUP3cvS0ywMQ.png)
मुझे आशा है कि आपने बॉट बनाने का आनंद लिया है जो आपके संदेश को सुन सकता है और आपके संदेश का उत्तर दे सकता है।
ऐसी कई गतिविधियाँ हैं जो बॉट कर सकता है। ये सभी यहां पाए जा सकते हैं:https://slack.dev/bolt-js/concepts
#slackbot #Javascript #nodejs