From 7d30fe9e7c818978ac9803b7077ec79e7d53d774 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dieter=20Schl=C3=BCter?= Date: Sun, 21 Jun 2026 01:10:51 +0200 Subject: [PATCH 01/10] =?UTF-8?q?ui(tts):=20Ton-Presets=20=E2=80=94=20Schn?= =?UTF-8?q?ell=20(piper),=20Hohe=20Qualit=C3=A4t=20(chatterbox),=20Cloud?= =?UTF-8?q?=20(openrouter)=20zur=C3=BCck?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Vorlesen-Presets wieder nach Tempo/Qualität benannt: 📱 Im Gerät · ⚡ Schnell · ✨ Hohe Qualität · ☁ Cloud. Cloud (OpenRouter) wieder als sichtbarer Knopf. - syncPresetUI: exakte Markierung (openrouter hat eigenen Knopf, kein Sonderfall mehr). - Doku §5.1.2 angepasst. Co-Authored-By: Claude Opus 4.8 --- BEDIENUNGSANLEITUNG.md | 2 +- app/web/app.js | 3 +-- app/web/index.html | 19 +++++++++++++------ 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/BEDIENUNGSANLEITUNG.md b/BEDIENUNGSANLEITUNG.md index 1c5be23..de4ae5b 100644 --- a/BEDIENUNGSANLEITUNG.md +++ b/BEDIENUNGSANLEITUNG.md @@ -800,7 +800,7 @@ https://va.beispiel.de/ ← remote über Reverse-Proxy (alles, inkl. Mikr | Element | Funktion | |---------|----------| -| **Vorlesen** | Wie wird die Antwort vorgelesen? `📱 Im Gerät` = das Handy liest selbst vor (kein Server-Audio → spart Daten) · `☁ Server` = piper (lokal, zuverlässig) · `✨ Beste Qualität` = chatterbox (natürliche Stimme). „Im Gerät" erscheint nur, wo der Browser es unterstützt. | +| **Vorlesen** | Wie wird die Antwort vorgelesen? `📱 Im Gerät` = das Handy liest selbst vor (kein Server-Audio → spart Daten; fällt auf Server zurück, wenn der Browser keine Stimmen hat) · `⚡ Schnell` = piper (lokal) · `✨ Hohe Qualität` = chatterbox (natürliche Stimme) · `☁ Cloud` = OpenRouter (Internet nötig). „Im Gerät" erscheint nur, wo der Browser es unterstützt. | | **✎ Neues Gespräch** | Frische Sitzung (Verlauf zurücksetzen) | | **🌙 Tag-/Nachtmodus** | Heller/dunkler Modus; folgt sonst dem Betriebssystem | | **Konto** | „Angemeldet als …", **⚙ Admin** (nur Admins → § 7.5), **Abmelden** | diff --git a/app/web/app.js b/app/web/app.js index 95c7cd3..d3d6ae5 100644 --- a/app/web/app.js +++ b/app/web/app.js @@ -164,8 +164,7 @@ function applyPlaybackChoice(serverProvider) { function syncPresetUI() { const val = ttsSel ? ttsSel.value : ""; document.querySelectorAll(".tts-preset").forEach((btn) => { - const active = btn.dataset.tts === val || - (val === "openrouter" && btn.dataset.tts === "chatterbox"); // Cloud -> "Beste Qualität" + const active = btn.dataset.tts === val; btn.classList.toggle("ring-2", active); btn.classList.toggle("ring-blue-500", active); btn.classList.toggle("border-blue-500", active); diff --git a/app/web/index.html b/app/web/index.html index 002d30f..7750b84 100644 --- a/app/web/index.html +++ b/app/web/index.html @@ -260,16 +260,23 @@ + @@ -318,6 +325,6 @@
- + From 53ec2d7ec701ec026269dc897c007ecb65a2967a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dieter=20Schl=C3=BCter?= Date: Sun, 21 Jun 2026 01:28:21 +0200 Subject: [PATCH 02/10] =?UTF-8?q?ui:=20"Angemeldet=20als=20=E2=80=A6"=20+?= =?UTF-8?q?=20"Abmelden"=20zur=C3=BCck=20in=20eine=20Leiste=20unter=20die?= =?UTF-8?q?=20Kopfzeile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Identitätsleiste (Nutzer links, Abmelden-Link rechts) wieder direkt unter dem Header statt im ⋮-Menü. Logout-Link kommt wie bisher aus SSO_LOGOUT_URL. - Admin-Button bleibt im ⋮-Menü (als "⚙ Admin-Bereich"); IDs unverändert. - Doku §5.1.2 angepasst. Co-Authored-By: Claude Opus 4.8 --- BEDIENUNGSANLEITUNG.md | 19 +++++++++++-------- app/web/index.html | 23 ++++++++++++----------- 2 files changed, 23 insertions(+), 19 deletions(-) diff --git a/BEDIENUNGSANLEITUNG.md b/BEDIENUNGSANLEITUNG.md index de4ae5b..f03cbb0 100644 --- a/BEDIENUNGSANLEITUNG.md +++ b/BEDIENUNGSANLEITUNG.md @@ -776,16 +776,16 @@ https://va.beispiel.de/ ← remote über Reverse-Proxy (alles, inkl. Mikr ┌─────────────────────────────────────────────────────────┐ │ 👄 Voice Assistant ............... [🇩🇪 ▾] [ ⋮ ] │ ├─────────────────────────────────────────────────────────┤ ┌─ Menü (⋮) ──────────────┐ -│ │ │ VORLESEN │ -│ Nachrichtenverlauf │ │ ▣ 📱 Im Gerät │ -│ (eigene Nachrichten: blaue Blase rechts) │ │ ▢ ☁ Server │ -│ (Assistent: graue Blase links) │ │ ▢ ✨ Beste Qualität │ +│ Angemeldet als ....................... Abmelden │ │ VORLESEN │ +├─────────────────────────────────────────────────────────┤ │ ▣ 📱 Im Gerät │ +│ Nachrichtenverlauf │ │ ▢ ⚡ Schnell │ +│ (eigene Nachrichten: blaue Blase rechts) │ │ ▢ ✨ Hohe Qualität │ +│ (Assistent: graue Blase links) │ │ ▢ ☁ Cloud │ │ │ │ ────────────────────── │ ├─────────────────────────────┬───────────────────────────┤ │ ✎ Neues Gespräch │ │ Texteingabe … [Senden] │ [🎤] │ │ 🌙 Tag-/Nachtmodus │ -└─────────────────────────────┴───────────────────────────┘ │ ────────────────────── │ - Statuszeile: „denkt …" / „verarbeite Sprache …" / leer │ Angemeldet · Admin · Ab │ - └──────────────────────────┘ +└─────────────────────────────┴───────────────────────────┘ │ ⚙ Admin-Bereich │ + Statuszeile: „denkt …" / „verarbeite Sprache …" / leer └──────────────────────────┘ ``` **Kopfzeile (immer schlank):** @@ -796,6 +796,9 @@ https://va.beispiel.de/ ← remote über Reverse-Proxy (alles, inkl. Mikr | **Sprache ▾** | Antwortsprache (→ § 6.6): `🔄 Flex` = folgt der gesprochenen Sprache · feste Sprache (🇩🇪/🇬🇧/…) = Antwort + Stimme in dieser Sprache | | **⋮ Menü** | Öffnet die Einstellungen (unten) | +**Identitätsleiste (direkt unter der Kopfzeile):** links „Angemeldet als …" (SSO-Identität; +„Gast" ohne SSO), rechts **Abmelden** (Link zum SSO-Logout). + **Im ⋮-Menü:** | Element | Funktion | @@ -803,7 +806,7 @@ https://va.beispiel.de/ ← remote über Reverse-Proxy (alles, inkl. Mikr | **Vorlesen** | Wie wird die Antwort vorgelesen? `📱 Im Gerät` = das Handy liest selbst vor (kein Server-Audio → spart Daten; fällt auf Server zurück, wenn der Browser keine Stimmen hat) · `⚡ Schnell` = piper (lokal) · `✨ Hohe Qualität` = chatterbox (natürliche Stimme) · `☁ Cloud` = OpenRouter (Internet nötig). „Im Gerät" erscheint nur, wo der Browser es unterstützt. | | **✎ Neues Gespräch** | Frische Sitzung (Verlauf zurücksetzen) | | **🌙 Tag-/Nachtmodus** | Heller/dunkler Modus; folgt sonst dem Betriebssystem | -| **Konto** | „Angemeldet als …", **⚙ Admin** (nur Admins → § 7.5), **Abmelden** | +| **⚙ Admin-Bereich** | Öffnet das Admin-Panel — nur für Admin-Nutzer sichtbar (→ § 7.5) | **Unten:** diff --git a/app/web/index.html b/app/web/index.html index 7750b84..f0c5a89 100644 --- a/app/web/index.html +++ b/app/web/index.html @@ -233,6 +233,12 @@ class="h-9 w-9 grid place-items-center rounded-lg border border-slate-300 dark:border-slate-600 hover:bg-slate-100 dark:hover:bg-slate-700 text-xl leading-none transition-colors">⋮ + +
+ lade … + +
+ @@ -225,7 +227,9 @@ - + + + @@ -244,6 +248,7 @@ + @@ -278,6 +283,13 @@ Chatterbox · natürliche Stimme + + + + +
-