mirror of
https://github.com/Jeuners/Logpy-AgentOne.git
synced 2026-09-15 17:56:12 +02:00
Bruecke zwischen FreeSWITCH/mod_audio_stream und dem neuen Astra-Telefonie- Endpunkt (/telefon/inbound) - erlaubt echte, live gefuehrte Gespraeche statt nur Aufnahme+Nachbearbeitung: - dialog/pipecat_bootstrap.py: nimmt Kanaele per socket() entgegen (Nebenstelle 7501 intern, oder von dialog/anrufen.py ausgehend), startet uuid_audio_stream und haengt fuer die gesamte Gespraechsdauer auf der Leitung, um mod_audio_stream::play-Events abzuspielen (playback() - mod_audio_stream schreibt nur eine Datei und feuert ein Event, spielt selbst nichts ab). uuid_audio_stream laeuft bewusst ueber einen separaten fs_cli-Prozess, nicht ueber die eigene ESL-Verbindung (siehe Kommentar im Modul - sonst schlaegt der WebSocket-Connect bei echten externen Anrufen zuverlaessig fehl, amigniter/mod_audio_stream#92). - dialog/anrufen.py: loest ausgehende Anrufe aus (python3 -m dialog.anrufen <Nummer>), haengt sie an dieselbe Bruecke. - .env.example, requirements.txt (greenswitch), telefon/starten.sh: Bootstrap als vierten Hintergrunddienst mitstarten, wenn ASTRA_TELEFON_WS_URL gesetzt ist. mod_audio_stream selbst (gebaut mit -DUSE_TLS=ON) und die FreeSWITCH-Gateway- Konfiguration (Domain/Proxy-Trennung fuer Outbound, siehe agentzwei_sbc.xml) liegen direkt in der FreeSWITCH-Konfiguration, nicht in diesem Repo. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BfxZnUC9dZ8QT36pkfEPmM
12 lines
552 B
Text
12 lines
552 B
Text
# Sprachsynthese der Ansage (lokal). Ohne Piper fällt ansage_bauen.sh auf das
|
|
# macOS-eigene "say" zurück.
|
|
piper-tts>=1.2
|
|
# CA-Bundle: das Python von python.org bringt keinen System-Zertifikatsspeicher
|
|
# mit, ohne certifi scheitern die HTTPS-Aufrufe zu Nextcloud.
|
|
certifi
|
|
# Nur nötig für STT_BACKEND=faster; der Standard ist whisper.cpp.
|
|
faster-whisper>=1.2
|
|
|
|
# Outbound-ESL-Bootstrap fuer die Pipecat-Testleitung (dialog/pipecat_bootstrap.py):
|
|
# nimmt FreeSWITCHs socket()-Uebergabe an, macht answer()+uuid_audio_stream+park().
|
|
greenswitch>=0.0.19
|