Salons audio & vidéo LiveKit
Salons audio et vidéo pour les groupes NIP-29 via un serveur LiveKit : points de terminaison de jetons, signature JWT et métadonnées de groupe qui annoncent les salons.
Configuration
- Définissez
relay.livekit_url,relay.livekit_api_keyetrelay.livekit_api_secretdans le fichier de configuration. - Ajoutez le tag
livekitaux métadonnées d’un groupe via une modificationkind:9002effectuée par un administrateur. - Les clients récupèrent un JWT depuis
/.well-known/nip29/livekit/<group-id>avec l’authentification NIP-98 (une clé publique bannie viabanpubkeyNIP-86 est refusée). - Le relais publie une liste de participants
kind:39004par groupe livekit, rafraîchie toutes lesrelay.livekit_participants_interval_secs(15 par défaut) et immédiatement lorsque LiveKit envoie des webhooks à/.well-known/nip29/livekit/webhook— pointezwebhook.urlsdu serveur LiveKit dessus et faites correspondrewebhook.api_keyàrelay.livekit_api_key(le relais vérifie la charge signée ; les événements manqués sont réconciliés par le sondage). Désactiver le mode LiveKit d’un groupe efface la liste.
Vérification de la prise en charge
sh
curl -i http://127.0.0.1:8080/.well-known/nip29/livekit204 signifie que le serveur de salles est activé.
Configuration
toml
[relay]
livekit_url = "wss://livekit.example.com"
livekit_api_key = "..."
livekit_api_secret = "..."
livekit_participants_interval_secs = 15