69. 计时器源
使用自定义有效负载生成定期消息。
69.1. 计时器源 Kamelet 描述 复制链接链接已复制到粘贴板!
此 Kamelet 以可配置的间隔使用自定义有效负载生成定期消息。它可用于生成调度的事件或心跳消息。
69.1.1. 输出格式 复制链接链接已复制到粘贴板!
Kamelet 输出配置的消息带有指定内容类型。默认情况下,它会生成纯文本消息。
69.1.2. 特殊标头 复制链接链接已复制到粘贴板!
Kamelet 设置以下标头:
-
Content-Type: Configurable content type (default:text/plain)
69.1.3. 配置要求 复制链接链接已复制到粘贴板!
此 Kamelet 需要以下强制属性:
- Message: 要生成的文本消息
69.1.4. 配置选项 复制链接链接已复制到粘贴板!
- 周期: 以毫秒为单位消息之间的时间间隔(默认值:1000)
- Message: 要发送的消息内容(必需)
-
contentType: MIME 类型的消息(默认为
text/plain) - repeatCount :要发送的最大消息数(可选 - 如果没有设置,则无限期运行)
69.1.5. 使用示例 复制链接链接已复制到粘贴板!
基本定期消息:
- route:
from:
uri: "kamelet:timer-source"
parameters:
message: "hello world"
steps:
- to:
uri: "kamelet:log-sink"
自定义间隔和内容类型:
- route:
from:
uri: "kamelet:timer-source"
parameters:
message: '{"status": "heartbeat", "timestamp": "${date:now:yyyy-MM-dd HH:mm:ss}"}'
contentType: "application/json"
period: 30000
steps:
- to:
uri: "kamelet:log-sink"
有限消息数:
- route:
from:
uri: "kamelet:timer-source"
parameters:
message: "Scheduled notification"
period: 5000
repeatCount: 10
steps:
- to:
uri: "kamelet:log-sink"
69.2. 配置选项 复制链接链接已复制到粘贴板!
下表总结了 timer-source Kamelet 可用的选项:
| 属性 | 名称 | 描述 | 类型 | 默认 | 示例 |
|---|---|---|---|---|---|
| message * | 消息 | 要生成的消息。 | string | 您好世界 | |
| contentType | 内容类型 | 生成消息的内容类型。 | string | text/plain | |
| 周期 | 时期 | 生成下一个消息之间等待的时间间隔(以毫秒为单位)。 | 整数 | 1000 | |
| repeatCount | 重复计数 | 指定触发的最大数量 | 整数 |
* = 标记为星号的字段 是必需的。
69.3. 依赖项 复制链接链接已复制到粘贴板!
在运行时,timer-source Kamelet 依赖于以下依赖项:
<dependencies>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifact>camel-quarkus-core</artifact>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifact>camel-quarkus-kamelet</artifact>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifact>camel-quarkus-timer</artifact>
</dependency>
<dependency>
<groupId>org.apache.camel.kamelets</groupId>
<artifact>camel-kamelets-utils</artifact>
<version>{kamelets-utils-version}</version>
</dependency>
</dependencies>
69.4. kamelets 源文件 复制链接链接已复制到粘贴板!
https://github.com/apache/camel-kamelets/blob/4.14.x/kamelets/timer-source.kamelet.yaml