Tranquillité Vacances
Description :
Le projet Tranquillité Vacances est une application innovante développée pour les mairies, permettant aux résidents de signaler en ligne leurs absences prolongées et de bénéficier de rondes de surveillance effectuées par la Police Municipale, offrant ainsi une sécurité accrue et une tranquillité d'esprit, la mairie de Morestel étant la première à profiter de ce service qui inclut également des conseils de sécurité pour les citoyens et une intervention rapide en cas de problème pour assurer une protection optimale des domiciles pendant les vacances.
Réalisations :
La Mairie de Morestel m'a contacté pour développer un outil destiné à la Police Municipale afin de digitaliser la gestion des rondes de surveillance et les comptes rendus de mission. Pour la gestion de projet, j'ai d'abord organisé un premier rendez-vous avec les acteurs majeurs susceptibles d'utiliser l'application pour comprendre leurs expériences et besoins. Ce processus m'a permis de rédiger un premier cahier des charges. Nous avons tenu plusieurs réunions avant de lancer le développement pour nous assurer de disposer de tous les éléments nécessaires pour construire rapidement et proprement le projet.
Une fois le cahier des charges établi, j'ai conçu une charte graphique pour l'application. Concernant la compétence en base de données, j'ai effectué la modélisation de la base de données, définissant les différentes tables et la structure du projet.
Pour le développement web, j'ai choisi le framework Symfony, ce qui m'a permis de développer les premières fonctionnalités rapidement. Au niveau de la gestion des utilisateurs, j'ai décidé de scinder cette partie en deux pour sécuriser au maximum les accès. Il y a donc un firewall pour la partie admin destinée à la police et un firewall pour l'accès des habitants, permettant de distinguer deux types de comptes. Les comptes administrateurs disposent de plusieurs rôles et droits en fonction de leur poste, chaque rôle déterminant l'accès ou non à certaines fonctionnalités.
Ainsi, j'ai pu assurer une sécurité optimale tout en offrant une interface intuitive et efficace pour la gestion des rondes de surveillance et des comptes rendus de mission, répondant pleinement aux besoins exprimés par la mairie et les utilisateurs finaux.
Une demande formulée lors de la construction du cahier des charges était de pouvoir informer les utilisateurs de la fin d'une opération ou de la prise en compte d'une opération par SMS. Pour répondre à ce besoin, j'ai intégré Twilio dans l'application, permettant l'envoi automatique de notifications par SMS aux utilisateurs concernés. Cela garantit que les habitants et les membres de la police municipale sont toujours informés en temps réel, améliorant ainsi la communication et l'efficacité du service.
De plus, j'ai utilisé WKHTMLTOPDF pour générer automatiquement des PDF disponibles dans les différents espaces admin et utilisateurs de l'application. Cela permet d'avoir un récapitulatif propre de la demande d'opération, et à la fin d'une opération, un PDF est généré avec un courrier et la liste des passages avec les notes de mission pour chaque passage effectué, à destination des habitants à leur retour de vacances.
Pour la compétence infrastructure, j'ai monté un serveur dédié sur Ubuntu avec la dernière version de PHP et un serveur MySQL également à jour. J'ai configuré des tâches cron pour exécuter automatiquement certaines fonctionnalités, comme la génération quotidienne des passages à effectuer par la police. J'ai réservé un nom de domaine générique et, pour chaque municipalité, je configure un sous-domaine et ajuste les vhost de mon serveur Apache pour qu'ils pointent vers mon application Symfony. Pour garantir la sécurité des services et des données, j'ai sécurisé ce serveur en mettant en place une connexion uniquement par clé SSH. Le fonctionnement de Symfony nécessite également l'utilisation de Composer pour la gestion des dépendances, ainsi que NPM pour la gestion des packages JavaScript et des assets. J'ai configuré et utilisé ces outils pour garantir un environnement de développement stable et efficace.
En outre, une des fonctionnalités demandées était d'avoir une carte interactive où positionner les points des passages à effectuer chaque jour. J'ai alors utilisé les données d'OpenStreetMap pour générer cette carte. Si une opération n'est pas encore effectuée, je place un point orange à l'adresse du domicile sur la carte et, une fois l'opération réalisée, le point devient vert. Cette fonctionnalité permet une visualisation claire et intuitive des missions en cours et accomplies, facilitant ainsi la gestion des rondes pour la police municipale.
Pour la compétence support client, j'ai mis en place différentes adresses email pour permettre aux habitants et aux utilisateurs de me contacter en cas de problème ou besoin d'assistance sur l'utilisation des services. Un numéro de téléphone a également été mis en place pour les personnes qui ne sont pas à l'aise avec l'informatique, garantissant ainsi un support complet et accessible à tous les utilisateurs.
Enfin, à terme, le développement d'une application mobile en React Native est prévu pour la Police Municipale. Cette application mobile offrira une interface encore plus simple et pratique pour la gestion des passages, permettant aux agents de réaliser leurs missions de manière plus efficace directement depuis leurs smartphones.
Compétences techniques :
Developpement Web - Support Client - Base de données - Gestion de Projet - Infrastructure
Langages et technologies :
HTML - CSS - JS - Symfony - Bootstrap - JQuery - WKHTMLTOPDF - Twilio - PHP - MYSQL