fix(frontend): improve responsive transcripts and simplify theme styles
This commit is contained in:
+25
-6
@@ -117,6 +117,10 @@ browsable pages.
|
||||
Voice, editable system instructions and connection settings are kept in browser
|
||||
`localStorage` under `s2s.ws.*` keys. A non-empty `S2S_PRIMARY_PROMPT` pins the
|
||||
instruction field. Restart applies connection/voice changes to a new session.
|
||||
Settings and tool preferences use a draft: **Guardar** applies them and
|
||||
**Cancelar** or dialog dismissal discards unsaved edits. Voice and instructions
|
||||
update the live session on Save; connection changes apply on the next start.
|
||||
Noise-gate calibration is explicitly live and saves immediately.
|
||||
Model voice names are runtime identifiers and stay unchanged across UI
|
||||
translations.
|
||||
|
||||
@@ -135,19 +139,33 @@ enabled data sources and limits.
|
||||
`S2S_THEME=white` selects the light interface. `dark` or an empty value selects
|
||||
the dark aurora theme. Theme-specific sections remain hidden until configuration
|
||||
resolves, with a fallback to avoid an invisible page after config failure.
|
||||
Configuration failures offer **Reintentar** and block session startup until a
|
||||
retry succeeds. Reports load independently. Caller context gets an eight-second
|
||||
loading window before the interface allows a generic session.
|
||||
|
||||
`S2S_START_SESSION_MODE` controls initial microphone/session startup:
|
||||
|
||||
| Value | Behavior |
|
||||
|---|---|
|
||||
| Empty/default | User taps to start |
|
||||
| `TALK` | After a 2-second warmup, show an audio unlocker; a user gesture starts the session and greeting |
|
||||
| `TALKFIRST` | After a 2-second warmup, attempt automatic start and inject the Spanish wake phrase; microphone failure falls back to the unlocker |
|
||||
| `TALK` | After a 2-second warmup, show a dismissible startup dialog; a user gesture starts the session and greeting |
|
||||
| `TALKFIRST` | After a 2-second warmup, attempt automatic start and inject the Spanish wake phrase; microphone failure falls back to the startup dialog |
|
||||
|
||||
The warmup is a timer, not proof that all upstream context requests have
|
||||
finished. Browser permission and audio policies can still require a gesture.
|
||||
The warmup starts after configuration and caller-context loading settle;
|
||||
optional reports and tools can still be loading. Browser permission and audio
|
||||
policies can still require a gesture.
|
||||
The greeting uses the same `hola vocero` input as wake-word handling.
|
||||
|
||||
On browsers with speech recognition, **Activar con «hola vocero»** opts into
|
||||
wake-word listening for the current page session. The interface shows when the
|
||||
microphone is listening for that phrase. It is off by default, pauses while a
|
||||
dialog or voice session is active, and turns off when the conversation stops.
|
||||
|
||||
The transcript keeps your reading position when new messages arrive. **Ir al
|
||||
último mensaje** resumes following the conversation. Names and Santiago-local
|
||||
times appear with each message; downloaded JSON and text retain raw timestamps
|
||||
and message text. The interface respects the browser's reduced-motion setting.
|
||||
|
||||
## Queue and session lifecycle
|
||||
|
||||
Load-balancer mode proxies `POST /api/session`. A free compute slot returns a
|
||||
@@ -161,8 +179,9 @@ to a keepalive fetch. Expired tickets and missed join deadlines require a new
|
||||
attempt. Full queues return `503` with `state: "at_capacity"`.
|
||||
|
||||
Once connected, session teardown closes the microphone, audio graph and
|
||||
WebSocket. The 30-second inactivity timeout remains active when the assistant
|
||||
is not speaking. Caller-profile lookup and upstream authorization operate
|
||||
WebSocket. The 30-second inactivity timeout counts time waiting for user input;
|
||||
processing, external reasoning and buffered playback do not consume it.
|
||||
Caller-profile lookup and upstream authorization operate
|
||||
independently of allocation and use their existing configured endpoints.
|
||||
|
||||
For external transcript processing, configure the selected
|
||||
|
||||
Reference in New Issue
Block a user