Je suis sur le point d'ajouter intégration de messagerie IMAP à l'une de nos applications Web (ASP.NET/SQL Server). J'utilise déjà un commercial library qui expose la fonctionnalité IMAP la plus importante: obtenir la liste des dossiers, récupérer les en-têtes des messages, obtenir le message mime, etc.)Stratégie de synchronisation de dossiers/messages IMAP?
Obtenir des données email "live" du serveur IMAP fonctionne très bien. Mais voici la tâche difficile: Je dois garder l'email/dossiers base de données SQL de mise en cache synchronisée sur le serveur IMAP (Je dois montrer des données en appliquant différents critères).
Notre schéma de base de données contient essentiellement un dossier "Dossiers" et un tableau "Emails". La table "Emails" contient principalement des informations d'en-tête telles que "FromAddress", "FromName", "IsRead", "IsAnswered", "IsForwarded", "HasAttachments" etc. (sans le contenu de l'e-mail ou les pièces jointes).
je dois considérer deux scénarios principaux:
- Obtenir tous les messages la première fois (ou après organisé re-les utilisateurs des dossiers)
- messages Obtenir de nouveaux/récents
Qu'est-ce que serait une bonne stratégie de synchronisation pour maintenir le serveur de messagerie et le serveur de base de données à jour, considérant que la performance est un critère de conception majeur (je ne peux pas interroger/comparer des milliers de messages chaque fois que je me connecte). si l'utilisateur a déplacé ou supprimé moi anciens emails).
Merci!
Bonne réponse, merci. Je pense que je dois revoir les capacités du composant/protocole IMAP. – splattne