IRC
Поддерживаются как производитель, так и потребитель
Компонент IRC реализует транспорт для IRC (Internet Relay Chat).
Пользователям Maven необходимо добавить следующую зависимость для pom.xmlэтого компонента:
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-irc</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>Configuring Options
Компоненты настраиваются на двух отдельных уровнях:
-
component level
-
edpoint level
Configuring Component Options
На уровне компонента задаются основные и общие настройки, которые впоследствии наследуются endpoints. Это самый высокий уровень конфигурации.
Например, компонент может иметь настройки безопасности, учетные данные для аутентификации, URL-адреса для сетевых подключений и т. д.
Некоторые компоненты имеют всего несколько параметров, в то время как у других их может быть много. Поскольку компоненты обычно имеют предварительно настроенные значения по умолчанию, которые используются в большинстве случаев, вам может понадобиться настроить только несколько параметров компонента или вообще ничего не настраивать.
Компоненты можно настроить с использованием:
-
Component DSL.
-
Конфигурационного файла (application.properties, *.yaml files, etc).
-
Напрямую в Java code.
Configuring Endpoint Options
Обычно больше времени уходит на настройку endpoints, так как они обладают множеством параметров. Эти параметры позволяют настроить поведение endpoint в соответствии с вашими потребностями. Кроме того, параметры делятся на категории в зависимости от того, используется ли endpoint как потребитель (from), как производитель (to) или в обеих ролях.
Настройка endpoints чаще всего выполняется непосредственно в URI endpoint в виде параметров пути и запроса. Также вы можете использовать Endpoint DSL и DataFormat DSL как типобезопасный способ настройки endpoints и форматов данных в Java.
Хорошей практикой при настройке параметров является использование Property Placeholders.
Property placeholders предоставляют несколько преимуществ:
-
Помогают избежать использования жестко закодированных URL-адресов, номеров портов, конфиденциальной информации и других настроек.
-
Позволяют вынести конфигурацию за пределы кода.
-
Делают код более гибким и удобным для повторного использования.
Component properties
Auto Rejoin
-
Определяет, следует ли автоматически повторно присоединяться после исключения (kicked).
-
По умолчанию: true
-
Тип: boolean
Channels
-
Список каналов IRC, разделённых запятыми.
-
По умолчанию:
-
Тип: String
Command Timeout
-
Задержка в миллисекундах перед отправкой команд после установления соединения.
-
По умолчанию: 5000
-
Тип: long
Hostname
-
Обязательный параметр - Имя хоста для сервера IRC-чата.
-
По умолчанию:
-
Тип: String
Keys
-
Список ключей для каналов, разделённых запятыми.
-
По умолчанию:
-
Тип: String
Names On Join
-
Тип: Отправляет команду NAMES на канал после присоединения к нему. Для обработки результата параметр onReply должен быть true, и результат будет содержать значение заголовка irc.num = '353'
-
По умолчанию: false
-
Тип: boolean
Nickname
-
Никнейм, используемый в чате.
-
По умолчанию:
-
Тип: String
On Join
-
Обрабатывает события присоединения пользователей.
-
По умолчанию: true
-
Тип: boolean
On Kick
-
Обрабатывает события исключения (kick).
-
По умолчанию: true
-
Тип: boolean
On Mode
-
Обрабатывает события изменения режима.
-
По умолчанию: true
-
Тип: boolean
On Nick
-
Обрабатывает события изменения никнейма.
-
По умолчанию: true
-
Тип: boolean
On Part
-
Обрабатывает события выхода пользователей.
-
По умолчанию: true
-
Тип: boolean
On Privmsg
-
Обрабатывает события личных сообщений.
-
По умолчанию: true
-
Тип: boolean
On Quit
-
Обрабатывает события выхода пользователей из сети.
-
По умолчанию: true
-
Тип: boolean
On Reply
-
Определяет, следует ли обрабатывать общие ответы на команды или информационные сообщения.
-
По умолчанию: false
-
Тип: boolean
On Topic
-
Обрабатывает события изменения топика.
-
По умолчанию: true
-
Тип: boolean
Port
-
Номер порта для сервера IRC-чата. Если порт не настроен, используется порт по умолчанию: 6667, 6668 или 6669.
-
По умолчанию:
-
Тип: int
Realname
-
Реальное имя пользователя IRC.
-
По умолчанию:
-
Тип: String
Component security properties
Nick Password
-
Тип: Пароль для никнейма на вашем сервере IRC.
-
По умолчанию:
-
Тип: String
Password
-
Пароль для сервера IRC.
-
По умолчанию:
-
Тип: String
Ssl Context Parameters
-
Тип: Используется для настройки безопасности с использованием SSL. Ссылка на org.apache.camel.support.jsse.SSLContextParameters в реестре. Эта ссылка переопределяет любые настроенные SSLContextParameters на уровне компонента. Обратите внимание, что эта настройка переопределяет параметр trustManager.
-
По умолчанию:
-
Тип: SSLContextParameters
Trust Manager
-
Trust manager, используемый для проверки сертификата SSL-сервера.
-
По умолчанию:
-
Тип: SSLTrustManager
Username
-
Тип: Имя пользователя на сервере IRC.
-
По умолчанию:
-
Тип: String
Component advanced properties
Bridge Error Handler
-
Предоставляет возможность связать потребителя с маршрутизатором Error Handler Camel. Это позволяет обрабатывать исключения (если возможно), возникающие при получении входящих сообщений потребителем Camel, в виде сообщений, передаваемых в маршрутизатор Error Handler.
Важно: Это возможно только в том случае, если сторонний компонент позволяет Camel получать уведомления о возникших исключениях. Некоторые компоненты обрабатывают исключения только внутренне, из-за чего использование bridgeErrorHandler становится невозможным. В некоторых случаях мы можем доработать компонент Camel, чтобы интегрировать его со сторонним компонентом и сделать такую возможность доступной в будущих выпусках. По умолчанию потребитель использует org.apache.camel.spi.ExceptionHandler для обработки исключений, которые логируются с уровнем WARN или ERROR и игнорируются.
-
По умолчанию: false
-
Тип: boolean
Colors
-
Определяет, поддерживает ли сервер цветовые коды.
-
По умолчанию: true
-
Тип: boolean
Exception Handler
-
Позволяет потребителю использовать собственный ExceptionHandler.
Обратите внимание, что если включена опция bridgeErrorHandler, то эта настройка не используется. По умолчанию потребитель обрабатывает исключения, которые логируются с уровнем WARN или ERROR и игнорируются.
-
По умолчанию:
-
Тип: ExceptionHandler
Exchange Pattern
-
Определяет шаблон взаимодействия, который применяется, когда потребитель создает новый обмен (exchange).
Возможные значения:
-
InOnly
-
InOut
-
-
По умолчанию:
-
Тип: ExchangePattern