Dialer WebRTC avec NestJS backend, Socket.IO pour notifications push, moteur de decisioning par scoring competences a plusieurs niveaux, SDK WebRTC tiers.
Le moteur de routage utilise un scoring par competences a plusieurs niveaux : chaque competence d'un agent est evaluee selon son niveau de maitrise. Quand un appel arrive, le moteur calcule le score de chaque agent disponible sur les competences requises et selectionne le meilleur match. Les appels en file d'attente sont reevalues a chaque changement de disponibilite.
L'integration d'un SDK WebRTC tiers permet aux agents de passer et recevoir des appels directement dans le navigateur. Le backend NestJS gere la logique metier : creation de sessions, tracking des etats d'appel (sonnerie, en cours, en attente, termine), et enregistrement. Socket.IO pousse les notifications en temps reel vers les clients connectes.
L'architecture separe le dialer (composant d'appel) de la logique de routage. Le dialer est un module frontend autonome qui communique avec le backend via WebSocket. Le routage est un service NestJS independant qui peut etre modifie sans impacter l'interface d'appel. Les etats d'appel sont geres par une machine a etats cote serveur.
Backend NestJS avec modules d'appel (machine a etats complete), de notifications temps reel (Socket.IO gateway), et de decision (scoring par competences).
Moteur de scoring agents : ponderation par niveau de competence a plusieurs paliers, fallback round-robin.
Socket.IO WebSocket gateway : enregistrement agents, push notifications ciblees avec les informations de l'appel et de l'appelant, broadcasts de statut.
Integration d'un SDK WebRTC tiers dans le portail React : session establishment, gestion flux audio, controles mute/hold/hangup.
Schema Prisma pour calls, agents, skills, dispositions avec suivi KPIs.
Ponderation multi-niveaux avec fallback round-robin
Push notifications ciblees en temps reel
SDK tiers integre dans React pour appels browser
Brief, repo, ou appel rapide - on s'adapte.