benoit
7e5c8744cd
fix: ajout path /audio-levels dans URL WebSocket client
2026-05-26 14:20:33 +02:00
benoit
6c35121866
fix: demarrage WebSocket audio-levels + correction port client
...
Probleme: Client tentait de se connecter a ws://localhost:3001 mais serveur n'avait pas de WebSocket demarre
Solution:
- Ajout import AudioLevelsServer dans server/index.js
- Demarrage WebSocket sur meme port que l'API REST (3000)
- Correction port dans useAudioLevels.js (3000 au lieu de 3001)
Le WebSocket audio-levels fonctionne maintenant pour monitoring temps reel
2026-05-26 14:18:49 +02:00
benoit
f5a5643f4b
feat: ajout VU-metres temps reel dans matrice routing
...
- Hook React useAudioLevels pour WebSocket audio-levels
- Composant VUMeter (mini, horizontal, vertical)
- Integration VU-metres dans headers/labels matrice
- Indicateur etat connexion WebSocket (Live/Offline)
- Affichage RMS, peak, detection clipping
- Design responsive avec animations clipping
2026-05-25 22:17:48 +02:00
benoit
86b86e9037
feat: ajout système de notifications Web Push et prompt installation PWA iOS
2026-05-25 21:12:05 +02:00
benoit
42badb1fdf
refactor: remplacement système de canaux statiques par canaux virtuels depuis routing
2026-05-25 21:03:40 +02:00
benoit
3181c62e57
feat: support multi-groupes avec sélection dynamique (Phase 2.1)
...
- Ajout de 3 groupes dans config.yaml : Production, Technique, Sonorisation
- Nouvel endpoint API GET /groups pour lister les groupes disponibles
- Composant GroupSelector.jsx pour changer de groupe pendant la session
- Hook useLiveKit étendu avec fonction switchGroup() pour reconnexion
- Intégration dans App.jsx avec gestion du changement de groupe
- Chaque groupe = 1 room LiveKit distincte
- Qualité audio configurable par groupe (96-128 kbps)
2026-05-23 09:32:51 +02:00
benoit
c863f045ae
feat: VU-mètre audio entrant fonctionnel + simplification UI
...
Modifications :
- Ajout analyseur audio pour pistes distantes (remoteAnalyserRef)
- setupRemoteAudioAnalyser() appelé sur TrackSubscribed
- analyseAudioLevel() alterne automatiquement entre micro local et audio entrant
- useEffect redémarre analyse quand isTalking change
- Cleanup complet des 2 contextes audio (local + remote)
UI VU-mètre :
- Suppression jauge redondante (gardé uniquement barres)
- Barres uniformes (même hauteur) au lieu d'effet égaliseur
- Couleurs distinctes : vert (audio entrant) vs bleu/rouge (micro)
- Jaune > 75%, rouge clignotant > 90%
Tests validés :
✅ VU-mètre micro local : fonctionne
✅ VU-mètre audio entrant : fonctionne (fix principal)
✅ Alternance automatique talking/listening
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2026-05-22 23:16:48 +02:00
benoit
ed22e6d878
fix: support complet iOS/mobile pour PTT (audio + HTTPS/WSS)
...
Modifications majeures :
- HTTPS obligatoire pour getUserMedia sur iOS (certificats mkcert)
- Proxy WSS Vite pour LiveKit (contourner mixed content HTTPS→WS)
- Audio unlock explicite iOS dans useLiveKit (AudioContext)
- Demande permission microphone avant connexion LiveKit
- Touch optimizations CSS (touch-action, tap-highlight)
- Meta iOS PWA (apple-mobile-web-app-capable)
- Logs debug pour troubleshooting mobile
- Attente publication track audio avant utilisation PTT
Tests validés :
✅ iPhone Safari : émission + réception audio OK
✅ Desktop Chrome : fonctionne toujours
✅ 3+ devices simultanés
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2026-05-22 23:05:44 +02:00
benoit
0640a9f0b6
feat: implement complete React PWA client with LiveKit integration
...
Client React complet avec intégration LiveKit et interface PTT professionnelle :
Infrastructure :
- Configuration Vite avec plugin PWA (Service Worker auto-généré)
- Proxy API vers serveur backend
- Build optimisé et PWA manifest
Composants UI :
- App.jsx : écran connexion + interface principale PTT
- PTTButton : bouton push-to-talk avec gestion touch/mouse events
- UserList : liste participants temps réel avec indicateurs
- AudioIndicator : VU-mètre avec visualisation niveau audio
Fonctionnalités WebRTC :
- Hook useLiveKit : connexion room, publish/subscribe, events
- Gestion micro avec mute/unmute (mode PTT)
- Auto-play audio participants distants
- Analyseur audio pour VU-mètre
- Feedback haptique (vibrations)
Design :
- Mode sombre par défaut
- Responsive mobile-first
- Animations fluides et accessibles
- Support paysage mobile
Phase 1.4 complétée : Client PWA opérationnel
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com >
2026-05-21 14:48:18 +02:00