Eggdrop/mod-irc.html

Материал из Викиучебника — открытых книг для открытого мира

Модуль IRC


Этот модуль контролирует нахождение бота в IRC. Позволяет боту входить на канал, вести списки пользователей канала и т. п. Если вы хотите, чтобы ваш бот зашёл в IRC, загрузите этот модуль.

  1. [#config Установки конфигурационного файла]

1. Установки конфигурационного файла

Поместите нижеуказанную строку в конфигурационный файл бота для загрузки модуля filesys:

loadmodule irc

Также есть переменные, которые вы можете настроить в конфигурационном файле:

set bounce-bans 1
Установите на «1», если хотите отклонить все серверные баны.
set bounce-exempts 0
Установите на «1», если хотите отклонить все серверные исключения (режим +e). Отключено, если отключено use-exempts.
set bounce-invites 0
Установите на «1», если хотите отклонить все серверные приглашения (режим +I). Отключено, если отключено use-invites.
set bounce-modes 0
Установите на «1». если хотите отклонить все серверные режимы.
set max-modes 30
Установка глобального ограничения режимов +b/+e/+I. Значение этой переменной следует поставить равной значению max-bans для irc-сетей, не поддерживающих +e/+I.
set max-bans 20
Установите максимальное количество банов. При превышении максимального количества банов, Eggdrop перестанет устанавливать баны. На текущий момент Undernet позволяет выставить 4545 банов, IRCnet — 30, EFnet и DALnet — по 100 баной каждый.
set max-exempts 20
Установка максимального числа исключений на канале. Eggdrop не будет исключать больше назначенного ограничения.
set max-invites 20
Установка максимального числа приглашений на канале. Eggdrop не будет приглашать больше назначенного ограничения.
set use-exempts 0
set use-invites 0
Эти настройки следует держать раскомментированными для того, чтобы перекрыть значения по умолчанию. По умолчанию, исключения и приглашения действуют в сетях EFnet и IRCnet и выключены для всех остальных больших сетей. Подобное можно изменить следующими двумя флагами. Если ваша сеть не поддерживает режимы +e/+I, тогда вам следует отключить использование этих возможностей.
set kick-fun 0
Установите на «1», если хотите, чтобы бот кикал пользователей, посылающих на канал большое количество управляющего кода и ctcp-запросов. Помните, что если установите «1», бот не будет банить таких пользователей. Может привести к кик-флуду.
set ban-fun 0
Установите на «1», если хотите, чтобы бот банил пользователей, посылающих на канал большое количество управляющего кода и ctcp-запросов. Кик-флуда уже не будет, но может быть большой бан-лист.
set learn-users 0
Если вы хотите, чтобы пользователи сами добавляли себя в список пользователей бота с флагами по умолчанию (устанавливаются выше в конфигуpационном файле) чеpез msg-команду 'hello', установите «1».
set wait-split 300
Установка вpемени (в секундах) ожидания возврата пользователей из сплита (т.е. wasop истечёт впоследствии). Установите 1500 в IRCnet. Бот будет ждать 30 минут.
set wait-info 15
Установка времени (в секундах) для повторного вывода приветствия. Если пользователь вышел и затем вошел в канал через меньшее количество времени, то приветствие не будет отображено.
set mode-buf-length 200
Установка максимального размера (в байтах) строки аргументов посылаемых с командой mode серверу. Обычный лимит сервера составляет 200 байт.
set opchars «@»
#set opchars «@&~»
Некоторые IRC-сервера используют нестандартные префиксы и режимы подобные операторам. Укажите их здесь, чтобы бот мог распознавать. Просто поместите их в кавычки. Раскомментируйте вторую строку для UnrealIRCd.
unbind msg — hello *msg:hello
bind msg — myword *msg:hello
Многие иркопы ищут ботов, задавая им /msg-вопрос «hello». Обычно бот отвечает на такой запрос, чтобы этого не происходило — раскомментируйте следующие две строки и замените «myword» на любое другое слово, которое заменит вам «hello». Должно быть только одно слово.
unbind msg — ident *msg:ident
unbind msg — addhost *msg:addhost
Некоторые пользователи, пользуясь беспомощностью начинающих пользователей, перехватывают идентификационный пароль (/msg ident). Для введения в заблуждение пользователей-вредителей мы отвязали эту команду по умолчанию. Для включения этой функции раскомментируйте эти две строки.
set no-chanrec-info 0
Если вы настолько глупы, чтобы разрешить боту приветствовать всех пользователей, равно как и если вам слишком лениво, чтобы добавить их приветствия на канале, установите на «1».КСТАТИ:Это значит, что каждый пользователь со строкой приветствия будет показывать его на КАЖДОМ канале, в которой зайдет (предоставляя им увеличивать время ожидания приветствия).

Это были основные настройки IRC-модуля. Ниже следуют настройки для тех типов сетей, которые устанавливаются в 'net-type' и имеют значения 1 и 5. Опция 'net-type' устанавливается в разделе модуля server конфигурационного файла.

Эти установки разрешается трогать *только* если опция 'net-type' установлена на 1!

set prevent-mixing 1
В данный момент, текущей версией IRCd в IRCnet является 2.10, которая не поддерживает смешивание режимов b, o и v с режимами e и I. Это может быть изменено в будущем, но в данный момент для этой опции устанавливайте 1.

Эти установки разрешается трогать только если опция 'net-type' установлена на '5'!

set kick-method 1
Если ваша сеть поддерживает кик-команду для одновременного &quote;попадания&quote; в нескольких пользователей, то поставьте 1. Установите число пользователей, которое можно кикнуть одновременно, или 0 — если это число не важно.
set modes-per-line 3
Некоторые сети позволяют передавать им команды изменения режимов канала одной строкой. Они гарантируют поддержку сразу трех изменений за один раз, так что это считается за умолчание. Если вы знаете сеть, поддерживающую большее количество, вы можете выставить свое значение. Эта опция ограничена шестью изменениями, в противном случае, (если вам к примеру, захочется больше) вам придется изменять значение MODES_PER_LINE_MAX в src\chan.h и перекомпилировать бота.
set include-lk 1
Некоторые сети не позволяют передавать режимы +l и +k одной строкой (см. выше). Установите include-lk на 0 для таких сетей.
set use-354 0
Установите это значение на «1», если ваша сеть использует IRCd2.10.01-специфику /who-запросов. Eggdrop может спросить об этом, если это нужно.
set rfc-compliant 1 (По умолчанию отключено)
Если ваша сеть не использует стандарт RFC-1459 программного сопоставления стpок, установите на 0.

1997 Robey Pointer
1999—2006 Eggheads Development Team Eggheads Development Team
2003—2004, 2005—2006, 2007 Перевод vadim s. sabinich [Blog of the free translator]