Set AGENT_NAME_SPOKEN=Eva (example) and document name/phone behaviour
- .env.example: add AGENT_NAME_SPOKEN=Eva. - CLAUDE.md: note the agent-name respelling (AVA -> Eva, "EE-vuh"), that the caller-ID is injected pre-spelled (model mangles raw digits), and that the phone is confirmed near the END of the call, not led with. (.env itself is gitignored; AGENT_NAME_SPOKEN=Eva set there and live.) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -55,5 +55,7 @@ KOKORO_MODEL_DIR=/home/tocmo0nlord/pipecat-run/models
|
||||
|
||||
# ── Call behaviour ───────────────────────────────────────────────────────────
|
||||
AGENT_NAME=AVA
|
||||
# How the name is SPOKEN (TTS only; logs/Odoo keep AGENT_NAME). "Eva" -> "EE-vuh".
|
||||
AGENT_NAME_SPOKEN=Eva
|
||||
# Grace pause after the goodbye before the carrier leg is dropped (seconds).
|
||||
HANGUP_DELAY_SECS=4.0
|
||||
|
||||
14
CLAUDE.md
14
CLAUDE.md
@@ -66,8 +66,15 @@ raw digit strings as cardinals with symbols spoken aloud ("983-4969" → "nine h
|
||||
eighty-three dash forty-nine sixty-nine"). This subclass normalizes the text in `run_tts`
|
||||
(which receives the full sentence) so US phone numbers and 4–5 digit runs (street numbers,
|
||||
zips) are spoken one digit at a time — country code dropped, no "dash"/parens; dates and
|
||||
times left natural ("Monday the fifth", "three thirty"). Deterministic, so it's robust to
|
||||
whatever the model emits. Keep it. `tts_normalize()` holds the rules.
|
||||
times left natural ("Monday the fifth", "three thirty"). It also respells the all-caps agent
|
||||
name to `AGENT_NAME_SPOKEN` (Kokoro reads "AVA" as "A-V-A"; set to "Eva" so it says
|
||||
"EE-vuh"). Deterministic, so it's robust to whatever the model emits. Keep it.
|
||||
`tts_normalize()` holds the rules.
|
||||
|
||||
> Note: don't rely on the model to read raw digits — it mangles them (it emitted
|
||||
> "197-three five seven three…" once). The caller-ID is injected into the prompt **already
|
||||
> spelled out** so AVA just repeats clean words; `tts_normalize` is the backstop for any
|
||||
> other numbers.
|
||||
|
||||
---
|
||||
|
||||
@@ -215,6 +222,7 @@ STREAM_TOKEN=
|
||||
|
||||
# Call behaviour
|
||||
AGENT_NAME=AVA
|
||||
AGENT_NAME_SPOKEN=Eva # how the name is pronounced in TTS (logs/Odoo keep AGENT_NAME)
|
||||
HANGUP_DELAY_SECS=4.0 # grace pause after the goodbye before dropping the carrier leg
|
||||
ENABLE_TOOLS=
|
||||
VAD_CONFIDENCE=0.5
|
||||
@@ -244,7 +252,7 @@ Replies are kept to one short sentence.
|
||||
| Field | In-call behavior | Logged as |
|
||||
|-------|------------------|-----------|
|
||||
| Full name | Asks for last name if only a first is given | `patient_name` / lead `contact_name` |
|
||||
| Phone | Reads back the caller-ID number; if the caller declines, uses the number they give | `callback_number` (+ `phone_confirmed`) |
|
||||
| Phone | Confirmed **near the end** (not led with); reads back the caller-ID — injected pre-spelled so it's said digit-by-digit — and if the caller declines, uses the number they give | `callback_number` (+ `phone_confirmed`) |
|
||||
| Office / city | Asks city/area; when the caller names a place that matches an office, **confirms that office and moves on** — never offers/compares other offices or asks them to choose; names the nearest only if nothing matches | folded into `reason` prefix |
|
||||
| Reason | Captured from the conversation | `reason` |
|
||||
| Insurance | **Log only** — asks the plan, never promises/confirms/denies coverage or treatment (even a listed plan); staff verify on callback | `insurance` (note: "log only — staff to verify") |
|
||||
|
||||
Reference in New Issue
Block a user