Интернет почтовый профиль. Создает профиль переданной учетной записи для подключения к почтовому серверу.
// Создает профиль переданной учетной записи для подключения к почтовому серверу.
//
// Параметры:
// УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЭлектроннойПочты - учетная запись.
//
// Возвращаемое значение:
// ИнтернетПочтовыйПрофиль - профиль учетной записи;
// Неопределено - не удалось получить учетную запись по ссылке.
//
Функция ИнтернетПочтовыйПрофиль(УчетнаяЗапись, ДляПолучения = Ложь) Экспорт
ТекстЗапроса =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| УчетныеЗаписиЭлектроннойПочты.СерверВходящейПочты КАК АдресСервераIMAP,
| УчетныеЗаписиЭлектроннойПочты.ПортСервераВходящейПочты КАК ПортIMAP,
| УчетныеЗаписиЭлектроннойПочты.ИспользоватьЗащищенноеСоединениеДляВходящейПочты КАК ИспользоватьSSLIMAP,
| УчетныеЗаписиЭлектроннойПочты.Пользователь КАК ПользовательIMAP,
| УчетныеЗаписиЭлектроннойПочты.СерверВходящейПочты КАК АдресСервераPOP3,
| УчетныеЗаписиЭлектроннойПочты.ПортСервераВходящейПочты КАК ПортPOP3,
| УчетныеЗаписиЭлектроннойПочты.ИспользоватьЗащищенноеСоединениеДляВходящейПочты КАК ИспользоватьSSLPOP3,
| УчетныеЗаписиЭлектроннойПочты.Пользователь КАК Пользователь,
| УчетныеЗаписиЭлектроннойПочты.СерверИсходящейПочты КАК АдресСервераSMTP,
| УчетныеЗаписиЭлектроннойПочты.ПортСервераИсходящейПочты КАК ПортSMTP,
| УчетныеЗаписиЭлектроннойПочты.ИспользоватьЗащищенноеСоединениеДляИсходящейПочты КАК ИспользоватьSSLSMTP,
| УчетныеЗаписиЭлектроннойПочты.ТребуетсяВходНаСерверПередОтправкой КАК POP3ПередSMTP,
| УчетныеЗаписиЭлектроннойПочты.ПользовательSMTP КАК ПользовательSMTP,
| УчетныеЗаписиЭлектроннойПочты.ВремяОжидания КАК Таймаут,
| УчетныеЗаписиЭлектроннойПочты.ПротоколВходящейПочты КАК Протокол
|ИЗ
| Справочник.УчетныеЗаписиЭлектроннойПочты КАК УчетныеЗаписиЭлектроннойПочты
|ГДЕ
| УчетныеЗаписиЭлектроннойПочты.Ссылка = &Ссылка";
Запрос = Новый Запрос(ТекстЗапроса);
Запрос.УстановитьПараметр("Ссылка", УчетнаяЗапись);
Выборка = Запрос.Выполнить().Выбрать();
Результат = Неопределено;
Если Выборка.Следующий() Тогда
СписокСвойствIMAP = "АдресСервераIMAP,ПортIMAP,ИспользоватьSSLIMAP,ПользовательIMAP";
СписокСвойствPOP3 = "АдресСервераPOP3,ПортPOP3,ИспользоватьSSLPOP3,Пользователь";
СписокСвойствSMTP = "АдресСервераSMTP,ПортSMTP,ИспользоватьSSLSMTP,ПользовательSMTP";
УстановитьПривилегированныйРежим(Истина);
Пароли = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(УчетнаяЗапись, "Пароль,ПарольSMTP");
УстановитьПривилегированныйРежим(Ложь);
Результат = Новый ИнтернетПочтовыйПрофиль;
Если ДляПолучения Тогда
Если Выборка.Протокол = "IMAP" Тогда
ТребуемыеСвойства = СписокСвойствIMAP;
Результат.ПарольIMAP = Пароли.Пароль;
Иначе
ТребуемыеСвойства = СписокСвойствPOP3;
Результат.Пароль = Пароли.Пароль;
КонецЕсли;
Иначе
ТребуемыеСвойства = СписокСвойствSMTP;
Результат.ПарольSMTP = Пароли.ПарольSMTP;
Если Выборка.Протокол <> "IMAP" И Выборка.POP3ПередSMTP Тогда
ТребуемыеСвойства = ТребуемыеСвойства + ",POP3ПередSMTP," + СписокСвойствPOP3;
Результат.Пароль = Пароли.Пароль;
КонецЕсли;
Если Выборка.Протокол = "IMAP" Тогда
ТребуемыеСвойства = ТребуемыеСвойства + "," + СписокСвойствIMAP;
Результат.ПарольIMAP =Пароли.Пароль;
КонецЕсли;
КонецЕсли;
ТребуемыеСвойства = ТребуемыеСвойства + ",Таймаут";
ЗаполнитьЗначенияСвойств(Результат, Выборка, ТребуемыеСвойства);
КонецЕсли;
Возврат Результат;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ИнтернетПочтовоеСообщениеИзПисьма (БСП)
ЗаполнитьИнтернетПочтовыеАдреса (БСП)
ИспользуетсяПочтовыйКлиент (БСП)
ОтправитьПочтовоеСообщение (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)