Files
openclaw/apps/ios/Sources/Voice/TalkDefaults.swift
Colin Johnson f6e51ff99a feat(ios): refresh pro UI and gateway flows (#87367)
Summary:
- Replace the legacy iOS shell with Pro Command, Chat, Agents, and Settings tabs.
- Wire iOS chat/session/settings/diagnostics and realtime Talk flows through gateway-backed APIs.
- Add gateway/session and shared chat coverage for the new iOS flow.

Verification:
- git diff --check
- node scripts/run-vitest.mjs src/gateway/server.sessions.create.test.ts src/gateway/talk-realtime-relay.test.ts
- swift test --filter ChatViewModelTests (apps/shared/OpenClawKit)
- xcodebuild build for Nimrod's iPhone succeeded; install succeeded; launch was blocked because the phone was locked

Known follow-up:
- Preserve traceLevel in sessions.create parent runtime inheritance and keep the changelog credit in the follow-up patch.
2026-05-28 17:23:26 +03:00

15 lines
497 B
Swift

import Foundation
enum TalkDefaults {
static let silenceTimeoutMs = 900
static let speakerphoneEnabledKey = "talk.speakerphone.enabled"
static let speakerphoneEnabledByDefault = true
static func speakerphoneEnabled(defaults: UserDefaults = .standard) -> Bool {
guard defaults.object(forKey: self.speakerphoneEnabledKey) != nil else {
return self.speakerphoneEnabledByDefault
}
return defaults.bool(forKey: self.speakerphoneEnabledKey)
}
}