IRC-бот - это набор скриптов или независимая программа, который подключается к Internet Relay Chat как клиент, и поэтому другим пользователям IRC кажется другим пользователем. Бот IRC отличается от обычного клиента тем, что вместо предоставления интерактивного доступа к IRC пользователю-человеку он выполняет автоматические функции.
Часто, бот IRC развертывается как отдельная программа, работающая со стабильного хоста. Он находится на IRC-канале, чтобы держать его открытым и не позволять злоумышленникам захватить канал. Его можно настроить для предоставления статуса оператора канала привилегированным пользователям, когда они присоединяются к каналу, и может предоставлять унифицированный список операторов канала. Многие из этих функций требуют, чтобы бот был оператором канала. Таким образом, большинство IRC-ботов запускаются с компьютеров, которые имеют длительное время безотказной работы (обычно под управлением производной BSD или Linux ) и быстрого и стабильного Интернета связь. Поскольку IRC стал популярным среди многих пользователей dial-up, учетные записи оболочки у поставщиков оболочки стали популярными как стабильный сервер Linux с приличным подключением к запустить бота из.
Помимо управления разрешениями на каналы, бот также может выполнять такие функции, как регистрацию того, что публикуется в IRC-канале, выдачу информации по запросу (очень популярно в IRC-каналах, связанных с поддержкой пользователей), создание статистика отслеживание лучших постеров канала и самых долгоживущих скрытней, или хостинг мелочей, Uno и других игр. Эти функции обычно предоставляются с помощью сценариев, часто написанных пользователями бота на языке программирования сценариев, таком как Tcl или Perl. Каналы, предназначенные для обмена файлами, часто используют ботов XDCC для распространения своих файлов.
IRC-боты особенно полезны в сетях IRC, таких как EFnet и IRCnet без служб регистрации каналов, а также на сети, такие как Undernet или QuakeNet, которые требуют выполнения условий (минимальное количество пользователей и т. д.), прежде чем канал может быть зарегистрирован. Если боты используются для таких административных функций, им может потребоваться больший доступ, чем позволяет обычное клиентское соединение. Некоторые версии IRC имеют «служебный» протокол, который позволяет клиентам с этими дополнительными полномочиями. Такие санкционированные сервером боты называются IRC-сервисами.
Боты не всегда приветствуются. Некоторые сети IRC запрещают использование ботов. Одна из причин этого заключается в том, что каждый псевдоним, подключенный к сети, увеличивает размер сетевой базы данных, которая хранится в sync на всех серверах. Разрешение использования ботов в больших сетях может вызвать соответствующий объем сетевого трафика накладных расходов, который необходимо финансировать, и может даже привести к netsplits.
IRC Bot | Основные разработчики | Лицензия на программное обеспечение | Операционная система | Язык программирования | Первый публичный выпуск - дата (версия) | Последняя версия - дата (версия) | Примечательные особенности | Объем функций | Веб-сайт |
---|---|---|---|---|---|---|---|---|---|
Cardinal | John Maguire | MIT | Кросс-платформенный | Python 2 | 2013-02-03 (бета) | 2015-12-12 (2.0.13) | ? | ? | [1] |
Pynfo | kuran | GPL-2 | Кросс-платформенный | Python | 21.10.2002 | 2013-02-27 | ? | ? | [2] |
Supybot | Иеремия Финчер, Джеймс Вега и другие | BSD | Кросс-платформенный | Python | ? (0.30) | 2018-05-10 (0.84.0) | Многие плагины, SSL, поддержка нескольких сетей, (не) загрузка плагинов, потоков, реестра конфигурации, стандартизированный синтаксис команд, аргумент разбор | ? | [3], [4] |
Cerberus | Стефан Хюсгес | GPL-3.0 | Кросс-платформенный | PHP | 18 февраля 2008 (бета) | 04 октября 2016 (1.6.0) | ? | ? | [5] |
Синч | Доминик Хоннеф, Ли Джарвис | MIT | Unix-подобный | Ruby | 2010-07-08 (0.3.2) | 2015-03-31 (2.2.5) | Потоковый, объектно-ориентированный | Фреймворк для написания ботов | [6] |
CNT Bot | CNT Bot Team | Безлицензия | Unix- например | TCL | 2015-06-15 (0.1) | 2015-07-24 (0.2) | Голосование, опросы, выбор / отзыв делегатов, проводить пленарные заседания, контроль допуска, автоматически подключается к другим ботам CNT | Демократическое программное обеспечение для цифровых активистов, создающих плоские горизонтальные сети | [7] |
Darkbot | Джейсон Гамильтон, сок | GPL | Unix-подобный | C | ? | ? | ? | отвечает пользователю qu данные из базы данных | [8] |
Daskeb | Digit | GPL | Unix-like | Haskell | ? | ? | минимальный стартовый бот | ? | [9] |
Eggdrop | Eggheads | GPL | Кросс-платформенный | C | 1993-12 | 2018-12-27 (1.8.4) | SSL, ботнет, partyline, обмен файлами, управление пользователями, соревнование по работе IRC-ботов, поддержка сценариев в tcl | многоцелевой | [10] |
EnergyMech | Proton | GPL | Unix-like | C | 10.09.1998 (2.5.24, первый выпуск от Proton) | 09.03.2018 (3.0.99p4) | однопоточная работа с несколькими ботами, низкое использование ресурсов, ботнет, управление пользователями, модерация каналов, встроенный irc bouncer, возможность обновления без отключения, конкурс безотказной работы IRC-ботов, поддержка сценариев в tcl, python. | многоцелевой | [11] |
Erebot | François Poirotte | GPL-3.0 | Кросс-платформенный | PHP | 2010-10-09 | 2011-05-08 | Возможность расширения за счет множества модулей и поддержки нескольких сетей, нескольких идентификаторов, SSL / TLS, STARTTLS, IdentD и различных расширений демонов IRC. Может использоваться в качестве основы для создания продвинутых канальных ботов. | игры | [12] |
Эрвин | Идар Лунд | GPL-2.0 + | Кросс-платформенный | Perl | 2004-04-05 (1.0-beta1) | 2017-03-19 (1.2.0) | Легко расширяется путем написания новых модулей. | Отвечает пользователям из базы данных. | [13] |
FoxBot | Lee Watson | GPL-3.0 | Кросс-платформенный | Java | ? | 06.09.2013 (0.9) | Командная структура предназначена для облегчения написания команд. Имеет простую и мощную систему разрешений. Простая и полностью объясненная конфигурация. | ? | [14] |
FoxEye | Андрей Гриценко | GPL | Unix-like | C | 2011-01 (beta) | 2011 -02-24 (0.9b10) | Многопоточный, многосетевой. Кодировка выбирается для каждого пользователя или сети. Расширяется плагинами, может использоваться как клиент или что-то еще. Поддерживаемые на данный момент скрипты: Lua, Tcl. | комплект для создания интернет-клиента / сервера / шлюза, первичный для сетей обмена сообщениями | [15] |
Гамбот | Дерек Хогланд | GPL | Unix-подобный | Perl | 2011-1-1 | 2011-07-16 (1.0) | Фреймворк для создания ботов. Сообщения обрабатываются полностью асинхронно. Возможность расширения на любой язык программирования. Можно обновить без повторного подключения, перезапуска или перезагрузки. | Twitter и другие каналы, игры / мемы, | [16] |
Gozerbot | Bart Thate | BSD | Unix-like | Python | ? | ? (1.0.1) | IRC и XMPP бот; можно связать с Google Wave | ? | [17] |
Graystone | Geoff Woollams | MIT | Cross-Platform | C# | 2015-10-08 | 2015-10-09 (0.1) | Команды IRC могут запускать любую командную строку или HTTP-запрос, чтобы позволить любой программе или сценарию управлять ботом по его выводам. Поддержка MySQL для действий, не инициированных пользователем, и сторонняя интеграция. | ? | [18] |
гуппи | Светлана Ткаченко | GPL | Кросс-платформенный | Python | 2011-03-20 | 2012-12- 11 (0.4.3) | простая в установке, модульная структура | многоцелевой | [19] |
Там же | Джонатан Хичкок, Майкл Горвен, Стефано Rivera | GPL3, ядро под MIT | Unix-like | Python, Twisted в протоколах IM | ? (0.1.0) | ? (0.1.1) | Twisted Engine позволяет подключаться к нескольким источникам IM, включая IRC, XMPP, SILC, Campfire, NMDC | ?+ плагин "factoids" отвечает пользователям из базы данных | [20] |
Infobot | Kevin Lenzo | Artistic License | Unix-like | Perl | 2004-08 | 2008-08-01 ( 1.5.3) | ? | отвечает пользователям из базы данных | [21] |
IrcBot | Marlinc | BSD | Unix-like | PHP | ? (0.1) | ? (1.2) | ? | ? | [22] |
Дженни | Майкл Янович | EFLv2 | Unix-подобный | Python (2) | ? | ? | Резьбовой, общего назначения, включает некоторые игры. Легко расширяется за счет написания новых модулей. | управление пользователями, беседа / поиск, игры | [23] |
irccd | Дэвид Демелье | ISC | Кросс-платформенный | C ++ 17 и JavaScript | 2013-09-13 (1.0.0) | 2019-08-15 (3.0.0) | Несколько серверов, фильтрация правил, система шаблонов, перекрестная платформа, расширяемая с помощью плагинов Javascript и C ++ | бот-фреймворк | [24] |
Jerkbot | Jason Stephenson | Artistic License 2.0 | кроссплатформенный | Sleep | 2014-02-10 (1.0) | 2017-08-29 (1.7.65) | Настраиваемый чат-бот, написанный как скрипт jIRCii | отзывчивая болтовня + обучение + модули | [25] |
JSONBOT | Барт Тате | MIT | Unix-подобный | Python | 2010-04 | 2012-03-23 (0.84.4) | Бета | [26] | |
JZBot | Александр Бойд, Максимилиан Диркманн, Джеймс Стокер | LGPL | Кросс-платформенный | Java | ? | ? | ? | каналы, оборотень / мафия, система кармы, напоминания | [27] |
КГБ | Мартин Феррари и Дамьян Иванов | ГПЛ-2 + | Кросс-платформенный | Perl | 2008-07-14 (Git) | 2014-09-17 (1.3.3 см. Коммиты ) | KGB - это система, которая предоставляет уведомления в IRC для коммитов, сделанных в репозитории Git, Subversion и CVS. | уведомления о фиксации кода | [28] |
Lambdabot | Andrew J. Bromage et al. | MIT | Unix-like | Haskell | ? (1.0) | 2011-01-20 (4.2.3.2) | Многие плагины; можно использовать в автономном режиме в качестве инструмента разработки на Haskell; встраивается в GHCi | инструмент разработки haskell | [29] |
Limnoria | BSD | Кросс-платформенный | Python | ? | 30.03.2017 (2017.03. 30) | См. Supybot | Поддерживаемый форк Supybot | [30] | |
Mozbot | Ян Хиксон, Крис Круз | MPL | Cross -платформа | Perl | ? | ? | ? | сервисы для сообществ разработчиков | [31] |
MrBot - AwesomeBot | MattMc | Apache v2 | Cross -platform | Java | ноябрь '13 | 2014-06-01 | Полу-продвинутый Java-бот с множеством функций и еще больше... присоединяйтесь к #AwesomeBot в espernet для получения дополнительной информации. | factoids + lastseen | [32] |
nibblrjr | Kirjava | None | Кросс-платформенный | Javascript | ? | ? | бот-фреймворк для динамического создания настраиваемого поведения | бот-фреймворк | [33] |
node-irc | Мартин Смит | GPLv3 | Unix-like | Javascript | ? | 2015-01-16 (0.3.9) | Node-native без блокировки | ? | [34] |
PircBot | Пол Маттон | GPL | Кросс-платформенный | Java | 2001-08-01 | 14.12.2009 (1.5. 0) | Фреймворк для создания ботов | Фреймворк для создания ботов | [35] |
pmxbot | YouGov, Джейми Тернер, Крис Маллиган | MIT | Unix-подобный | Python 3 | ? | ? | Предназначен для расширения для работы в сети IRC | беседа, поиск, игры | [36] |
Ruby-rbot | ruby-rbot | GPL | Unix-like | Ruby | ? | ? | гибкая система плагинов | Twitter и RSS-каналы, поиск, игры | [37] |
Rubybot | umby24 | GPL-3.0 | Кросс-платформенный | Ruby | ? | 30.10.2013 (4.2) | Простой, но легко расширяемый. | управление пользователями | [38] |
Шонго | Селиг, Посиден, Вил | ? | Кросс-платформенный | Python 3 | ? | ? | Сосредоточьтесь на простоте, в высшей степени расширяемая модульная система, быстрый цикл разработки | поиск в Интернете | [39] |
Shocky | Shockah, clone1018 | GPL-2.0 | кроссплатформенный | Java | ? | ? | Очень продвинутый Java-бот irc, который поддерживает все виды вещей | управление пользователями, фактоиды, игры, систему кармы | [40] |
sircbot | Alpine Linux | GPL-2.0 | Unix-like | C (Lua scriptable) | ? | 2011-12-15 | Простой бот IRC для сценариев оболочки и lua | ? | git wiki |
Сопел | dgw, Элси Пауэлл, Димитри Моленаарс, Элад Альфасса, Ари Койвула | EFLv2 | Кросс-платформенный | Python | 2012-07-15 (3.0.0) | 2020-08-04 (7.0.6) | SSL, (не) загрузка подключаемых модулей во время выполнения, многопоточная, пользователь / канал / база данных настроек плагина, поддержка Python 3. (Ранее Вилли; первоначально на основе Фэнни) | Twitter и другие каналы, поиск в Интернете, робот для встреч, информация по ссылкам | [41] |
Тенну | Хэвви (Райан Шил) | ISC | Кросс-платформенный | Javascript | 2012-03-08 (1.0.0) | 2016-06-22 (4.9.0) | Node.js, архитектура плагинов, управляемая Promise | управление пользователями | [42] |
Ultros | gdude2002 и rakiru | Artistic License 2.0 | Cross- платформа | Python2 | 2013-04-08 (Git) | 2014-09-25 (1.1.0+ - см. коммиты ) | Python IRC-бот с расширяемой системой плагинов и протоколов, а также менеджером пакетов. Также поддерживает mumble. | поиск в Интернете, игры | git сайт |
VikingBot | Tor Henning Ueland | GPL-3.0 | Unix-like | PHP | ? | 09.10.2013 | Простой бот IRC на основе PHP с поддержкой безопасных серверов IRC и поддержкой плагинов | статистика ботов | [43] |
Яуиб | Жюльен Палар | Упрощенный BSD | Кросс-платформенный | Python | 22.03.2011 | ? | Плагины могут быть написаны на любом языке | принимает все pubmsg и priv и пытается сопоставить первое слово как команду с каталогом с файлами exec и rest as parameters | [44] |