Create an Issue for every EPIC and every User Story that has been discussed in the last meeting at 25.02.2022.
Raw meeting output (german):
# Wrapper für die Jitsi API (eigenes Package auslagern & publishen)
- Meilenstein 1: Connect Funktion implementieren
- Meilenstein 2: Commands über die Jitsi API auführen
- Meilenstein 3: Events von der Jitsi API durchreichen
- Eigenes Repo anlegen 'jitsi-api-client'
- Exception Handling implementieren
- Code von Philipp nehmen, Methoden rausfinden und refactoren (wrappen)
- Eine Methode: Raum & Passwort dann direkt Verbunden
# Modul für die YouTube API (oder https://invidious.snopyta.org, dezentral)
- Eigene TypeScript Klasse im Repo anlegen im Ordner 'lib'
- Im Kontruktor URL für die Instanz übergeben mit Default (snopyta)
- Erste Funktion: Link bekommen, YoutUbe ID extrahieren, Audiofile finden, Format beachten (ogg vorbis am besten)
- Zweite Funktion (optional später): Search-Query (mit Text-Input)
# Definition REST-Schnittstelle (Endpunkte) Backend für Frontend und Third-Party-Tools
- Verschiedene Router (z.B. Jitsi) mit weiteren Routern für Unterpunkte (Join, Leave). Ordnerstruktur sollte REST-Struktur widerspiegeln.
- Pro Endpunkt iterativ, Basis /api in Ordnerstruktur abbilden
- Endpunkt-Schema: instances/<id>/<endpoint>
- Post an instances legt neue jimmi Instanz an
- 1. Endpunkt <id>/Music: Für alle Music-Controls, d.h. play, pause, stop als POST-Requests, optional mit JSON Payload (play vs. continue)
- 2. Endpunkt <id>/Jitsi (low Prio, erst später): Updated den Raum
# Web-Socket Connection zwischen Frontend und Backend für das Dispatchen von Events (z.B. User joined oder Musikcontrols)
# Frontend einrichten (viel copy & paste aber Struktur einrichten). Auf Tailwind 3 migrieren.
An Issue for every EPIC and User Story using the default Issue templates.