Операция ConvertIdConvertId operation

Найдите сведения об операции ConvertId EWS.Find information about the ConvertId EWS operation.

Операция ConvertId Веб-службы Exchange (EWS) преобразует идентификаторы элементов и папок между форматами, которые принимаются Exchange Online, Exchange Online как часть Office 365, и локальной версией Exchange, начиная с Exchange Server 2013.The ConvertId Exchange Web Services (EWS) operation converts item and folder identifiers between formats that are accepted by Exchange Online, Exchange Online as part of Office 365, and on-premises versions of Exchange starting with Exchange Server 2013.

Использование операции ConvertIdUsing the ConvertId operation

С помощью операции ConvertId можно преобразовать следующие идентификаторы:You can convert the following identifiers by using the ConvertId operation:

  • Формат идентификатора для EWS в первоначальной версии выпуска Exchange 2007.The identifier format for EWS in the initial release version of Exchange 2007. Этот код представлен значением EwsLegacyId enumeration в индексе IdFormat.This is represented by the EwsLegacyId enumeration value in the IdFormat enumeration.

  • Формат идентификатора для EWS в Exchange 2007 с sp1 или Exchange 2010.The identifier format for EWS in Exchange 2007 SP1 or Exchange 2010. Это представлено значением EwsId нумерации в IdFormat.This is represented by the EwsId enumeration value in IdFormat.

  • Идентификатор MAPI, как в свойстве PR_ENTRYID.The MAPI identifier, as in the PR_ENTRYID property. Этот код представлен значением EntryId из нумерации IdFormat.This is represented by the EntryId enumeration value in the IdFormat enumeration.

  • Идентификатор события календаря доступности.The availability calendar event identifier. Это представление свойства, закодированное в PR_ENTRYID кодировки.This is a hexadecimal-encoded representation of the PR_ENTRYID property. Этот код представлен значением HexEntryId нумерации в IdFormat.This is represented by the HexEntryId enumeration value in IdFormat.

  • Идентификатор магазина Exchange.The Exchange store identifier. Это представлено значением StoreId нумерации в IdFormat.This is represented by the StoreId enumeration value in IdFormat. Операция ConvertId не преобразует идентификаторы общедоступных папок из идентификатора EWS в идентификатор магазина.The ConvertId operation does not convert public folder identifiers from the EWS identifier to the store identifier.

  • Идентификатор Outlook Web App.The Outlook Web App identifier. Это представлено значением OwaId нумерации в IdFormatThis is represented by the OwaId enumeration value in IdFormat

    Передача URL-адресов, созданных из этого идентификатора в Outlook Web App не поддерживается.The passing of URLs that are created from this identifier to Outlook Web App is not supported. Идентификатор Outlook Web App применяется к Exchange 2007 и Exchange 2010.The Outlook Web App identifier is applicable to Exchange 2007 and Exchange 2010. Outlook Web App Exchange Online и версии Exchange, начиная с Exchange Server 2013, используют идентификаторы EWS.Outlook Web App for Exchange Online and versions of Exchange starting with Exchange Server 2013 uses EWS identifiers.

Операция ConvertId работает не так, как ожидалось при преобразовании идентификаторов общедоступных папок из идентификатора EWS в идентификатор магазина в Exchange Online и Exchange 2013.The ConvertId operation does not work as expected when converting public folder identifiers from the EWS identifier to the store identifier in Exchange Online and Exchange 2013. Вы можете вручную обновить идентификатор, который возвращается в качестве обходного решения.You can manually update the identifier that is returned as a workaround. Обновление идентификатора вручную:To manually update the identifier:

  1. В коде приложения определите, находится ли целевой элемент или папка в общедоступных папках.In your application code, determine whether the target item/folder is in a public folder.

  2. Декодировать строку идентификатора в коде Base64.Decode the Base64-encoded identifier string.

  3. Убедитесь, что для типа "byte" (21st byte) занося значение 7.Verify that the type byte (21st byte) has a value of 7. Значение 7 указывает, что идентификатор имеет неправильный формат.A value of 7 indicates that the identifier is in the incorrect format.

  4. Пропустите первые четыре bytes.Skip the first four bytes. Для них должно быть установлено значение 0.They must be set to zero.

  5. Обновите следующие 16 bytes с помощью следующего GUID: 1A447390AA6611CD9BC800AA002FC45AUpdate the next 16 bytes with the following GUID: 1A447390AA6611CD9BC800AA002FC45A

  6. Обновите следующий (введите) значение 9.Update the next byte (type byte) with a value of 9.

  7. Измените идентификатор на строку в коде Base64.Change the identifier to a Base64-encoded string.

Примечание

Операция ConvertId проверяет, имеет ли данный SMTP-адрес допустимый формат.The ConvertId operation validates that a given SMTP address has a valid format. Операция не определяет, представляет ли SMTP-адрес допустимый почтовый ящик.The operation does not determine whether an SMTP address represents a valid mailbox.

Операция ConvertId может использовать заглавные листы SOAP, перечисленные в следующей таблице.The ConvertId operation can use the SOAP headers that are listed in the following table.

Таблица 1. ConvertId operation SOAP headersTable 1. ConvertId operation SOAP headers

