iOS アプリ
iOS ノードアプリ:Gateway 接続、ペアリング、Canvas、トラブルシューティング。
利用可能性:内部プレビュー。現在、iOS アプリはまだ公開配布されていません。
できること
- WebSocket 経由で Gateway に接続(同一 LAN または tailnet)。
- ノード機能を公開:Canvas、スクリーンショット、カメラキャプチャ、位置情報、トランシーバーモード、音声ウェイク。
- ''node.invoke'' コマンドを受信し、ノードステータスイベントを報告します。
Prerequisites
- Gateway は別のデバイス(macOS、Linux、または WSL2 経由の Windows)で実行されている必要があります。
- ネットワークパスが以下のいずれかを満たす:
- 同一 LAN、Bonjour 経由で検出、または
- unicast DNS-SD を使用した tailnet 経由(例ドメイン:''openclaw.internal.'')、''または''
- 手動 host/port(フォールバック)
クイックスタート(ペアリング + 接続)
1. Gateway を起動:
openclaw gateway --port 18789
2. iOS アプリで Settings を開き、検出された gateway を選択(または Manual Host を有効にして host/port を入力)。
3. gateway ホストでペアリングリクエストを承認:
openclaw nodes pending openclaw nodes approve '<requestId>'
4. 接続を確認:
openclaw nodes status
openclaw gateway call node.list --params "{'}"検出パス
#
Bonjour(LAN)
Gateway は ''local.'' 上で ''local.'' をブロードキャストします。iOS アプリはこれらの gateway を自動的に一覧表示します。
#
Tailnet(クロスネットワーク)
mDNS がブロックされている場合、unicast DNS-SD ゾーンを使用(ドメインを選択、例:''openclaw.internal.'')、Tailscale スプリット DNS を設定します。
CoreDNS の例については ''Bonjour'' を参照してください。
#
Manual host/port
Settings で ''Manual Host'' を有効にし、gateway の host + port を入力(デフォルト ''18789'')。
Canvas + A2UI
iOS ノードは WKWebView を使用して canvas をレンダリングします。''node.invoke'' 経由で駆動できます:
openclaw nodes invoke --node "iOS Node" --command canvas.navigate --params {"url":"http://<gateway-host>:18793/__openclaw__/canvas/"}Notes:
- Gateway canvas host は ''/__openclaw__/canvas/'' と ''/__openclaw__/a2ui/'' を提供します。
- iOS ノードは接続時に canvas host URL を検出すると、自動的に A2UI に移動します。
- ''canvas.navigate'' を ''{"url":""}'' で使用すると、組み込み scaffold に戻ります。
#
Canvas eval / snapshot
openclaw nodes invoke --node "iOS Node" --command canvas.eval --params {"javaScript":"(() => { const {ctx} = window.__openclaw; ctx.clearRect(0,0,innerWidth,innerHeight); ctx.lineWidth=6; ctx.strokeStyle=\"#ff2d55\"; ctx.beginPath(); ctx.moveTo(40,40); ctx.lineTo(innerWidth-40, innerHeight-40); ctx.stroke(); return \"ok\"; })()"}openclaw nodes invoke --node "iOS Node" --command canvas.snapshot --params {"maxWidth":900,"format":"jpeg"}音声ウェイクとトランシーバーモード
- 音声ウェイクとトークモードは Settings で有効にできます。
- iOS はバックグラウンドでオーディオを中断する可能性があります。アプリがフォアグラウンドにない場合、音声機能はベストエフォートと見なす必要があります。
一般的なエラー
- ''NODE_BACKGROUND_UNAVAILABLE'':iOS アプリをフォアグラウンドに移動(canvas/camera/screen コマンドはフォアグラウンドが必要)。
- ''A2UI_HOST_NOT_CONFIGURED'':Gateway が canvas host URL をブロードキャストしていません。''Gateway configuration'' の ''canvasHost'' を確認してください。
- ペアリングプロンプトが表示されない:''openclaw nodes pending'' を実行し、手動で承認します。
- 再インストール後に再接続できない:キーチェーン内のペアリングトークンがクリアされています。再ペアリングが必要です。