Traitement dynamic des données de courrier électronique entrant avec un langage de script -> firebase database

Je voudrais traiter les e-mails entrants (sur un compte IMAP) en tant que client d’extraction de courrier électronique et alimenter les données de courrier électronique dans un langage de script pour remplir des tables spécifiques dans la firebase database. L’objective principal est de traiter le texte du corps du courrier électronique pour l’exploration de données et les mésortingques.

Mieux s’il est exécuté sur des systèmes UNIX similaires: Linux, * BSD, Solaris

Infrastructure: Mail Server <---using-IMAP--client Scripting lang. -> Database 

Ce que j’ai trouvé jusqu’à présent:

  • MTA / fetchmail & procmail
  • getmail (script python)
  • utiliser un client de messagerie ordinaire pour récupérer des emails sur ~ / .Mailbox et les traiter (en espérant de mauvaises performances)

Des suggestions de ce qui peut être utilisé pour effectuer une telle tâche?

Pour Python, imaplib implémente un client IMAP4.

Ceci et la réponse de Nelson devraient vous donner le modèle à suivre:

  1. Choisissez un langage de script que vous souhaitez utiliser sur votre serveur.
  2. At-il une bibliothèque client, une extension ou une fonctionnalité intégrée IMAP?
  3. At-il un connecteur à la firebase database spécifique que vous souhaitez utiliser (MySQL, Postgres, MSSQL, etc.)?
  4. Si les réponses à (2) ou (3) sont “Non”, revenez à l’étape 1.
  5. Profit!

Ayant fait cela moi-même, j’ai utilisé Python et Imaplib. Interrogez régulièrement le serveur IMAP pour rechercher et récupérer de nouveaux messages. C’est aussi simple que ça. Simple est entre guillemets car vous devez comprendre le protocole IMAP pour pouvoir utiliser imaplib.

Alternativement, vous pouvez écrire un script qui utilise l’API context.io . Si vous faites cela, vous pouvez vous épargner des difficultés en termes d’apprentissage des complexités de l’IMAP.

Si vous avez la possibilité de transférer automatiquement les e-mails du serveur de messagerie vers une autre adresse, vous pouvez transférer votre e-mail vers un service tel que l’API Parse de SendGrid ou Mailgun, qui traite les e-mails et les rend disponibles via des appels API (généralement plus facile à comprendre que IMAP).

En ce qui concerne la firebase database, j’ai trouvé que MongoDB était très facile à configurer. Connectez-vous à Python en utilisant la bibliothèque pymongo.

Vous pouvez utiliser php-imap pour vous connecter à des comptes imap à partir de php, récupérer des e-mails, rechercher des messages, les supprimer et bien sûr les enregistrer dans la firebase database.