«MailBackup»

2 Giugno 2023

Il problema lo conosciamo tutti: la nostra casella e-mail è piena e veniamo tempestati da messaggi che ci invitano ad archiviare messaggi o ad acquistare spazio memoria costoso. Procrastiniamo, perché l’archiviazione manuale della posta elettronica è un lavoraccio che richiede molto tempo. Con alcuni servizi mail c’è pure il rischio di perdere quantità di dati ingenti, come successo anche al sottoscritto.

Ho quindi creato una soluzione (per utilizzo da parte di personale IT/esperto):

«MailBackup» è un software lanciabile dal command prompt (cmd.exe) in ambiente Windows, che serve per archiviare/backupare messaggi e-mail in file di formato mbox1, scaricandoli direttamente da un server IMAP2 (esistono ottimi programmi freeware per la gestione dei file mbox).

Il programma è redatto in php3 e prevede quindi l’istallazione di PHP for Windows4 / Visual C runtime5, entrambi installabili rapidamente senza la necessità di riavvio del computer.

«MailBackup» è composto da due script php:

1. un file config.php, specifico per ogni account di posta elettronica gestito, contenente sia i parametri di configurazione, sia le impostazioni (es. cartelle da includere/escludere, periodo, modalità etc.) per il backup/l’archiviazione, nella fattispecie:

2. un file go.php che viene lanciato dal command prompt, carica il file di configurazione ed esegue backup/archiviazione specifico per l’account in funzione dei filtri ed impostazioni utilizzati, creando un log dettagliato delle operazioni eseguite

Il software è pensato in primis per poter essere utilizzato da amministratori di sistema o personale tecnico, abituati ad operare utilizzando il command prompt (cmd.exe) in ambiente Windows per lavori di manutenzione – tuttavia può essere utilizzato anche da utenti non maggiormente qualificati dopo un breve percorso formativo.

Un esempio di lancio dal command prompt potrebbe essere:

php.exe -c php.ini -f C:\php-mailbackup\go.php C:\php-mailbackup\config.php

  • tipicamente7, per processare 4-5 GB di posta elettronica ci vogliono 15’
  • il programma restituisce, oltre al log, diversi exit-code (0=successo) per l’integrazione in altri sistemi

  1. mbox è un formato di archiviazione per e-mail, ove vengono accodate tutti i dati delle singole e-mail in maniera sequenziale in un file ASCII6, separando i dati di una e-mail da quella successiva semplicemente con una determinata sequenza di caratteri; i file mbox possono essere visualizzati con programmi freeware tipo https://sourceforge.net/projects/mbox-viewer/
  2. IMAP = Internet Message Access Protocol
  3. php è un linguaggio di scripting, interpretato lato server e usato per lo più nello sviluppo web – php è un acronimo ricorsivo: significa che l’acronimo stesso è contenuto come prima parola nello scioglimento della sigla – infatti PHP sta per PHP: Hypertext Preprocessor
  4. https://windows.php.net/downloads/releases/php-8.2.6-nts-Win32-vs16-x64.zip
  5. https://aka.ms/vs/17/release/vc_redist.x64.exe
  6. ASCII = American Standard Code for Information Interchange
  7. connessione EOLO con velocità di download di 100Mbit/s

Share

Post Correlati

Leggili tutti

  • 15 Novembre 2023

    — analisi sistematica della posta elettronica — Per fare fronte anche a quantità ingenti di dati, «MailScanner» ha un’architettura bicomponente, composta da un’interfaccia utente semplice (web APP) e una parte eseguibile in php, disegnata per lavorare senza le limitazioni di tempo e di memoria di un web server. I due sistemi comunicano via internet attraverso […]

    Leggi di più
  • 13 Aprile 2023

    Bensì senza alcun dubbio le intenzioni dei legiferanti erano ottime nel redigere il contenuto del regolamento EU 2016/679 (Regolamento generale sulla protezione dei dati / General Data Protection Regulation = GDPR), credo ahimè che non siano riusciti a proteggerci efficacemente dal profiling da parte dei colossi del software e dei social network. Per converso, il […]

    Leggi di più
  • 22 Febbraio 2023

    Sempre più spesso c’è bisogno di tradurre tabulati di dati in formato EXCEL o CSV che alimentano siti web, portali e-commerce, cataloghi etc. Ho quindi messo a punto un bot per tradurre rapidamente tabulati, utilizzando la API (Application Programming Interface) di DeepL.com, il più avanzato traduttore disponibile online. Estremamente veloce ed efficace, DeepL.com fornisce traduzioni […]

    Leggi di più