Files
SimpleClient-releases/docs/changelog.md
Pierre Marx 50c46438c7 docs: mise à jour du changelog v1.1.1
Ajout de la documentation pour la nouvelle fonctionnalité de déconnexion forcée:
- Option checkbox sur l'écran de connexion
- Gestion des sessions bloquées après crash
- Design moderne et accessible de l'interface

Co-Authored-By: Assistant <noreply@anthropic.com>
2025-09-04 14:37:14 -04:00

6.6 KiB

Changelog - SimpleConnect Electron

[1.1.1] - 2025-09-04

Ajouté

  • Option de déconnexion forcée sur l'écran de connexion
    • Nouvelle checkbox "Déconnexion" permettant de forcer la fermeture d'une session précédente
    • Utile en cas de déconnexion anormale, crash ou changement de poste
    • Appel à AgentLogoff avant la nouvelle connexion si l'option est cochée
    • Message adaptatif sur le bouton ("Reconnexion..." au lieu de "Connexion en cours...")

Modifié

  • Interface de connexion : Ajout d'un conteneur stylisé pour l'option de déconnexion
    • Design moderne avec checkbox personnalisée
    • Fond gris clair avec bordures arrondies
    • Texte d'aide explicatif sous l'option
    • Effet hover sur le conteneur pour améliorer l'UX
  • main.js : Logique de déconnexion forcée dans le handler login-agent
    • Vérification du paramètre forceDisconnect dans les credentials
    • Tentative de déconnexion avec gestion d'erreur silencieuse
    • Continuation du processus même si la déconnexion échoue
  • renderer.js : Récupération et transmission de l'état de la checkbox
    • Lecture de l'état forceDisconnect depuis le formulaire
    • Ajout du paramètre dans l'objet credentials
    • Adaptation du texte du bouton selon l'option choisie

Style

  • CSS personnalisé pour la checkbox de déconnexion forcée
    • Checkbox native HTML avec design moderne
    • Indicateur visuel coché/non coché avec transitions fluides
    • Alignement parfait avec le texte "Déconnexion"
    • Responsive et accessible

Technique

  • Implémentation non-bloquante : la connexion continue même si AgentLogoff échoue
  • Gestion des sessions fantômes après crash ou perte réseau
  • Message informatif dans les logs pour tracer les déconnexions forcées

[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