HeaderHeader ЭлементElement ОписаниеDescription
ОлицетворениеImpersonation
ExchangeImpersonationExchangeImpersonation
Определяет пользователя, которого подает клиентский приложение.Identifies the user whom the client application is impersonating. Это применимо к запросу.This is applicable to a request.
RequestVersionRequestVersion
RequestServerVersionRequestServerVersion
Определяет версию схемы для запроса на операцию. Это применимо к запросу.Identifies the schema version for the operation request This is applicable to a request.
ServerVersionServerVersion
ServerVersionInfoServerVersionInfo
Определяет версию сервера, который ответил на запрос.Identifies the version of the server that responded to the request. Это применимо к отклику.This is applicable to a response.

Пример запроса на операцию ConvertIdConvertId operation request example

В следующем примере запроса ConvertId показано, как преобразовать идентификатор EWS в Outlook Web App идентификатора.The following example of a ConvertId request shows how to convert from an EWS identifier to an Outlook Web App identifier.

Для работы этой операции необходимо установить для элемента RequestServerVersion в заголе SOAP Exchange2007_SP1 или более поздней версии.The RequestServerVersion element in the SOAP header must be set to Exchange2007_SP1 or later for this operation to work.

Примечание

Идентификатор элемента был сокращен для сохранения читаемости.The item identifier has been shortened to preserve readability.

<?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:Header>
    <t:RequestServerVersion Version="Exchange2010"/>
  </soap:Header>
  <soap:Body>
    <ConvertId xmlns="https://schemas.microsoft.com/exchange/services/2006/messages"
               xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types"
               DestinationFormat="OwaId">
      <SourceIds>
        <t:AlternateId Format="EwsId" Id="AAMkAGZhN2IxYTA0LWNiNzItN="
                       Mailbox="user1@example.com"/>
      </SourceIds>
    </ConvertId>
  </soap:Body>
</soap:Envelope>

Пример отклика операции ConvertIdConvertId operation response example

В следующем примере показан успешный ответ на запрос ConvertId.The following example shows a successful response to a ConvertId request. В этом примере ответа содержится Outlook Web App идентификатора.This response example contains an Outlook Web App identifier.

Примечание

Идентификатор Outlook Web App был сокращен для сохранения читаемости.The Outlook Web App identifier has been shortened to preserve readability.

<?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="1" 
                         MajorBuildNumber="191" MinorBuildNumber="0" 
                         Version="Exchange2010" 
                         xmlns:t="https://schemas.microsoft.com/exchange/services/2006/types" />
  </soap:Header>
  <soap:Body>
    <ConvertIdResponse xmlns="https://schemas.microsoft.com/exchange/services/2006/messages">
      <ResponseMessages>
        <ConvertIdResponseMessage ResponseClass="Success">
          <ResponseCode>NoError</ResponseCode>
          <AlternateId xsi:type="t:AlternateIdType" Format="OwaId" Id="RgAAAAAS2%2" 
                         Mailbox="user@example.com" />
        </ConvertIdResponseMessage>
      </ResponseMessages>
    </ConvertIdResponse>
  </soap:Body>
</soap:Envelope>

Пример отклика об ошибке операции ConvertIdConvertId operation error response example

В следующем примере показан ответ на запрос, содержащий неправильный тип формата идентификатора.The following example shows the response to a request that contains the wrong type of identifier format.

<?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>
    <ServerVersionInfo MajorVersion="8" MinorVersion="1" 
                       MajorBuildNumber="206" MinorBuildNumber="0"
                       Version="Exchange2010" 
                       xmlns="https://schemas.microsoft.com/exchange/services/2006/types" />
  </soap:Header>
  <soap:Body>
    <ConvertIdResponse xmlns="https://schemas.microsoft.com/exchange/services/2006/messages">
      <ResponseMessages>
        <ConvertIdResponseMessage ResponseClass="Error">
          <MessageText>Id is malformed.</MessageText>
          <ResponseCode>ErrorInvalidIdMalformed</ResponseCode>
          <DescriptiveLinkKey>0</DescriptiveLinkKey>
        </ConvertIdResponseMessage>
      </ResponseMessages>
    </ConvertIdResponse>
  </soap:Body>
</soap:Envelope>

Различия версийVersion differences

Формат идентификатора EWS изменился между первоначальной версией выпуска Exchange 2007 и Exchange 2007 Пакет обновления 1 (SP1).The EWS identifier format changed between the initial release version of Exchange 2007 and Exchange 2007 Service Pack 1 (SP1). Exchange Online в составе Office 365, Exchange Online и локальной версии Exchange, начиная с Exchange 2010, использует тот же формат идентификаторов, что и Exchange 2007 с sp1.Exchange Online as part of Office 365, Exchange Online, and on-premises versions of Exchange starting with Exchange 2010 use the same identifier format that Exchange 2007 SP1 uses.

Операция ConvertId преобразует идентификаторы общедоступных папок из идентификатора EWS в идентификатор магазина в Exchange 2007 и Exchange 2010.The ConvertId operation converts public folder identifiers from the EWS identifier to the store identifier in Exchange 2007 and Exchange 2010.

См. такжеSee also