spec: add SPEC-011 Mobile Agent Support (iOS and Android)
Comprehensive specification for iOS/Android devices as remote control targets: iOS Agent (View-Only): - ReplayKit 2 screen capture (user consent required) - VideoToolbox H.264 encoding - NO input injection (iOS sandboxing limitation) - APNs push notifications for session requests - Foreground-only operation (OS requirement) Android Agent (View + Control): - MediaProjection API screen capture (user consent) - MediaCodec H.264 encoding - Accessibility Service for input injection (tap/swipe/type) - FCM push notifications - Foreground service with persistent notification Architecture: - Native Swift/SwiftUI (iOS) and Kotlin/Jetpack Compose (Android) apps - Same protobuf-over-WSS protocol as desktop agents - Support-code authentication (persistent mode deferred to Phase 2) - Minor protobuf additions: MobileCapabilities, TouchEvent - Server push module: APNs (a2 crate) + FCM HTTP v1 Key constraints: - Attended-only sessions (user must grant permission) - Foreground-only (cannot capture in background on either platform) - iOS view-only (platform sandbox prevents input injection) - Consent-first model (MediaProjection/ReplayKit user prompts) Estimated effort: X-Large (16-20 weeks, requires mobile expertise) Priority: P3 Distinct from GuruRMM SPEC-017 (MDM/inventory) — this is remote control, not device management. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -94,4 +94,5 @@ Bringing GC to parity with GuruRMM's release engineering. Full plan: [SPEC-001](
|
||||
## Future Considerations
|
||||
|
||||
- [ ] **Cross-platform agent support (macOS and Linux)** — P2 — Enable remote control beyond Windows with native agents for macOS 12+ and Ubuntu 22.04+ LTS. Platform abstraction layer for capture/input/encoding, VideoToolbox (macOS) and VA-API (Linux) H.264 encoding, .app/.deb/.rpm packaging. Unblocks multi-platform MSP adoption. ([SPEC-010](specs/SPEC-010-cross-platform-agents.md))
|
||||
- [ ] **Mobile agent support (iOS and Android as remote control targets)** — P3 — Native mobile apps for supervised support sessions. iOS: ReplayKit screen sharing (view-only, no input injection due to sandboxing). Android: MediaProjection screen capture + Accessibility Service input injection. Support-code authentication, push notifications (APNs/FCM), consent-first model. Foreground-only operation (OS limitation). Distinct from GuruRMM SPEC-017 (MDM/management). ([SPEC-011](specs/SPEC-011-mobile-agents.md))
|
||||
- [ ] Auto-update for the agent — P3
|
||||
|
||||
Reference in New Issue
Block a user