Hooks Globaux
Ces hooks sont disponibles dans toute l'application (pas spécifiques à une seule feature). Ils sont situés dans hooks/.
Logique & État
useAuth
Expose la session utilisateur actuelle et les méthodes pour login/logout.
- Retourne :
{ user, isLoading, login, logout }
useSocketManager
Gère le pool de connexions Socket.io global.
- Utilisé pour souscrire aux événements temps réel.
- Gère la reconnexion automatique et l'authentification.
useProtocolManager
Le cerveau derrière le Lecteur Vidéo.
- Décide quel protocole utiliser (MSE -> WebRTC -> HLS).
- Gère la logique de fallback quand un flux échoue.
Streaming Vidéo
useMse / useMseWebSocket
Implémente le lecteur Media Source Extensions sur WebSocket.
- Faible latence (< 500ms).
- Le plus lourd pour le CPU.
useHls / useHlsll
Wrapper autour de hls.js pour la lecture HLS.
useHls: Latence standard.useHlsll: Configuration Faible Latence.
UI / Feedback
useToast
Affiche des notifications toast (Succès, Erreur, Info).
Propulsé par shadcn/ui.
useNotifications
Gère la capacité de notification de l'utilisateur (Permissions Navigateur pour les Push Notifications).