Discord बॉट कुछ अनुमानित कारणों में से किसी एक से ऑफ़लाइन होता है: token रीसेट होना, कोई privileged intent बंद होना, hosted बॉट की वोट अवधि खत्म होना, या उस सर्वर से बॉट का हटाया जाना जिस पर वह निर्भर है। Discord का gateway close code के ज़रिए बताता है कि कौन सा कारण है; 4004 और 4013/4014 वे दो हैं जो सबसे ज़्यादा दिखते हैं, और हर एक का एक खास, यांत्रिक समाधान है, "बस रीस्टार्ट करो और उम्मीद करो" वाला नहीं।

A user's bot token runs on a Noxyr node and comes online as their own branded bot. Your token Noxyr node MyBot Online

यहां से शुरू करें: सबसे संभावित कारण पहले

उस क्रम में जिसमें हर एक असल में होता है:

  1. Token रीसेट हो गया। किसी ने Developer Portal में Reset Token दबा दिया, जानबूझकर या गलती से, और बॉट जो पुराना token इस्तेमाल कर रहा था वह अब बेकार है।
  2. कोई privileged intent बंद हो गया। बॉट सेट होने के बाद Server Members Intent या Message Content Intent बंद कर दिया गया।
  3. वोट या subscription अवधि खत्म हो गई। Noxyr के Custom Bot जैसे hosted बॉट पर चलने का समय Top.gg वोट से जुड़ा है, और अवधि के साथ उसकी grace period भी खत्म हो गई।
  4. बॉट सर्वर से हटाया गया, या वह बॉट हटाया गया जिस पर यह निर्भर है। Custom Bot खास तौर पर Noxyr की अपनी उपस्थिति पर निर्भर है; Noxyr को किक करने से उस सर्वर में custom bot रुक जाता है।
  5. असली आउटेज। Discord खुद बुरे दौर से गुज़र रहा है। यह दुर्लभ है, लेकिन यह मानने से पहले कि समस्या आपके सेटअप में है, discordstatus.com देखें।

Gateway close codes का असल मतलब

कोडअर्थसामान्य कारण
4004प्रमाणीकरण विफलToken गलत है या Developer Portal में रीसेट किया गया था
4013अमान्य intent(s)बॉट के कोड ने ऐसा intent मांगा जो मौजूद नहीं है, या ऐसा संयोजन जिसे Discord अस्वीकार करता है
4014अनुमति-रहित intent(s)बॉट ने एक privileged intent (Server Members या Message Content) मांगा जो application के लिए चालू नहीं है

व्यवहार में, ज़्यादातर बॉट पर 4013 और 4014 एक ही मूल कारण से दिखते हैं: कोड को चाहिए एक privileged intent portal में बंद है। Discord.js और इसी तरह की लाइब्रेरी कभी-कभी इसे logs में कच्चे नंबरी कोड के बजाय "disallowed intents" error के रूप में दिखाती हैं, लेकिन समस्या वही है। हर intent क्या नियंत्रित करता है और उसके बिना क्या टूटता है, इसकी गहराई से जानकारी privileged gateway intents गाइड में है।

Noxyr Custom Bot पर हर एक को ठीक करना

Gateway 4004, या "Discord ने इस token को अस्वीकार किया"

जिस token से बॉट ने आख़िरी बार लॉग इन किया था, वह अब मौजूद नहीं है। यह तब होता है जब Developer Portal में token रीसेट किया जाता है, चाहे वह जानबूझकर (सुरक्षा के लिए बदलना) हो या गलती से (Bot टैब पर बस देखते समय Reset Token दबाना)।

  1. Discord Developer Portal खोलें, application चुनें, और Bot टैब पर जाएं।
  2. Reset Token फिर से दबाएं, इससे नया बनता है; उसे तुरंत कॉपी करें, क्योंकि Discord उसे केवल एक बार दिखाता है।
  3. Noxyr dashboard पर Custom Bot पेज खोलें और नया token चिपकाएं।
  4. बॉट को फिर से चालू करें। Noxyr के nodes token-अमान्य बॉट को अपने आप बंद कर देते हैं, ताकि वह मरे हुए reconnect loop में न फंसा रहे; काम करने वाला token चिपकाकर उसे चालू करना ही उसे फिर से शुरू करता है।

Gateway 4013/4014, या "Discord ने कनेक्शन अस्वीकार किया"

सेटअप के दौरान चालू एक privileged intent बाद में बंद हो गया, आम तौर पर तब जब कोई किसी और कारण से Bot टैब पर क्लिक कर रहा था।

  1. Developer Portal में Bot → Privileged Gateway Intents पर जाएं।
  2. Server Members Intent और Message Content Intent दोनों फिर से चालू करें। दोनों ज़रूरी हैं; Noxyr की फ़ीचर सेट (स्वागत संदेश, सदस्य गिनती, AI chat, auto-responders, टिकट ट्रांसक्रिप्ट) को दोनों चाहिए।
  3. सहेजें, फिर dashboard के Custom Bot पेज से बॉट को फिर से चालू करें। चूंकि Discord intent बदलाव केवल अगले लॉगिन पर लागू करता है, केवल टॉगल दोबारा चालू करना अपने आप काफ़ी नहीं है; बॉट को फिर से कनेक्ट होना होगा।

