<commit_before>[[timer-component]]
= Timer Component
:page-source: components/camel-timer/src/main/docs/timer-component.adoc

*Since Camel 1.0*

// HEADER START
*Only consumer is supported*
// HEADER END

The Timer component is used to generate message exchanges when a
timer fires You can only consume events from this endpoint.

== URI format

[source]
----
timer:name[?options]
----

Where `name` is the name of the `Timer` object, which is created and
shared across endpoints. So if you use the same name for all your timer
endpoints, only one `Timer` object and thread will be used.

You can append query options to the URI in the following format,
`?option=value&option=value&...`

*Note:* The IN body of the generated exchange is `null`. So
`exchange.getIn().getBody()` returns `null`.

TIP:*Advanced Scheduler*
See also the xref:quartz-component.adoc[Quartz] component that supports much more
advanced scheduling.

TIP:*Specify time in human friendly format*
You can specify the time in
xref:manual::faq/how-do-i-specify-time-period-in-a-human-friendly-syntax.adoc[human<commit_msg>Regen docs<commit_after>[[timer-component]]
= Timer Component
:page-source: components/camel-timer/src/main/docs/timer-component.adoc

*Since Camel 1.0*

// HEADER START
*Only consumer is supported*
// HEADER END

The Timer component is used to generate message exchanges when a
timer fires You can only consume events from this endpoint.

== URI format

[source]
----
timer:name[?options]
----

Where `name` is the name of the `Timer` object, which is created and
shared across endpoints. So if you use the same name for all your timer
endpoints, only one `Timer` object and thread will be used.

You can append query options to the URI in the following format,
`?option=value&option=value&...`

*Note:* The IN body of the generated exchange is `null`. So
`exchange.getIn().getBody()` returns `null`.

*TIP:* Advanced Scheduler
See also the xref:quartz-component.adoc[Quartz] component that supports much more
advanced scheduling.

*TIP:* Specify time in human friendly format
You can specify the time in
xref:manual::faq/how-do-i-specify-time-period-in-a-human-friendly-syntax.adoc[human
{'fraction_non_alphanumeric': 0.10279944928866452, 'fraction_numerical': 0.0018357044515832951, 'mean_word_length': 4.561224489795919, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3223312', 'n_tokens_mistral': 673, 'n_tokens_neox': 638, 'n_words': 264}