feat: Mistral Voxtral als drittes Ansage-TTS-Backend, neuer Ansage-Text

ansage_bauen.sh unterstuetzt jetzt ANSAGE_TTS=mistral neben piper/say -
einmalige Cloud-Erzeugung der ansage.wav (kein Live-Anrufdaten-Transfer,
die fertige Datei wird danach lokal fuer jeden Anruf wiederverwendet).
Inline implementiert statt vom globalen Claude-Skill abhaengig, damit es
auf jeder Maschine mit nur MISTRAL_KEY in der .env laeuft.

Ansage-Text ueberarbeitet ("Demo Praxis", Kollegen im Gespraech, kuerzer
gehalten) und mit gb_oliver_neutral vertont.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PuP3zfgYqhnrwyEne2ejG7
This commit is contained in:
Jeuner 2026-08-23 11:38:16 +02:00
parent 1aca65b8e6
commit 0f550be66a
3 changed files with 48 additions and 7 deletions

View file

@ -37,10 +37,19 @@ SIP_DOMAIN=sip.plusnet.de
SIP_PASS=
SIP_PROXY=voice01.sip.plusnet.de
# --- Ansage (lokal; piper braucht Modelle unter ~/piper-voices) ---
# --- Ansage ---
# piper = lokal, natuerlich, Modelle unter ~/piper-voices
# say = lokal, macOS-Bordmittel (Rueckfall wenn Piper fehlt)
# mistral = Voxtral-API (Cloud) - nur fuer die einmalige Erzeugung der
# ansage.wav, die danach lokal fuer jeden Anruf wiederverwendet
# wird. Keine Live-Anrufdaten gehen dabei nach aussen.
ANSAGE_TTS=piper
ANSAGE_STIMME=de_DE-thorsten_emotional-medium
ANSAGE_EMOTION=0
# Nur fuer ANSAGE_TTS=mistral (Stimmen: telefon/ansage_bauen.sh --list-voices
# gibt es nicht direkt her - siehe MISTRAL_TTS_MODEL/Skill-Doku fuer die Liste)
MISTRAL_KEY=
MISTRAL_TTS_MODEL=voxtral-mini-tts-latest
# --- Deck-Triage-Board (Nextcloud) ---
# Hauptschalter: ohne 1 entsteht kein Board, egal was unten steht.