Gestionar plantillas de Outlook, mensajes firmados y categorías

Leer y escribir archivos de plantilla de Outlook (OFT)

Plantillas de Outlook son archivos de correo reutilizables (.oft) que ayudan a automatizar el envío de mensajes similares o recurrentes. En lugar de reescribir el mismo contenido cada vez, puedes abrir una plantilla guardada, actualizar los detalles y enviarla al instante.

Usando Aspose.Email for C++, puedes cargar y modificar plantillas OFT a través del MailMessage clase. Una vez cargado, puedes actualizar campos como remitente, destinatario, asunto y cuerpo, y luego:

  • Envía el mensaje actualizado usando la clase SmtpClient, o
  • Guárdalo como un archivo MSG para su posterior edición o validación en Microsoft Outlook.

El siguiente ejemplo de código muestra cómo cargar una plantilla de correo de Outlook (archivo OFT), modificar los detalles del remitente y del destinatario, personalizar el contenido del correo sustituyendo marcadores de posición por valores específicos, y luego guardar el mensaje actualizado como un archivo MSG de Outlook con la bandera de no enviado establecida.

Gestionar mensajes firmados digitalmente (S/MIME)

Conservar la firma al convertir EML a MSG

Aspose.Email soporta completamente las operaciones S/MIME, permitiendo guardar o convertir mensajes firmados digitalmente sin romper la integridad de la firma. La API ofrece dos métodos para conservar la firma al convertir de EML a MSG.

1. Conservar la firma S/MIME automáticamente

  1. Cargar el archivo EML con MailMessage::Load(). Analiza la estructura MIME: encabezados, partes del cuerpo, adjuntos, firmas.
  2. Guardar como MSG llamando a Save() con SaveOptions::get_DefaultMsgUnicode(). Esto genera automáticamente el formato MSG Unicode mientras preserva la jerarquía del mensaje y la integridad del contenido.

Si el mensaje original incluye una firma digital S/MIME, se reconoce y conserva como un adjunto especial dentro del archivo MSG resultante.

No se realiza reformateo del cuerpo, asegurando que la firma permanezca válida.

2. Conversión controlada

Este enfoque utiliza un proceso de dos pasos que convierte explícitamente un mensaje basado en MIME a una representación de mensaje basada en MAPI.

  1. Cargar el archivo EML con MailMessage::Load(). Analiza el EML en un modelo de objeto MIME con encabezados, partes del cuerpo y adjuntos.
  2. Convertir a mensaje MAPI con MapiMessage::FromMailMessage().
  3. Configurar MapiConversionOptions:
    • Establecer la codificación de salida (ANSI/Unicode).
    • Elegir formato de mensaje.
    • Conservar los adjuntos TNEF si es necesario.
    • Incluir o conservar firmas digitales.
    • Definir el formato del cuerpo (texto plano, RTF, HTML).
  4. Habilitar PreserveSignature = true para mantener la firma S/MIME intacta. Esto incrusta la parte MIME de la firma (application/pkcs7-mime o pkcs7-signature) sin decodificar ni reempaquetar.
  5. Guardar el mensaje MAPI resultante como archivo MSG preservando todas las propiedades y firmas.

Utiliza este método para permitir la personalización del formato del cuerpo del mensaje, la codificación y el manejo de adjuntos. Es útil para convertir conservando datos TNEF, gestionar los adjuntos de forma diferente, o integrar la creación de MSG en flujos de trabajo complejos de Outlook/MAPI. Proporciona acceso al conjunto de propiedades MAPI para manipulaciones a nivel profundo.

Establecer categorías de color para archivos MSG de Outlook

Las categorías de color ayudan a organizar correos en Outlook. Aspose.Email proporciona el FollowUpManager clase y algunas funciones para gestionar estas categorías:

  • AddCategory toma MapiMessage y la cadena de categoría de color, por ejemplo "Purple Category" o "Red Category" como argumentos.
  • RemoveCategory toma MapiMessage y la cadena de categoría de color que se eliminará del mensaje.
  • ClearCategories() se utiliza para eliminar todas las categorías de color del mensaje.
  • GetCategories se utiliza para recuperar todas las categorías de color de un mensaje en particular.

El siguiente ejemplo de código muestra cómo cargar un archivo de correo MSG de Outlook, añadir categorías de color al mensaje, recuperar y mostrar sus categorías existentes, y luego eliminar categorías específicas o borrar todas las categorías usando el FollowUpManager.

Acceder a Información de Seguimiento en Archivos MSG

Aspose.Email puede extraer recibos de lectura, recibos de entrega y resultados de votación de los mensajes de Outlook.

El siguiente ejemplo de código muestra cómo leer un archivo MSG de Outlook e iterar a través de sus destinatarios para mostrar información de seguimiento detallada. Específicamente, muestra cómo acceder al nombre visible de cada destinatario, la hora de entrega del mensaje a ese destinatario y la hora en que el destinatario leyó el mensaje, recuperando estas propiedades de las propiedades del destinatario del mensaje MAPI.