Aplikasi iOS (Node)

Ketersediaan: preview internal. Aplikasi iOS belum didistribusikan secara publik.

Apa yang dilakukannya

  • Terhubung ke Gateway melalui WebSocket (LAN atau tailnet).
  • Mengekspos kemampuan node: Canvas, Snapshot layar, Capture kamera, Lokasi, Mode bicara, Voice wake.
  • Menerima command node.invoke dan melaporkan event status node.

Persyaratan

  • Gateway berjalan di perangkat lain (macOS, Linux, atau Windows melalui WSL2).
  • Jalur jaringan:
    • LAN yang sama melalui Bonjour, atau
    • Tailnet melalui unicast DNS-SD (contoh domain: mayros.internal.), atau
    • Host/port manual (fallback).

Quick start (pair + connect)

  1. Mulai Gateway:
bash
mayros gateway --port 18789
  1. Di aplikasi iOS, buka Settings dan pilih gateway yang ditemukan (atau aktifkan Manual Host dan masukkan host/port).

  2. Setujui permintaan pairing di host gateway:

bash
mayros nodes pending
mayros nodes approve <requestId>
  1. Verifikasi koneksi:
bash
mayros nodes status
mayros gateway call node.list --params "{}"

Path discovery

Bonjour (LAN)

Gateway mengiklankan _mayros-gw._tcp di local.. Aplikasi iOS mencantumkan ini secara otomatis.

Tailnet (lintas jaringan)

Jika mDNS diblokir, gunakan zona unicast DNS-SD (pilih domain; contoh: mayros.internal.) dan split DNS Tailscale. Lihat Bonjour untuk contoh CoreDNS.

Host/port manual

Di Settings, aktifkan Manual Host dan masukkan host + port gateway (default 18789).

Canvas + A2UI

Node iOS me-render canvas WKWebView. Gunakan node.invoke untuk mengendalikannya:

bash
mayros nodes invoke --node "iOS Node" --command canvas.navigate --params '{"url":"http://<gateway-host>:18789/__mayros__/canvas/"}'

Catatan:

  • Host canvas Gateway menyajikan /__mayros__/canvas/ dan /__mayros__/a2ui/.
  • Ini disajikan dari server HTTP Gateway (port yang sama dengan gateway.port, default 18789).
  • Node iOS auto-navigasi ke A2UI saat terhubung ketika URL host canvas diiklankan.
  • Kembali ke scaffold bawaan dengan canvas.navigate dan {"url":""}.

Error umum

  • NODE_BACKGROUND_UNAVAILABLE: bawa aplikasi iOS ke foreground (command canvas/camera/screen memerlukannya).
  • A2UI_HOST_NOT_CONFIGURED: Gateway tidak mengiklankan URL host canvas; periksa canvasHost di Konfigurasi Gateway.
  • Prompt pairing tidak pernah muncul: jalankan mayros nodes pending dan setujui secara manual.
  • Reconnect gagal setelah reinstall: token pairing Keychain dihapus; pair ulang node.

Dokumen terkait