Вопросы и ответы по интеграции сервера BOOCO с другими ИТ-системами
<aside> ❗ Для версий BOOCO Astra (v 2.x) и BOOCO Meteor (v 1.x)
</aside>
ПК с установленным Postman, который имеет доступ к MS Exchange/EWS
Поддержка Basic-авторизации в EWS (Postman поддерживает также NTLM в виде beta)
Учетная запись в MS Exchange
<aside> 💡 Можно также использовать утилиту curl — в идеале непосредственно с хоста, где установлен сервер BOOCO, или еще лучше из контейнера.
</aside>
В Postman:
Введите адрес Exchange-сервера и выберите метод POST.
На вкладке Authorization выберите Basic Auth и введите логин и пароль.
На вкладке Headers укажите:
Accept = text/xml
Content-Type = text/xml
На вкладке Body:
выберите формат raw и тип xml;
скопируйте и вставьте текст запроса:
<soap:Envelope
xmlns:soap="<http://schemas.xmlsoap.org/soap/envelope/>"
xmlns:xsi="<http://www.w3.org/2001/XMLSchema-instance>"
xmlns:m="<http://schemas.microsoft.com/exchange/services/2006/messages>"
xmlns:t="<http://schemas.microsoft.com/exchange/services/2006/types>"
>
<soap:Header>
<t:RequestServerVersion Version="Exchange2015" />
</soap:Header>
<soap:Body>
<m:FindItem Traversal="Shallow">
<m:ItemShape>
<t:BaseShape>IdOnly</t:BaseShape>
<t:AdditionalProperties>
<t:FieldURI FieldURI="calendar:AppointmentState" />
</t:AdditionalProperties>
</m:ItemShape>
<m:CalendarView
MaxEntriesReturned="1000"
StartDate="2024-07-19T12:22:29.906Z"
EndDate="2024-07-29T12:22:29.906Z"
/>
<m:ParentFolderIds>
<t:DistinguishedFolderId Id="calendar">
<t:Mailbox>
<t:EmailAddress>[email protected]</t:EmailAddress>
</t:Mailbox>
</t:DistinguishedFolderId>
</m:ParentFolderIds>
</m:FindItem>
</soap:Body>
</soap:Envelope>
замените значения в полях EmailAddress и Version на те, которые используются у вас (можно также отредактировать StartDate и EndDate).
Выполните запрос.
Пример ответа:
<?xml version="1.0" encoding="utf-8" ?>
<s:Envelope xmlns:s="<http://schemas.xmlsoap.org/soap/envelope/>">
<s:Header>
<h:ServerVersionInfo
MajorVersion="15"
MinorVersion="2"
MajorBuildNumber="1544"
MinorBuildNumber="11"
Version="V2017_07_11"
xmlns:h="<http://schemas.microsoft.com/exchange/services/2006/types>"
xmlns="<http://schemas.microsoft.com/exchange/services/2006/types>"
xmlns:xsd="<http://www.w3.org/2001/XMLSchema>"
xmlns:xsi="<http://www.w3.org/2001/XMLSchema-instance>"
/>
</s:Header>
<s:Body
xmlns:xsi="<http://www.w3.org/2001/XMLSchema-instance>"
xmlns:xsd="<http://www.w3.org/2001/XMLSchema>"
>
<m:FindItemResponse
xmlns:m="<http://schemas.microsoft.com/exchange/services/2006/messages>"
xmlns:t="<http://schemas.microsoft.com/exchange/services/2006/types>"
>
<m:ResponseMessages>
<m:FindItemResponseMessage ResponseClass="Success">
<m:ResponseCode>NoError</m:ResponseCode>
<m:RootFolder TotalItemsInView="0" IncludesLastItemInRange="true">
<t:Items />
</m:RootFolder>
</m:FindItemResponseMessage>
</m:ResponseMessages>
</m:FindItemResponse>
</s:Body>
</s:Envelope>