Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
graph TB
subgraph External["EXTERNAL SERVICES"]
Twilio["Twilio<br/>Voice / PSTN<br/>STT (Gather)<br/>Record<br/>Webhooks"]
OpenAI["OpenAI<br/>GPT-4o (conversation)<br/>Whisper async<br/>TTS (fallback)"]
OpenAI["OpenAI / Groq<br/>LLM (conversation)<br/>Whisper async<br/>TTS (fallback)"]
ElevenLabs["ElevenLabs<br/>TTS (primary voice)<br/>eleven_turbo_v2_5"]
end

Expand All @@ -26,7 +26,7 @@ graph TB
TTS["tts.py<br/>ElevenLabs → OpenAI<br/>→ Polly (fallback)<br/>Cache (MD5)<br/>Circuit breaker"]
Owner["owner_channel.py<br/>Signal notify<br/>Signal poll (3s)<br/>Slash commands<br/>Instructions"]
Contact["contact_lookup.py<br/>contacts.json<br/>Twilio CNAM<br/>E.164 normalize<br/>Lang from prefix"]
I18n["i18n.py<br/>11+ languages<br/>Signal templates<br/>Polly voices<br/>Twilio codes"]
I18n["i18n.py<br/>13+ languages<br/>Signal templates<br/>Polly voices<br/>Twilio codes"]
end

SignalCLI["signal-cli :8080<br/>REST API<br/>Native mode<br/>Self-hosted"]
Expand Down Expand Up @@ -185,7 +185,7 @@ sequenceDiagram

```mermaid
flowchart TD
Start([CALL START]) --> Prefix["Phone prefix detection<br/>+41 → de-CH<br/>+48 → pl-PL<br/>+44 → en-GB<br/>(52 prefixes)"]
Start([CALL START]) --> Prefix["Phone prefix detection<br/>+41 → de-CH<br/>+48 → pl-PL<br/>+44 → en-GB<br/>(53 prefixes)"]

Prefix --> ContactCheck{Contact has<br/>lang override?}
ContactCheck -->|Yes| ContactLang["Use contact language<br/>contacts.json<br/>e.g. {name: ..., lang: pl}"]
Expand Down Expand Up @@ -454,7 +454,7 @@ AVA/
│ ├── tts.py # TTS provider chain (ElevenLabs → OpenAI → Polly)
│ ├── owner_channel.py # Signal notifications, polling, slash commands
│ ├── contact_lookup.py # Contact book + Twilio CNAM + language from prefix
│ └── i18n.py # Multilingual strings, voice maps, Signal templates
│ └── i18n.py # Multilingual strings, voice maps, Signal templates (13+ langs)
├── data/
│ ├── contacts.json # (user-created) Phone contact book
│ └── calls/ # (auto-generated) JSON call records
Expand Down
6 changes: 3 additions & 3 deletions docs/INSTALL_EN.md
Original file line number Diff line number Diff line change
Expand Up @@ -629,8 +629,8 @@ AVA includes the following security mechanisms:
┌─────────────────────────────────────────────────────────────────┐
│ EXTERNAL SERVICES │
│ ┌──────────┐ ┌───────────┐ ┌──────────────┐ │
│ │ Twilio │ │ OpenAI │ │ ElevenLabs │ │
│ │ Voice/STT │ │ GPT-4o │ │ TTS (voice) │ │
│ │ Twilio │ │OpenAI/Groq│ │ ElevenLabs │ │
│ │ Voice/STT │ │ LLM │ │ TTS (voice) │ │
│ └─────┬─────┘ │ TTS fbk │ └──────┬───────┘ │
│ │ └─────┬─────┘ │ │
└────────┼──────────────────┼───────────────────┼─────────────────┘
Expand All @@ -657,7 +657,7 @@ AVA includes the following security mechanisms:
│ │ │ │ │
│ │ owner_channel.py ─── contact_lookup.py ─── i18n.py │ │
│ │ │ │ │ │
│ │ Signal notify contacts.json 11+ langs │
│ │ Signal notify contacts.json 13+ langs │
│ │ Signal poll (3s) CNAM lookup Signal │
│ │ Slash commands Lang from prefix templates │
│ │ Owner instructions Per-contact lang │
Expand Down
6 changes: 3 additions & 3 deletions docs/INSTALL_PL.md
Original file line number Diff line number Diff line change
Expand Up @@ -627,8 +627,8 @@ AVA posiada nastepujace mechanizmy bezpieczenstwa:
┌─────────────────────────────────────────────────────────────────┐
│ USLUGI ZEWNETRZNE │
│ ┌──────────┐ ┌───────────┐ ┌──────────────┐ │
│ │ Twilio │ │ OpenAI │ │ ElevenLabs │ │
│ │ Voice/STT │ │ GPT-4o │ │ TTS (glos) │ │
│ │ Twilio │ │OpenAI/Groq│ │ ElevenLabs │ │
│ │ Voice/STT │ │ LLM │ │ TTS (glos) │ │
│ └─────┬─────┘ │ TTS zap. │ └──────┬───────┘ │
│ │ └─────┬─────┘ │ │
└────────┼──────────────────┼───────────────────┼─────────────────┘
Expand All @@ -655,7 +655,7 @@ AVA posiada nastepujace mechanizmy bezpieczenstwa:
│ │ │ │ │
│ │ owner_channel.py ─── contact_lookup.py ─── i18n.py │ │
│ │ │ │ │ │
│ │ Signal powiad. contacts.json 11+ jezykow │
│ │ Signal powiad. contacts.json 13+ jezykow │
│ │ Signal poll (3s) CNAM lookup Signal │
│ │ Slash komendy Jezyk z prefiksu szablony │
│ │ Instrukcje Per-kontakt jezyk │
Expand Down