Gestion des entrées de journal MAPI Outlook dans les fichiers PST

Ajouter des entrées de journal MAPI aux fichiers PST

Créer un nouveau fichier PST et ajouter des sous‑dossiers montre comment créer un nouveau fichier PST et y ajouter un sous-dossier. Avec Aspose.Email, vous pouvez également créer une nouvelle entrée de journal MAPI et l’ajouter à un fichier PST. L’exemple de code ci‑dessous montre comment créer une entrée de journal, définir ses propriétés et l’enregistrer dans un fichier PST nouvellement créé :

  1. Créer une entrée de journal MAPI : Instanciez un MapiJournal objet avec le sujet, le corps et le type.
  2. Définir la chronologie du journal : Définissez l’heure de début de l’entrée du journal comme la date et l’heure actuelles en utilisant dt.datetime.now() et définissez l’heure de fin une heure plus tard en utilisant dt.datetime.today() + timedelta(hours=1).
  3. Créer un fichier PST : Utilisez PersonalStorage.create pour générer un nouveau fichier PST au format UNICODE.
  4. Créer un dossier Journal : Dans le nouveau fichier PST, créez un dossier prédéfini nommé "Journal" en utilisant create_predefined_folder avec le StandardIpmFolder.JOURNAL paramètre.
  5. Ajouter une entrée de journal au dossier : ajoutez l’entrée de journal MAPI précédemment créée au dossier « Journal » en utilisant add_mapi_message_item.

Ajouter des pièces jointes aux entrées de journal MAPI dans les fichiers PST

L’exemple de code ci‑dessous montre comment créer et enregistrer un élément de journal MAPI en utilisant la bibliothèque Aspose.Email. L’entrée du journal est liée à un appel téléphonique et inclut des fichiers en pièce jointe.

  1. Définir le répertoire et les pièces jointes :
    • data_dir: Une variable qui contient le chemin du répertoire de données où les fichiers et sorties seront stockés.
    • attach_file_names: Une liste contenant les noms de fichiers avec chemin complet des pièces jointes à ajouter au journal.
  2. Créer un objet MapiJournal :
    • Un MapiJournal l’objet est créé avec le titre "testJournal". Cette entrée de journal est décrite comme un "Appel téléphonique" à la fois dans le champ sujet et le champ type.
    • journal.start_time est défini à l’heure actuelle en utilisant datetime.now().
    • journal.end_time est calculé en ajoutant une heure à l’heure de début en utilisant timedelta(hours=1).
  3. Définir les entreprises impliquées :
    • Le journal.companies l’attribut est mis à jour avec une liste d’entreprises impliquées dans cette entrée de journal.
  4. Attacher des fichiers au journal :
    • Une boucle parcourt chaque fichier dans attach_file_names. Pour chaque fichier, il ajoute le fichier au journal.attachments en lisant le contenu du fichier en mode binaire.
  5. Enregistrer le MapiJournal :
    • Enfin, l’entrée du journal est enregistrée sous forme de fichier ".msg" dans le répertoire de données spécifié.
import os
from datetime import datetime, timedelta
from aspose.email.mapi import MapiJournal

data_dir = "path_to_data_directory"
attach_file_names = [os.path.join(data_dir, "Desert.jpg"), os.path.join(data_dir, "download.png")]

journal = MapiJournal("testJournal", "This is a test journal", "Phone call", "Phone call")
journal.start_time = datetime.now()
journal.end_time = journal.start_time + timedelta(hours=1)
journal.companies = ["company 1", "company 2", "company 3"]

for attach in attach_file_names:
    journal.attachments.append(attach, open(attach, 'rb').read())

journal.save(os.path.join(data_dir, "AddAttachmentsToMapiJournal_out.msg"))