# Changelog - SimpleConnect Electron ## [1.1.0] - 2025-09-04 ### Ajouté - **Authentification SignalR réelle** : Remplacement de l'authentification locale simulée par l'authentification SignalR - Connexion via `AgentLogin` avec email, password et terminal - Déconnexion propre via `AgentLogoff` - Gestion automatique des sessions agents côté serveur - **Traitement dynamique des centres** : Génération automatique depuis les données SignalR - Remplacement des placeholders (#CA#, #MP#) dans les URLs - Attribution automatique de couleurs aux centres - Mapping avec les files téléphoniques pour le routage - **Gestion des événements IPBX en temps réel** - Basculement automatique vers le bon centre lors d'un appel entrant - Libération automatique de la file après raccrochage - Filtrage par terminal pour ne recevoir que les événements pertinents - **Notifications visuelles** avec animations CSS - Notifications temporaires pour les événements d'appels - Animations slideIn/slideOut pour une meilleure UX - Son de notification pour les appels entrants ### Modifié - **main.js** : Refonte complète de l'authentification - Suppression de la vérification locale dans config.json - Ajout des handlers SignalR pour AgentLogin et AgentLogoff - Implémentation des événements IpbxEvent (codes 1 et 2) - Mise à jour dynamique du titre avec nom agent et terminal - **renderer.js** : Adaptation pour SignalR - Connexion directe via SignalR au lieu de config.json - Écoute des événements switch-to-center et release-center - Ajout des fonctions updateAgentStatus, showNotification, updateCallStats - **Déconnexion améliorée** : Nettoyage propre des sessions - Appel à AgentLogoff avant fermeture de l'application - Réinitialisation complète des variables d'état ### Technique - Stockage global de `agentConnectionInfo` pour les données SignalR - Traitement des URLs avec fonction `processApplicationUrls()` - Gestion des états de connexion SignalR avec reconnexion automatique - Validation côté client du terminal avant envoi au serveur ### Supprimé - Authentification locale basée sur config.json - Dépendance aux données statiques pour les centres - Configuration manuelle des centres dans config.json ## [1.0.2] - 2025-09-04 ### Corrigé - **DevTools** : Ouverture uniquement en mode développement au lieu de systématiquement - **Mode développement** : Correction de la détection du mode dev pour le simulateur CTI via IPC - **Choices.js** : Suppression de la boucle de retry infinie en cas d'échec de chargement - **Code mort** : Suppression de la fonction `updateSignalRStatus()` vide et inutilisée ### Technique - Ajout du handler IPC `is-development` pour permettre au renderer de détecter le mode - Amélioration de la gestion d'erreur pour Choices.js avec fallback natif sans retry - Nettoyage du code en supprimant les fonctions vides et appels inutiles ## [1.0.1] - 2024-09-04 ### Ajouté - **Intégration de Choices.js** pour améliorer l'expérience utilisateur sur le champ de sélection des postes téléphoniques - Liste déroulante moderne avec recherche instantanée - Support de plus de 100 postes téléphoniques - Interface utilisateur améliorée avec scrollbar personnalisée - Recherche en temps réel pour trouver rapidement un poste ### Modifié - **Page de connexion** : Remplacement du select HTML natif par Choices.js - Amélioration visuelle avec thème personnalisé (violet #667eea) - Ajout d'animations fluides à l'ouverture/fermeture - Indicateurs visuels pour les éléments sélectionnés - **Chargement des ressources** : Migration des CDN vers des fichiers locaux pour éviter les problèmes CSP - **Gestion des erreurs** : Amélioration du fallback en cas d'échec de chargement de Choices.js ### Technique - Installation locale de Choices.js via npm - Copie des fichiers CSS/JS dans le répertoire racine - Adaptation du code pour gérer window.Choices dans le contexte Electron - Suppression du groupement par centaine pour simplifier la navigation ### Corrigé - Résolution des erreurs Content Security Policy (CSP) avec les ressources CDN - Correction de l'initialisation de Choices.js dans l'environnement Electron - Fix des classes CSS pour éviter les erreurs DOMTokenList ## [1.0.0] - 2024-09-01 ### Fonctionnalités initiales - **Connexion agent** avec authentification locale - **Intégration SignalR** pour la communication avec le serveur CTI - **Récupération dynamique** des postes téléphoniques depuis le serveur - **Multi-centres** : Gestion de plusieurs centres médicaux - **Webviews intégrées** pour afficher les plannings médicaux - **Simulation d'appels** pour les tests et démos - **Interface moderne** avec design violet/blanc - **Statistiques journalières** : Compteurs d'appels et de RDV - **Notes rapides** : Prise de notes pendant les appels - **Indicateurs visuels** : États de connexion SignalR et disponibilité agent