Temps Réel et Diffusion
Paramètres → Avancé → Temps Réel configure la couche de diffusion WebSocket qui alimente les mises à jour en direct dans le panneau d'administration LeadHub.
Lorsque le temps réel est activé :
- Le widget Flux de Prospects en Direct sur le tableau de bord se met à jour instantanément à l'arrivée d'un nouveau prospect
- Les badges de notification apparaissent sans actualisation de page
- Le tableau Kanban reflète les changements de glisser-déposer par d'autres membres de l'équipe en temps réel
Lorsque le temps réel est désactivé, le panneau utilise le polling (actualisation de page toutes les 30 secondes).
Pilotes Pris en Charge
| Pilote | Hébergé ? | Coût | Remarques |
|---|---|---|---|
| Pusher | ✅ Cloud | Offre gratuite disponible | Le plus populaire, configuration la plus simple |
| Laravel Reverb | ❌ Auto-hébergé | Gratuit (coût serveur uniquement) | Serveur WebSocket officiel Laravel |
| Soketi | ❌ Auto-hébergé | Gratuit (coût serveur uniquement) | Serveur léger compatible Pusher |
| Désactivé (polling) | — | Gratuit | Pas de WebSockets ; le panneau interroge à la place |
Hébergement mutualisé : Pusher est l'option la plus simple. Reverb/Soketi auto-hébergés nécessitent un VPS avec des processus persistants.
Option A — Pusher (Hébergé)
Étape 1 — Créer une Application Pusher
- Inscrivez-vous sur pusher.com (offre gratuite : 200 connexions, 200k messages/jour).
- Accédez à Channels → Créer App.
- Donnez-lui un nom (ex. LeadHub) et sélectionnez votre région.
- Sous Clés d'App, copiez :
- App ID
- Key
- Secret
- Cluster (ex.
us2,eu)
Étape 2 — Configurer dans LeadHub
-
Accédez à Paramètres → Avancé → Temps Réel.
-
Définissez le Pilote sur Pusher / Soketi / Reverb (Protocole Pusher).
-
Remplissez :
Champ Valeur Activer les Mises à Jour en Temps Réel Activez App ID Des Clés d'App Pusher App Key Des Clés d'App Pusher App Secret Des Clés d'App Pusher Cluster Votre cluster Pusher (ex. us2)Hôte Personnalisé Laissez vide (cloud Pusher) Port 443Schéma HTTPS -
Cliquez sur Enregistrer les Paramètres.
Option B — Laravel Reverb (Auto-Hébergé)
Reverb est un serveur WebSocket officiel Laravel utilisant le protocole Pusher.
Étape 1 — Installer Reverb
Sur votre serveur :
php artisan reverb:install
Démarrez Reverb avec Supervisor :
[program:reverb]
command=php /var/www/leadhub/artisan reverb:start --host=0.0.0.0 --port=8080
autostart=true
autorestart=true
user=www-data
Étape 2 — Configurer dans LeadHub
-
Accédez à Paramètres → Avancé → Temps Réel.
-
Remplissez :
Champ Valeur App ID N'importe quelle chaîne, ex. leadhub-reverbApp Key N'importe quelle chaîne (doit correspondre à la config Reverb) App Secret N'importe quelle chaîne (doit correspondre à la config Reverb) Cluster Laissez vide Hôte Personnalisé Nom d'hôte de votre serveur (ex. ws.votredomaine.com)Port 8080(ou votre port Reverb)Schéma HTTPS(si derrière un proxy SSL) ouHTTP
Option C — Soketi (Auto-Hébergé, Léger)
Soketi est un serveur compatible Pusher léger en Node.js.
Étape 1 — Installer Soketi
npm install -g @soketi/soketi
soketi start --config.port=6001 --config.appManager.driver=array \
--config.appManager.array.apps.0.id=leadhub \
--config.appManager.array.apps.0.key=leadhub-key \
--config.appManager.array.apps.0.secret=leadhub-secret
Étape 2 — Configurer dans LeadHub
-
Accédez à Paramètres → Avancé → Temps Réel.
-
Remplissez :
Champ Valeur App ID leadhub(votre App ID Soketi)App Key leadhub-keyApp Secret leadhub-secretHôte Personnalisé Nom d'hôte de votre serveur Port 6001Schéma HTTPSouHTTP
Option D — Désactiver le Temps Réel (Polling)
- Accédez à Paramètres → Avancé → Temps Réel.
- Désactivez Activer les Mises à Jour en Temps Réel, ou définissez le Pilote sur Désactivé (polling uniquement).
- Cliquez sur Enregistrer les Paramètres.
Le panneau s'actualise toutes les 30 secondes. Toutes les fonctionnalités fonctionnent correctement — juste sans mises à jour en direct instantanées.
Dépannage
| Problème | Solution |
|---|---|
| Le flux de prospects en direct ne se met pas à jour | Vérifiez que App Key/Secret correspond à votre config Pusher/Reverb/Soketi |
| Erreurs de connexion WebSocket dans la console du navigateur | Vérifiez les paramètres Hôte Personnalisé, Port et Schéma |
| Reverb/Soketi ne se connecte pas | Assurez-vous que le processus tourne et que le port est accessible (règles de pare-feu) |
| « Redémarrez le worker de file d'attente après avoir changé le pilote » | Si vous changez le pilote de diffusion, redémarrez votre processus worker |
Après avoir modifié les paramètres de temps réel, un rafraîchissement forcé du navigateur (Ctrl+Shift+R) est nécessaire pour que les nouveaux paramètres prennent effet dans le frontend.