Exchange Web Services (EWS) — это специальный протокол, разработанный MS, и предназначенный для управления почтой и другими компонентами составляющими MS Exchange. В основе протокола лежит XML.
Для того чтобы отправить письмо с помощью Exchange Web Services (EWS), я использовал "HTTPСоединение" с установленным признаком "ИспользоватьАутентификациюОС".
&НаКлиенте
Процедура ОтправитьПисьмо(Команда)
ТекстHTML = "<?xml version=""1.0"" encoding=""utf-8""?>
|<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""
| xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">
| <soap:Header>
| <t:RequestServerVersion Version=""Exchange2010_SP2"" />
| </soap:Header>
| <soap:Body>
| <m:CreateItem MessageDisposition="""+?(СохранитьВЧерновик,"SaveOnly","SendAndSaveCopy")+""">
| <m:SavedItemFolderId>
| <t:DistinguishedFolderId Id="""+?(СохранитьВЧерновик,"drafts","sentitems")+""" />
| </m:SavedItemFolderId>
| <m:Items>
| <t:Message>
| <t:Subject>"+Тема+"</t:Subject>
| <t:Body BodyType=""HTML"">"+Текст+"</t:Body>
// ВЛОЖЕНИЕ
|<t:Attachments>
| <t:FileAttachment>
| <t:Name>FileAttachment.txt</t:Name>
| <t:IsInline>false</t:IsInline>
| <t:IsContactPhoto>false</t:IsContactPhoto>
| <t:Content>VGhpcyBpcyBhIGZpbGUgYXR0YWNobWVudC4=</t:Content>
| </t:FileAttachment>
|</t:Attachments>
// --- КОНЕЦ ВЛОЖЕНИЯ
| <t:ToRecipients>
| <t:Mailbox>
| <t:EmailAddress>"+ПолучательПисьма+"</t:EmailAddress>
| </t:Mailbox>
// ЕЩЕ ОДИН ПОЛУЧАТЕЛЬ
//| <t:Mailbox>
//| <t:EmailAddress>"+ПолучательПисьма+"</t:EmailAddress>
//| </t:Mailbox>
// -- КОНЕЦ ПОЛУЧАТЕЛИ
| </t:ToRecipients>
| </t:Message>
| </m:Items>
| </m:CreateItem>
| </soap:Body>
|</soap:Envelope>";
Защищенное = Новый ЗащищенноеСоединениеOpenSSL();
Соединение = Новый HTTPСоединение(АдресПочтовогоСервера,,,,,,Защищенное,Истина);
Заголовки = Новый Соответствие();
Заголовки.Вставить("Content-Type", "text/xml");
ЗапросHTTP = Новый HTTPЗапрос(ПутьКВебСервисуEWS,Заголовки);
ЗапросHTTP.УстановитьТелоИзСтроки(ТекстHTML,КодировкаТекста.UTF8);
Результат = Соединение.ОтправитьДляОбработки(ЗапросHTTP);
ОтветЗапроса = Результат.ПолучитьТелоКакСтроку();
КонецПроцедуры
Пояснение к переменным:
СохранитьВЧерновик = Ложь; // Булево, определяем что делать с письмом (отправлять или сохранить в черновик)
Тема = "Тема письма"; // Тема письма
Текст = "Текст письма"; // Текст электронного письма
ПолучательПисьма = "test@test.ru"; // электронный адрес получателя
АдресПочтовогоСервера = "test.com"; // Адрес почтового сервера
ПутьКВебСервисуEWS = "/EWS/Exchange.asmx"; // путь к веб сервису (обычно он всегда именно такой как в примере)
Тестировалось на платформе 1С:Предприятие 8.3 (8.3.13.1644)