Fonctionnalités utilitaires - MailMessage

Chiffrement et déchiffrement de messages

Aspose.Email offre la possibilité de chiffrer et déchiffrer des e‑mails. Ce sujet montre comment un message existant ou nouveau peut être chargé et chiffré à l’aide de MailMessage. Le encrypt() et decrypt() les méthodes renvoient l’objet MailMessage avec les effets appliqués et doivent être gérées lors du chiffrement/déchiffrement des messages. Le chiffrement et le déchiffrement des messages impliquent les étapes suivantes :

  1. Créer un nouveau message ou charger un existant
  2. Chiffrer le message à l’aide du fichier de certificat
  3. Envoyer le message ou l’enregistrer
  4. Déchiffrer le message selon les besoins

L’extrait de code suivant montre comment chiffrer et déchiffrer des messages.

Vérification du chiffrement d’un message

Aspose.Email MailMessage La classe permet de vérifier si un message est chiffré ou non. Le isEncrypted La propriété de MailMessage permet de vérifier cela comme montré dans l’exemple de code suivant.

Chiffrement de message avec X509Certificate

Aspose.Email fournit l’API pour travailler avec les messages chiffrés à l’aide de X509Certificate :

MailMessage la classe possède les méthodes suivantes pour travailler avec le chiffrement des messages :

Configurer les options de paramètres régionaux pour Aspose.Email

Vous pouvez utiliser LocaleOptions classe en cas de paramètre régional par défaut non reconnu et fixe le paramètre le plus approprié pour la bibliothèque Aspose Email. Elle propose les méthodes suivantes pour accomplir la tâche :

L’exemple de code suivant montre comment charger un message e‑mail depuis un fichier en utilisant les paramètres régionaux spécifiés :

final Locale locale = new Locale("en", "DE");
Locale.setDefault(locale);

// set Locale for Aspose Email lib
LocaleOptions.setLocale("en-US");
// or
//LocaleOptions.setLocale(new Locale("en", "US"));

MailMessage.load("document.msg");

Ce code garantit que l’application et la bibliothèque Aspose.Email utilisent les paramètres régionaux spécifiés pour gérer les conventions de langue, de pays et culturelles.

Messages contenant des pièces jointes TNEF

Le Transport Neutral Encapsulation Format (TNEF) est un format propriétaire de pièces jointes d’e‑mail utilisé par Microsoft Outlook et Microsoft Exchange Server. L’API Aspose.Email vous permet de lire les messages e‑mail contenant des pièces jointes TNEF et de modifier leur contenu. L’e‑mail peut ensuite être enregistré en tant qu’e‑mail normal ou dans le même format, en conservant les pièces jointes TNEF. Cet article montre différents exemples de code pour travailler avec des messages contenant des pièces jointes TNEF.

Lecture d’un message en conservant les pièces jointes TNEF

L’extrait de code suivant montre comment lire un message tout en conservant les pièces jointes TNEF.

Mise à jour des ressources d’une pièce jointe TNEF et préservation du format TNEF

L’extrait de code suivant montre comment mettre à jour les ressources d’une pièce jointe TNEF et préserver le format TNEF.

Ajout de nouvelles pièces jointes au message principal contenant du TNEF

Création d’un EML TNEF à partir d’un MSG

Les fichiers Outlook MSG contiennent parfois des informations telles que des tableaux et des styles de texte qui peuvent être altérés s’ils sont convertis en EML. Créer des messages TNEF à partir de ces fichiers MSG nous permet de conserver le formatage et même d’envoyer ces messages via les clients e‑mail tout en préservant le formatage. 

Pour créer le TNEF, le code d’exemple suivant peut être utilisé.

Détecter si un message est TNEF

Traitement des messages rebondis

Il est très fréquent qu’un message envoyé à un destinataire rebondisse pour n’importe quelle raison, comme une adresse de destinataire invalide. L’API Aspose.Email a la capacité de traiter un tel message afin de vérifier s’il s’agit d’un e‑mail rebondi ou d’un e‑mail normal. Le Vérifier le rebond méthode du MailMessage la classe renvoie un résultat valide si le message e‑mail est un e‑mail rejeté.

Cet article montre l’utilisation de BounceResult classe qui offre la capacité de vérifier si un message est un e‑mail rejeté (bounced). Elle fournit également des informations détaillées sur les destinataires, l’action effectuée et la raison de la notification.

Ignorer les exceptions

La bibliothèque propose un ExceptionManager classe pour implémenter la capacité d’ignorer les exceptions dans la fonctionnalité de votre application. L’extrait de code ci‑dessous montre comment définir un rappel pour gérer les exceptions :

 ExceptionManager.setIgnoreExceptionsHandler( new IgnoreExceptionsCallback() {

   //exception path: {Module}\{Method}\{Action}\{GUID}

   //example: MailMessage\Load\DecodeTnefAttachment\64149867-679e-4645-9af0-d46566cae598

   public boolean invoke(AsposeException ex, String path) {

       //Ignore all exceptions on MailMessage.Load

       return path.equals("MailMessage\\Load");

   }

});

Ou utilisez une alternative :

 ExceptionManager.setIgnoreAll(true);

De plus, vous pouvez définir une fonction de rappel pour le journal des exceptions ignorées :

ExceptionManager.setIgnoreExceptionsLogHandler( new IgnoreExceptionsLogCallback() {

   public void invoke(String message) {

        System.out.println("=== EXCEPTION IGNORED === " + message);

   }

});

L’utilisateur sera averti que l’exception peut être ignorée via un message d’erreur. Par exemple :

Exception dans le message :

AsposeArgumentException: properties should not be empty.

Si vous voulez ignorer une exception et continuer, vous pouvez utiliser :

ExceptionManager.getIgnoreList().add("MailMessage\\Load\\DecodeTnefAttachment\\64149867-679e-4645-9af0-d46566cae598")

Invalid TNEF Attachment will be interpreted as regular attachment.

Analyseur de spam bayésien

Aspose.Email offre la fonctionnalité de filtrage des e‑mails à l’aide de l’analyseur de spam Bayes. Il fournit le SpamAnalyzer classe à cet effet. Cet article montre comment entraîner le filtre à distinguer les spams des e‑mails normaux en fonction de la base de mots.

Obtention du préambule et de l’épilogue à partir des messages EML

Dans le format MIME, le préambule est le texte qui apparaît après les en‑têtes et avant la première limite multipartie. L’épilogue est le texte qui apparaît après la dernière limite et avant la fin du message. Ce texte est généralement invisible aux utilisateurs dans les lecteurs de courrier, mais certaines implémentations MIME peuvent l’utiliser pour insérer des notes destinées aux destinataires qui lisent le message avec des programmes non conformes à MIME.

L’extrait de code suivant montre comment obtenir le préambule et l’épilogue d’un message EML, ce qui peut être réalisé avec les méthodes correspondantes de la MailMessage classe:

// Gets or sets a preamble text.
public String getPreamble, setPreamble

// Gets or sets an epilogue text.
public String getEpilogue, setEpilogue