← Retour au Portfolio ← Retour au Semestre 5

SAE5 ROM03 - Créer un outil communicant

Logo Proxmox

Objectif : Déployer une solution de communication unifiée (voix, vidéo, messagerie) via un serveur Asterisk, intégrée à une interface web sécurisée

Description : Ce projet visait à mettre en place une solution de communication complète intégrant voix, vidéo et messagerie. Le tout a été déployé sur un serveur Asterisk, accessible via une interface web sécurisée.

Vécu de la SAE : Cette SAE a été réalisée en groupe de trois : Jules Verstaevel, Arnaud Wojak et moi-même. L’objectif était de concevoir une solution communicante complète en utilisant Asterisk, avec des fonctionnalités avancées telles que la voix, la vidéo et la messagerie instantanée, accessibles depuis une interface web.

Dès le début, nous avons fait le choix d’utiliser notre propre matériel, car les machines de l’IUT présentaient plusieurs limitations techniques (versions obsolètes, impossibilité de mises à jour). Cette décision nous a offert plus de flexibilité, mais a nécessité des efforts supplémentaires en configuration réseau et sécurité (par exemple, l'ouverture de ports, la gestion du HTTPS, etc.)

Nous avons procédé par étapes : déploiement d’un serveur Asterisk sous Alpine Linux, connexion de téléphones IP (Fanvil et Cisco), configuration d’un serveur web Apache sécurisé, création d'une page web intégrant sip.js pour la communication SIP via WebSocket, et enfin, intégration de la vidéo et de la messagerie instantanée via WebRTC et PJSIP.

Certaines parties se sont révélées complexes, notamment la configuration du Cisco avec un serveur TFTP, ou la messagerie instantanée, qui n’a pas été totalement fonctionnelle côté interface utilisateur, bien que les logs montraient un échange réussi.

Malgré cela, la SAE s’est avérée très enrichissante. Nous avons beaucoup appris, non seulement sur la technologie VoIP, mais aussi sur la résolution de problèmes en situation réelle.

❗ Difficultés rencontrées

  • Limitations matérielles des machines de l’IUT (versions obsolètes, instabilité).
  • Problèmes de compatibilité entre les outils (versions de sip.js, WebRTC, navigateurs).
  • Complexité de la configuration de Cisco via TFTP.
  • Problèmes partiels avec la messagerie instantanée (messages transmis mais non affichés sur l’interface).
  • Intégration du HTTPS et des certificats SSL auto-signés.

✅ Compétences développées

  • Déploiement et configuration d’un serveur Asterisk sur une distribution légère (Alpine Linux).
  • Connexion de terminaux physiques (Fanvil et Cisco) à un serveur VoIP.
  • Création d’un serveur TFTP pour le provisioning automatique de téléphones.
  • Mise en place d’un serveur Apache avec certificat SSL pour une interface web sécurisée.
  • Utilisation de sip.js et WebRTC pour permettre la communication vocale et vidéo directement depuis un navigateur.
  • Configuration de la messagerie SIP avec Asterisk (PJSIP).
  • Gestion des fichiers de configuration critiques (sip.conf, pjsip.conf, extensions.conf, manager.conf, etc.).

🧰 Outils et ressources utilisés

🛠️ Outils logiciels :

  • Asterisk (serveur VoIP)
  • Alpine Linux, Ubuntu (machines virtuelles)
  • Apache2 (serveur web)
  • sip.js (librairie JavaScript pour SIP)
  • xinetd, tftpd, TFTP (serveur de provisionnement)
  • OpenSSL (certificats HTTPS)
  • Wireshark, netstat, logs Asterisk (tests et débogage)

🖥️ Matériel

  • PC personnels (serveur principal et machines de test)
  • Téléphones IP Fanvil et Cisco
  • Connexion Internet privée avec redirection de ports pour accès externe