Адаптер опрашивает почтовый сервер с регулярным интервалом, извлекает сообщения из указанных папок,
преобразует все сообщения в бизнес-объекты, а затем отправляет бизнес-объекты на сервер приложений.
Необходимые папки для обработки входящих сообщений
Следующие папки должны присутствовать во
всех точках опроса. Если адаптер будет проводить опрос в нескольких точках, данные папки должны быть в каждой из них.
Необходимые
папки:
- Папка Обрабатывается - находится на локальном диске и содержит сообщения, которые помечены как обрабатывающиеся в
таблице событий.
- Папка Опрос - одна или несколько папок почтового сервера, которые опрашиваются на предмет наличия новых сообщений.
Поддерживаемые протоколы для получения входящих сообщений
Некоторые почтовые серверы
поддерживают несколько протоколов входящей электронной почты. Разница между протоколами и особенности работы
адаптера с каждым из них приведены в следующей таблице и далее в этой главе.
Табл. 1. Разница между протоколами IMAP и POP3IMAP |
POP3 |
Поддерживает существование нескольких почтовых папок в почтовом ящике. |
Поддерживает только один почтовый ящик (с названием "Входящие") для пользователя. |
Позволяет сохранить копию сообщения на почтовом сервере после получения. |
Допускает одноразовый просмотр. Сообщения удаляются с сервера после загрузки их клиентом. |
Получение сообщений по протоколу IMAP
Если вы пользуетесь протоколом IMAP для обработки
входящих сообщений, адаптер выполняет следующие действия:
- Адаптер опрашивает почтовые папки с регулярным интервалом и заносит все непрочитанные сообщения в протокол в
качестве событий таблицы событий. С помощью свойства PollFolders спецификации активации можно изменить список
просматриваемых папок.
- Если вы укажете несколько папок почтового сервера в свойстве PollFolders, адаптер будет последовательно опрашивать
все указанные папки.
- Условия поиска представляют собой параметры отбора сообщений с почтового сервера.
Адаптер обрабатывает все сообщения, удовлетворяющие указанным условиям
- Адаптер записывает полученные сообщения в папку Обрабатываются в формате RFC822. Файлам с сообщениями присваиваются
имена, соответствующие значению в поле Message-ID. После записи в папку InProgress сообщение удаляется с
почтового сервера.
- Адаптер преобразует каждое сообщение электронной почты в экземпляр бизнес-объекта и доставляет его в приложение
предприятия.
- Адаптер удаляет обработанные сообщения из папки Обрабатываются и при необходимости архивирует их.
Получение сообщений по протоколу POP3
Если вы пользуетесь протоколом POP3 для обработки
входящих сообщений, адаптер выполняет следующие действия:
- Адаптер опрашивает папку Входящие с регулярным интервалом и заносит все непрочитанные сообщения в протокол в
качестве событий таблицы событий.
- Если заданы условия поиска, адаптер получает с сервера все непрочитанные сообщения, удовлетворяющие условиям
поиска.
Прим.: Если условия поиска не заданы, по умолчанию обрабатывается вся непрочитанная почта.
- Адаптер записывает полученные сообщения в папку Обрабатываются в формате RFC822. Файлам с сообщениями присваиваются
имена, соответствующие значению в поле Message-ID.
- После прочтения адаптером сообщения электронной почты удаляются.
- Адаптер преобразует каждое сообщение электронной почты в экземпляр бизнес-объекта и доставляет его в приложение
предприятия.
- Адаптер удаляет обработанные сообщения из папки Обрабатываются и при необходимости архивирует их.
Архивация
Адаптер может архивировать как успешно обработанные сообщения электронной почты,
так и сообщения, при обработке которых возникли ошибки. Для этого нужны следующие папки:
- Папка Архив – папка файловой системы, в которой архивируются успешно обработанные сообщения.
- Папка Ошибки - папка файловой системы, в которой архивируются сообщения, при обработке которых возникли
ошибки.
Если задано свойство ArchiveFolder, вся успешно обработанная почта перемещается из папки
Обрабатывается в папку Архив. Если это свойство не задано, вся успешно обработанная почта удаляется из папки
Обрабатывается.
Если задано свойство FailedEventsFolder, вся почта, при обработке которой возникли ошибки,
перемещается из папки Обрабатывается в папку Ошибки. Если это свойство не задано, вся почта, при обработке которой
возникли ошибки, удаляется из папки Обрабатывается.