#room) और सीधे संदेशों में चाहते हैं, तब IRC का उपयोग करें।
आधिकारिक IRC Plugin इंस्टॉल करें, फिर उसे channels.irc के तहत कॉन्फ़िगर करें।
त्वरित शुरुआत
- Plugin इंस्टॉल करें:
~/.openclaw/openclaw.jsonमें IRC कॉन्फ़िग सक्षम करें।- कम से कम यह सेट करें:
- Gateway शुरू/पुनः शुरू करें:
सुरक्षा डिफ़ॉल्ट
- IRC, OpenClaw ऑपरेटर-प्रबंधित फ़ॉरवर्ड प्रॉक्सी रूटिंग के बाहर कच्चे TCP/TLS सॉकेट का उपयोग करता है। जिन डिप्लॉयमेंट में सभी बाहर जाने वाले ट्रैफ़िक को उस फ़ॉरवर्ड प्रॉक्सी से होकर जाना आवश्यक है, वहाँ
channels.irc.enabled=falseसेट करें, जब तक प्रत्यक्ष IRC बाहर जाने वाले ट्रैफ़िक को स्पष्ट रूप से स्वीकृति न मिली हो। channels.irc.dmPolicyका डिफ़ॉल्ट"pairing"है।channels.irc.groupPolicyका डिफ़ॉल्ट"allowlist"है।groupPolicy="allowlist"के साथ, अनुमत चैनल परिभाषित करने के लिएchannels.irc.groupsसेट करें।- जब तक आप जानबूझकर प्लेनटेक्स्ट ट्रांसपोर्ट स्वीकार न करें, TLS (
channels.irc.tls=true) का उपयोग करें।
पहुँच नियंत्रण
IRC चैनलों के लिए दो अलग-अलग “गेट” हैं:- चैनल पहुँच (
groupPolicy+groups): क्या बॉट किसी चैनल से संदेश बिल्कुल स्वीकार करता है। - प्रेषक पहुँच (
groupAllowFrom/ प्रति-चैनलgroups["#channel"].allowFrom): उस चैनल के भीतर बॉट को ट्रिगर करने की अनुमति किसे है।
- DM अनुमत-सूची (DM प्रेषक पहुँच):
channels.irc.allowFrom - समूह प्रेषक अनुमत-सूची (चैनल प्रेषक पहुँच):
channels.irc.groupAllowFrom - प्रति-चैनल नियंत्रण (चैनल + प्रेषक + उल्लेख नियम):
channels.irc.groups["#channel"] channels.irc.groupPolicy="open"अप्रमाणित चैनलों की अनुमति देता है (फिर भी डिफ़ॉल्ट रूप से उल्लेख-गेटेड)
nick!user@host) का उपयोग करना चाहिए।
सिर्फ़ निक से मिलान बदलने योग्य है और केवल तब सक्षम होता है जब channels.irc.dangerouslyAllowNameMatching: true हो।
सामान्य भूल: allowFrom DM के लिए है, चैनलों के लिए नहीं
यदि आपको ऐसे लॉग दिखें:
irc: drop group sender alice!ident@host (policy=allowlist)
channels.irc.groupAllowFromसेट करके (सभी चैनलों के लिए वैश्विक), या- प्रति-चैनल प्रेषक अनुमत-सूचियाँ सेट करके:
channels.irc.groups["#channel"].allowFrom
#tuirc-dev में किसी को भी बॉट से बात करने की अनुमति दें):
उत्तर ट्रिगर करना (उल्लेख)
भले ही कोई चैनल अनुमत हो (groupPolicy + groups के माध्यम से) और प्रेषक को अनुमति हो, OpenClaw समूह संदर्भों में डिफ़ॉल्ट रूप से उल्लेख-गेटिंग करता है।
इसका मतलब है कि जब तक संदेश में बॉट से मेल खाने वाला उल्लेख पैटर्न शामिल न हो, आपको drop channel … (missing-mention) जैसे लॉग दिख सकते हैं।
किसी IRC चैनल में बॉट को उल्लेख की आवश्यकता के बिना उत्तर देने देने के लिए, उस चैनल के लिए उल्लेख गेटिंग अक्षम करें:
सुरक्षा नोट (सार्वजनिक चैनलों के लिए अनुशंसित)
यदि आप किसी सार्वजनिक चैनल मेंallowFrom: ["*"] की अनुमति देते हैं, तो कोई भी बॉट को प्रॉम्प्ट कर सकता है।
जोखिम कम करने के लिए, उस चैनल के लिए टूल प्रतिबंधित करें।
चैनल में सभी के लिए समान टूल
प्रति प्रेषक अलग टूल (स्वामी को अधिक शक्ति मिलती है)
"*" पर कड़ी नीति और अपने निक पर ढीली नीति लागू करने के लिए toolsBySender का उपयोग करें:
toolsBySenderकुंजियों को IRC प्रेषक पहचान मानों के लिएid:का उपयोग करना चाहिए: मज़बूत मिलान के लिएid:eigenयाid:eigen!~eigen@174.127.248.171।- पुराने बिना-प्रीफ़िक्स वाली कुंजियाँ अभी भी स्वीकार की जाती हैं और केवल
id:के रूप में मिलाई जाती हैं। - पहली मेल खाने वाली प्रेषक नीति लागू होती है;
"*"वाइल्डकार्ड फ़ॉलबैक है।
NickServ
कनेक्ट होने के बाद NickServ से पहचान कराने के लिए:register अक्षम करें।
पर्यावरण चर
डिफ़ॉल्ट खाता समर्थन करता है:IRC_HOSTIRC_PORTIRC_TLSIRC_NICKIRC_USERNAMEIRC_REALNAMEIRC_PASSWORDIRC_CHANNELS(कॉमा-सेपरेटेड)IRC_NICKSERV_PASSWORDIRC_NICKSERV_REGISTER_EMAIL
IRC_HOST को किसी वर्कस्पेस .env से सेट नहीं किया जा सकता; देखें वर्कस्पेस .env फ़ाइलें.
समस्या निवारण
- यदि बॉट कनेक्ट होता है लेकिन चैनलों में कभी उत्तर नहीं देता, तो
channels.irc.groupsऔर यह सत्यापित करें कि क्या उल्लेख-गेटिंग संदेशों को ड्रॉप कर रही है (missing-mention)। यदि आप चाहते हैं कि यह पिंग के बिना उत्तर दे, तो चैनल के लिएrequireMention:falseसेट करें। - यदि लॉगिन विफल हो, तो निक उपलब्धता और सर्वर पासवर्ड सत्यापित करें।
- यदि कस्टम नेटवर्क पर TLS विफल हो, तो होस्ट/पोर्ट और प्रमाणपत्र सेटअप सत्यापित करें।
संबंधित
- चैनल अवलोकन — सभी समर्थित चैनल
- पेयरिंग — DM प्रमाणीकरण और पेयरिंग प्रवाह
- समूह — समूह चैट व्यवहार और उल्लेख गेटिंग
- चैनल रूटिंग — संदेशों के लिए सत्र रूटिंग
- सुरक्षा — पहुँच मॉडल और हार्डनिंग