Имя: Пароль:
1C
1С v8
Получение данных с сервера Exchange с помощью EWS.
,
0 sound
 
21.07.16
14:16
Добрый день!

Есть сервер Exchange. Как получать и отправлять с него почту средствами EWS (Echange Web Services) вроде разобрался, код типа такого:

XMLHTTP = Новый COMОбъект("MSXML2.XMLHTTP");
XMLHTTP.open("POST", стрURL, 0, UserName, Passwd);
XMLHTTP.setRequestHeader("Content-Type", "text/xml");    
XMLHTTP.send(strXML);

С параметрами UserName и Passwd понятно вопросов нет. Остается правильно написать строку с XML и поместить в переменную стрURL.

Например для выборки писем с конкретной учетки делаю так:

xmlВыборкаMessage = oXMLHTTP.responseXML.SelectNodes("//t:Message");
Для НомерПисьма = 1 По xmlВыборкаMessage.Length Цикл
    Письмо = xmlВыборкаMessage.item(НомерПисьма - 1);
    Прочитано = Письмо.SelectNodes("t:IsRead").item(0).text;
    Если Прочитано Тогда Продолжить; КонецЕсли;
    Тема = Письмо.SelectNodes("t:Subject").item(0).text;
    ItemId = Письмо.SelectNodes("t:ItemId").item(0);
    Id = ItemId.getAttribute("Id");
    ChangeKey = ItemId.getAttribute("ChangeKey");
//.........................................
КонецЦикла;


Ну и сам текст запроса:

    strXML =
    "<?xml version=""1.0"" encoding=""utf-8""?>
    |<soap:Envelope xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"";
    | xmlns:m=""http://schemas.microsoft.com/exchange/services/2006/messages"";
    | xmlns:t=""http://schemas.microsoft.com/exchange/services/2006/types"">;
    |<soap:Body>
    |    <m:FindItem Traversal=""Shallow"">
    |        <m:ItemShape>
    |            <t:BaseShape>Default</t:BaseShape>
    //|            <t:BaseShape>IdOnly</t:BaseShape>
    |            <t:AdditionalProperties>
    |                  <t:FieldURI FieldURI=""item:DateTimeSent""/>
    |            </t:AdditionalProperties>
    |        </m:ItemShape>
    |        <m:IndexedPageItemView MaxEntriesReturned=""10"" BasePoint=""Beginning"" Offset=""0""/>
    |        <m:Restriction>
    |            <t:IsEqualTo>
    |                <t:FieldURI FieldURI=""message:IsRead""/>
    |                    <t:FieldURIOrConstant>
    |                         <t:Constant Value=""false""/>
    |                    </t:FieldURIOrConstant>
    |            </t:IsEqualTo>
    |        </m:Restriction>
    |        <m:SortOrder>
    |            <t:FieldOrder Order = ""Ascending"">
    //|            <t:FieldOrder Order = ""Descending"">
    |                <t:FieldURI FieldURI=""item:DateTimeSent""/>
    |            </t:FieldOrder>
    |        </m:SortOrder>
    |";


Теперь собственно вопрос: хочу из Exchange вытянуть данные из адресной книги или из карточек учеток или где они там живут (в первую очередь нужны почтовые адреса и телефоны). Понимаю, что нужно всего лишь правильно составить strXML, но с MSDN что-то плохо дружу. Есть у кого опыт такой? Поскажите плиз...
1 sound
 
21.07.16
15:33
То ли все спят, то ли чо-то страшное спросил
2 sound
 
21.07.16
16:40
UP
3 sound
 
21.07.16
17:32
чйорт, а так рассчитывал что кто-нить в курсе куда копать ( #Пичаль
4 Serginio1
 
21.07.16
17:35
5 sound
 
21.07.16
18:23
(4) Спасибо конечно, но про msdn я сразу оговорился, а .Net тоже не понял при чем
6 Serginio1
 
21.07.16
18:25
(5) Там примеры на C#. Казалось бы при чем тут .Net.
Есть готовые классы для работы с EWS
7 sound
 
21.07.16
18:27
(6) для меня это слишком избыточно. Наверно по хорошему это было бы неплохо все изучить и понять. Меня же пока интересует вполне определенный вопрос: как должен выглядеть xml файлик для получения данных о телефонах и емайлах.
8 sound
 
21.07.16
18:30
(6) Видимо ContactsFolder class нужен если я правильно понимаю
9 sound
 
21.07.16
18:35
типа что то такое наверно надо курить https://msdn.microsoft.com/en-us/library/office/jj220498(v=exchg.80).aspx
10 КМ155
 
21.07.16
18:43
(7)[Меня же пока интересует вполне определенный вопрос: как должен выглядеть xml файлик для получения данных о телефонах и емайлах]
шансы добиться этого от мисты равны нулю
11 Serginio1
 
21.07.16
22:50
(8) Возможно. Я с EWS не работал.
12 Serginio1
 
22.07.16
00:11
13 sound
 
22.07.16
09:02
(12) ага спасибки, посмотрю, мож чо нарою
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.