POP3
Общее описание
Блок POP3 позволяет загружать письма с почтового сервера без шифрования. Подходит для простых сценариев, где безопасность передачи не является критичной.
Блок POP3 может использоваться в качестве:
- блока-получателя.
Настройка блока
В данном разделе описаны параметры блока POP3, которые необходимо заполнить при его настройке.
Базовые параметры
| Название в UI | Название атрибута | Описание | Значение по умолчанию | Тип данных |
|---|---|---|---|---|
| Host | host | Обязательный параметр Имя хоста почтового сервера. | Строка | |
| Connection | connection | Позволяет выбрать предсозданное подключение к конечной точке или создать новое с помощью визарда Connection Manager. | Список | |
| Description | description | Описание блока. | Строка | |
| Port | port | Порт почтового сервера. | Целое число | |
| Close Folder | closeFolder | Определяет, будет ли компонент закрывать папку почтового ящика после завершения очередного опроса (poll). При true (по умолчанию) папка закрывается после каждого опроса. Позволяет снизить накладные расходы на переподключение при частых опросах. | True | Логическое значение |
| Copy To | copyTo | Копирует обработанное почтовое сообщение в папку с указанным именем. Можно переопределить через заголовок с ключом copyTo. | Строка | |
| Decode Filename | decodeFilename | Если установлено true, для декодирования имени файла используется метод MimeUtility.decodeText (аналогично настройке JVM‑свойства mail.mime.encodefilename). | False | Логическое значение |
| Delete | delete | Удаляет сообщения после обработки (путем установки флага DELETED). Если false, устанавливается флаг SEEN. Можно переопределить через заголовок с ключом delete. | False | Логическое значение |
| Disconnect | disconnect | Определяет, должен ли потребитель отключаться после опроса. При включении заставляет подключаться при каждом опросе. | False | Логическое значение |
| Handle Failed Message | handleFailedMessage | Если потребитель почты не может получить сообщение, позволяет обработать возникшее исключение через обработчик ошибок потребителя. При включенном bridge‑обработчике ошибок обработку выполнит маршрутизатор. | False | Логическое значение |
| Max Messages Per Poll | maxMessagesPerPoll | Задает максимальное количество сообщений, которые будут обработаны за один цикл опроса (poll) почтового ящика. Позволяет избежать массовой загрузки всех писем при старте сервера или после долгого простоя. Возможные значения:
| -1 | Целое число |
| Mime Decode Headers | mimeDecodeHeaders | Включает прозрачное декодирование и развертывание заголовков почты в формате MIME | False | Логическое значение |
| Move To | moveTo | Указывает имя папки почтового ящика, в которую будет перемещено письмо после успешной обработки. Можно переопределить динамически через заголовок сообщения с ключом moveTo. | Строка | |
| Peek | peek | Если включено, письмо не помечается как «прочитанное» (SEEN) на сервере до завершения обработки. При ошибке обработки возможно «откат» — письмо останется непрочитанным. Применяется только к сообщениям типа IMAPMessage. | True | Логическое значение |
| Send Empty Message When | sendEmptyMessageWhenIdle | Если во время опроса почтового ящика не найдено новых писем, компонент отправляет пустое сообщение (без тела) вместо того, чтобы ничего не делать. Позволяет поддерживать активность маршрута и сигнализировать о «пустом» опросе последующим компонентам. | False | Логическое значение |
| Skip Failed Message | skipFailedMessage | Определяет поведение при ошибке обработки отдельного письма. Возможные значения:
| False | Логическое значение |
| Unseen | unseen | Определяет, будут ли обрабатываться только письма с флагом «непрочитанное» (UNSEEN) на сервере. Hо умолчанию (true) обрабатываются только новые (непрочитанные) письма. При false обрабатываются все письма в папке (включая уже прочитанные). | True | Логическое значение |
| Idempotent Repository | idempotentRepository | Позволяет организовать кластерную обработку почты из одного ящика. Репозиторий отслеживает, какие письма уже обработаны, чтобы избежать дублирования. Возможные значения:
| Строка | |
| Idempotent Repository Remove On Commit | idempotentRepositoryRemoveOnCommit | Определяет, удалять ли ID письма из репозитория после успешной обработки и коммита. Возможные значения:
| True | Логическое значение |
| Search Term | searchTerm | Фильтр для отбора писем по критериям (тема, отправитель, дата отправки и т. д.) через jakarta.mail.search.SearchTerm. Поддерживает множественные условия с префиксом searchTerm. | Строка | |
| Backoff Error Threshold | backoffErrorThreshold | Число последовательных ошибочных опросов, после которых активируется механизм отсрочки (backoffMultiplier). | Целое число | |
| Backoff Idle Threshold | backoffIdleThreshold | Число последовательных «пустых» опросов (без писем), после которых активируется механизм отсрочки (backoffMultiplier). | Целое число | |
| Backoff Multiplier | backoffMultiplier | Коэффициент, определяющий число опросов, которые будут пропущены после серии ошибок/простоя (активируется при достижении backoffErrorThreshold/backoffIdleThreshold). | Целое число | |
| Delay | delay | Интервал (в миллисекундах) между последовательными опросами почтового сервера. | 60000 | Длинное целое число |
| Greedy | greedy | Если true, опрос выполняется немедленно после завершения предыдущего, если было получено хотя бы одно письмо. | False | Логическое значение |
| Initial Delay | initialDelay | Время (в миллисекундах) до первого опроса почтового сервера после запуска маршрута. | 1000 | Длинное целое число |
| Repeat Count | repeatCount | Максимальное число запусков опроса. Возможные значения:
| 0 | Целое число |
| Run Logging Level | runLoggingLevel | Уровень логирования старта и финиша инициации потока. Возможные значения:
| TRACE | Список |
| Scheduled Executor Service | scheduledExecutorService | Позволяет задать пользовательский или общий пул потоков (ScheduledExecutorService) для потребителя. По умолчанию каждый потребитель использует собственный однопоточный пул. | Строка | |
| Scheduler | scheduler | Указывает тип планировщика для опроса: spring, quartz или none (встроенный планировщик). | none | String |
| Scheduler Properties | schedulerProperties | Дополнительные свойства для настройки кастомного планировщика либо Quartz/Spring‑планировщика. Поддерживает множественные значения с префиксом scheduler. | Строка | |
| Start Scheduler | startScheduler | Определяет следует ли автоматически запускать планировщик. | True | Логическое значение |
| Time Unit | timeUnit | Единица измерения времени для параметров Initial Delay и Delay. Возможные значения:
| MILLISECONDS | Список |
| Use Fixed Delay | useFixedDelay | Фиксированная задержка или фиксированная частота выполнения. | True | Логическое значение |
| Sort Term | sortTerm | Определяет порядок сортировки сообщений при опросе почтового ящика. Нативно поддерживается для IMAP (использует возможности сервера). Возможные критерии: по дате (новые/старые), теме, отправителю и т. д. | Строка |
Расширенные настройки
| Название в UI | Название атрибута | Описание | Значение по умолчанию | Тип данных |
|---|---|---|---|---|
| Bridge Error Handler | bridgeErrorHandler | Определяет, должен ли коннектор передавать ошибки, возникающие при получении сообщений, в обработчик ошибок (Error Handler). | False | Логическое значение |
| Exception Handler | exceptionHandler | Позволяет указать пользовательский обработчик исключений (ExceptionHandler) для получателя . По умолчанию получатель обрабатывает исключения самостоятельно: они логируются на уровне WARN или ERROR и игнорируются. При указании кастомного обработчика можно реализовать индивидуальную логику реагирования на ошибки (логирование, повторные попытки, перезапуск и т. д.). | Строка | |
| Exchange Pattern | exchangePattern | Задает шаблон взаимодействия между компонентами в интеграционном потоке. Определяет способ передачи сообщений и ожидания ответа. Возможные значения:
| Строка | |
| Fail On Duplicate File Attachment | failOnDuplicateFileAttachment | Определяет, прерывать ли обработку email‑сообщения, если в нем есть вложения с одинаковыми именами файлов. Возможные значения:
| False | Логическое значение |
| Fetch Size | fetchSize | Задает максимальное количество сообщений, которые будут получены за один опрос (poll) почтового сервера. Позволяет избежать перегрузки почтового сервера, если в папке много сообщений. Возможные значения:
| -1 | Целое число |
| Folder Name | folderName | Определяет папку на почтовом сервере, которая будет опрашиваться для получения сообщений. Параметр задает точное имя папки, как оно отображается в почтовом клиенте. Возможные значения:
| INBOX | Строка |
| Generate Missing Attachment Names | generateMissingAttachmentNames | Задает способ генерации имени файла для вложения, если оригинальное имя отсутствует. Установите значение uuid, чтобы присвоить файлу уникальный идентификатор (UUID) в качестве имени. | Строка | |
| Handle Duplicate Attachment Names | handleDuplicateAttachmentNames | Определяет стратегию обработки вложений с повторяющимися именами файлов. Возможные значения:
| Строка | |
| Mail Uid Generator | mailUidGenerator | Позволяет задать пользовательскую логику для генерации уникального идентификатора (UUID) почтового сообщения. Используется, когда стандартной схемы генерации недостаточно. | Строка | |
| Map Mail Message | mapMailMessage | Определяет, как будет представлено полученное почтовое сообщение. Возможные значения:
| True | Логическое значение |
| Poll Strategy | pollStrategy | Позволяет задать пользовательскую логику обработки ошибок, возникающих до создания Exchange во время опроса почтового ящика. Реализуется через интерфейс org.apache.camel.PollingConsumerPollingStrategy. | Строка | |
| Post Process Action | postProcessAction | Задает действие для постобработки почтового ящика после завершения основной обработки сообщений (например, пометить прочитанными, переместить в другую папку, удалить). Реализуется через MailBoxPostProcessAction. | Строка | |
| Additional Java Mail Properties | additionalJavaMailProperties | Многозначный параметр. Дополнительные свойства Java mail, которые дополнят или переопределят любые свойства по умолчанию, установленные на основе всех других опций. Это подходит для случаев, где необходимо добавить некоторые специальные опции, но вы хотите сохранить остальные как есть. | Строка | |
| Alternative Body Header | alternativeBodyHeader | Ключ заголовка входящего сообщения, который содержит альтернативное тело электронного письма. Например, если вы отправляете письма в формате text/html и хотите предоставить альтернативное тело письма для почтовых клиентов, не поддерживающих HTML, задайте альтернативное тело письма с этим ключом в качестве заголовка. | CamelMailAlternativeBody | Строка |
| Attachments Content Transfer Encoding Resolver | attachmentsContentTransferEncodingResolver | Пользовательский интерфейс для определения того, какую кодировку content-transfer-encoding использовать для вложений. | Строка | |
| Authenticator | authenticator | Аутентификатор для входа. Если он задан, то пароль и имя пользователя игнорируются. Может использоваться для токенов, которые могут истечь и поэтому должны считываться динамически. | Строка | |
| Binding | binding | Задает привязку (binding), используемую для преобразования сообщения движка в почтовое сообщение и обратно. | Строка | |
| Connection Timeout | connectionTimeout | Таймаут подключения в миллисекундах. | 30000 | Целое число |
| Content Type | contentType | Тип содержимого почтового сообщения (text/plain, text/html, и т.д.). Используйте text/html для HTML-писем. Важно: Чтобы определить contentType, который придет в почту, надо знать приоритеты в заголовках. Первый приоритет имеют настройки блока Set Header, этот блок «перетирает» все остальные настройки. Заголовок запроса HTTP Trigger имеет второй приоритет и отменяет все остальные, кроме настроек блока Set Header. Заголовок из Content Type имеет наименьший приоритет и будет использоваться только в том случае, если не сконфигурирован блок Set Header и заголовок из HTTP Trigger. | text/plain | Строка |
| Content Type Resolver | contentTypeResolver | Распознаватель (resolver) для определения Content-Type для вложений файлов. | Строка | |
| Debug Mode | debugMode | Включает режим отладки в базовом почтовом фреймворке. Фреймворк SUN Mail по умолчанию логирует отладочные сообщения в System.out. | False | Логическое значение |
| Header Filter Strategy | headerFilterStrategy | Пользовательская стратегия org.apache.camel.spi.HeaderFilterStrategy для фильтрации заголовков. | Строка | |
| Ignore Unsupported Charset | ignoreUnsupportedCharset | Опция, позволяющая игнорировать неподдерживаемую локальной JVM кодировку при отправке писем. Если кодировка не поддерживается, то charset=XXX (где XXX представляет неподдерживаемую кодировку) удаляется из content-type, и используется кодировка платформы по умолчанию. | False | Логическое значение |
| Ignore Uri Scheme | ignoreUriScheme | Опция определяет, нужно ли игнорировать протокол, указанный в начале URI, или использовать его для определения транспорта. Другими словами, это переключатель: "брать протокол из URI" или "не брать". Возможные значения:
| False | Логическое значение |
| Java Mail Properties | javaMailProperties | Устанавливает параметры JavaMail. Удалит все свойства по умолчанию и будет использовать только те, которые предусмотрены для этого метода. | Строка | |
| Session | session | Почтовая сессия, которая должна использоваться для всех почтовых взаимодействий. Это подходит для случаев, где почтовые сессии создаются и управляются каким-либо другим ресурсом, например, контейнером JavaEE.При использовании пользовательской почтовой сессии имя хоста и порт будут браться из почтовой сессии, если они настроены. | Строка | |
| Use Inline Attachments | useInlineAttachments | Управляет способом извлечения вложений из email‑сообщений. Возможные значения:
| False | Логическое значение |
Настройки безопасности
| Название в UI | Название атрибута | Описание | Значение по умолчанию | Тип данных |
|---|---|---|---|---|
| Password | password | Пользовательский пароль. | Строка | |
| Ssl Context Parameters | sslContextParameters | Если параметр определен, он применяется перед другими параметрами конечной точки SSL. | Строка | |
| Username | username | Имя пользователя. | Строка |