Operación SyncFolderHierarchy
La operación SyncFolderHierarchy sincroniza carpetas entre el equipo que se ejecuta Microsoft Exchange Server 2010 y el cliente.
Nota
La operación SyncFolderHierarchy no devuelve carpetas cuando han cambiado las propiedades UnreadCount o TotalCount.
Ejemplo de solicitud SyncFolderHierarchy
Descripción
En el siguiente ejemplo de una solicitud SyncFolderHierarchy se muestra cómo sincronizar una jerarquía de carpetas de cliente con el servidor Exchange cliente. En este ejemplo se muestra una jerarquía de carpetas que ya se ha sincronizado al menos una vez. El elemento SyncState no se incluye en la solicitud para el primer intento de sincronizar un cliente con el Exchange servidor. La primera solicitud devolverá todas las carpetas del buzón. El elemento SyncState se devolverá en SyncFolderHierarchyResponse. Este elemento se usa para sincronizar el estado de las solicitudes SyncFolderHierarchy posteriores.
Código
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types">
<soap:Body>
<SyncFolderHierarchy xmlns="https://schemas.microsoft.com/exchange/services/2006/messages">
<FolderShape>
<t:BaseShape>AllProperties</t:BaseShape>
</FolderShape>
<SyncState>H4sIA=</SyncState>
</SyncFolderHierarchy>
</soap:Body>
</soap:Envelope>
Comentarios
Los datos codificados en base64 del elemento SyncState se han acortado para conservar la legibilidad.
Elementos Request
En la solicitud se usan los siguientes elementos:
Nota
El esquema que describe estos elementos se encuentra en el directorio virtual EWS del equipo que ejecuta MicrosoftExchange Server 2007 que tiene instalado el rol de servidor Acceso de cliente.
Respuesta correcta de SyncFolderHierarchy
Descripción
En el ejemplo siguiente se muestra una respuesta correcta a la solicitud SyncFolderHierarchy. En este ejemplo, se ha sincronizado una nueva carpeta.
Código
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<t:ServerVersionInfo MajorVersion="8" MinorVersion="0"
MajorBuildNumber="628" MinorBuildNumber="0"
xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body>
<SyncFolderHierarchyResponse xmlns:m="https://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types"
xmlns="https://schemas.microsoft.com/exchange/services/2006/messages">
<m:ResponseMessages>
<m:SyncFolderHierarchyResponseMessage ResponseClass="Success">
<m:ResponseCode>NoError</m:ResponseCode>
<m:SyncState>H4sIAAA==</m:SyncState>
<m:IncludesLastFolderInRange>true</m:IncludesLastFolderInRange>
<m:Changes>
<t:Create>
<t:Folder>
<t:FolderId Id="AQApAHR=" ChangeKey="AQAAABY" />
<t:ParentFolderId Id="AQApA=" ChangeKey="AQAAAA==" />
<t:FolderClass>IPF.Note</t:FolderClass>
<t:DisplayName>NewFolder</t:DisplayName>
<t:TotalCount>0</t:TotalCount>
<t:ChildFolderCount>0</t:ChildFolderCount>
<t:UnreadCount>0</t:UnreadCount>
</t:Folder>
</t:Create>
</m:Changes>
</m:SyncFolderHierarchyResponseMessage>
</m:ResponseMessages>
</SyncFolderHierarchyResponse>
</soap:Body>
</soap:Envelope>
Comentarios
Los datos codificados en base64 del elemento SyncState y los datos del identificador de carpeta se han acortado para conservar la legibilidad.
Elementos de respuesta correctos
En la respuesta se usan los siguientes elementos:
Respuesta de error SyncFolderHierarchy
Descripción
En el ejemplo siguiente se muestra una respuesta de error a una solicitud SyncFolderHierarchy. Este error fue causado por un SyncState no válido.
Código
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<t:ServerVersionInfo MajorVersion="8" MinorVersion="0"
MajorBuildNumber="628" MinorBuildNumber="0"
xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body>
<SyncFolderHierarchyResponse xmlns:m="https://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types"
xmlns="https://schemas.microsoft.com/exchange/services/2006/messages">
<m:ResponseMessages>
<m:SyncFolderHierarchyResponseMessage ResponseClass="Error">
<m:MessageText>Synchronization state data is corrupted or otherwise invalid.</m:MessageText>
<m:ResponseCode>ErrorInvalidSyncStateData</m:ResponseCode>
<m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
<m:SyncState />
<m:IncludesLastFolderInRange>true</m:IncludesLastFolderInRange>
</m:SyncFolderHierarchyResponseMessage>
</m:ResponseMessages>
</SyncFolderHierarchyResponse>
</soap:Body>
</soap:Envelope>
Elementos de respuesta de error
En la respuesta de error se usan los siguientes elementos: