diff --git a/PROGRESS.md b/PROGRESS.md index da143b0..cb5a6dc 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -13,6 +13,58 @@ Schritt (und beim Abbruch mitten im Schritt den Zwischenstand). Format: --- +## 2026-10-08 – Bernds Anruf-/Chat-Test mit PC-Testinstanz → Test-Version 0.1.39 + +**Erledigt (je ein Commit, alles gepusht):** +- **PC-Testinstanz** (a6461fe + außerhalb des Repos): `C:\Users\nordm\pyramid-testinstanz\` + (Release-Build, `Pyramid-Testinstanz.cmd`, Desktop-Verknüpfung), Profil + `profile2` = pyramidtest2, Fenstertitel „Pyramid - TESTINSTANZ“, + Doppelstart-Schutz, übernimmt bereitgelegte Updates (`app-neu`) beim + nächsten Start. DM pyramidtest2 ↔ Bernd angelegt. +- **Haken live / Einladungen / Trenner** (c817de9): ✓✓ zeichnet nach jedem + Sync neu, wenn sich Lesepositionen ändern (Raum-Update kommt im SDK VOR der + Bestätigung); Einladung im Chat annehmen, Verlauf baut sich bei + invite→join neu auf; Trenner blendet 6 s nach Erreichen der neuesten + Nachrichten aus, auch ohne Scrollen. Live-Test mit beiden Testkonten + (`integration_test/live_receipts_invite_test.dart`, Gegenprobe rot ohne + Fix), in `scripts/test.ps1 -Ui`. +- **Anrufe** (441cc6e): Bildschirm teilen auf Android 14+ stürzte ab + (kein mediaProjection-Vordergrunddienst; Manifest verwies auf nicht + existierende flutter_webrtc-Klasse) → `CallService.kt` + + `lib/core/call_foreground.dart` (Zustimmung → Dienst, wartet auf echten + startForeground → Mitschnitt). Emulator-Test Android 16 + (`integration_test/android_screen_capture_test.dart`): mit Fix läuft der + Mitschnitt, Gegenprobe wirft die erwartete SecurityException. Dienst hält + während jedes Anrufs das Mikrofon im Hintergrund aktiv + „Anruf läuft“- + Benachrichtigung. Handy: Lautsprecher statt Hörmuschel (SDK schaltet + Sprachanrufe auf Hörmuschel) + Umschalter. „Anruf läuft · Zurück“-Leiste im + Chat. LiveKit-Teilen am Handy ohne PC-Quellen-Auswähler. Mikrofontest mit + Pegel in den Einstellungen. +- **Version 0.1.39+40** (775cf71) als Gitea-Vorabversion. + +**Befund PC-Mikrofon:** Lokale Pegelmessung über WebRTC lieferte auf ALLEN +10 Aufnahmegeräten (Voicemeeter-Ausgänge, Steam, Razer Barracuda X) nur +digitale Stille (audioLevel 1/32767). Entweder war das Headset aus, oder das +Mikrofon läuft über Voicemeeter und Pyramid nutzt das falsche Gerät – das +erklärt „Handy hört den PC nicht“. Bernd prüft mit dem neuen Mikrofontest. + +**Offen/Nächster Schritt:** Bernd testet 0.1.39 + Testinstanz: Teilen am +Handy (System-Dialog „Gesamten Bildschirm teilen“), Ton beide Richtungen +(PC-Mikrofon im Mikrofontest wählen), Teilen vom PC, Verbindungsdauer +außerhalb des Heimnetzes (ICE/TURN ist ok: TURN-Daten werden alle 4 h +erneuert; Verzögerung vermutlich SDK-Kandidaten-Bündelung 2 s + verschlüsselte +Signalisierung – erst messen, dann ändern). + +**Stolperfallen:** (1) Git-Bash schreibt `/sdcard/...` in Windows-Pfade um → +`MSYS_NO_PATHCONV=1` für adb. (2) Android 16 schlägt beim Teilen „eine App“ +vor und wechselt in diese App – das sah wie „App verkleinert sich“ aus. +(3) Ein Dienst mit Typ microphone ohne RECORD_AUDIO-Berechtigung wird KOMPLETT +verweigert – Typen nur mit Berechtigung anfordern. (4) Python-urllib wird von +Cloudflare ohne User-Agent abgewiesen (Aufräumskript). (5) Testkonten: +Schlüssel in test-accounts.txt heißen user1/pass1/user2/pass2. + +--- + ## 2026-10-07 (Teil 4) – Handy-UI-Feinschliff, Animationen, Lesebestätigung, LiveKit ohne Secret → Test-Version 0.1.38 **Erledigt (je ein Commit, alles gepusht):**