Twitch-बॉट मॉडरेटर के संदेश क्यों छोड़ देता है
पहले तय करें कि संदेश किस चरण पर गायब हो रहा है
जाँचें कि बॉट को उसी चैनल में सामान्य संदेश मिल रहे हैं या नहीं। अगर लॉग में न दर्शक दिखते हैं न मॉडरेटर, तो समस्या आमतौर पर प्राधिकरण, चैट से कनेक्शन या चैनल के नाम में होती है। अगर दर्शक दिखते हैं पर मॉडरेटर की बातें नहीं, तो कारण भूमिका फ़िल्टर, IRC टैग या EventSub सदस्यता में खोजें।
सिर्फ़ चैट में बॉट के जवाब को न देखें, बल्कि आने वाली घटनाओं के जर्नल को देखें। संदेश ऐप तक पहुँच सकता है, लेकिन प्रीफ़िक्स, कूलडाउन, स्टॉप-वर्ड, इग्नोर-लिस्ट या अधिकार जाँच के कारण कमांड नहीं चला सकता। परीक्षण के लिए दर्शक और मॉडरेटर से एक ही छोटा वाक्य भेजें, फिर एक ही कमांड।
चैनल, बॉट अकाउंट और IRC कनेक्शन जाँचें
सुनिश्चित करें कि बॉट ठीक उसी चैनल में और उसी अकाउंट से जुड़ा है जिसे चैट पढ़ना चाहिए। चैनल का नाम बदलने, लॉगिन बदलने या टेस्ट और प्रोडक्शन वातावरण के बीच स्विच करने के बाद ऐप ऑनलाइन रह सकता है, लेकिन किसी दूसरे चैट को सुन रहा हो सकता है।
कनेक्शन लॉग में सफल प्राधिकरण, बॉट का निक और चैनल में प्रवेश का कमांड दिखना चाहिए। कनेक्शन टूटने के बाद न सिर्फ़ पुनः कनेक्ट के प्रयास जाँचें, बल्कि नए सफल लॉगिन की पुष्टि भी करें। बिना त्रुटि दर्ज किए ऑटो-रीकनेक्ट समाप्त हो चुके टोकन, गलत OAuth पासवर्ड या चैनल के नाम की त्रुटि को छिपा देता है।
OAuth टोकन और पढ़ने के अधिकार जाँचें
टोकन उसी अकाउंट का होना चाहिए जिससे बॉट चैट पढ़ता है। इसे स्ट्रीमर के टोकन से न मिलाएँ: चैनल मालिक के अधिकार अलग बॉट अकाउंट को नहीं मिलते। IRC के ज़रिए संदेश पढ़ने के लिए chat:read स्कोप चाहिए।
अगर संदेश EventSub के ज़रिए प्राप्त होते हैं, तो चैट इवेंट के लिए user:read:chat अधिकार वाला उपयोगकर्ता टोकन चाहिए। प्राधिकरण योजना और सदस्यता कौन बनाता है, इसके आधार पर बॉट को चैनल तक पहुँच के लिए अधिकार भी चाहिए हो सकते हैं, जिनमें channel:bot शामिल है। स्कोप अनुमान से न जोड़ें: उन्हें मौजूदा सदस्यता योजना और जिस अकाउंट से वह बनाई जा रही है, उससे मिलाएँ।
उपयोगकर्ता टोकन की वैधता और दिए गए अधिकारों की सूची इस अनुरोध से जाँची जा सकती है:
curl -H "Authorization: OAuth $BOT_OAUTH_TOKEN" https://id.twitch.tv/oauth2/validate
जवाब में लॉगिन, उपयोगकर्ता आईडी, समाप्ति और scopes की सरणी जाँचें। अगर chat:read या user:read:chat मौजूद नहीं है, तो ज़रूरी अधिकारों के सेट के साथ दोबारा प्राधिकरण करना होगा। इस समाधान की कमी यह है कि पुराने टोकन और सहेजे गए सत्र बॉट के कॉन्फ़िगरेशन में बदलने होंगे, वरना वह पुराने अधिकारों के साथ काम करता रहेगा।
IRC और EventSub की जाँच अलग-अलग करें
IRC और EventSub संदेश अलग-अलग रास्तों से पहुँचाते हैं। IRC स्थायी कनेक्शन पर चैट की स्ट्रीम भेजता है: रॉ लॉग में मॉडरेटर की ओर से PRIVMSG पंक्ति खोजनी होती है। EventSub बनाई गई API सदस्यता के ज़रिए channel.chat.message इवेंट भेजता है: यहाँ उसकी स्थिति, condition और डिलीवरी ट्रांसपोर्ट जाँचे जाते हैं।
अगर बॉट दोनों स्रोत इस्तेमाल करता है, तो हर इवेंट का स्रोत लॉग में दर्ज करें। वरना एक संदेश दो बार संसाधित हो सकता है, और एक ट्रांसपोर्ट की खराबी छिपी रह सकती है। अगर सिर्फ़ EventSub इस्तेमाल होता है, तो IRC कनेक्शन का न होना त्रुटि नहीं माना जाता। EventSub योजना की कमी यह है कि गलत या बंद सदस्यता पर बॉट संदेश बिल्कुल नहीं देखेगा, टोकन के काम करने पर भी।
चैट संदेशों के लिए EventSub सदस्यता जाँचें
सदस्यताओं की सूची में channel.chat.message इवेंट खोजें। रिकॉर्ड की स्थिति सक्रिय होनी चाहिए। condition में broadcaster_user_id — यह स्ट्रीमर के चैनल की आईडी है — और इवेंट पाने वाले उपयोगकर्ता की user_id जाँचें। इनमें से किसी भी ID की गलती अक्सर संदेशों के चुनिंदा रूप से न आने के रूप में दिखती है।
GET /helix/eventsub/subscriptions के ज़रिए सदस्यताओं की सूची माँगें। जवाब में type, status, condition और transport जाँचें। enabled स्थिति का अर्थ है कि सदस्यता सक्रिय है; डिलीवरी विफलता की सूचना, हटाया गया रिकॉर्ड या दूसरा चैनल कारण बताएगा। इस अनुरोध के लिए उसी ऐप का टोकन और Client ID इस्तेमाल करें जिसने सदस्यता बनाई थी।
सिर्फ़ पैनल या बॉट के डेटाबेस में रिकॉर्ड के होने पर निर्भर न रहें। सदस्यता टेस्ट चैनल के लिए बनी हो सकती है, डिलीवरी त्रुटि के बाद हटाई गई हो सकती है या किसी दूसरे ऐप से संबंधित हो सकती है। API के ज़रिए जाँच की कमी यह है कि यह सदस्यता का कॉन्फ़िगरेशन दिखाती है, लेकिन हैंडलर के अंदर फ़िल्टरिंग का तर्क नहीं समझाती।
IRC टैग चालू करें और लेखक की भूमिका जाँचें
अगर अधिकार जाँच IRC पर आधारित है, तो क्लाइंट को twitch.tv/tags capability का अनुरोध करना चाहिए। टैग के बिना बॉट को टेक्स्ट और लेखक का निक मिल सकता है, लेकिन mod और badges फ़ील्ड नहीं दिखेंगे। ऐसे में सामान्य कमांड आते हैं, पर मॉडरेटर नियम गलत तरीके से मना कर देते हैं।
मॉडरेटर के रॉ संदेश में mod=1 और badges=moderator/1 खोजें। user-type फ़ील्ड अनुपस्थित हो सकता है, खाली हो सकता है या मौजूदा भूमिका से मेल नहीं खा सकता, इसलिए इसे अकेला संकेत न बनाएँ। पार्सर को टैग के खाली मान और एस्केप किए गए अक्षर ठीक से संभालने चाहिए; IRC दृष्टिकोण की कमी ठीक इसी फ़ॉर्मेट को खुद पार्स करने की ज़रूरत में है।
अगर mod=1 नहीं है, तो पहले सुनिश्चित करें कि टैग के लिए capability वाकई सर्वर ने पुष्टि की है, सिर्फ़ क्लाइंट ने भेजी नहीं है। फिर badges जाँचें। moderator/1 का अर्थ मॉडरेटर है, broadcaster/1 का अर्थ चैनल मालिक। VIP के पास आमतौर पर vip/1 badge होता है, लेकिन VIP अपने आप मॉडरेटर नहीं बन जाता। स्ट्रीमर और VIP को निक, रंग या display-name से मॉडरेटर न मानें: भूमिका badges और अलग पहुँच नियमों से तय करें।

