संदेश और बटन
«संदेश भेजें» कार्य ब्लॉक से बॉट का उत्तर असेम्बल करता है और उसे inline-बटन, मुख्य मेनू और डायलॉग के चरणों से सुसज्जित करता है। यह कंस्ट्रक्टर का सबसे समृद्ध कार्य है — यहीं पर सब्स्टिट्यूशन और बटन के रेफरल पैरामीटर भी जोड़े जाते हैं।
संदेश ब्लॉक
संदेश — ब्लॉक का एक क्रम है (ब्लॉक जोड़ें बटन):
- टेक्स्ट — सब्स्टिट्यूशन और बटन के साथ फ़ॉर्मेटेड टेक्स्ट (4096 अक्षरों तक)।
- फ़ोटो — कैप्शन के साथ छवि।
- फ़ाइल — कैप्शन के साथ दस्तावेज़।
- देरी — अगले ब्लॉक से पहले सेकंड में विराम।
- AI — प्रॉम्प्ट के अनुसार मॉडल द्वारा जनरेट किया गया उत्तर।
- रिएक्शन — दूसरी रिएक्शन को कॉल (वैकल्पिक रूप से उसकी प्रोसेसिंग की प्रतीक्षा करते हुए)।
ब्लॉक को ड्रैग किया जा सकता है। ब्लॉक प्रदर्शन मोड — «क्रम में» या «यादृच्छिक» (वैरिएटिव उत्तरों के लिए)। बॉट का मुख्य मेनू बिना बदलाव छोड़ा जा सकता है, नया सेट किया जा सकता है या छुपाया जा सकता है।
ब्लॉक विकल्प
टेक्स्ट और मीडिया ब्लॉक में फ्लैग हैं: पिन करें, बिना आवाज़, फ़ॉरवर्ड सुरक्षा, स्पॉइलर, लिंक प्रीव्यू बंद, N सेकंड बाद ऑटो-डिलीट।
Inline-बटन
ब्लॉक में बटन कॉन्फ़िगर किए जाते हैं (बटन टेक्स्ट + प्रकार):
- टेक्स्ट (callback) — बॉट की ओर से प्रेस प्रोसेसिंग के साथ बटन।
- लिंक — URL खोलता है।
- वेब-एप्लिकेशन — Telegram Mini App खोलता है। देखें Mini App।
- रिएक्शन कॉल — प्रेस दूसरी रिएक्शन लॉन्च करती है।
- भुगतान प्राप्ति और सूचना — «जल्द आ रहा है» के रूप में चिह्नित।
बटन की शैली — सामान्य, नीला (Primary), हरा (Success) या लाल (Danger)। «एक बार उपयोगी» फ्लैग प्रेस के बाद बटन को हटा देता है।
प्रेस करने पर व्यवहार
callback-बटन के लिए यह कॉन्फ़िगर किया जाता है कि प्रेस पर क्या होता है: बटन टेक्स्ट बदलें, संदेश बदलें (टेक्स्ट से या लिंक्ड रिएक्शन की सामग्री से), संदेश हटाएँ, answerCallbackQuery छोड़ें। प्रेस लेबल भी सेट कर सकता है और पैरामीटर सेट कर सकता है।
बटन में पैरामीटर (Carry)
«Carry — बटन प्रेस में डेटा स्नैपशॉट» ब्लॉक बटन में भेजने के समय फिक्स किए गए मूल्यों का एक सेट जोड़ता है। प्रेस पर ये मूल्य कॉन्टेक्स्ट में जाते हैं — इस तरह प्रत्येक बटन अपने पैरामीटर (per-invocation) रखता है, भले ही बटन कई हों। payload का TTL सेकंड में सेट किया जाता है। यह «प्रोडक्ट चुनें → ठीक उसे ऑर्डर करें» परिदृश्यों का आधार है।
डायनामिक बटन
«सूची से डायनामिक बटन» ब्लॉक ctx के ऐरे को बटन में खोलता है — प्रत्येक एलिमेंट के लिए एक। कॉन्फ़िगर किए जाते हैं: ctx में सूची की कुंजी, एलिमेंट का उपनाम, एक पंक्ति में बटनों की संख्या और बटन टेम्प्लेट ({{alias.field}} सपोर्ट करता है)। इस तरह कैटलॉग, रिकॉर्ड की सूचियाँ और संग्रह डेटा से मेनू बनाए जाते हैं। विस्तार से — डायनामिक बटन और पैरामीटर।
अपेक्षित उत्तर (डायलॉग के चरण)
टेक्स्ट ब्लॉक उपयोगकर्ता के उत्तर की प्रतीक्षा कर सकता है — यह संदेश को डायलॉग का चरण बनाता है और उत्तर मिलने तक परिदृश्य को रोक देता है। कई लगातार चरण चैट में ही एक प्रश्नावली या विज़ार्ड बनाते हैं।
अपेक्षित सामग्री का प्रकार
बॉट एक विशिष्ट प्रकार के उत्तर की प्रतीक्षा कर सकता है: टेक्स्ट, विकल्पों से चयन (विकल्प-बटन), फ़ोटो, वीडियो, वीडियो-नोट, ऑडियो, दस्तावेज़, वॉयस, स्थान, संपर्क, कैलेंडर या डाइस। यदि उपयोगकर्ता गलत प्रकार भेजे, तो चरण उत्तर को अनुपयुक्त मानेगा।
टेक्स्ट जाँच
टेक्स्ट उत्तर के लिए फ़ॉर्मेट जाँच सक्षम की जा सकती है: फ़ोन, e-mail, लिंक, दिनांक, समय या फ़ॉर्मूला अनुरूपता (नियमित अभिव्यक्ति)। जाँच में असफल उत्तर अस्वीकार कर दिया जाता है, और बॉट त्रुटि संदेश दिखाता है।
उत्तर सहेजना
उपयोगकर्ता का उत्तर पैरामीटर में सहेजा जा सकता है — जिसके बाद यह सब्स्टिट्यूशन में {{param.key}} के रूप में और शर्तों में उपलब्ध होता है। इस तरह डायलॉग के चरण क्लाइंट का मिनी-प्रोफ़ाइल भरते हैं।
त्रुटियाँ, अनुस्मारक और टाइमआउट
- जाँच त्रुटि पर संदेश — क्या दिखाएँ यदि उत्तर वैलिडेशन में असफल हो।
- अनुस्मारक — क्या भेजें यदि उपयोगकर्ता चुप हो।
- टाइमआउट पर प्रतीक्षा समाप्ति — कितने समय बाद प्रतीक्षा बंद करें; टाइमआउट पर रिएक्शन लॉन्च की जा सकती है (उदाहरण के लिए, प्रश्नावली को नरमी से समाप्त करें)। यह रिएक्शन संबंध में «प्रतीक्षा टाइमआउट» के रूप में और उत्तर पर रिएक्शन — «अपेक्षित उत्तर» के रूप में दिखती है।
सब्स्टिट्यूशन
«सब्स्टिट्यूशन» बटन वेरिएबल डालता है: प्रेषक का डेटा ({{first_name}}, {{username}}, {{user_id}}), इवेंट ({{text}}, {{chat_id}}, {{datetime}}) और पैरामीटर ({{param.key}}). पूर्ण सूची और फ़ॉर्मूला — सब्स्टिट्यूशन और फ़ॉर्मूला।
आगे क्या
- सब्स्टिट्यूशन और फ़ॉर्मूला — टेक्स्ट और बटन में वेरिएबल।
- कार्य — रिएक्शन के अन्य कार्य।
- Mini App — वेब-एप्लिकेशन बटन।