Version initiale

This commit is contained in:
Pierre Marx
2025-09-04 11:43:50 -04:00
commit 7e34c471de
10 changed files with 2342 additions and 0 deletions

153
README.md Normal file
View File

@@ -0,0 +1,153 @@
# SimpleConnect - Gestion Centralisée des Plannings Médicaux
Application Electron pour centraliser la gestion de multiples plannings médicaux dans un centre d'appel.
## Fonctionnalités principales
- **Connexion unique** : Les agents se connectent une seule fois pour accéder à tous leurs plannings
- **Multi-plannings** : Gestion de 1 à 5 plannings différents par agent
- **Intégration CTI** : Détection automatique du centre concerné lors d'un appel entrant
- **Interface unifiée** : Toutes les webviews des plannings dans une seule application
- **Simulation d'appels** : Mode test pour simuler des appels entrants
- **Notes rapides** : Prise de notes pendant les appels
- **Statistiques** : Suivi du nombre d'appels et de RDV pris
## Installation
### Prérequis
- Node.js version 16 ou supérieure
- npm ou yarn
### Étapes d'installation
1. Cloner le repository :
```bash
cd ~/Dev/test/simpleconnect-electron
```
2. Installer les dépendances :
```bash
npm install
```
3. Lancer l'application :
```bash
npm start
```
Pour le mode développement avec outils de debug :
```bash
npm run dev
```
## Configuration
La configuration se trouve dans le fichier `config.json`. Vous pouvez y modifier :
- **Agents** : Liste des agents avec leurs identifiants et centres assignés
- **Centres** : Informations sur chaque centre médical (URL, téléphone, couleur, etc.)
- **CTI** : Configuration de la simulation d'appels
- **Préférences** : Paramètres généraux de l'application
### Agents de test disponibles
| Email | Mot de passe | Centres assignés |
|-------|-------------|------------------|
| marie.dupont@callcenter.fr | demo123 | Centre Cardio Lyon, Clinique Saint-Jean, Cabinet Dr Martin |
| jean.martin@callcenter.fr | demo456 | Clinique Saint-Jean, Centre Radiologie, Laboratoire BioLab |
| sophie.bernard@callcenter.fr | demo789 | Tous les centres sauf Clinique Saint-Jean |
## Utilisation
### Connexion
1. Lancez l'application
2. Connectez-vous avec un des comptes agents configurés
3. L'interface principale s'affiche avec vos centres assignés
### Gestion des appels
1. **Appel entrant** : Une notification apparaît en haut de l'écran
2. **Acceptation** : Cliquez sur "Prendre l'appel"
3. **Bascule automatique** : Le planning du bon centre s'affiche automatiquement
4. **Prise de RDV** : Utilisez l'interface web du planning
5. **Notes** : Prenez des notes dans la zone dédiée
### Simulation d'appels (Mode test)
1. Cliquez sur "Simuler un appel"
2. Choisissez un appel prédéfini ou créez un appel personnalisé
3. L'appel se déclenche comme un vrai appel entrant
## Architecture technique
- **Frontend** : HTML/CSS/JavaScript avec Electron
- **Webviews** : Intégration native des sites de planning existants
- **IPC** : Communication entre le processus principal et le renderer
- **Stockage** : Fichiers JSON pour la configuration et l'historique
## Structure des fichiers
```
simpleconnect-electron/
├── main.js # Processus principal Electron
├── renderer.js # Logique frontend
├── index.html # Interface utilisateur
├── styles.css # Styles de l'application
├── cti-simulator.js # Module de simulation CTI
├── config.json # Configuration de l'application
├── package.json # Dépendances et scripts
└── README.md # Documentation
```
## Sécurité
- Les mots de passe des agents sont stockés en clair dans `config.json` (à améliorer en production)
- Les sessions des plannings sont isolées par centre (partition Electron)
- CORS désactivé pour permettre le chargement des plannings externes
## Développement
### Build pour production
Windows :
```bash
npm run build:win
```
macOS :
```bash
npm run build:mac
```
Linux :
```bash
npm run build:linux
```
### Personnalisation
Pour ajouter un nouveau centre :
1. Modifiez `config.json` pour ajouter le centre
2. Assignez-le aux agents concernés
3. Redémarrez l'application
## Limitations actuelles
- La connexion automatique aux plannings n'est pas implémentée (dépend de chaque site)
- Les webviews peuvent ne pas fonctionner avec certains sites très sécurisés
- La simulation CTI est basique et ne reflète pas un vrai système téléphonique
## Améliorations futures
- [ ] Connexion automatique aux plannings via injection de scripts
- [ ] Intégration avec de vrais systèmes CTI (Asterisk, etc.)
- [ ] Base de données pour l'historique des appels
- [ ] Authentification sécurisée des agents
- [ ] Mode hors-ligne avec synchronisation
- [ ] Rapports et statistiques avancées
## Support
Pour toute question ou problème, créez une issue sur le repository GitHub.