218.3.
Mail 端点使用 URI 语法进行配置:
imap:host:port
imap:host:port
使用以下路径和查询参数:
218.3.1. 路径参数(2 参数): 复制链接链接已复制到粘贴板!
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
主机 | 需要 邮件服务器主机名 | 字符串 | |
端口 | 邮件服务器的端口号 | int |
218.3.2. 查询参数(62 参数): 复制链接链接已复制到粘贴板!
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
closeFolder (consumer) | 消费者是否应该在轮询后关闭文件夹。将这个选项设置为 false,并且也具有 disconnect=false,然后消费者在轮询之间保持文件夹打开。 | true | 布尔值 |
copyTo (consumer) | 在处理邮件后,可以使用指定名称将其复制到邮件文件夹中。您可以使用带有键 copyTo 的标头覆盖此配置值,允许您将消息复制到运行时配置的文件夹名称。 | 字符串 | |
delete (consumer) | 处理消息后删除消息。这可以通过在邮件邮件中设置 DELETED 标志来完成。如果为 false,则设置 SEEN 标志。从 Camel 2.10 开始,您可以通过设置带有 key delete 的标头来覆盖此配置选项,以确定是否应删除邮件。 | false | 布尔值 |
disconnect (consumer) | 消费者在轮询后是否应断开。如果启用,它会强制 Camel 在每个轮询上进行连接。 | false | 布尔值 |
handleFailedMessage (consumer) | 如果邮件消费者无法检索给定的邮件邮件,则此选项允许处理消费者的错误处理程序造成的异常。通过在消费者上启用网桥错误处理程序,Camel 路由错误处理程序可以改为处理异常。默认行为是消费者抛出异常,并且批处理中没有邮件可由 Camel 路由。 | false | 布尔值 |
maxMessagesPerPoll (consumer) | 指定每个轮询要收集的最大消息数。默认情况下,不会设置最大值。可用于设置限制,例如 1000 个,以避免在服务器启动时下载数千个文件。设置 0 或 negative 值来禁用这个选项。 | int | |
mimeDecodeHeaders (consumer) | 这个选项为邮件标头启用透明 MIME 解码和取消折叠。 | false | 布尔值 |
peek (consumer) | 在处理邮件之前,将 javax.mail.Message 标记为 peeked。这只适用于 IMAPMessage 消息类型。通过使用 peek,邮件不会在邮件服务器上标记为 SEEN,如果 Camel 中存在错误处理,则我们就可以回滚邮件。 | true | 布尔值 |
sendEmptyMessageWhenIdle (consumer) | 如果轮询使用者没有轮询任何文件,您可以启用此选项来发送空消息(无正文)。 | false | 布尔值 |
skipFailedMessage (consumer) | 如果邮件使用者无法检索给定的邮件邮件,则此选项允许跳过邮件并继续进行 来检索下一个邮件。默认行为是消费者抛出异常,并且批处理中没有邮件可由 Camel 路由。 | false | 布尔值 |
unseen (consumer) | 是否仅受不可预见的邮件的限制。 | true | 布尔值 |
exceptionHandler (consumer) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。 | ExceptionHandler | |
exchangePattern (consumer) | 在消费者创建交换时设置交换模式。 | ExchangePattern | |
fetchSize (consumer) | 设置在轮询期间要消耗的最大消息数。如果邮箱文件夹包含大量邮件,这可用于避免过载邮件服务器。默认值 -1 表示没有获取大小,所有信息都会被使用。将值设为 0 是一个特殊角写,其中 Camel 将不会消耗任何消息。 | -1 | int |
folderName (consumer) | 要轮询的文件夹。 | INBOX | 字符串 |
mailUidGenerator (consumer) | 可插拔 MailUidGenerator,允许使用自定义逻辑来生成邮件邮件的 UUID。 | MailUidGenerator | |
mapMailMessage (consumer) | 指定 Camel 是否应该将接收的邮件映射到 Camel body/headers。如果设置为 true,邮件邮件的正文将映射到 Camel IN 邮件的正文,邮件标头映射到 IN 标头。如果此选项设为 false,则 IN 消息包含原始 javax.mail.Message。您可以通过调用 exchange.getIn ().getBody (javax.mail.Message.class)来检索此原始消息。 | true | 布尔值 |
pollStrategy (consumer) | 可插拔 org.apache.camel.PollingConsumerPollingStrategy 允许您提供自定义实施来控制在轮询操作期间通常会发生错误处理,然后再创建交换并在 Camel 中路由。 | PollingConsumerPoll Strategy | |
postProcessAction (consumer) | 指向 MailBoxPostProcessAction,用于在正常处理正常处理后对邮箱进行发布后处理任务。 | MailBoxPostProcess Action | |
bcc (producer) | 设置 BCC 电子邮件地址。使用逗号分隔多个电子邮件地址。 | 字符串 | |
cc (producer) | 设置 CC 电子邮件地址。使用逗号分隔多个电子邮件地址。 | 字符串 | |
from (producer) | 来自电子邮件地址 | camel@localhost | 字符串 |
replyTo (producer) | Reply-To 接收者(响应邮件的接收器)。使用逗号分隔多个电子邮件地址。 | 字符串 | |
subject (producer) | 发送的消息的主题。注:在标头中设置主题优先于这个选项。 | 字符串 | |
to (producer) | 设置 To 电子邮件地址。使用逗号分隔多个电子邮件地址。 | 字符串 | |
javaMailSender (producer) | 使用自定义 org.apache.camel.component.mail.JavaMailSender 来发送电子邮件。 | JavaMailSender | |
additionalJavaMail Properties (advanced) | 设置其他 java 邮件属性,这将根据所有其他选项附加/覆盖设置的任何默认属性。如果您需要添加一些特殊选项,但希望将其他选项保留原样,这将非常有用。 | Properties | |
alternativeBodyHeader (advanced) | 指定包含替代电子邮件正文的 IN 消息标头的密钥。例如,如果您以 text/html 格式发送电子邮件,并希望为非HTML 电子邮件客户端提供替代邮件正文,请将替代邮件正文设置为标头。 | CamelMailAlternativeBody | 字符串 |
attachmentsContentTransfer EncodingResolver (advanced) | 使用自定义 AttachmentsContentTransferEncodingResolver 来解决要用于附件的 content-type-encoding。 | AttachmentsContent TransferEncoding Resolver | |
绑定 (advanced) | 设置用于从 Camel 消息转换到 Camel 消息和邮件的绑定 | MailBinding | |
connectionTimeout (advanced) | 连接超时(以毫秒为单位)。 | 30000 | int |
contentType (advanced) | 邮件消息内容类型。对 HTML 邮件使用 text/html。 | text/plain | 字符串 |
contentTypeResolver (advanced) | 确定文件附加的 Content-Type 解析器。 | ContentTypeResolver | |
debugMode (advanced) | 在底层邮件框架上启用调试模式。默认情况下,SUN 邮件框架将调试消息记录到 System.out 中。 | false | 布尔值 |
headerFilterStrategy (advanced) | 使用自定义 org.apache.camel.spi.HeaderFilterStrategy 过滤标头。 | HeaderFilterStrategy | |
ignoreUnsupportedCharset (advanced) | 选项,可在发送邮件时让 Camel 忽略本地 JVM 中不支持的 charset。如果不支持 charset,则 charset=XXX (其中 XXX 代表不受支持的 charset)会从 content 类型中删除,它依赖于平台默认。 | false | 布尔值 |
ignoreUriScheme (advanced) | 选项,可在发送邮件时让 Camel 忽略本地 JVM 中不支持的 charset。如果不支持 charset,则 charset=XXX (其中 XXX 代表不受支持的 charset)会从 content 类型中删除,它依赖于平台默认。 | false | 布尔值 |
会话 (advanced) | 指定 camel 应该用于所有邮件交互的邮件会话。在邮件会话由某些其他资源创建和管理的情况(如 hundreds 容器)时很有用。如果没有指定,Camel 会自动为您创建邮件会话。 | 会话 | |
同步 (advanced) | 设置是否应严格使用同步处理,或者 Camel 允许使用异步处理(如果受支持)。 | false | 布尔值 |
useInlineAttachments (advanced) | 是否使用分布内联或附加。 | false | 布尔值 |
idempotentRepository (filter) | 可插拔存储库 org.apache.camel.spi.IdempotentRepository,它允许从同一邮箱使用集群,并让存储库协调邮件是否对消费者有效。默认情况下,不使用任何存储库。 | IdempotentRepository | |
idempotentRepositoryRemove OnCommit (filter) | 使用幂等存储库时,当邮件邮件被成功处理并提交后,消息 id 应该从幂等存储库(默认)中删除或保存在存储库中。默认情况下,它假定消息 id 是唯一的,并且没有要保存在存储库中的值,因为邮件消息将标记为 see/moved 或删除,以防止它再次被消耗。因此,将消息 id 存储在幂等存储库中,因此没有值。但是,此选项允许存储消息 id,因为您可能具有的任何原因。 | true | 布尔值 |
searchTerm (filter) | 指的是 javax.mail.search.SearchTerm,它允许根据搜索条件(如主题、正文、来自、在特定日期后发送)过滤邮件。 | SearchTerm | |
backoffErrorThreshold (scheduler) | 在 backoffMultipler 应该 kick-in 之前发生的后续错误轮询(因为某些错误)的数量。 | int | |
backoffIdleThreshold (scheduler) | 在 backoffMultipler 应该 kick-in 之前应该发生的后续空闲轮询数量。 | int | |
backoffMultiplier (scheduler) | 如果一行中有很多后续空闲/errors,则让调度的轮询消费者避退。然后,倍数是在下一次实际尝试再次发生前跳过的轮询数量。当使用这个选项时,还必须配置 backoffIdleThreshold 和/或 backoffErrorThreshold。 | int | |
delay (scheduler) | 下一次轮询前的时间(毫秒)。 | 60000 | long |
greedy (scheduler) | 如果启用了 greedy,如果上一个运行轮询 1 或更多消息,则 ScheduledPollConsumer 将立即运行。 | false | 布尔值 |
initialDelay (scheduler) | 第一次轮询开始前的毫秒。您还可以使用单位来指定时间值,如 60s (60 秒)、5m30s (5 分钟和 30 秒)和 1h (1 小时)。 | 1000 | long |
runLoggingLevel (scheduler) | 消费者在轮询时记录 start/complete log 行。这个选项允许您为其配置日志级别。 | TRACE | LoggingLevel |
scheduledExecutorService (scheduler) | 允许配置用于消费者的自定义/共享线程池。默认情况下,每个使用者都有自己的单线程线程池。 | ScheduledExecutor Service | |
scheduler (scheduler) | 使用 camel-spring 或 camel-quartz2 组件的 cron 调度程序 | none | ScheduledPollConsumer Scheduler |
schedulerProperties (scheduler) | 在使用自定义调度程序或任何基于 Spring 的调度程序时配置附加属性。 | Map | |
startScheduler (scheduler) | 调度程序是否应自动启动。 | true | 布尔值 |
timeUnit (scheduler) | initialDelay 和 delay 选项的时间单位。 | MILLISECONDS | TimeUnit |
useFixedDelay (scheduler) | 控制是否使用固定延迟或固定率。详情请参阅 JDK 中的 ScheduledExecutorService。 | true | 布尔值 |
sortTerm (sort) | 消息排序顺序。只有 IMAP 的原生支持。使用 POP3 或 IMAP 服务器没有 SORT 功能时,模拟到某种程度。 | 字符串 | |
dummyTrustManager (security) | 使用 dummy 安全设置来信任所有证书。应仅用于开发模式,而不用于生产环境。 | false | 布尔值 |
password (security) | 用于登录的密码 | 字符串 | |
sslContextParameters (security) | 使用 SSLContextParameters 配置安全性。 | SSLContextParameters | |
用户名 (安全性) | 用于登录的用户名 | 字符串 |