वोट अवधि और grace period खत्म हो गई

Custom Bot एक Top.gg वोट पर चलता है। एक वोट इसे 12 घंटे के लिए अनलॉक करता है; उसके बाद 74 घंटे की grace period तब तक बॉट को चलाती है जब तक dashboard पेज लॉक होता है। अगर दोनों खत्म हो जाएं, तो बॉट ऑफ़लाइन हो जाता है, हालांकि आपके सेटअप का कुछ भी डिलीट नहीं होता।

  1. Top.gg पर Noxyr को वोट दें।
  2. Custom Bot पेज पर वापस आएं; वोट दर्ज होते ही वह तुरंत अनलॉक हो जाता है।
  3. बॉट अपने आप रीस्टार्ट होता है, उसी token और सेटिंग्स के साथ जो उसके पास पहले थीं।

इससे बचने के लिए आपके आख़िरी वोट के 24 घंटे बाद (grace period के 12 घंटे भीतर) एक रिमाइंडर DM भेजा जाता है। अगर बॉट का स्टेटस "suspended" दिखाता है, तो पेज खुद बताएगा कि यह वोट है, grace period है, या नीचे दिया गया अगला मुद्दा।

Noxyr को सर्वर से हटा दिया गया

Custom Bot उस सर्वर के लिए Noxyr की सेटिंग्स और डेटाबेस पर चलता है, इसलिए वह इस पर निर्भर है कि Noxyr अब भी सदस्य है। अगर Noxyr को किक किया गया, तो custom bot लगभग एक मिनट में उस सर्वर की सेवा रोक देता है, और जिसने Noxyr को हटाया (और अगर बॉट का ओनर कोई और है तो उसे भी) उसे एक invite लिंक के साथ DM करता है।

  1. DM में दिए लिंक से, या Noxyr होमपेज से Noxyr को फिर से आमंत्रित करें।
  2. एक बार Noxyr सर्वर में वापस आ जाए, तो custom bot अपने आप फिर शुरू हो जाता है; token या intents को छूने की ज़रूरत नहीं।

इस खास कारण से रुके होने के दौरान वोट अवधि खर्च नहीं होती, बल्कि रुकी रहती है, इसलिए Noxyr को जल्दी फिर से आमंत्रित करने से आपका समय घड़ी से नहीं कटता।

अगर ऊपर का कोई भी समाधान काम न करे

पहले Custom Bot पेज पर स्टेटस संदेश देखें; Noxyr के nodes एक सादी-भाषा का कारण लिखते हैं (खराब token, खराब intents, suspended, या बाकी सबके लिए एक सामान्य retrying संदेश), न कि केवल एक कच्चा error कोड। अगर स्टेटस संदेश ऊपर के किसी मामले से मेल न खाए, या समाधान के बाद भी बॉट ऑफ़लाइन रहे जब उसे काम करना चाहिए था, तो उस खास सर्वर को देखने के लिए Support Center सबसे तेज़ रास्ता है। पूरे सेटअप और समस्या-निवारण के चरण Custom Bot docs में भी हैं।

आम सवाल

मैंने कुछ नहीं किया, फिर भी मेरा बॉट ऑफ़लाइन क्यों हो गया? "कुछ नहीं" का आम तौर पर मतलब होता है कि portal या सर्वर की पहुंच वाले किसी और ने कुछ बदला: token रीसेट, intent टॉगल, या किक। पहले Custom Bot पेज का स्टेटस संदेश देखें; उसमें कारण लिखा होता है।

क्या बॉट ऑफ़लाइन होने पर मेरा डेटा खो जाता है? नहीं। बॉट किसी भी कारण से रुका हो, token, सेटिंग्स, टिकट, products, invoices और ट्रांसक्रिप्ट सब सुरक्षित रहते हैं। कारण ठीक करने पर सब कुछ ठीक वैसा ही लौट आता है जैसा था।

क्या मैं वोट से जुड़े ऑफ़लाइन होने के मामले को पूरी तरह टाल सकता हूं? लगभग हर साढ़े तीन दिन में एक बार वोट करें (12 घंटे की विंडो और 74 घंटे की grace period खत्म होने से पहले), तो बॉट उस कारण से कभी बंद नहीं होगा।

क्या मुझे हर बार बॉट रीस्टार्ट करने पर intents दोबारा चालू करने होंगे? नहीं। Intents Discord application की अपनी सेटिंग हैं, कुछ जो रीसेट होता है ऐसा नहीं। एक बार दोनों चालू और सहेजे जाने के बाद, कोई उन्हें बंद न करे तब तक वे चालू रहते हैं।

बॉट को फिर से ऑनलाइन लाने के लिए तैयार हैं? ऊपर का कारण ठीक करें, फिर Custom Bot पेज से बॉट शुरू करें, या अगर आप पहली बार सेटअप कर रहे हैं तो Noxyr मुफ़्त जोड़ें।