Claire : une assistante de réception en ligne pour cabinets dentaires
Claire accueille les patients d'un cabinet dentaire à toute heure, comprend leur demande, et transmet au cabinet une fiche déjà qualifiée — avec un niveau d'urgence. Cette page décrit le problème, la solution, l'architecture et les décisions d'ingénierie du projet.
Projet personnel conçu, développé et déployé de bout en bout (produit, front, back, base de données, sécurité, déploiement). Actuellement en phase pilote auprès de cabinets dentaires.
Le problème
Dans un cabinet dentaire, l'accueil téléphonique est sous tension : appels manqués, ligne saturée en journée, messages laissés sans réponse le soir et le week-end, urgences difficiles à filtrer. Chaque appel manqué est un patient potentiellement perdu — et une charge mentale de plus pour le secrétariat. L'objectif : ne plus laisser un patient sans réponse, tout en transmettant à l'équipe une information déjà structurée et priorisée.
La solution
Une assistante conversationnelle qui répond au patient avec un ton bienveillant, pose les bonnes questions (motif, nom, téléphone, souhait), oriente les urgences vitales vers le 15, puis extrait automatiquement un résumé qualifié de l'échange et le dépose dans l'espace du cabinet (et, en option, par email/WhatsApp via une automatisation). Claire ne pose jamais de diagnostic : elle recueille et transmet ; c'est le cabinet qui décide.
Architecture
Décisions d'ingénierie
Sécurité des endpoints publics
CORS par liste blanche, rate-limit par IP, validation stricte (UUID du cabinet, longueurs,
rôles de message) sur les routes appelables par n'importe qui (/api/chat,
/api/contact).
Sortie du LLM traitée comme non fiable
Le JSON renvoyé par le modèle est parsé puis assaini : whitelist sur le niveau d'urgence, troncature des champs, demande créée de façon idempotente (une par conversation).
Cloisonnement strict (multi-tenant)
Row Level Security sur toutes les tables : un cabinet n'accède qu'à ses propres données. La
clé service_role reste exclusivement côté serveur, jamais exposée au navigateur.
Robustesse du flux patient
Le message du patient est sauvegardé avant l'appel au modèle : même si l'IA échoue, aucun message n'est perdu. Le widget de démo se dégrade proprement s'il n'est pas configuré.
Anti-injection de prompt
Les règles personnalisées saisies par un cabinet sont tronquées et cadrées dans le prompt système pour limiter toute tentative de détournement de l'assistante.
RGPD & confidentialité par défaut
Hébergement en Europe, mesure d'audience sans cookie (donc sans bandeau), pages légales et section rétention/effacement des données.
Ce que ce projet démontre
- Concevoir un produit de A à Z à partir d'un vrai besoin métier, sans sur-ingénierie.
- Intégrer un LLM en production de façon sûre (entrées validées, sorties assainies).
- Modéliser une base multi-tenant et la sécuriser avec Row Level Security.
- Déployer en serverless, instrumenter la conversion et automatiser les notifications métier.
- Documenter et tester (CI légère + scénarios manuels) pour rester maintenable.
Vous testez Claire ou souhaitez en discuter ? Rejoindre le programme cabinets fondateurs →
← Retour à l'accueil