Trabajar con los elementos del calendario de Outlook

Trabajando con MapiCalendar

La clase MapiCalendar de Aspose.Email proporciona métodos y atributos para establecer varias propiedades de un elemento del calendario. En este artículo se proporcionan ejemplos de código para:

Creación y almacenamiento de elementos del calendario

El siguiente fragmento de código muestra cómo crear y guardar un elemento del calendario en formato ICS.

Guardar el elemento del calendario como MSG

El siguiente fragmento de código muestra cómo guardar el elemento del calendario como MSG.

Configuración de un identificador de producto al guardar MapiCalendar en ICS

The ProductIdentifier propiedad del MapiCalendarIcsSaveOptions La clase se usa para guardar un elemento del calendario MAPI en un archivo iCalendar (ICS) que conserva la información original de fecha y hora, así como un identificador de producto personalizado. La propiedad especifica el identificador del producto que creó el objeto iCalendar.

El siguiente ejemplo de código muestra cómo trabajar con datos de iCalendar (ICS) en un objeto de calendario MAPI:

var icsSaveOptions = new MapiCalendarIcsSaveOptions
{
    KeepOriginalDateTimeStamp = true,
    ProductIdentifier = "Foo Ltd"
};

mapiCalendar.Save("my.ics", icsSaveOptions);

Obtener el número total de eventos

La clase CalendarReader permite gestionar los eventos del calendario sin esfuerzo. Las siguientes propiedades y un método permiten trabajar con varios eventos:

  • CalendarReader.Count - La propiedad Count de la clase CalendarReader permite recuperar el número de componentes (eventos) de Vevent presentes en el calendario, lo que facilita el seguimiento del número total de eventos.
  • CalendarReader.IsMultiEvents - Esta propiedad determina si el calendario contiene varios eventos. Proporciona un valor booleano que indica si el calendario contiene más de un evento, lo que ayuda a identificar los calendarios con uno o varios eventos.
  • CalendarReader.Method - La propiedad Method obtiene el tipo de método iCalendar asociado al objeto de calendario. Devuelve el tipo de método, como «REQUEST», «PUBLISH» o «CANCEL», lo que proporciona información valiosa sobre el propósito del calendario.
  • CalendarReader.Version - Obtiene la versión de iCalendar.
  • CalendarReader.LoadAsMultiple() Este método permite cargar una lista de eventos de un calendario que contiene varios eventos. Devuelve una lista de objetos de citas, lo que permite acceder fácilmente a cada evento y procesarlo de forma individual.

El siguiente ejemplo de código demuestra cómo puedes implementar estas capacidades en tu proyecto:

var reader = new CalendarReader(fileName);
Console.WriteLine("Calendar contains " + reader.Count + " events");
Console.WriteLine("The Version of the calendar is " + reader.Version);
Console.WriteLine("The Method of the calendar is " + reader.Method);
Console.WriteLine("Is calendar contains contains multiple events? - " + reader.IsMultiEvents);
List<Appointment> appointments = reader.LoadAsMultiple();

Añadir un recordatorio de pantalla a un calendario

En el siguiente fragmento de código, se muestra cómo añadir un recordatorio de visualización a un calendario.

Añadir un recordatorio de audio a un calendario

En el siguiente fragmento de código, se muestra cómo añadir un recordatorio de audio a un calendario.

Añadir/recuperar archivos adjuntos de archivos de calendario

El siguiente fragmento de código muestra cómo añadir o recuperar archivos adjuntos de los archivos de calendario.

Estado de los destinatarios de una convocatoria de reunión

El siguiente fragmento de código muestra cómo mostrar el estado de los destinatarios de una convocatoria de reunión.

Crear MapiCalendarTimezone a partir de una zona horaria estándar

El siguiente fragmento de código muestra cómo crear MapiCalendarTimezone a partir de una zona horaria estándar.

Configurar un recordatorio con la cita creada

Se puede agregar un recordatorio cuando se crea una cita. Estas alarmas pueden activarse en función de diferentes criterios, como n minutos antes de que comience la programación o repetirse n veces a intervalos de n. Se pueden usar diferentes etiquetas para crear estos activadores en el script incluido entre BEGIN:VALARM y END:VALARM dentro de una cita. Hay varias variantes en las que se puede configurar el recordatorio en una cita.

Establecer un recordatorio añadiendo etiquetas

En el siguiente fragmento de código, se muestra cómo configurar un recordatorio añadiendo etiquetas.

Convierta Appointment EML a MSG con HTML Body

Desde la versión 19.3, Aspose.Email ofrece la posibilidad de convertir Appointment EML en MSG conservando el cuerpo HTML de la cita. Aspose.Email proporciona un MapiConversionOptions.ForcedRtfBodyForAppointment propiedad que tiene un valor predeterminado de true. Cuando el valor de MapiConversionOptions.ForcedRtfBodyForAppointment está configurado en true, el organismo de la designación se convierte al formato RTF. Para mantener el formato del cuerpo de la cita en formato HTML, defina el valor de MapiConversionOptions.ForcedRtfBodyForAppointment to false.

El siguiente ejemplo demuestra el uso de MapiConversionOptions.ForcedRtfBodyForAppointment propiedad para mantener el formato del cuerpo de la cita en formato HTML.