Nodes and media
सक्रिय कंप्यूटर उपस्थिति
सक्रिय कंप्यूटर उपस्थिति Gateway को बताती है कि किस कनेक्टेड macOS Node को
सबसे हाल का भौतिक माउस या कीबोर्ड इनपुट मिला। OpenClaw उस संकेत का उपयोग
एक Mac को active के रूप में चिह्नित करने, एजेंट को स्थिर सक्रिय-Node संकेत देने और
Node कनेक्शन अलर्ट उस कंप्यूटर पर भेजने के लिए करता है जहाँ आपके उपस्थित होने की सबसे अधिक संभावना है।
यह सिस्टम उपस्थिति से अलग है, जो Gateway क्लाइंट का लाइव
रोस्टर है, और स्थायी node.presence.alive बीकन से भी अलग है, जो यह दर्ज करते हैं
कि कोई मोबाइल Node पिछली बार कब सक्रिय हुआ था, उसे कनेक्टेड माने बिना।
आवश्यकताएँ
- OpenClaw macOS ऐप युग्मित है और Node मोड में कनेक्टेड है।
- सेटिंग्स -> अनुमतियाँ -> सक्रिय कंप्यूटर पहचान सक्षम है। यह डिफ़ॉल्ट रूप से बंद रहती है।
- हस्ताक्षरित OpenClaw ऐप को Accessibility अनुमति दी गई है।
- कनेक्शन अलर्ट के लिए Notifications अनुमति भी दी गई है और
Mac Node
system.notifyउपलब्ध कराता है।
गतिविधि रिपोर्टिंग वर्तमान में नेटिव macOS Node द्वारा लागू की गई है। iOS, Android, watchOS और हेडलेस Node होस्ट कनेक्शन या पृष्ठभूमि की अंतिम-दृश्य स्थिति रिपोर्ट कर सकते हैं, लेकिन वे सक्रिय-कंप्यूटर पदनाम के लिए प्रतिस्पर्धा नहीं करते।
सक्रिय कंप्यूटर जाँचें
-
macOS ऐप में सेटिंग्स -> अनुमतियाँ खोलें, सक्रिय कंप्यूटर पहचान सक्षम करें और macOS System Settings में Accessibility प्रदान करें।
-
पुष्टि करें कि Mac Node कनेक्टेड है:
bash openclaw nodes status --connected -
उस Mac पर माउस चलाएँ या कोई कुंजी दबाएँ, फिर चलाएँ:
bash openclaw nodes statusopenclaw nodes describe --node <node-id-or-name>
सबसे हाल का पात्र Mac active के रूप में चिह्नित होता है। स्थिति आउटपुट उसके अंतिम इनपुट
की आयु दिखाता है; describe में active, lastActiveAtMs और presenceUpdatedAtMs उपलब्ध होते हैं।
गतिविधि को जानबूझकर समेकित किया जाता है, इसलिए हाल की रिपोर्ट के बाद किसी अन्य इनपुट को
प्रदर्शित होने में लगभग 15 सेकंड तक लग सकते हैं।
गतिविधि उपस्थिति कैसे बनती है
macOS रिपोर्टर हर दो सेकंड में HID सिस्टम की निष्क्रियता घड़ी का नमूना लेता है। Node कनेक्शन तैयार होने पर यह एक बार रिपोर्ट करता है, फिर नई भौतिक गतिविधि को हर 15 सेकंड में अधिकतम एक बार रिपोर्ट करता है। निष्क्रिय रहने पर यह हर तीन मिनट में एक कीपअलाइव भेजता है। निष्क्रियता अवधि 30 दिनों तक सीमित रहती है, ताकि बहुत पुराना नमूना समय के साथ आगे खिसककर गलत तरीके से नवीनतम कंप्यूटर न बन जाए।
सक्रिय कंप्यूटर पहचान अक्षम करने पर नमूना लेना बंद हो जाता है और वर्तमान Node कनेक्शन पर एक प्रमाणित क्लियर इवेंट भेजा जाता है। Gateway तुरंत उस Mac के संचित गतिविधि टाइमस्टैम्प हटा देता है और सक्रिय कंप्यूटर की पुनर्गणना करता है; अन्य Node क्षमताएँ और जारी कार्य कनेक्टेड रहते हैं। यदि कनेक्टेड Gateway इस क्लियर क्रिया से पुराना है, तो Mac Node एक बार फिर कनेक्ट होता है, ताकि डिस्कनेक्ट क्लीनअप इसके बजाय संचित गतिविधि हटा सके।
Gateway गतिविधि तभी स्वीकार करता है, जब ये सभी शर्तें सत्य हों:
- इवेंट उस Node id के वर्तमान प्रमाणित कनेक्शन से संबंधित हो;
- Node के पास प्रभावी
accessibility: trueअनुमति हो; - पेलोड में सीमित पूर्णांक
idleSecondsमान हो।
Gateway lastActiveAtMs प्राप्त करने के लिए अपने अवलोकन समय से
idleSeconds घटाता है। यह Node द्वारा दिए गए वॉल-क्लॉक टाइमस्टैम्प पर कभी भरोसा नहीं करता। कनेक्टेड
पात्र Mac में नवीनतम lastActiveAtMs विजेता होता है; बराबरी होने पर सबसे
हाल के उपस्थिति अपडेट का उपयोग किया जाता है।
उपस्थिति प्रक्रिया-स्थानीय और कनेक्शन-बद्ध होती है। वर्तमान सत्र को डिस्कनेक्ट करने, उसी Node id वाले दूसरे सत्र से उसे बदलने या Accessibility रद्द करने पर उस Node की गतिविधि स्थिति साफ़ हो जाती है और सक्रिय Mac की पुनर्गणना होती है।
गोपनीयता और मॉडल संदर्भ
गतिविधि साझा करना डिफ़ॉल्ट रूप से बंद रहता है और UI स्वचालन के लिए उपयोग होने वाली Accessibility अनुमति से अलग है। OpenClaw इनपुट सामग्री नहीं, बल्कि निष्क्रियता अवधि भेजता है। यह कुंजी मान, माउस निर्देशांक, ऐप्लिकेशन नाम, विंडो शीर्षक या कच्चे इनपुट इवेंट नहीं भेजता। macOS रिपोर्टर हार्डवेयर HID स्थिति पढ़ता है, इसलिए कृत्रिम कंप्यूटर-नियंत्रण इवेंट किसी स्वचालित Mac को ऐसा कंप्यूटर नहीं दर्शाते जिसका आपने भौतिक रूप से उपयोग किया हो।
निरंतर गतिविधि मॉडल के सामने आने वाले सिस्टम इवेंट नहीं बनाती। डायनेमिक रनटाइम पंक्ति में केवल प्रमाणित Node id होता है:
active_node=<node-id>प्रॉम्प्ट इंजेक्शन और कैश परिवर्तन से बचने के लिए सटीक टाइमस्टैम्प और Node-नियंत्रित प्रदर्शन नाम
प्रॉम्प्ट से बाहर रहते हैं। जब एजेंट को वर्तमान विवरण चाहिए,
तो nodes टूल इसके बजाय node.list या node.describe पढ़ सकता है।
कनेक्शन अलर्ट कैसे रूट किए जाते हैं
अनुमोदन के बाद कोई Node अपना पहला सफल Gateway हैंडशेक पूरा करता है, तो OpenClaw 750 मिलीसेकंड प्रतीक्षा करता है, ताकि कनेक्ट हो रहा Mac अपना पहला गतिविधि नमूना भेज सके। फिर यह सबसे हाल की गतिविधि वाले कनेक्टेड और सूचना-सक्षम Mac पर प्रयास करता है।
- यदि प्राथमिक डिलीवरी सफल होती है, तो किसी अन्य Mac को अलर्ट नहीं मिलता।
- यदि कोई सक्रिय Mac उपलब्ध नहीं है या प्राथमिक डिलीवरी विफल होती है, तो OpenClaw पाँच
सेकंड प्रतीक्षा करता है और
system.notifyउपलब्ध कराने वाले प्रत्येक शेष कनेक्टेड Mac पर प्रयास करता है। - बाद के पुनः कनेक्शन मौन रहते हैं। Gateway सफल कनेक्शन को युग्मन मेटाडेटा में दर्ज करता है, इसलिए Gateway पुनः आरंभ होने पर पहले से कनेक्टेड प्रत्येक Node के लिए अलर्ट दोबारा नहीं चलते।
अलर्ट प्रमाणित Node पहचान से बँधे होते हैं। उसी Node का प्रतिस्थापन सत्र उसके लंबित प्रथम-कनेक्शन अलर्ट का नियंत्रण ले लेता है; यदि डिलीवरी के समय वह Node कनेक्टेड नहीं रहता, तो अलर्ट रद्द कर दिया जाता है।
समस्या निवारण
| लक्षण | जाँच |
|---|---|
कोई पंक्ति active के रूप में चिह्नित नहीं है |
पुष्टि करें कि सक्रिय कंप्यूटर पहचान सक्षम है, कोई नेटिव macOS Node कनेक्टेड है और openclaw nodes describe --node <id> में permissions.accessibility: true दिखाई देता है। |
| गलत Mac सक्रिय बना रहता है | उस Mac का भौतिक रूप से उपयोग करें, समेकन अवधि की प्रतीक्षा करें, फिर openclaw nodes status दोबारा चलाएँ। कृत्रिम कंप्यूटर-नियंत्रण क्रियाएँ नहीं गिनी जातीं। |
| अंतिम-इनपुट डेटा गायब हो जाता है | जाँचें कि Mac डिस्कनेक्ट हुआ, उसका Node सत्र बदला गया या Accessibility रद्द की गई। प्रत्येक स्थिति जानबूझकर गतिविधि साफ़ करती है। |
| अलर्ट कई Mac पर दिखाई देता है | प्राथमिक डिलीवरी अनुपलब्ध थी या विफल हुई, इसलिए विलंबित फ़ॉलबैक चला। सत्यापित करें कि सक्रिय Mac कनेक्टेड है, सूचनाओं की अनुमति देता है और system.notify उपलब्ध कराता है। |
| एजेंट सक्रिय Mac का उल्लेख नहीं करता | गतिविधि बदलने के बाद नया टर्न शुरू करें। रनटाइम संकेत स्थिर और संक्षिप्त है; सटीक वर्तमान मेटाडेटा के लिए nodes टूल का उपयोग करें। |
TCC पुनर्प्राप्ति के लिए macOS अनुमतियाँ देखें। Node कनेक्शन और कमांड विफलताओं के लिए Node समस्या निवारण देखें।