5 Commits
Author SHA1 Message Date
dualfroz 67e1b80b06 Describe this repository 2026-10-22 21:03:44 +02:00
dualfroz 943658caef fix(apiserver): publish dial events under the call ref TrackCall registers
handleDial published to the calls.track subject keyed by channel.id, while
trackCall registers the client stream keyed by the ref CreateCall returned.
The two identifiers never match, so every dial event was dropped and the
statusStream from Calls.createCall stayed empty for the life of the call.

Resolve the CALL_REF channel variable, which the originate in runCallManager
and the local-ctx-common dialplan both set, and publish under that. Channels
with no call ref have no TrackCall request waiting on them, so the event is
skipped instead of published under an id nothing can match.

Refs #883
2026-09-13 15:19:22 +02:00
upstream e6e485bb10 Upstream fonoster/fonoster state of the touched files before 2f35dbd337 2026-09-11 23:13:38 +02:00
dualfroz affe71f68c fix(autopilot): honor allowUserBargeIn during the greeting and the idle message
The greeting and announcingIdleTimeout states accepted SPEECH_START
unconditionally, so the caller cut the first message and the idle prompt
short even with allowUserBargeIn set to false, unlike processingUserRequest
and waitingForSpeechTimeout which already guard that event.

Guarding the event alone would drop the utterance: idle only listens for
SPEECH_START, so speech produced while the assistant was talking would
never be processed. Both playing states now buffer SPEECH_RESULT without
stopping playback and hand it to waitingForSpeechTimeout when the message
finishes, and idle accepts a SPEECH_RESULT that lands right after playback
ended.

Closes #891
2026-09-11 23:06:26 +02:00
upstream 69e3ce7154 Upstream fonoster/fonoster state of the touched files before b6f9124ad6 2026-09-11 23:06:26 +02:00