शुरुआत से टेलीग्राम बॉट कैसे बनाएं: शुरुआती गाइड
टेलीग्राम बॉट बनाने की शुरुआत BotFather और एक API टोकन से होती है, न कि किसी फ्रेमवर्क के चुनाव से। यहाँ पहले टोकन से लेकर ऑनलाइन रहने वाले बॉट तक का शुरुआती रास्ता बताया गया है।
Michael Chenएक छोटी दुकान के मालिक को हर दिन टेलीग्राम डीएम में वही तीन सवाल मिलते हैं: शिपिंग का समय, रिटर्न पॉलिसी, और स्टॉक रिप्लेनिशमेंट की तारीखें। इनका जवाब हाथ से देने में दोपहर के खाने से पहले ही एक घंटा बर्बाद हो जाता है। एक दोस्त सुझाव देता है कि इसे संभालने के लिए एक बॉट बनाया जाए। मालिक ने कभी कोड की एक लाइन भी नहीं लिखी है।
अच्छी खबर: टेलीग्राम बॉट के पहले वर्जन के लिए ज़्यादा कोड की ज़रूरत नहीं होती, और इसमें से किसी के लिए भी टेलीग्राम के सर्वर को सीधे छूने की ज़रूरत नहीं है। सब कुछ एक आधिकारिक टूल के ज़रिए रूट होता है जो ठीक इसी काम के लिए बनाया गया है।
फ्रेमवर्क नहीं, BotFather से शुरू करें
हर टेलीग्राम बॉट एक ही तरह से शुरू होता है, @BotFather के साथ बातचीत के ज़रिए, जो टेलीग्राम का अपना बॉट बनाने वाला बॉट है। इसके साथ चैट खोलें, /newbot भेजें, एक डिस्प्ले नाम चुनें, फिर एक यूज़रनेम जो "bot" पर खत्म होता है। BotFather तुरंत एक API टोकन देता है। वह टोकन टेलीग्राम के सर्वर के लिए बॉट का पासवर्ड है, और जिसके पास भी यह होगा, वह बॉट को कंट्रोल कर सकता है, इसलिए इसे वैसे ही ट्रीट करें जैसे आप किसी साइट के एडमिन क्रेडेंशियल्स को ट्रीट करते हैं, न कि किसी पब्लिक ग्रुप में पेस्ट करने या पब्लिक कोड रिपॉजिटरी में कमिट करने वाली चीज़ के रूप में।
इस बिंदु पर तकनीकी रूप से आपके पास एक काम करने वाला बॉट है। यह अभी कुछ नहीं करता, क्योंकि कोई कोड उसे भेजे गए संदेशों को सुन नहीं रहा है।
ट्यूटोरियल चुनने से पहले एक भाषा चुनें
अधिकांश शुरुआती गाइड Python को डिफ़ॉल्ट रूप से चुनते हैं क्योंकि कम्युनिटी लाइब्रेरीज़ परिपक्व हैं और सिंटैक्स सादे अंग्रेजी के करीब पढ़ा जाता है। Node.js उन लोगों के लिए उपयुक्त है जो पहले से JavaScript में सहज हैं, खासकर अगर किसी बॉट को आपके पहले से चल रहे वेब ऐप से बात करनी हो। बड़ी टीमें कभी-कभी Java या Go की ओर बढ़ती हैं जब बॉट को भारी ट्रैफ़िक संभालना होता है, लेकिन पहले प्रोजेक्ट के लिए यह शायद ही शुरुआती बिंदु होता है।
| भाषा | सामान्य सेटअप समय (उदाहरणात्मक) | सबसे उपयुक्त |
|---|---|---|
| Python | बेसिक रिप्लाई बॉट के लिए 30-60 मिनट | पहला बॉट, त्वरित प्रोटोटाइप |
| Node.js / JavaScript | 30-60 मिनट | टीमें जो पहले से JS बैकएंड चला रही हैं |
| Java या Go | न्यूनतम सेटअप के लिए आधा दिन या उससे अधिक | उच्च-ट्रैफ़िक या एंटरप्राइज़ बॉट |
नोट: सेटअप का समय डेवलपर के अनुभव के अनुसार काफी भिन्न होता है; ऊपर दिए गए आंकड़े उदाहरणात्मक अनुमान हैं, मापे गए बेंचमार्क नहीं।
पहले वर्जन को क्या करना चाहिए
कुछ भी परीक्षण करने से पहले हर फीचर बनाने की इच्छा का विरोध करें। एक काम करने वाला पहला वर्जन आमतौर पर तीन व्यवहारों को कवर करता है: /start कमांड का अभिवादन के साथ जवाब देना, कुछ निश्चित कीवर्ड का जवाब देना, और जो कुछ भी पहचान में नहीं आता उसे एक इंसान को फॉरवर्ड करना। यह आखिरी हिस्सा जितना लगता है उससे कहीं अधिक मायने रखता है। जो बॉट अप्रत्याशित इनपुट पर चुप हो जाते हैं, वे छोटी फीचर सेट वाले बॉट की तुलना में उपयोगकर्ताओं को कहीं अधिक निराश करते हैं।
/startऔर/helpका जवाब बॉट की क्षमताओं के एक छोटे मेनू के साथ दें।- कीवर्ड के एक छोटे सेट से मिलान करें जो आपके वास्तविक दोहराए जाने वाले सवालों से जुड़े हों, न कि अनुमानित सूची से।
- जब कुछ मेल न खाए तो चुप्पी के बजाय "एक इंसान संपर्क करेगा" पर फॉलबैक करें।
एक बार जब यह लूप विश्वसनीय रूप से काम करता है, तो शेड्यूल किए गए पोस्ट, ग्रुप मैनेजमेंट कमांड, या डेटाबेस लुकअप जोड़ना एक रीबिल्ड के बजाय एक छोटा कदम बन जाता है।
बॉट को कहाँ रहना चाहिए
आपके लैपटॉप पर बैठा कोड जैसे ही आप ढक्कन बंद करते हैं, जवाब देना बंद कर देता है। एक बॉट जिसे लगातार चलना है, उसे एक ऐसे होस्ट की ज़रूरत है जो चालू रहे: एक छोटा VPS, एक कंटेनर प्लेटफ़ॉर्म, या एक सर्वरलेस फंक्शन जो इनकमिंग मैसेज पर जागता है। कम ट्रैफ़िक वाले बॉट के लिए इनमें से कोई भी विकल्प महंगा होने की ज़रूरत नहीं है।
| होस्टिंग विकल्प | मासिक लागत (बेंचमार्क) | सबसे उपयुक्त |
|---|---|---|
| फ्री-टियर सर्वरलेस फंक्शन | हल्के ट्रैफ़िक के लिए $0 | सरल रिप्लाई बॉट, परीक्षण |
| छोटा VPS | $4-$10 | बॉट जिन्हें अन्य बैकग्राउंड टास्क भी चलाने हों |
| मैनेज्ड कंटेनर प्लेटफ़ॉर्म | $5-$20 | टीमें जो कम सर्वर रखरखाव चाहती हैं |
नोट: कीमतें मोटे, उदाहरणात्मक रेंज हैं जो प्रदाता और क्षेत्र के अनुसार बदलती हैं, निश्चित कोटेशन नहीं।
अगर आपके बॉट को किसी विशिष्ट देश से सुसंगत दिखने की ज़रूरत है, चाहे क्षेत्रीय परीक्षण के लिए या क्योंकि आपका दर्शक भौगोलिक रूप से केंद्रित है, तो प्रॉक्सी मार्केटप्लेस के माध्यम से एक रेज़िडेंशियल कनेक्शन एक विकल्प है जिसका उपयोग लोग अपने होस्टिंग सेटअप के साथ करते हैं, जो बॉट कोड से अलग है। आप जो भी होस्ट चुनें, आधिकारिक टेलीग्राम बॉट API दस्तावेज़ीकरण वह संदर्भ है जिसे शुरुआती कमांड से आगे बढ़ने पर बुकमार्क करना उचित है।
लाइव होने से पहले एक छोटी चेकलिस्ट
बॉट को सार्वजनिक रूप से घोषित करने से पहले इन चरणों से गुज़रना शुरुआती सहायता संबंधी अधिकांश सिरदर्द से बचाता है।
- API टोकन को एक एनवायरनमेंट वेरिएबल में स्टोर करें, कभी भी सीधे उस कोड में नहीं जिसे आप साझा या कमिट कर सकते हैं।
- दूसरे अकाउंट से
/start, अपने शीर्ष तीन कीवर्ड रिप्लाई और फॉलबैक संदेश का परीक्षण करें। - पुष्टि करें कि लैपटॉप बंद करने के बाद भी बॉट ऑनलाइन रहता है, एक घंटे बाद किसी दूसरे डिवाइस से जाँच करके।
- BotFather के माध्यम से एक बॉट विवरण और प्रोफ़ाइल फोटो सेट करें ताकि यह जानबूझकर दिखे, न कि बीच में छोड़े गए निर्माण की तरह।
- लिख लें कि जब फॉलबैक संदेश सक्रिय होता है तो किसे सूचित किया जाता है, ताकि अमेलित प्रश्न शून्य में गायब न हों।
कई मार्केटप्लेस विक्रेता टेलीग्राम अकाउंट या SMS सत्यापन लिस्टिंग के तहत बॉट परीक्षण के लिए सत्यापित एडमिन अकाउंट या SMS-सत्यापित नंबर भी बेचते हैं, जो उपयोगी है यदि आप अपने व्यक्तिगत नंबर को किसी ऐसे बॉट से नहीं जोड़ना चाहते जिसका आप अभी परीक्षण कर रहे हैं। प्रतिबद्ध होने से पहले कीमत और डिलीवरी की गति पर कुछ लिस्टिंग की तुलना करें, उसी तरह जैसे आप होस्टिंग प्रदाताओं की तुलना करते हैं।
