💬 Pourquoi un chat temps réel sur votre site
Un chat web temps réel permet de répondre au visiteur au moment où il est encore sur votre site : avant l'abandon d'un panier, pendant la lecture d'une offre, ou lorsqu'une question bloque une demande de contact. Le widget crée un canal direct entre le site et l'entreprise, sans faire dépendre vos échanges d'un service tiers américain.
Socketchatbot s'adresse aux sites vitrines, aux boutiques en ligne, aux équipes support et aux applications métier. Dans un ERP comme Adliss, il peut aussi servir à créer des échanges contextualisés autour d'une facture, d'un dossier ou d'un objet de gestion.
📌 Pour qui ?
- Site vitrine ou e-commerce qui veut convertir ses visiteurs.
- Équipe support qui centralise les conversations entrantes.
- Application métier ou ERP avec des fils de discussion rattachés à une facture ou à un dossier.
- Intégrateur qui veut un widget de chat pour site internet auto-hébergé.
🇫🇷 Pourquoi Synapx
- Souveraineté : solution française auto-hébergée, aucune donnée envoyée à un service externe, messages persistés uniquement dans le navigateur de l'utilisateur avec
IndexedDB, et fenêtre de rejeu serveur en mémoire de 100 messages ou 24 h par défaut. - Multi-tenant strict : chaque clé
JWTest limitée à un tenant, des flux et des fils précis ; l'isolation est vérifiée par le serveur à chaque action. - Connexion optimisée : une seule connexion
WebSocketpar navigateur, quel que soit le nombre d'onglets, grâce àSharedWorker. - Conversations métier : les fils de discussion peuvent être rattachés aux objets de votre application, par exemple une conversation sur une facture ou un dossier.
- Léger : JavaScript vanilla côté site et une seule dépendance côté serveur.
✨ Fonctionnalités
- Échanges immédiats : messages temps réel avec accusé de publication, pour confirmer à l'expéditeur que le serveur a bien reçu le message.
- Continuité de conversation : historique et rattrapage automatique des messages manqués après reconnexion, sans doublon.
- Maîtrise des messages : édition et suppression de ses propres messages, avec marqueur modifié et remplacement des messages supprimés par une pierre tombale ; l'historique serveur est réécrit et un utilisateur absent reçoit l'état final.
- Réactions rapides : réactions emoji agrégées avec fonctionnement en toggle.
- Mentions utiles : mentions
@nomavec surlignage et événement transmis au site hôte pour notifier l'utilisateur. - Frappe visible : indicateur X écrit…, jamais persisté.
- Lecture contrôlée : accusés ✓ lu par… déclenchés à la visibilité réelle du message, avec mode éphémère 1-1 où le message disparaît après lecture.
- Formats de conversation : canal général, messages privés 1-1, groupes et fils par objet métier.
- Non-lus fiables : compteurs resynchronisés depuis le serveur au retour en ligne.
- Interface sûre : présence en ligne ou hors ligne activable en un clic, et mise en forme minimale avec gras, code et liens sans risque d'injection HTML.
🔒 Sécurité
Socketchatbot est conçu pour un usage professionnel : l'accès au chat est contrôlé par votre serveur, les droits sont vérifiés côté serveur et chaque échange reste limité au périmètre autorisé.
- Authentification : jeton
JWTsigné enHS256, émis par votre serveur et limité dans le temps. - Isolation par tenant : un abonné d'un autre tenant ne reçoit jamais les messages qui ne lui appartiennent pas.
- Anti-abus intégré : taille de message plafonnée à 256 Ko, débit limité par connexion et liste d'origines autorisées.
- Contrôle des actions : édition et suppression réservées à l'auteur du message, avec vérification côté serveur.
🔑 Créez votre channel
Créez en quelques secondes un channel dédié à votre site. Une clé API sécurisée est générée pour votre espace Chatbot Web, puis chaque channel reste unique et associé à votre domaine.
🛠️ Exemple de configuration générée :
const Array_clef_API = [{
"channel": "SITEWEB",
"url": "synapx.fr",
"option": {
// Options personnalisables (ACL, IA, présence, etc.)
},
"bearer": "synapx.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX..............XXXXXXXQ"
}]
Lancez votre channel et connectez votre site à un chat auto-hébergé prêt pour vos visiteurs.
Installation
Le SDK s'intègre en quelques lignes de JavaScript. L'exemple ci-dessous se place directement dans la page qui affiche le widget ; le jeton JWT est fourni par votre serveur.
import Synapx from '/sdk/Chats/index.js';
import { Widget } from '/sdk/Chats/Widget/index.js';
const synapx = new Synapx();
synapx.use(Widget);
await synapx.init();
// Le JWT est émis par votre serveur (channel + clé API)
synapx.ws.connect([{ bearer: '<JWT émis par votre serveur>' }]);
// Publication fiable : la promesse résout sur l'accusé serveur
const ack = await synapx.ws.publish({ type: 'chat', body: 'bonjour', thread_id: 'general' });
// Réagir à une mention de l'utilisateur courant
document.addEventListener('synapx:mention', (e) => console.log(e.detail));