<commit_before>ServerConnectionReport
======================

IRC サーバの接続状態の変化を報告するプラグインです。お使いの IRC デーモンに合わせて有効化するものを選択してください。

設定
----

設定ファイルのプラグインリストに、以下のいずれかを追加します。

```yaml
Plugins:
  - ServerConnectionReport::NgIRCd
  - ServerConnectionReport::Charybdis
  - ServerConnectionReport::AthemeServices
```

以下で説明する、サーバの接続状態を報告するチャンネル( ChannelsToSend の設定値)に JOIN しておかなければ、 IRC サーバにはじかれてプラグインが動作しないことがあります。


```yaml
IRCBot:
  #### 省略 ####
  # JOIN するチャンネルの一覧
  Channels:
    - '#cre'
```

もしくは報告先のチャンネルのモードに +n(チャンネルに入っていないクライアントからの発言を拒否する) を設定しないようにしておくことでこの設定をしなくても動作させることが可能ですが、全く関係ないスパムの侵入を許すことにつながりかねないため、お勧めしません。

IRC デーモンごとの動作・設定
----------------------------

### ngIRCd

接続先の「&SERVER」チャンネルに書き込まれるメッセージを監視して IRC サーバの接続状態の変化を検知しています。

設定ファイルに以下を追加して、プラグインの設定を行います。

```yaml
# サーバーリレー監視プラグインの設定
ServerConnectionReport::Ngircd:
  # NOTICE を行なうチャンネルの一覧
  ChannelsToSend:
    - '#cre'
```<commit_msg>ServerConnectionReport: ドキュメントの表現を修正<commit_after>ServerConnectionReport
======================

IRC サーバの接続状態の変化を報告するプラグインです。お使いの IRC デーモンに合わせて有効化するものを選択してください。

設定
----

設定ファイルのプラグインリストに、以下のいずれかを追加します。

```yaml
Plugins:
  - ServerConnectionReport::Ngircd
  - ServerConnectionReport::Charybdis
  - ServerConnectionReport::AthemeServices
```

以下で説明する、サーバの接続状態を報告するチャンネル（設定項目 `ChannelsToSend` で設定します）に JOIN しておかなければ、IRC サーバに発言が拒否されてプラグインが動作しないことがあります。


```yaml
IRCBot:
  #### 省略 ####
  # JOIN するチャンネルの一覧
  Channels:
    - '#cre'
```

報告先チャンネルのモードに +n（チャンネルに入っていないクライアントからの発言を拒否する）を設定しないことでも動作可能となりますが、スパムメッセージを許すことにつながりかねないため、推奨されません。

IRC デーモンごとの動作・設定
----------------------------

### ngIRCd

接続先の「&SERVER」チャンネルに書き込まれるメッセージを監視して IRC サーバの接続状態の変化を検知しています。

設定ファイルに以下を追加して、プラグインの設定を行います。

```yaml
# サーバーリレー監視プラグインの設定
ServerConnectionReport::Ngircd:
  # NOTICE を行なうチャンネルの一覧
  ChannelsToSend:
    - '#cre'
```
{'fraction_non_alphanumeric': 0.1511627906976744, 'fraction_numerical': 0.0, 'mean_word_length': 5.793233082706767, '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': '2219563', 'n_tokens_mistral': 1222, 'n_tokens_neox': 1158, 'n_words': 85}