第73章 IRC


IRC コンポーネント

irc コンポーネントは IRC (Internet Relay Chat)トランスポートを実装します。

URI 形式

irc:nick@host[:port]/#room[?options]
Copy to Clipboard Toggle word wrap
Apache Camel 2.0 では、以下の形式を使用することもできます。
irc:nick@host[:port]?channels=#channel1,#channel2,#channel3[?options]
Copy to Clipboard Toggle word wrap
URI にクエリーオプションは ?option=value&option=value&.. の形式で追加できます。

オプション

Expand
名前 説明 デフォルト値
channels 2.0 の新機能。参加する IRC チャネルのコンマ区切りリスト。 channels=#channel1,#channel2 null
ニックネーム チャットで使用されるニックネーム。 irc:MyNick@irc.server.org#channel or irc:irc.server.org#channel?nickname=MyUser null
username IRC サーバーのユーザー名。 irc:MyUser@irc.server.org#channel or irc:irc.server.org#channel?username=MyUser ニックネームと同じです。
password IRC サーバーパスワード。 password=somepass なし
realname IRC ユーザーの実際の名前。 realname=MyName なし
colors サーバーが色コードをサポートするかどうか。 true, false true
onReply コマンドまたは情報メッセージへの一般的な応答を処理するかどうか。 true, false false
onNick ニックネーム変更イベントを処理します。 true, false true
onQuit ユーザーの終了イベントを処理します。 true, false true
onJoin ユーザーの参加イベントを処理します。 true, false true
onKick 開始イベントを処理します。 true, false true
onMode モード変更イベントを処理します。 true, false true
onPart ユーザー部分イベントを処理します。 true, false true
onTopic トピック変更イベントを処理します。 true, false true
onPrivmsg メッセージイベントを処理します。 true, false true
trustManager 2.0 の新機能として、SSL サーバーの証明書の検証に使用されるトラストマネージャーです。 trustManager=#referenceToTrustManagerBean すべて の証明書を受け入れるデフォルトのトラストマネージャーが使用されます。
keys Camel 2.2: IRC チャネルキーのコンマ区切りリスト。重要な点は、チャネルと同じ順序でリストされます。必要なキーのみで複数のチャネルに参加する場合は、そのチャネルに空の値を挿入するだけで済みます。 irc:MyNick@irc.server.org/#channel?keys=chankey null
sslContextParameters *Camel 2.9:* レジストリー内の org.apache.camel.util.jsse.SSLContextParameters オブジェクトへの 参照。 この参照は、コンポーネントレベルで設定済みの SSLContextParameters を上書きします。Security Guide および 「JSSE 設定ユーティリティーの使用」 の Configuring Transport Security for Camel Components を参照して ください。この設定は、trustManager オプションを上書きすることに注意してください。 \#mySslContextParameters null

JSSE 設定ユーティリティーの使用

Camel 2.9 の時点で、IRC コンポーネントは を介して SSL/TLS 設定をサポートし http://camel.apache.org/http4.html#HTTP4-UsingtheJSSEConfigurationUtility ます。このユーティリティーは、作成する必要のあるコンポーネント固有のコードの量を大幅に減らし、エンドポイントおよびコンポーネントレベルで設定可能です。以下の例では、IRC コンポーネントで ユーティリティーを使用する方法を説明します。

エンドポイントのプログラムによる設定

KeyStoreParameters ksp = new KeyStoreParameters();
ksp.setResource("/users/home/server/truststore.jks");
ksp.setPassword("keystorePassword");

TrustManagersParameters tmp = new TrustManagersParameters();
tmp.setKeyStore(ksp);

SSLContextParameters scp = new SSLContextParameters();
scp.setTrustManagers(tmp);

Registry registry = ...
registry.bind("sslContextParameters", scp);

...

from(...)
    .to("ircs://camel-prd-user@server:6669/#camel-test?nickname=camel-prd&password=password&sslContextParameters=#sslContextParameters");
Copy to Clipboard Toggle word wrap

エンドポイントの Spring DSL ベースの設定

...
  <camel:sslContextParameters
      id="sslContextParameters">
    <camel:trustManagers>
      <camel:keyStore
          resource="/users/home/server/truststore.jks"
          password="keystorePassword"/>
    </camel:keyManagers>
  </camel:sslContextParameters>...
...
  <to uri="ircs://camel-prd-user@server:6669/#camel-test?nickname=camel-prd&password=password&sslContextParameters=#sslContextParameters"/>...
Copy to Clipboard Toggle word wrap

レガシーの基本設定オプションの使用

以下のように、SSL 対応の IRC サーバーに接続することもできます。
ircs:host[:port]/#room?username=user&password=pass
Copy to Clipboard Toggle word wrap
デフォルトでは、IRC トランスポートは SSLDefaultTrustManager を使用します。独自のカスタムトラストマネージャーを提供する必要がある場合は、以下のように trustManager パラメーターを使用します。
ircs:host[:port]/#room?username=user&password=pass&trustManager=#referenceToMyTrustManagerBean
Copy to Clipboard Toggle word wrap

鍵の使用

Camel 2.2 で利用可能一部の irc 部屋では、そのチャネルに参加できるようにキーを指定する必要があります。キーは秘密の単語です。
たとえば、チャネル 1 と 3 のみがキーを使用する 3 つのチャネルに参加します。
irc:nick@irc.server.org?channels=#chan1,#chan2,#chan3&keys=chan1Key,,chan3key

Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat