Winamp Cast rapportage — 14 oktober 2026

De actieve lokale spelserver op poort 5590 heeft een afzonderlijke WSGI-route:
/api/winampcast/reports. Deze koppelt niet aan de spelmeldingen of hun werkqueues.
De bestaande openbare route is geverifieerd vanaf deze pc én vanaf de VPS.
Het ontvangstadres staat in de diagnostics.json van de gebouwde setup.

Rapporten landen hier:
D:\software_projects\winamp_cast\reports\winampcast.sqlite3

Laatste meldingen lezen:
.\.venv\Scripts\python.exe diagnostics\list_reports.py --limit 20

De ontvanger bewaart maximaal 50.000 rapporten en 90 dagen. De leeskey is
apart van de uploadkey; de setup bevat uitsluitend de uploadkey. De server
weigert onbekende velden, persoonlijke vrije tekst en berichten groter dan 8 KB.
Bij opnieuw aanbieden van hetzelfde rapport ontstaat geen dubbele melding.
Een uploadkey geeft geen leesrechten. Sleutels en lokale configuratie nooit delen.

Lokale configuratie (buiten broncode en distributie):
D:\ai_server\auth\data\winampcast.json
De koppeling staat in game_server.py en winampcast_reports.py. Ontbreekt de
configuratie, dan blijft alleen de gewone spelserver actief. Is de koppeling
defect, dan blijft de spelserver beschikbaar en komt er een fout in server.log.
De ontvanger draait mee met de bestaande server; geen nieuwe poort of taak nodig.

Opnieuw bouwen voor deze ontvanger:
.\setup\Build-Setup.ps1 -DiagnosticsUrl "http://195.240.63.15:5590/api/winampcast/reports" -DiagnosticsTokenFile build\winampcast-ingest.token -AllowHttpDiagnostics

De uploadkey opnieuw beschikbaar maken zonder die af te drukken:
.\.venv\Scripts\python.exe diagnostics\configure_local.py --auth-root D:\ai_server\auth

Alleen technisch begrensde rapporten gaan via deze bestaande HTTP-route.
Voor volledige logs of andere persoonsgegevens eerst een HTTPS-route gebruiken.
De client accepteert HTTP uitsluitend bij een expliciet daarvoor gebouwde setup.

Optionele VPS-variant:
requirements.txt, winampcast-diagnostics.service en nginx-location.conf staan
naast receiver.py. Configureer aparte WINAMPCAST_INGEST_TOKEN en
WINAMPCAST_READ_TOKEN en bouw daarna met het echte HTTPS-adres. De VPS-variant
is voorbereid maar niet uitgerold; de lokale 5590-ontvanger is nu de actieve route.

Clientverslagen: %LOCALAPPDATA%\WinampCast\diagnostics.
Automatische deling vereist de keuze in de installer. Succesvolle installatie
registreert een verborgen zender bij gebruikersaanmelding. Die controleert
elke minuut op rapporten en bekende bridge-foutcategorieën. Geen audio-wijziging.
Bij installatie die mislukt worden rapporten direct aangeboden. Is de server
dan offline, dan blijven ze lokaal; een volgende succesvolle installatie met
rapportage kan ze opnieuw aanbieden.

Verificatie:
.\.venv\Scripts\python.exe -m pytest -q tests\test_setup_profile.py tests\test_diagnostics.py
.\.venv\Scripts\python.exe tests\setup_validation.py
.\.venv\Scripts\python.exe tests\setup_release_probe.py --diagnostics

De laatste test gebruikt een aparte Winamp-kopie en start geen muziek. Hij
weigert te draaien als er al een geregistreerde Winamp Cast-installatie is.
Werkelijke UAC met een ander account en de oorspronkelijke andere pc moeten
nog in de praktijk worden gecontroleerd; het expliciete profielpad is getest.
