Android Uygulaması (Node)
Destek anlık görüntüsü
- Rol: yardımcı node uygulaması (Android Gateway barındırmaz).
- Gateway gerekli: evet (macOS, Linux veya WSL2 üzerinden Windows’ta çalıştırın).
- Yükleme: Başlarken + Eşleştirme.
- Gateway: Runbook + Yapılandırma.
- Protokoller: Gateway protokolü (node’lar + kontrol düzlemi).
Sistem denetimi
Sistem denetimi (launchd/systemd) Gateway ana makinesinde bulunur. Gateway bölümüne bakın.Bağlantı Runbook’u
Android node uygulaması ⇄ (mDNS/NSD + WebSocket) ⇄ Gateway Android, Gateway WebSocket’ine (varsayılanws://<host>:18789) doğrudan bağlanır ve Gateway’e ait eşleştirmeyi kullanır.
Ön koşullar
- Gateway’i “master” makinede çalıştırabiliyor olmalısınız.
- Android cihazı/emülatörü gateway WebSocket’ine erişebilmelidir:
- mDNS/NSD ile aynı LAN, veya
- Wide-Area Bonjour / unicast DNS-SD kullanarak aynı Tailscale tailnet’i (aşağıya bakın), veya
- Manuel gateway ana makinesi/portu (geri dönüş)
- Gateway makinesinde (veya SSH üzerinden) CLI’yi (
openclaw) çalıştırabiliyor olmalısınız.
1. Gateway’i başlatın
listening on ws://0.0.0.0:18789
- Gateway ana makinesinde
~/.openclaw/openclaw.jsoniçindegateway.bind: "tailnet"ayarlayın. - Gateway’i / macOS menü çubuğu uygulamasını yeniden başlatın.
2. Keşfi doğrulayın (isteğe bağlı)
Gateway makinesinden:Unicast DNS-SD üzerinden Tailnet (Vienna ⇄ London) keşfi
Android NSD/mDNS keşfi ağlar arasında çalışmaz. Android node’unuz ve gateway farklı ağlarda olup Tailscale ile bağlıysa, Wide-Area Bonjour / unicast DNS-SD kullanın:- Gateway ana makinesinde bir DNS-SD bölgesi (örnek
openclaw.internal.) kurun ve_openclaw-gw._tcpkayıtlarını yayımlayın. - Seçtiğiniz alan adını bu DNS sunucusuna yönlendirecek şekilde Tailscale split DNS’i yapılandırın.
3. Android’den bağlanın
Android uygulamasında:- Uygulama, gateway bağlantısını foreground service (kalıcı bildirim) ile canlı tutar.
- Ayarlar’ı açın.
- Keşfedilen Gateway’ler altında gateway’inizi seçin ve Bağlan’a dokunun.
- mDNS engelliyse Gelişmiş → Manuel Gateway (ana makine + port) ve Manuel Bağlan’ı kullanın.
- Manuel uç nokta (etkinse), aksi halde
- Son keşfedilen gateway (en iyi çaba).
4. Eşleştirmeyi onaylayın (CLI)
Gateway makinesinde:5. Node’un bağlı olduğunu doğrulayın
-
Node durumu üzerinden:
-
Gateway üzerinden:
6. Sohbet + geçmiş
Android node’unun Sohbet sayfası, gateway’in birincil oturum anahtarını (main) kullanır; böylece geçmiş ve yanıtlar WebChat ve diğer istemcilerle paylaşılır:
- Geçmiş:
chat.history - Gönder:
chat.send - Anlık güncellemeler (en iyi çaba):
chat.subscribe→event:"chat"
7. Canvas + kamera
Gateway Canvas Host (web içeriği için önerilir)
Node’un, ajanın diskte düzenleyebileceği gerçek HTML/CSS/JS göstermesini istiyorsanız, node’u Gateway canvas host’una yönlendirin. Not: node’lar canvas’ı Gateway HTTP sunucusundan yükler (gateway.port ile aynı port, varsayılan 18789).
-
Gateway ana makinesinde
~/.openclaw/workspace/canvas/index.htmloluşturun. - Node’u buna yönlendirin (LAN):
.local yerine MagicDNS adı veya tailnet IP’si kullanın; örn. http://<gateway-magicdns>:18793/__openclaw__/canvas/.
Bu sunucu HTML içine canlı yeniden yükleme istemcisi enjekte eder ve dosya değişikliklerinde yeniden yükler.
A2UI host’u http://<gateway-host>:18793/__openclaw__/a2ui/ adresindedir.
Canvas komutları (yalnızca foreground):
canvas.eval,canvas.snapshot,canvas.navigate(varsayılan iskelete dönmek için{"url":""}veya{"url":"/"}kullanın).canvas.snapshot,{ format, base64 }’u döndürür (varsayılanformat="jpeg").- A2UI:
canvas.a2ui.push,canvas.a2ui.reset(canvas.a2ui.pushJSONLeski takma ad)
camera.snap(jpg)camera.clip(mp4)