Trabajar con carpetas en Exchange Server

Listar todas las carpetas del servidor

La API Aspose.Email ofrece la capacidad de conectarse al servidor Exchange y enumerar todas las carpetas y subcarpetas. También puede recuperar todas las subcarpetas de cada carpeta de forma recursiva. También ofrece la capacidad de enumerar carpetas con paginación desde el cliente de Exchange mediante el servicio web de Exchange (EWS). En este artículo se muestra cómo recuperar todas las subcarpetas del servidor de Exchange y cómo recuperar las carpetas con paginación.

El siguiente fragmento de código muestra cómo enumerar carpetas de Exchange Server.

Obtenga información sobre el tipo de carpeta mediante EWS

The ExchangeFolderType enumerador proporcionado por ExchangeFolderInfo La clase se puede usar para obtener información sobre el tipo de carpeta. Esto es como se muestra en el ejemplo de código siguiente.

Enumeración de carpetas con soporte de paginación mediante EWS

El siguiente fragmento de código muestra cómo usar la compatibilidad con la paginación con EWS.

Acceso a las carpetas o subcarpetas personalizadas del buzón

IEWSClient permite a los desarrolladores acceder a cualquier carpeta o subcarpeta personalizada desde el buzón. El FolderExists() método de IEWSClient devuelve el URI de una carpeta/subcarpeta personalizada especificada, que se puede usar entonces para acceder a la carpeta de destino. En el ejemplo siguiente, se accede a una carpeta personalizada denominada «TestInbox», que se crea en INBOX, y se muestran todos los mensajes de esta carpeta personalizada. Para realizar esta tarea, se llevan a cabo los siguientes pasos:

  1. Inicialice el IEWSClient objetar proporcionando credenciales válidas.
  2. Acceda al buzón predeterminado.
  3. Acceda a la carpeta principal, que en este ejemplo es INBOX. Esta carpeta principal también puede ser una carpeta personalizada en sí misma.
  4. Use FolderExists() método para buscar en la subcarpeta personalizada especificada, por ejemplo, «TestInbox». Devolverá el URI de «TestInbox».
  5. Usa este URI para acceder a todos los mensajes de esa carpeta personalizada.

El siguiente fragmento de código muestra cómo acceder a las carpetas o subcarpetas personalizadas de los buzones de correo con EWS.

Listado de carpetas públicas

Microsoft Exchange Server permite a los usuarios crear carpetas públicas y publicar mensajes en ellas. Para hacerlo a través de su aplicación, utilice el EWSClient clase para conectarse al servidor Exchange y leer y descargar mensajes y publicaciones de carpetas públicas. En el siguiente fragmento de código se muestra cómo leer todas las carpetas y subcarpetas públicas, y cómo mostrar y descargar los mensajes que se encuentran en estas carpetas. Este ejemplo solo funciona con Microsoft Exchange Server 2007 o superior, ya que solo estos son compatibles con EWS.

Sincronización de elementos de carpeta

API de Aspose.Email IEWSClient proporciona la función de sincronizar una carpeta de Exchange para su contenido. El SyncFolder método expuesto por el IEWSClient la clase se puede usar para sincronizar la información de la carpeta en una carpeta específica. El siguiente fragmento de código muestra cómo sincronizar la información de la carpeta de intercambio.

Recuperación de permisos para carpetas de Exchange

A los usuarios se les asignan permisos para las carpetas públicas de Exchange Server, lo que limita o determina el nivel de acceso que un usuario tiene a estas carpetas. El ExchangeFolderPermission la clase proporciona un conjunto de propiedades de permisos para las carpetas de Exchange, como nivel de permiso, si pueden crear elementos, eliminar elementos y realizar otras tareas según lo especificado en las propiedades del permiso. Los permisos se pueden recuperar mediante el GetFolderPermissions() método de IEWSClient. En este artículo se muestra cómo recuperar los permisos aplicados a una carpeta pública para todos los usuarios que tienen acceso a las carpetas compartidas.

Para realizar esta tarea:

  1. Inicialice el IEWSClient.
  2. Usa el ListPublicFolders para obtener una lista de todas las carpetas públicas
  3. Recupere los permisos asociados a una carpeta mediante el GetFolderPermissions() method

El siguiente fragmento de código muestra cómo usar el IEWSClient clase para recuperar los permisos aplicados a una carpeta.

Creación de carpetas y subcarpetas

La API Aspose.Email ofrece la capacidad de crear carpetas en un buzón de Exchange. La CreateFolder método de IEWSClient se puede utilizar para este propósito. Para crear una carpeta en el buzón del servidor Exchange, se pueden seguir los pasos siguientes.

  1. Crea una instancia de IEWSClient.
  2. Configure el set_UseSlashAsFolderSeparator propiedad según sea necesario. Si se establece en true, la aplicación considerará la «barra» como separador de carpetas y la subcarpeta se creará después de la barra.
  3. Usa el CreateFolder método para crear la carpeta.

El siguiente fragmento de código muestra cómo crear carpetas y subcarpetas.

Haga copias de seguridad de las carpetas de Exchange en PST

Suele ocurrir que los usuarios deseen realizar una copia de seguridad de todas o algunas de las carpetas del buzón. Aspose.Email ofrece la posibilidad de realizar una copia de seguridad de todas las carpetas de buzones de correo de Exchange o de las especificadas en un archivo PST. Para realizar una copia de seguridad de las carpetas del servidor Exchange, se pueden seguir los pasos siguientes.

  1. Crea una instancia de IEWSClient.
  2. Agregue la información de la carpeta requerida a ExchangeFolderInfoCollection
  3. Use IEWSClient->Backup método para exportar el contenido de la carpeta a PST

El siguiente fragmento de código muestra cómo hacer copias de seguridad de las carpetas de intercambio en PST.