मुखपृष्ठ » कैसे » अपनी खुद की डिस्कोर्ड बॉट कैसे बनाएं

    अपनी खुद की डिस्कोर्ड बॉट कैसे बनाएं

    कस्टम बॉट, और एक बहुत सक्रिय बॉट समुदाय लिखने के लिए डिस्कॉर्ड में एक उत्कृष्ट एपीआई है। आज हम इस पर एक नज़र डालेंगे कि कैसे अपना बनाना शुरू करें.

    एक बॉट को कोड करने के लिए आपको थोड़ी बहुत प्रोग्रामिंग ज्ञान की आवश्यकता होगी, इसलिए यह सभी के लिए नहीं है, लेकिन सौभाग्य से लोकप्रिय भाषाओं के लिए कुछ मॉड्यूल हैं जो इसे करना बहुत आसान है। हम सबसे लोकप्रिय एक, discord.js का उपयोग करेंगे.

    शुरू करना

    डिस्कॉर्ड के बॉट पोर्टल पर जाएं, और एक नया एप्लिकेशन बनाएं.

    आप ग्राहक आईडी और गुप्त (जिसे आपको गुप्त रखना चाहिए, निश्चित रूप से) का एक नोट बनाना चाहते हैं। हालाँकि, यह बॉट नहीं है, सिर्फ "एप्लीकेशन।" आपको बॉट को "बॉट" टैब के तहत जोड़ना होगा.

    इस टोकन पर भी ध्यान दें और इसे गुप्त रखें। किसी भी परिस्थिति में, गीथुब के लिए यह कुंजी न करें। आपका बॉट लगभग तुरंत हैक हो जाएगा.

    Node.js स्थापित करें और कोडिंग प्राप्त करें

    एक वेबपेज के बाहर जावास्क्रिप्ट कोड चलाने के लिए, आपको नोड की आवश्यकता है। इसे डाउनलोड करें, इसे इंस्टॉल करें, और सुनिश्चित करें कि यह टर्मिनल में काम करता है (या कमांड प्रॉम्प्ट, क्योंकि यह सब विंडोज सिस्टम पर काम करना चाहिए)। डिफ़ॉल्ट आदेश "नोड" है।

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

    npm i -g nodemon

    आपको एक पाठ संपादक की आवश्यकता होगी। आप बस नोटपैड का उपयोग कर सकते हैं, लेकिन हम एटम या वीएससी की सलाह देते हैं.

    यहां हमारा "हैलो वर्ल्ड" है:

    const Discord = आवश्यकता ('discord.js'); const क्लाइंट = नया Discord.Client (); client.on ('ready',) () => कंसोल.लॉग ('लॉग इन $ client.user.tag!');); client.on ('message', msg => if (msg.content === 'ping') msg.reply ('pong');); client.login ( 'टोकन');

    यह कोड discord.js उदाहरण से लिया गया है। चलो इसे तोड़ दो.

    • क्लाइंट को कॉन्फ़िगर करने के लिए पहली दो लाइनें हैं। लाइन एक मॉड्यूल को एक वस्तु में आयात करता है जिसे "डिसॉर्ड" कहा जाता है और लाइन दो क्लाइंट ऑब्जेक्ट को इनिशियलाइज़ करता है.
    • client.on ( 'तैयार') बॉट शुरू होने पर ब्लॉक में आग लग जाएगी। यहाँ, यह टर्मिनल में अपना नाम लॉग करने के लिए कॉन्फ़िगर किया गया है.
    • client.on ( 'संदेश') ब्लॉक किसी भी चैनल पर एक नया संदेश पोस्ट किए जाने पर हर बार आग लगाएगा। बेशक, आपको संदेश सामग्री की जांच करनी होगी, और यही है अगर ब्लॉक करता है। यदि संदेश सिर्फ "पिंग" कहता है, तो यह "पोंग!" के साथ उत्तर देगा।
    • अंतिम पंक्ति बॉट पोर्टल से टोकन के साथ लॉग इन करती है। जाहिर है, यहां स्क्रीनशॉट में टोकन नकली है। कभी भी इंटरनेट पर अपना टोकन पोस्ट न करें.

    इस कोड को कॉपी करें, नीचे अपने टोकन में पेस्ट करें, और इसे इस रूप में सहेजें index.js एक समर्पित फ़ोल्डर में.

    बॉट को कैसे चलाएं

    अपने टर्मिनल पर जाएं, और निम्नलिखित कमांड चलाएँ:

    nodemon --inspect index.js

    यह स्क्रिप्ट शुरू करता है, और क्रोम डीबगर को भी फायर करता है, जिसे आप टाइप करके एक्सेस कर सकते हैं chrome: // निरीक्षण /  क्रोम के ओम्निबार में और फिर "नोड के लिए समर्पित भक्तों को खोलना"।

    अब, इसे केवल "लॉग इन इन" कहना चाहिए, लेकिन यहां मैंने एक लाइन जोड़ी है जो कंसोल को प्राप्त सभी संदेश ऑब्जेक्ट्स को लॉग करेगी:

    तो क्या यह संदेश वस्तु बनाता है? बहुत सारा सामान, वास्तव में:

    सबसे विशेष रूप से, आपके पास लेखक की जानकारी और चैनल की जानकारी है, जिसे आप msg.author और msg.channel के साथ एक्सेस कर सकते हैं। मैं क्रोम नोड devtools पर वस्तुओं को लॉग करने की इस विधि की सिफारिश करता हूं, और बस यह देखने के लिए चारों ओर देख रहा हूं कि यह क्या काम करता है। आपको कुछ रोचक लग सकता है। यहाँ, उदाहरण के लिए, बॉट अपने उत्तरों को कंसोल में लॉग करता है, इसलिए बॉट के उत्तरों को ट्रिगर करता है client.on ( 'संदेश'). तो, मैंने एक स्पैम्बोट बनाया:

    ध्यान दें: इस के साथ सावधान रहें, क्योंकि आप वास्तव में पुनरावृत्ति से निपटना नहीं चाहते हैं.

    अपने सर्वर में बॉट को कैसे जोड़ें

    यह हिस्सा जितना होना चाहिए, उससे कहीं ज्यादा कठिन है। आपको यह URL लेना है:

    https://discordapp.com/oauth2/authorize?client_id=CLIENTID&scope=bot

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

    ठीक है, तो मैं क्या कर सकता हूँ?

    बेसिक सेटअप से परे, कुछ और पूरी तरह से आपके ऊपर है। लेकिन, अगर हम हैलो वर्ल्ड में रुक जाते हैं, तो यह एक ट्यूटोरियल नहीं होगा, तो चलिए कुछ डॉक्यूमेंटेशन पर चलते हैं, इसलिए आपके पास बेहतर विचार है। मेरा सुझाव है कि आप जितना भी पढ़ सकें, पढ़ लें, क्योंकि यह बहुत अच्छी तरह से प्रलेखित है.

    मैं जोड़ने की सलाह दूंगा console.log (ग्राहक) अपने कोड की शुरुआत, और कंसोल में क्लाइंट ऑब्जेक्ट पर एक नज़र रखना:

    यहां से, आप बहुत कुछ सीख सकते हैं। चूँकि आप एक साथ कई सर्वरों में बॉट जोड़ सकते हैं, सर्वर इसका हिस्सा हैं गिल्ड नक्शा वस्तु। उस ऑब्जेक्ट में व्यक्तिगत गिल्ड (जो "सर्वर" के लिए एपीआई का नाम है) और उन गिल्ड ऑब्जेक्ट्स में चैनल सूचियां हैं जिनमें सभी जानकारी और संदेशों की सूची है। एपीआई बहुत गहरी है, और सीखने में थोड़ा समय लग सकता है, लेकिन कम से कम इसे स्थापित करना और सीखना शुरू करना आसान है.