From 2bbb45fe193fc9403b15efca85e6d7c8d4948c05 Mon Sep 17 00:00:00 2001 From: Bernd Steckmeister Date: Thu, 8 Oct 2026 11:10:20 +0200 Subject: [PATCH] =?UTF-8?q?docs:=20PROGRESS=20=E2=80=93=20Live-Anruftest,?= =?UTF-8?q?=20Teilen/Verbindung/Sprech-Ring,=200.1.40?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 --- PROGRESS.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/PROGRESS.md b/PROGRESS.md index cb5a6dc..6f2b204 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -13,6 +13,47 @@ Schritt (und beim Abbruch mitten im Schritt den Zwischenstand). Format: --- +## 2026-10-08 (Teil 2) – Anrufe im Live-Test nachgestellt: Teilen, Verbindung, Sprech-Ring → 0.1.40 + +**Erledigt (8074928, Version 064d730, Gitea-Vorabversion v0.1.40):** +- **Neuer Live-Anruftest** `integration_test/live_call_test.dart`: App + (pyramidtest1) + zweiter Matrix-Client (pyramidtest2, kurzlebiges Gerät) + im selben Prozess, eigener unverschlüsselter Raum. Teil 1: Gegenseite ruft + an, App nimmt über den echten Knopf an; Ton beide Richtungen (Bytes), + Bildschirm der Gegenseite erscheint in der App, App teilt über den echten + Quellen-Auswähler. Teil 2: App ruft an. In `scripts/test.ps1 -Ui`. +- **Bildschirm teilen** wurde nie angezeigt: `_updateRenderers` rief ein + SDK-`getFeeds()` auf, das es nicht gibt (Fehler geschluckt). Jetzt + typisierte Zugriffe, `stopped` beachtet. +- **Verbindungsaufbau:** matrix-SDK 6.2 verwirft Kandidaten, die vor der + fertig verarbeiteten Einladung (eigener Listener je Sync, nicht + serialisiert) bzw. während `answer()` eintreffen; Windows- + `getRemoteDescription` wirft statt null. Pyramid puffert Kandidaten der + Gegenseite (`_bufferRemoteCandidates`) und reicht sie direkt an die + PeerConnection nach. Vorher im Test NIE verbunden, jetzt 0,5 s / 2,7 s. +- **SDK-Zone** in `voip_manager.dart`: unbehandelte SDK/Plugin-Fehler + werden protokolliert; `_inSdkZone` reicht Ergebnis/Fehler per Completer + über die Zonengrenze (sonst würde der Aufrufer bei Fehlern ewig warten). +- **Sprech-Ring** bei 1:1-Anrufen (audioLevel aus getStats, Hysterese); + großes Bild springt nicht mehr beim Sprechen. +- **Trenner** mitten in einer Gruppe (Inline-Variante) blieb stehen → nur mit + Ungelesenem, blendet aus, trägt den Sprungschlüssel; Live-Test Teil 3 in + `live_receipts_invite_test.dart`. + +**Offen/Nächster Schritt:** Bernd testet 0.1.40 + Testinstanz (übernimmt +`app-neu` beim nächsten Start). PC→Handy-Ton: Transport ist belegt (Bytes +fließen), offen ist, ob das PC-Mikrofon Ton liefert (Messung: alle Geräte +still; Voicemeeter) → Sprech-Ring / Mikrofontest prüfen. + +**Stolperfallen:** (1) `what:`-Texte in Warte-Helfern werden beim Aufruf +ausgewertet, nicht beim Timeout – Zustände per Callback ausgeben. +(2) SDK-Mitglieder-Cache: `getParticipants()`/`getState(RoomMember)` sind +ohne Nachladen leer – nicht darauf warten. (3) Dart: Fehler überqueren +Error-Zone-Grenzen nicht – Completer verwenden. (4) Analyzer-Warnungen +beginnen ohne Einrückung („warning - …“) – beim grep beachten. + +--- + ## 2026-10-08 – Bernds Anruf-/Chat-Test mit PC-Testinstanz → Test-Version 0.1.39 **Erledigt (je ein Commit, alles gepusht):**