Remote web chat tunnel and onboarding polish

This commit is contained in:
Peter Steinberger
2025-12-08 12:50:37 +01:00
parent 17fa2f4053
commit 92457f7fab
13 changed files with 338 additions and 162 deletions

View File

@@ -182,6 +182,7 @@ actor VoiceWakeRuntime {
private func monitorCapture(config: RuntimeConfig) async {
let start = self.captureStartedAt ?? Date()
let hardStop = start.addingTimeInterval(self.captureHardStop)
var silentStrikes = 0
while self.isCapturing {
let now = Date()
@@ -191,8 +192,13 @@ actor VoiceWakeRuntime {
}
if let last = self.lastHeard, now.timeIntervalSince(last) >= self.silenceWindow {
await self.finalizeCapture(config: config)
return
silentStrikes += 1
if silentStrikes >= 2 {
await self.finalizeCapture(config: config)
return
}
} else {
silentStrikes = 0
}
try? await Task.sleep(nanoseconds: 200_000_000)