Sessions and memory
चैनल डॉकिंग
Channel docking एक OpenClaw सत्र के लिए कॉल फ़ॉरवर्डिंग है।
यह वही बातचीत संदर्भ बनाए रखता है, लेकिन बदलता है कि उस सत्र के लिए भविष्य के उत्तर कहाँ डिलीवर किए जाएँगे।
उदाहरण
Alice Telegram और Discord पर OpenClaw को संदेश भेज सकती है:
{ session: { identityLinks: { alice: ["telegram:123", "discord:456"], }, },}अगर Alice इसे Telegram से भेजती है:
/dock_discordOpenClaw वर्तमान सत्र संदर्भ बनाए रखता है और उत्तर रूट बदल देता है:
| डॉकिंग से पहले | /dock_discord के बाद |
|---|---|
उत्तर Telegram 123 पर जाते हैं |
उत्तर Discord 456 पर जाते हैं |
सत्र दोबारा नहीं बनाया जाता। ट्रांसक्रिप्ट इतिहास उसी सत्र से जुड़ा रहता है।
इसका उपयोग क्यों करें
डॉकिंग का उपयोग तब करें जब कोई कार्य एक चैट ऐप में शुरू होता है लेकिन अगले उत्तर कहीं और पहुँचने चाहिए।
सामान्य प्रवाह:
- Telegram से एजेंट कार्य शुरू करें।
- Discord पर जाएँ जहाँ आप काम का समन्वय कर रहे हैं।
- Telegram सत्र से
/dock_discordभेजें। - वही OpenClaw सत्र बनाए रखें, लेकिन भविष्य के उत्तर Discord में प्राप्त करें।
आवश्यक कॉन्फ़िग
डॉकिंग के लिए session.identityLinks आवश्यक है। स्रोत प्रेषक और लक्ष्य पीयर
एक ही पहचान समूह में होने चाहिए:
{ session: { identityLinks: { alice: ["telegram:123", "discord:456", "slack:U123"], }, },}मान चैनल-प्रिफ़िक्स वाले पीयर id हैं:
| मान | अर्थ |
|---|---|
telegram:123 |
Telegram प्रेषक id 123 |
discord:456 |
Discord डायरेक्ट पीयर id 456 |
slack:U123 |
Slack उपयोगकर्ता id U123 |
कैननिकल कुंजी (ऊपर alice) केवल साझा पहचान समूह का नाम है। Dock
कमांड चैनल-प्रिफ़िक्स वाले मानों का उपयोग यह साबित करने के लिए करते हैं कि स्रोत प्रेषक और
लक्ष्य पीयर वही व्यक्ति हैं।
कमांड
Dock कमांड लोड किए गए चैनल Plugin से जनरेट होते हैं जो नेटिव कमांड का समर्थन करते हैं। वर्तमान बंडल किए गए कमांड:
| लक्ष्य चैनल | कमांड | उपनाम |
|---|---|---|
| Discord | /dock-discord |
/dock_discord |
| Mattermost | /dock-mattermost |
/dock_mattermost |
| Slack | /dock-slack |
/dock_slack |
| Telegram | /dock-telegram |
/dock_telegram |
अंडरस्कोर उपनाम Telegram जैसे नेटिव कमांड सतहों पर उपयोगी हैं।
क्या बदलता है
डॉकिंग सक्रिय सत्र डिलीवरी फ़ील्ड अपडेट करती है:
| सत्र फ़ील्ड | /dock_discord के बाद उदाहरण |
|---|---|
lastChannel |
discord |
lastTo |
456 |
lastAccountId |
लक्ष्य चैनल खाता, या default |
वे फ़ील्ड सत्र स्टोर में स्थायी किए जाते हैं और बाद में उस सत्र के लिए उत्तर डिलीवरी में उपयोग किए जाते हैं।
क्या नहीं बदलता
डॉकिंग यह नहीं करती:
- चैनल खाते बनाना
- नया Discord, Telegram, Slack, या Mattermost bot कनेक्ट करना
- किसी उपयोगकर्ता को पहुँच देना
- चैनल allowlists या DM नीतियों को बायपास करना
- ट्रांसक्रिप्ट इतिहास को दूसरे सत्र में ले जाना
- असंबंधित उपयोगकर्ताओं से सत्र साझा करवाना
यह केवल वर्तमान सत्र के लिए डिलीवरी रूट बदलती है।
समस्या निवारण
कमांड कहता है कि प्रेषक लिंक नहीं है।
वर्तमान प्रेषक और लक्ष्य पीयर दोनों को उसी
session.identityLinks समूह में जोड़ें। उदाहरण के लिए, अगर Telegram प्रेषक 123 को
Discord पीयर 456 पर डॉक करना चाहिए, तो telegram:123 और discord:456 दोनों शामिल करें।
कमांड कहता है कि कोई सक्रिय सत्र मौजूद नहीं है।
मौजूदा डायरेक्ट-चैट सत्र से डॉक करें। कमांड को एक सक्रिय सत्र एंट्री चाहिए ताकि वह नया रूट स्थायी कर सके।
उत्तर अब भी पुराने चैनल पर जाते हैं।
जाँचें कि कमांड ने सफलता संदेश के साथ उत्तर दिया है, और पुष्टि करें कि लक्ष्य पीयर id उस चैनल द्वारा उपयोग किए गए id से मेल खाता है। डॉकिंग केवल सक्रिय सत्र रूट बदलती है; कोई दूसरा सत्र अब भी कहीं और रूट हो सकता है।
मुझे वापस स्विच करना है।
लिंक किए गए प्रेषक से मूल चैनल के लिए मेल खाने वाला कमांड भेजें, जैसे /dock_telegram या
/dock-telegram।