- C# 100%
| .clinerules | ||
| .plans | ||
| Models | ||
| Services | ||
| .gitignore | ||
| App.xaml | ||
| App.xaml.cs | ||
| CHANGELOG.md | ||
| LiveTimingWindow.xaml | ||
| LiveTimingWindow.xaml.cs | ||
| MainWindow.xaml | ||
| MainWindow.xaml.cs | ||
| MyRcmLiveMonitor.csproj | ||
| README.md | ||
MyRCM Live Monitor
Windows-Desktopanwendung zum Laden und Filtern öffentlich sichtbarer Veranstaltungen von MyRCM.
Funktionsumfang
- Öffentliche MyRCM-Veranstaltungen laden
- Kommende MyRCM-Veranstaltungen im eigenen Such-Tab finden und hinzufügen
- Nach Veranstaltung, Veranstalter, Ort und Land suchen
- Nach Land filtern
- Detail-, Live-Timing- und Report-Seiten im Standardbrowser öffnen
- Live-Timing direkt über die öffentliche MyRCM-WebSocket-Verbindung anzeigen
Die Android-App ist nicht Bestandteil der ersten Umsetzung. Eine spätere Android-Anwendung soll als eigenes Projekt innerhalb dieses Repositories ergänzt werden.
Voraussetzungen
- Windows
- .NET 8 SDK
- Internetzugriff auf
https://www.myrcm.ch
Build
dotnet build C:\Users\dwald\Downloads\Git\MyRcmLiveMonitor\MyRcmLiveMonitor.csproj -c Debug
Verwendung
Nach dem Start lädt die Anwendung die öffentlich sichtbare Veranstaltungsübersicht. Über den Tab „Veranstaltungen“ kann die Liste nach Text und Land eingeschränkt werden. Die Suche nach kommenden Events befindet sich im Tab „Events suchen“ und startet ab mindestens zwei eingegebenen Zeichen automatisch. Ein Suchergebnis wird über „Ausgewähltes Event hinzufügen“ in die Tabelle übernommen; doppelte Event-IDs werden nicht erneut hinzugefügt.
Für eine ausgewählte Veranstaltung stehen Schaltflächen zum Öffnen der verfügbaren MyRCM-Seiten bereit. Bei Events mit Live-Timing kann zusätzlich ein eigenes Live-Timing-Fenster geöffnet werden. Hinzugefügte Events bleiben bis zum Beenden der Anwendung in der Liste.
Technische Hinweise
Die Anwendung verwendet ausschließlich öffentlich erreichbare MyRCM-Seiten. Die HTML-Abruflogik und die Suche über /rest/v1/search sind in Services/MyRcmClient.cs gekapselt. Das Live-Timing nutzt die öffentlich von MyRCM verwendete WebSocket-Verbindung wss://www.myrcm.ch/websocket und sendet die Event-ID im JSON-Handshake.
Automatisierte Abrufe sollten angemessen gedrosselt werden und die Nutzungsbedingungen der Website beachten.
Screenshots
Screenshots können später unter docs/screenshot-*.png ergänzt werden.