Administrar entradas de diario MAPI de Outlook en archivos PST
Contents
[
Hide
]
Agregar entradas de diario MAPI a archivos PST
Crear un Nuevo Archivo PST y Agregar Subcarpetas muestra cómo crear un nuevo archivo PST y agregarle una subcarpeta. Con Aspose.Email también puede crear una nueva entrada de diario MAPI y añadirla a un archivo PST. El ejemplo de código a continuación demuestra cómo crear una entrada de diario, establecer sus propiedades y almacenarla en un archivo PST recién creado:
- Crear entrada de diario MAPI: Instanciar un MapiJournal objeto con el asunto, el cuerpo y el tipo.
- Establecer tiempo del diario: Defina la hora de inicio de la entrada del diario como la fecha y hora actual usando
dt.datetime.now()y establezca la hora de finalización una hora después usandodt.datetime.today() + timedelta(hours=1). - Crear archivo PST: Utilice PersonalStorage.create para generar un nuevo archivo PST con el formato UNICODE.
- Crear carpeta de diario: Dentro del nuevo archivo PST, cree una carpeta predefinida llamada "Journal" usando create_predefined_folder con el
StandardIpmFolder.JOURNALparámetro. - Agregar entrada de diario a la carpeta: Agregue la entrada de diario MAPI creada previamente a la carpeta "Journal" usando add_mapi_message_item.
Agregar archivos adjuntos a entradas de diario MAPI en archivos PST
El ejemplo de código a continuación muestra cómo crear y guardar un elemento de diario MAPI usando la biblioteca Aspose.Email. La entrada del diario está relacionada con una llamada telefónica e incluye archivos adjuntos.
- Definir directorio y adjuntos:
data_dir: Una variable que contiene la ruta al directorio de datos donde se almacenarán los archivos y resultados.attach_file_names: Una lista que contiene los nombres de archivo con ruta completa de los adjuntos que se agregarán al diario.
- Crear un objeto MapiJournal:
- A MapiJournal se crea un objeto con el título "testJournal". Esta entrada de diario se describe como "Llamada telefónica" tanto en el campo de asunto como en el de tipo.
journal.start_timese establece a la hora actual usandodatetime.now().journal.end_timese calcula añadiendo una hora a la hora de inicio usandotimedelta(hours=1).
- Establecer empresas involucradas:
- El
journal.companiesel atributo se actualiza con una lista de empresas involucradas en esta entrada del diario.
- El
- Adjuntar archivos al diario:
- Un bucle itera sobre cada archivo en
attach_file_names. Para cada archivo, agrega el archivo aljournal.attachmentsleyendo el contenido del archivo en modo binario.
- Un bucle itera sobre cada archivo en
- Guardar el MapiJournal:
- Finalmente, la entrada del diario se guarda como un archivo ".msg" en el directorio de datos especificado.
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"))