Получение почты с сервера, использующего SSL

20.02.12

Интеграция - WEB-интеграция

Получаем почту с gmail, microsoft exchange server

Скачать файлы

Наименование Файл Версия Размер
EA_ARCHITECT_GETMAIL_COM
.exe 1,65Mb
66
.exe 1,65Mb 66 Скачать

Долго бился с проблемой получения почту в 1С, вот мой вариант решения:

 

Все знают о богатых настройках встроенного в платформу почтового клиента .

Я столкнулся с тем что с его помощью невозможно получить почту через ssl. После плясок с бубном по создания ssl-тунеля была найдена замечательная библиотека - EmailArchitect GetMail (приаттачена к публикации)

Она не только замечательно умеет работать с ssl, но и парсит html-код , ищет по разным полям и вообще ведёт себя лучшим образом. 

 

В данном примере я постарался затронуть основные функции getmail полезные для автоматизации работы с почтой:

1.Получение писем

2.Поиск 

3.Навигация по папкам

4.Чтение заголовков

//создаём коннект

oServer = Новый COMОбъект("EAGetMailObj.MailServer");
oClient = Новый COMОбъект ("EAGetMailObj.MailClient");
oClient.LicenseCode = "TryIt";
oServer.Server = "mail.mail.ru";
oServer.User ="vova.putin";
oServer.Password = "kremlin2012";
oServer.Protocol = 1;
oServer.SSLConnection = True;
oServer.Port = 993;
Попытка
oClient.Connect(oServer);
Исключение
КонецПопытки;


//если много папок заходим только в папку входящие
for each folder in oClient.Imap4Folders do
Если folder.Name = "INBOX" then
for each Subfolder in folder.SubFolders do
Если Subfolder.Name = "Рассылки" then
folder = Subfolder;
КонецЕсли;
enddo;
Прервать;
EndIf;
enddo;

oClient.SelectFolder(folder) ;

//отбираем все письма за сегодня
МассивЧисла=ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(Формат(ТекущаяДата(), "Л=en_GB; ДЛФ=DD")," ");
Число = МассивЧисла[0]+"-"+ВРег(лев(МассивЧисла[1],3))+"-"+МассивЧисла[2];

arInfo=oClient.SearchMail("ALL ON "+Число);
КоличествоПисем=arInfo.getupperbound()+1;
i=0;
Запрос = Новый запрос;

Запрос.Текст = "ВЫБРАТЬ
| Рассылки.Строка
|ИЗ
| РегистрСведений.Рассылки КАК МК_Рассылки";
тз = запрос.Выполнить().Выгрузить();

Если КоличествоПисем тз.Колонки.Добавить("Получено");

тз.ЗаполнитьЗначения(Ложь,"Получено");

//читаем все письма из коллекции

пока i<>КоличествоПисем Цикл
info = arInfo.getvalue(i);
oMail = oClient.GetMail(info);
i=i+1;
для каждого рассылка из тз Цикл
Если Найти(oMail.Subject,СокрЛП(рассылка.строка))>0 Тогда
рассылка.получено=Истина;
Прервать;
КонецЕсли;
КонецЦикла;
КонецЦикла;

КонецЕсли;

oClient.Quit();

 

 

См. также

Интеграция Альфа Авто 5 / Альфа Авто 6 и AUTOCRM / Инфотек

Сайты и интернет-магазины WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    15748    10    17    

11

Интеграция 1С — Битрикс24. Обмен задачами

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс24. Разработка имеет двухстороннюю синхронизацию 1С и Битрикс24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (8.3.18.1289). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    17552    6    15    

13

Интеграция с сервисом vetmanager

WEB-интеграция Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разрабатывалась для загрузки документов из Ветменеджер в 1С: Бухгалтерия 3.0

12000 руб.

02.02.2021    16361    42    49    

23

[Расширение] БОР-Навигатор.Культура

Зарплата Бюджетный учет WEB-интеграция Обмен с ГосИС Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бюджетный учет Платные (руб)

Расширение конфигурации, включающее в себя объекты, необходимые для подготовки и сдачи отчета "Штатная численность" системы "БОР-Навигатор.Культура" в программе "1С:Зарплата и кадры государственного учреждения", редакция 3.1.

8400 руб.

01.02.2019    25742    9    0    

7

Заполнение по ИНН или наименованию реквизитов контрагента по данным сайта ФНС