कोड और सेटिंग्स में भूमिका नियम जाँचें
दर्शक, VIP, मॉडरेटर और चैनल मालिक से एक ही टेक्स्ट वाली रॉ घटनाओं की तुलना करें। अगर मॉडरेटर की घटना ऐप तक पहुँच गई, लेकिन हैंडलर ने उसे छोड़ दिया, तो त्रुटि प्राप्ति के बाद है: भूमिका जाँच, ब्लैकलिस्ट, एंटीस्पैम या कमांड रूटिंग में।
- तुलना से पहले लॉगिन को एक ही केस में लाएँ।
- mod=1 और badge moderator जाँचें, न कि टैग का कोई एक निश्चित सेट।
- broadcaster, moderator, vip और बॉट के खुद के अकाउंट के अधिकार अलग-अलग तय करें।
- जाँचें कि मॉडरेटर इग्नोर-लिस्ट, बैन-लिस्ट या प्रतिबंधित उपयोगकर्ताओं की सूची में तो नहीं आ गया।
- शर्तों का क्रम देखें: एंटीस्पैम या स्टॉप-वर्ड भूमिका जाँच से पहले लागू हो सकते हैं।
- सुनिश्चित करें कि कमांड उल्लेख, लिंक या टेक्स्ट दोहराव वाले संदेशों के नियम से ब्लॉक नहीं हो रहा।
निकों की मैन्युअल सूची सिर्फ़ संक्षिप्त निदान के लिए उपयुक्त है। इसकी कमी यह है कि मॉडरेटर बदलने, अकाउंट का नाम बदलने या चैनल में भूमिकाएँ बदलने पर यह पुरानी हो जाती है।
कमांड फ़ॉर्मेट, सीमाएँ और छिपा इग्नोर छोड़ें
बॉट संदेश देख सकता है और जानबूझकर जवाब न दे। कमांड का कूलडाउन, एक उपयोगकर्ता से संदेशों की सीमा, दोहराव से सुरक्षा, इमोजी फ़िल्टर और स्टॉप-वर्ड जाँचें। मॉडरेटर अक्सर कमांड तेज़ी से भेजते हैं और दर्शकों की तरह एंटीस्पैम में फँस सकते हैं।
सामान्य वाक्य और प्रीफ़िक्स वाला कमांड अलग-अलग जाँचें। अगर वाक्य लॉग में है, पर कमांड प्रोसेसिंग के नतीजे तक नहीं पहुँचा, तो प्रीफ़िक्स, कीबोर्ड लेआउट, स्पेस, अदृश्य अक्षर और आर्ग्युमेंट जाँचें। स्लैश वाले कमांड और मॉडरेशन क्रियाएँ हमेशा सामान्य टेक्स्ट के रूप में नहीं आतीं जिसकी हैंडलर अपेक्षा करता है।
हर संदेश पर निर्णय का कारण दर्ज करें
निदान के लिए समय, इवेंट का स्रोत, चैनल, लेखक की ID, संदेश का प्रकार, टैग और प्रोसेसिंग का नतीजा सहेजें। अगर त्रुटि खोजने के लिए टेक्स्ट की ज़रूरत नहीं है, तो उसे मास्क किया जा सकता है। लॉग में ठोस कारण होना चाहिए: संदेश प्राप्त नहीं हुआ, भूमिका पहचानी नहीं गई, प्रीफ़िक्स पास नहीं हुआ, कूलडाउन लगा, उपयोगकर्ता इग्नोर में है या EventSub सदस्यता बंद है।
सामान्य लॉग में OAuth टोकन, ऐप का सीक्रेट, वेबहुक के पते और पूरे प्राधिकरण हेडर न लिखें। डिबगिंग में ये डेटा सुविधाजनक हैं, लेकिन इनका लीक बॉट और ऐप की सेटिंग्स तक पहुँच खोल सकता है।
क्रम से निदान की चेकलिस्ट
- दर्शक और मॉडरेटर से एक ही वाक्य और एक ही कमांड भेजें।
- रॉ लॉग जाँचें और तय करें कि संदेश IRC, EventSub या दोनों स्रोतों से आया।
- अगर IRC को संदेश नहीं मिल रहे, तो बॉट का अकाउंट, चैनल का नाम, टोकन और चैट में सफल लॉगिन मिलाएँ।
- अगर IRC संदेश आया, तो सुनिश्चित करें कि टैग चालू हैं, फिर mod=1 और badges=moderator/1 जाँचें।
- अगर mod=1 नहीं है, तो twitch.tv/tags की पुष्टि जाँचें और moderator/1, vip/1 और broadcaster/1 में अंतर करें।
- validate के ज़रिए टोकन जाँचें: IRC के लिए chat:read चाहिए, EventSub संदेशों के लिए — user:read:chat।
- EventSub के ज़रिए काम करते समय सदस्यताओं की सूची में channel.chat.message, enabled स्थिति, condition और transport जाँचें।
- भूमिकाओं की प्रोसेसिंग, इग्नोर-लिस्ट, एंटीस्पैम, प्रीफ़िक्स, कूलडाउन और स्टॉप-वर्ड की तुलना करें।
- लॉग में वह स्पष्ट कारण जोड़ें जिससे हर संदेश स्वीकार, अनदेखा या अस्वीकार हुआ।
Last Articles
डिज़ाइन और कार्यक्षमता में क्या बदला हमने साइट को अपडेट किया है ताकि इसके साथ काम करना तेज़ और आसान हो। मुख्य बदलाव इंटरफ़ेस, व्यक्तिगत कैबिनेट और ऑर..
Good afternoon, I've collected all the news during this time.: 1. The main news is that prices for twitch viewers have been greatly reduced, while Tw..
1. हमारे सभी दर्शकों के लिए 15% छूट के लिए प्रोमो कोड "December2025" का उपयोग करें2. हमने 1 जनवरी तक अपने कॉन्फ़िगरेशन टूल और सबसे सस्ते दर्शक श्रेणी ..
चिकोटी सेवाएं हैं स्थिर रूप से काम करना, इसलिए हम दस्तों, पुनर्विक्रेताओं के साथ सहयोग करने के लिए तैयार हैं, सेवा मालिक, बॉट मालिक, और कई अन्य । ..
हम हमारी ट्विच व्यूअर सेवाओं को पूरी तरह से अपडेट कर दिया है, और वे अब हैं स्थिरतापूर्वक काम करना । हम केवल दर्शकों के लिए उच्च गुणवत्ता वाले आईप..
Hello everyone! Today, we are announcing a new feature—"Twitch Viewer Configurator". Now, you can customize any plan for your Twitch channel. Choo..
Greetings, I have compiled a guide for streamers, which will be very relevant at the moment. Now YouTube and twitch have disabled monetization from vi..
We have finally developed the APINow it will be more convenient for our partner sites to work with us.To update the maximum tariffs for YouTube, an up..
साझेदारी सेवाओं और रेफरल कार्यक्रम की भारी लोकप्रियता के कारण, हमने एक सहयोग तालिका बनाई है। सार बहुत सरल है: अधिक लाइव दर्शक - हमारी ओर से अधिक विज्ञ..
स्ट्रीमर्स के लिए हमारी सेवाएं

Shopee

Bigo
कंटेंट क्रिएटर्स के लिए हमारी सेवाएं








