31 lines
2.8 KiB
Markdown
31 lines
2.8 KiB
Markdown
# Direttiva: Gestione Posta IMAP, Webmail Gmail-Style e Protocollo Comunicazioni
|
|
|
|
## 1. Obiettivo
|
|
|
|
Questa direttiva formalizza la gestione omnicanale delle comunicazioni e della posta (Ordinaria e PEC) in NetGescon:
|
|
1. **Configurazione IMAP Multi-Casella per Stabile**: salvataggio dei parametri di connessione (host, porta, crittografia, username, password cifrata/gestita, cartella) nella configurazione avanzata dello stabile.
|
|
2. **Archiviazione Locale dei file `.EML` e Allegati**: scaricamento e conservazione deterministica del messaggio sorgente integro in `storage/app/private/amministratori/{cod_adm}/stabili/{cod_stabile}/posta_{tipo}/{anno}/{msg_id}.eml` ed estrazione sicura degli allegati.
|
|
3. **Ingestion & Matching su DB Relazionale**: creazione del record in `communication_messages` con auto-matching dell'Unità Immobiliare di riferimento tramite riscontro dell'email del mittente con i contatti censiti per l'unità.
|
|
4. **Interfacce Webmail Stile Gmail**:
|
|
- `PostaOrdinariaWebmail` (`/admin-filament/comunicazioni/posta-ordinaria`)
|
|
- `PostaPecWebmail` (`/admin-filament/comunicazioni/posta-pec`)
|
|
- Layout Gmail con cartelle (In arrivo, Speciali, Inviati, Allegati), barra di ricerca debounce, pill allegati, creazione ticket 1-click, composizione modale e anteprima allegati / documenti integrata.
|
|
5. **Scheda Unità (`unita-immobiliare`) - Tab Comunicazioni & Protocollo**:
|
|
- Aggregazione multi-sorgente: estratti conto inviati (`protoc_ec`), circolari/lettere (`corrisp_inviata`) e messaggi email/PEC (`communication_messages`).
|
|
- Ordinamento cronologico decrescente rigoroso basato su Unix timestamp (`Carbon::parse()`).
|
|
- Modal di anteprima visiva rapida di PDF, immagini e testi allegati ai documenti di protocollo.
|
|
6. **Gestione Fornitori e Ditte Inter-Stabili**:
|
|
- Fornitore Nethome SAS (`10055221005`) configurato e collegato trasversalmente per compensi e fatturazione.
|
|
- Allineamento del codice mnemonico `cod_stabile` ereditato da `Stabili.mdb` visibile e indicizzato nell'anagrafica stabili.
|
|
|
|
## 2. Architettura File e Namespace
|
|
|
|
- `app/Services/Posta/EmlParser.php`: Parser puro PHP per decodifica MIME, multipart, headers e allegati.
|
|
- `app/Services/Posta/ImapClient.php`: Client socket puro PHP SSL/TLS IMAP (porta 993) senza dipendenze binarie libc-client.
|
|
- `app/Services/Posta/ImapMailboxService.php`: Servizio di sincronizzazione, archiviazione `.eml` e associazione stabile/unità/ticket.
|
|
- `app/Console/Commands/FetchMailboxesCommand.php`: Comando CLI `php artisan gescon:fetch-mail`.
|
|
- `app/Filament/Pages/Posta/PostaOrdinariaWebmail.php`: Blade Webmail Posta Ordinaria.
|
|
- `app/Filament/Pages/Posta/PostaPecWebmail.php`: Blade Webmail Posta Certificata PEC.
|
|
- `resources/views/filament/pages/posta/webmail.blade.php`: Vista Blade responsive stile Gmail.
|
|
- `tests/Feature/PostaImapWebmailAndProtocolloTest.php`: Suite di test Pest dedicata.
|