34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
# Todo list — Automatisation email → ICS
|
|
|
|
Objectif final : réception d'un mail avec PDF en pièce jointe → conversion automatique en ICS.
|
|
|
|
---
|
|
|
|
## 1. Réception des mails
|
|
- [ ] Choisir le mode de réception : **IMAP polling** (simple, pas de serveur mail requis) ou **webhook entrant** (Postfix/Haraka/etc.)
|
|
- [ ] Configurer une adresse dédiée (ex: `planning@piaf.im`)
|
|
- [ ] Ajouter les credentials IMAP dans `config.json`
|
|
- [ ] Implémenter un watcher IMAP : connexion, détection nouveaux mails, extraction des pièces jointes PDF
|
|
|
|
## 2. Pipeline automatique
|
|
- [ ] Filtrer les mails entrants (expéditeur autorisé, pièce jointe `.pdf`)
|
|
- [ ] Déclencher `process_pdfs()` sur les PDFs reçus (réutiliser le code existant)
|
|
- [ ] Stocker le job dans l'historique comme un job normal (webapp)
|
|
|
|
## 3. Diffusion du résultat
|
|
- [ ] Définir la destination : répertoire local, CalDAV (Nextcloud), ou réponse mail avec les `.ics` en pièce jointe
|
|
- [ ] Implémenter la diffusion choisie
|
|
|
|
## 4. Intégration webapp
|
|
- [ ] Ajouter un endpoint `/api/mail/check` pour déclencher manuellement une vérification
|
|
- [ ] Afficher dans l'interface les jobs déclenchés par mail (badge ou indicateur)
|
|
- [ ] Section config dans `config.json` pour activer/désactiver l'auto-mail
|
|
|
|
## 5. Planification
|
|
- [ ] Ajouter un scheduler dans FastAPI (APScheduler ou tâche asyncio) pour le polling IMAP périodique
|
|
- [ ] Configurer l'intervalle dans `config.json`
|
|
|
|
---
|
|
|
|
**Ordre recommandé** : 1 → 2 → 5 → 3 → 4
|