Обмен с ГосИС WEB-интеграция Платформа 1С v8.3 Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:Документооборот 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Обработка является альтернативой механизму, разработанному фирмой 1С и заполняющему реквизиты контрагента по ИНН или наименованию. Не требуется действующей подписки ИТС. Вызывается как внешняя дополнительная обработка, т.е. используется, непосредственно, из карточки контрагента. Заполнение по ИНН или наименованию реквизитов контрагента по данным сайта ФНС (egrul.nalog.ru) для БП 2.0, БП 3.0, БГУ 1.0, БГУ 2.0, УТ 10.3, УТ 11.x, КА 1.1, КА 2.x, УПП 1.x, ERP 2.x, УНФ 1.5, УНФ 1.6, УНФ 3.0, ДО 2.1

2400 руб.

28.04.2016    88585    160    215    

318
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. recon 38 20.02.12 13:14 Сейчас в теме
Как я понимаю, работать полноценно с IMAP она не умеет, нет методов копирования/перемещения писем по папкам. Еще, судя по примерам, в компоненте нет нормального обработчика ошибок.Данные об ошибке при подключении в 1С как то отображаются/обрабатываются ?
А так плюс компоненте что бесплатная, но пока что все равно пользуюсь http://www.chilkatsoft.com/imap-activex.asp
6. Intimatik 20 21.02.12 12:41 Сейчас в теме
(1) recon,

c imap работает полноценно, ошибки тоже обрабатываются.

Прошу прощения если пример куцый, постарался наиболее кратко описать основной функционал которым я пользуюсь :)
2. iov 406 20.02.12 13:17 Сейчас в теме
(0) Я не правильно прочитал или компонента стоит денег?
7. Intimatik 20 21.02.12 12:44 Сейчас в теме
(2) iov, жадность лечится периодической переустановкой :)

и SN можно найти на просторах интернетов
9. iov 406 21.02.12 13:13 Сейчас в теме
(7) Жадность руководителя - да. За каждую перестановку платить человеку зп или сделку...
Закон сохранения бабла гласит - недоплата гдето - вытекает в переплату после...
10. Intimatik 20 21.02.12 15:53 Сейчас в теме
(9) iov, безусловно. к сожалению практика общепринята...
3. recon 38 20.02.12 14:13 Сейчас в теме
Сорри, касаемо бесплатной это я погорячился. Она только Free Trial :( А так chilkatsoft на разработчика даже дешевле выходит.
4. andrewks 1368 20.02.12 15:13 Сейчас в теме
не, уж лучше через туннель. по крайней мере, бесплатно
5. andrewks 1368 20.02.12 15:25 Сейчас в теме
вот здесь есть интересная инфа, может, автор найдёт там более удачное решение:
http://www.coastrd.com/smtps
8. Intimatik 20 21.02.12 12:46 Сейчас в теме
(5) andrewks, не понял что имеется ввиду. это же просто RFC

сорри, прочитал дальше. особенно понравилось описание библитечки которая там используется :

cryptlib is a very complete encryption library developed by Peter Gutmann over a number of years. cryptlib allows even inexperienced programmers to easily add SLL (and encryption) to their software. We are very lucky to have such a high quality library available as open source. cryptlib uses industry-standard X.509, S/MIME, and ssh/SSL/TLS data formats, the resulting encrypted or signed data can be easily transported to other systems and processed there, and cryptlib itself runs on any commonly-user operating system. Multi-threaded cryptlib Operation cryptlib is re-entrant and completely thread-safe.
11. serega3333 21.02.12 15:55 Сейчас в теме
хорошая тема, как раз многие гуглом пользуются у клиента, можно кстати докрутить и сделать чтобы файлы хранились на гугле
12. rus128 2 22.02.12 11:35 Сейчас в теме
Не понял строку Если КоличествоПисем тз.Колонки.Добавить("Получено"); - Тогда уже не обязательно?
13. haous 2 03.10.12 15:55 Сейчас в теме
А для УТП для Украины 8.2 подойдет данная обработка?
14. ptr 3 03.10.12 16:10 Сейчас в теме
А можно сделать иначе.
Есть fetchmail, который умеет забирать почту у кого угодно и как угодно.
Есть exim, который эту почту умеет обрабатывать и посылать.
Для совсем ленивых, есть еще dbmail, который эту почту еще и в SQL базу данных положит.
Чего еще надобно?
Оставьте свое сообщение