il y a 7 mois dans Business

APTEA a développé pour le compte d'un de ses clients éditeur de solutions, une application de gestion de la  communication multicanale destinées aux Mairies et institutions.

Elle consiste notamment à construire des campagnes de messages qui seront diffusés potentiellement sur différents canaux :

  • les réseaux sociaux : Facebook, X (ex Twitter), LinkedIn, Instagram
  • des canaux plus traditionnels : mail et SMS
  • des supports visuels plus spécifiques : panneaux d'affichage, applications partenaires

Sur les réseaux, la diffusion peut être envoyée sur plusieurs comptes.

Un back office permet la création des comptes et la configuration des canaux de diffusion. Il permet aux émetteurs de messages de construire leurs messages multimédia et d'organiser leurs diffusions.

Une application front office est destinée aux abonnés pour la configuration des canaux sur lesquels ils souhaitent voir apparaitre les messages et pour la configuration des thématiques sur lesquels ils souhaitent être notifiés. 

Sur le plan technique, l'application est basée sur :

  • une architecture micro-services avec l'event bus RabbitMQ pouvant absorber de très gros volumes de charge sur des périodes critiques à très fort trafic.
  • NestJs: pour la partie backend. Il s'agit d'une surcouche d’ExpressJS ou Fastify (Matteo Collina) offrant entre autres une gestion native des micro-services et le support du Typescript
  • React JS : framework frontend des plus populaires avec une communauté très active. Choix du Tsx (support Typescript pour React) et React-joyride pour l’aide en ligne
  • Jest : framework de test développé par Facebook. Il permet le snapshot testing
  • PostgreSQL : SGBD
  • S3 Bucket : pour le stockage hébergé dans le Cloud (Scaleway, AWS, …)
  • Docker compose : pour l’orchestration des images docker
  • l'utilisation de différentes API pour adresser les supports de diffusion