Opération SyncFolderHierarchy

L’opération SyncFolderHierarchy synchronise les dossiers entre l’ordinateur qui exécute Microsoft Exchange Server 2010 et le client.

Remarque

L’opération SyncFolderHierarchy ne retourne pas de dossiers lorsque les propriétés UnreadCount ou TotalCount ont changé.

Exemple de requête SyncFolderHierarchy

Description

L’exemple suivant de requête SyncFolderHierarchy montre comment synchroniser une hiérarchie de dossiers clients avec le serveur Exchange. Cet exemple montre une hiérarchie de dossiers qui a déjà été synchronisée au moins une fois. L’élément SyncState n’est pas inclus dans la demande de première tentative de synchronisation d’un client avec le serveur Exchange. La première demande retourne tous les dossiers de la boîte aux lettres. L’élément SyncState sera retourné dans syncFolderHierarchyResponse. Cet élément est utilisé pour synchroniser l’état pour les requêtes SyncFolderHierarchy suivantes.

Code

<?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>

Comments

Les données encodées en base64 de l’élément SyncState ont été raccourcies pour préserver la lisibilité.

Éléments de requête

Les éléments suivants sont utilisés dans la demande :

Remarque

Le schéma qui décrit ces éléments se trouve dans le répertoire virtuel EWS de l’ordinateur exécutant MicrosoftExchange Server 2007 sur lequel le rôle serveur d’accès au client est installé.

Réponse SyncFolderHierarchy réussie

Description

L’exemple suivant montre une réponse réussie à la requête SyncFolderHierarchy. Dans cet exemple, un nouveau dossier a été synchronisé.

Code

<?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>

Comments

Les données encodées en base64 de l’élément SyncState et les données d’identificateur de dossier ont été raccourcies pour préserver la lisibilité.

Éléments de réponse réussis

Les éléments suivants sont utilisés dans la réponse :

Réponse d’erreur SyncFolderHierarchy

Description

L’exemple suivant montre une réponse d’erreur à une requête SyncFolderHierarchy. Cette erreur a été provoquée par un SyncState non valide.

Code

<?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>

Éléments de réponse d’erreur

Les éléments suivants sont utilisés dans la réponse d'erreur :

Voir aussi