Robot IRC

Un bot de IRC es un conjunto de scripts o un programa independiente que se conecta a Internet Relay Chat como un cliente y, por lo tanto, aparece ante otros usuarios de IRC como un usuario más. Un bot de IRC se diferencia de un cliente normal en que, en lugar de proporcionar acceso interactivo a IRC para un usuario humano, realiza funciones automatizadas.
Función
A menudo, un bot de IRC se implementa como un programa independiente que se ejecuta desde un host estable. Se ubica en un canal IRC para mantenerlo abierto y evitar que usuarios malintencionados se apoderen del canal. Se puede configurar para otorgar el estatus de operador de canal a usuarios privilegiados cuando se unen al canal y puede proporcionar una lista de operadores de canal unificada. Muchas de estas funciones requieren que el bot sea un operador de canal. Por lo tanto, la mayoría de los bots de IRC se ejecutan desde computadoras que tienen tiempos de actividad prolongados (generalmente ejecutan un derivado de BSD o Linux) y una conexión a Internet rápida y estable. A medida que IRC también se ha vuelto popular entre muchos usuarios de acceso telefónico, las cuentas shell de los proveedores shell se han vuelto populares como un servidor Linux estable con una conexión decente desde la cual ejecutar un bot.
Además de administrar los permisos del canal, un bot también puede realizar funciones como registrar lo que se publica en un canal IRC, brindar información a pedido (muy popular en los canales IRC que tratan con soporte al usuario), crear estadísticas que rastrean el canal. Los mejores carteles y los merodeadores más longevos, o presentando trivia, Uno y otros juegos. Estas funciones suelen ser proporcionadas por secuencias de comandos, a menudo escritas en un lenguaje de programación de secuencias de comandos como Tcl o Perl por los usuarios del bot. Los canales dedicados al intercambio de archivos suelen utilizar bots XDCC para distribuir sus archivos.
Los bots de IRC son particularmente útiles en redes IRC como EFnet e IRCnet sin servicios de registro de canales, y en redes como Undernet o QuakeNet que requieren que se cumplan condiciones (recuento mínimo de usuarios, etc.) antes de que se pueda registrar un canal. Cuando los bots se utilizan para funciones administrativas como esta, es posible que necesiten más acceso del que permite una conexión de cliente normal. Algunas versiones de IRC tienen una función de "Servicio" protocolo que permite a los clientes con estos poderes extra. Estos bots autorizados por el servidor se denominan servicios IRC.
Los robots no siempre son bienvenidos. Algunas redes IRC prohíben el uso de bots. Una de las razones para hacerlo es que cada apodo conectado a la red aumenta el tamaño de la base de datos de la red que se mantiene sincronizada en todos los servidores. Permitir bots en redes grandes puede provocar una cantidad importante de tráfico de red que debe financiarse e incluso puede provocar netsplits.
Comparación
IRC bot | Principales promotores | Licencia de software | Sistema operativo | Lenguaje de programación | Primer lanzamiento público - fecha (versión) | Última versión - fecha (versión) | Características notables | Alcance de funciones | Sitio web |
---|---|---|---|---|---|---|---|---|---|
Cardenal | John Maguire | MIT | Cross-platform | Python 3 | 2013-02-03 (beta) | 2021-01-13 (3.1.0) | Facilidad de desarrollo, plugins asincrónicos recargables, decoradores de python para comandos, eventos IRC, almacenamiento de datos JSON simple persistente y una API bien documentada. | ? | [1] |
Pynfo | kuran | GPL-2 | Cross-platform | Python | 2002-10-21 | 2013-02-27 | Bridging/relaying de red, capacidades básicas "infobot", googling, 3 niveles de acceso y una función de enlace más corto. Fácilmente extensible y totalmente compatible con el disco. | ? | [2] |
Supybot | Jeremiah Fincher, James Vega y otros | BSD | Cross-platform | Python | ? (0.30) | 2018-05-10 (0.84.0) | Muchos plugins, SSL, soporte de múltiples redes, (un)loading plugins, hilos, registro de configuración, sintaxis de comando estandarizada, pares de argumentos | ? | [3], [4] |
Cerberus | Stefan Hüsges | GPL-3.0 | Cross-platform | PHP | 2008-02-18 (beta) | 2016-10-04 (1.6.0) | ? | ? | [5] |
Cinch | Dominik Honnef, Lee Jarvis | MIT | Unix-like | Ruby | 2010-07-08 (0.3.2) | 2015-03-31 (2.2.5) | Trazado, orientado al objeto | Bot writing framework | [6] |
CNT Bot | CNT Bot Team | Unlicense | Unix-like | TCL | 2015-06-15 (0.1) | 2015-07-24 (0.2) | Voting, polling, elect/recall delegates, hold plenaries, control de admisión, automáticamente se conecta a otros CNT Bots | Software de democracia para activistas digitales construyendo redes planas y horizontales | [7] |
Darkbot | Jason Hamilton, jugo | GPL | Unix-like | C | ? | ? | ? | responde a las preguntas de los usuarios desde la base de datos | [8] |
Daskeb | Digit | GPL | Unix-like | Haskell | ? | ? | bot de arranque mínimo | ? | [9] |
Eggdrop | Eggheads | GPL | Cross-platform | C | 1993-12 | 2022-03-06 (1.9.2) | SSL, botnet, partyline, filesharing, user management, IRC bot uptime concurso, soporta scripting en tcl | para fines múltiples | [10] |
EnergyMech | Proton | GPL | Unix-like | C | 1998-09-10 (2.5.24, primera liberación de Proton) | 2018-03-09 (3.0.99p4) | multibot de un solo hilo capaz, uso de recursos bajos, botnet, gestión del usuario, moderación del canal, rebote de irc incorporado, se puede actualizar sin desconectar, concurso de tiempo de bot IRC, soporta scripting en tcl, python. | para fines múltiples | [11] |
Erebot | François Poirotte | GPL-3.0 | Cross-platform | PHP | 2010-10-09 | 2011-05-08 | Extensible con muchos módulos y soporte para múltiples redes, múltiples identidades, SSL/TLS, STARTTLS, Ident D y varias extensiones de daemons IRC. Se puede utilizar como marco para crear bots de canal avanzado. | juegos | [12] |
Erwin | Idar Lund | GPL-2,0+ | Cross-platform | Perl | 2004-04-05 (1.0-beta1) | 2017-03-19 (1.2.0) | Fácilmente ampliable escribiendo nuevos módulos. | Depende de los usuarios de la base de datos. | [13] |
FoxBot | Lee Watson | GPL-3.0 | Cross-platform | Java | ? | 2013-09-06 (0.9) | El marco de comando está diseñado para facilitar los comandos de escritura. Tiene un sistema de permisos simple y poderoso. Config simple y completamente explicado. | ? | [14] |
FoxEye | Andriy Grytsenko | GPL | Unix-like | C | 2011-01 (beta) | 2011-02-24 (0.9b10) | Multitreaded, multinetworked. Codificación elegida por usuario o red. Extendible por plugins, se puede utilizar como cliente o lo que sea. scripts actualmente compatibles: Lua, Tcl. | kit para construir cliente de Internet / servidor / puerta de entrada, primaria para redes de mensajería | [15] |
Gambot | Derek Hoagland | GPL | Unix-like | Perl | 2011-1-1 | 2011-07-16 (1.0) | Marco para crear bots. Los mensajes se manejan completamente asincrónicamente. Extensible en cualquier lenguaje de programación. Se puede actualizar sin volver a conectar, reiniciar o recargar. | Twitter y otros feeds, juegos / memes, | [16] |
Gozerbot | Bart Thate | BSD | Unix-like | Python | ? | ? (1.0.1) | IRC y XMPP bot; se puede puentear con Google Wave | ? | [17] |
Graystone | Geoff Woollams | MIT | Cross-platform | C# | 2015-10-08 | 2015-10-09 (0.1) | Los comandos IRC pueden lanzar cualquier línea de comando o solicitud http para permitir cualquier programa o script para controlar el bot por su salida. Soporte MySQL para acciones no iniciadas y integración de terceros. | ? | [18] |
goppy | Svetlana Tkachenko | GPL | Cross-platform | Python | 2011-03-20 | 2012-12-11 (0.4.3) | fácil de instalar, estructura modular | para fines múltiples | [19] |
Ibíd. | Jonathan Hitchcock, Michael Gorven, Stefano Rivera | GPL3, core under MIT | Unix-like | Python, Twisted in IM protocols | ? (0.1.0) | ? (0.1.1) | Motor giratorio permite conectarse a múltiples fuentes de IM, incluyendo IRC, XMPP, SILC, Campfire, NMDC | ? + plugin "factoids" responde a los usuarios de la base de datos | [20] |
Infobot | Kevin Lenzo | Licencia artística | Unix-like | Perl | 2004-08 | 2008-08-01 (1.5.3) | ? | respuestas a los usuarios de la base de datos | [21] |
IrcBot | Marlinc | BSD | Unix-like | PHP | ? (0.1) | ? (1.2) | ? | ? | [22] |
jenni | Michael Yanovich | EFLv2 | Unix-like | Python (2) | ? | ? | Propósito, propósito general, incluye algunos juegos. Fácilmente ampliable escribiendo nuevos módulos. | gestión de usuarios, conversación / búsqueda, juegos | [23] |
irccd | David Demelier | ISC | Cross-platform | C++17 y JavaScript | 2013-09-13 (1.0.0) | 2021-01-04 (3.1.1) | Múltiples servidores, filtración de reglas, sistema de plantillas, multiplataforma, extensible con plugins Javascript y C++ | bot framework | [24] |
Jerkbot | Jason | Licencia artística 2.0 | Cross-platform | Duerme | 2014-02-10 (1.0) | 2017-08-29 (1.7.65) | Bot de chatter configurable, escrito como script jIRCii | chatter receptivo + aprende + módulos | [25] |
JSONBOT | Bart Thate | MIT | Unix-like | Python | 2010-04 | 2012-03-23 (0.84.4) | Beta | [26] | |
JZBot | Alexander Boyd, Maximilian Dirkmann, James Stoker | LGPL | Cross-platform | Java | ? | ? | ? | piensos, hombres lobo / mafia, karma sistema, recordatorios | [27] |
KGB | Martín Ferrari y Damyan Ivanov | GPL-2+ | Cross-platform | Perl | 2008-07-14 (Git) | 2014-09-17 (1.3.3 ver commits) | KGB es un sistema que proporciona notificaciones sobre IRC para los commits realizados a los repositorios Git, Subversion y CVS. | notificaciones en código compromete | [28] |
Lambdabot | Andrew J. Bromage et al. | MIT | Unix-like | Haskell | ? (1.0) | 2011-01-20 (4.2.3.2) | Muchos plugins; utilizable fuera de línea como una herramienta de desarrollo Haskell; incrustable en GHCi | herramienta de desarrollo de haskell | [29] |
Limnoria | BSD | Cross-platform | Python | ? | 2022-07-29 (2022.07.29) | Ver Supybot | Un tenedor mantenido de Supybot | [30] | |
Mozbot | Ian Hickson, Chris Crews | MPL | Cross-platform | Perl | ? | ? | ? | servicios a las comunidades de desarrollo | [31] |
MrBot - AwesomeBot | MattMc | Apache v2 | Cross-platform | Java | Noviembre del 13 | 2014-06-01 | A Semi-Advanced Java Bot with a ton of feactures and still more coming... join #Awesome Bot en espernet para más información.. | factids + lastseen | [32] |
nibblrjr | Kirjava | Ninguno | Cross-platform | Javascript | ? | ? | marco bot para crear comportamiento personalizado dinámicamente | Bot framework | [33] |
node-irc | Martyn Smith | GPLv3 | Unix-like | Javascript | ? | 2015-01-16 (0.3.9) | Nodo- nativo no bloqueo | Biblioteca NodeJS IRC. | [34] |
PircBot | Paul Mutton | GPL | Cross-platform | Java | 2001-08-01 | 2009-12-14 (1,5.0) | Marco para crear bots | framework to create bots | [35] |
pmxbot | YouGov, Jamie Turner, Chris Mulligan | MIT | Unix-like | Python 3 | ? | ? | Diseñado para ser extensible para una red IRC de trabajo | conversación, búsqueda, juegos | [36] |
Ruby-rbot | ruby-rbot | GPL | Unix-like | Ruby | ? | ? | sistema de plugin flexible | Twitter < RSS feeds, búsquedas, juegos | [37] |
Rubybot | umby24 | GPL-3.0 | Cross-platform | Ruby | ? | 2013-10-30 (4.2) | Simple, pero fácilmente extensible. | gestión de usuarios | [38] |
Schongo | Selig, Posiden, Wil | ? | Cross-platform | Python 3 | ? | ? | Centrarse en la simplicidad, sistema de módulos altamente extandables, ciclo de desarrollo rápido | Internet búsquedas | [39] |
Sombra | Aaron Blakely | MIT | Cross-platform | Perl | 2012-08-31 | 2022-06-09 | plugins recargables, gestión de canales, información meteorológica, conexión de metadatos, RSS y más. | multiusos, marco de bot | [40] |
Shocky | Shockah, clone1018 | GPL-2.0 | Cross-platform | Java | ? | ? | A Muy avanzado Java irc bot, que soporta todo tipo de cosas | gestión de usuarios, factids, juegos, sistema karma | [41] |
Sircbot | Alpine Linux | GPL-2.0 | Unix-like | C (Lua scriptable) | ? | 2011-12-15 | Bot IRC simple para guiones de shell y lua | ? | git wiki |
Sopel | Dgw, Elsie Powell, Dimitri Molenaars, Elad Alfassa, Ari Koivula | EFLv2 | Cross-platform | Python | 2012-07-15 (3.0.0) | 2020-08-04 (7.0.6) | SSL, (un)loading of plugins at runtime, threaded, user/channel/plugin settings database, Python 3 support. (Formerly Willie; basado originalmente en phenny) | Twitter & otros feeds, búsquedas en Internet, meetingbot, información de enlace | [42] |
Tennu | Havvy (Ryan Scheel) | ISC | Cross-platform | Javascript | 2012-03-08 (1.0.0) | 2016-06-22 (4.9.0) | Node.js, arquitectura Plugin, Promesa impulsada | gestión de usuarios | [43] |
Ultros | gdude2002 y rakiru | Licencia artística 2.0 | Cross-platform | Python2 | 2013-04-08 (Git) | 2014-09-25 (1.1.0+ - ver commits) | Python IRC bot con un plugin extensible y sistema de protocolo, y un gestor de paquetes. También soporta el silencio. | Internet búsquedas, juegos | git site |
Vikingo Bot | Tor Henning Ueland | GPL-3.0 | Unix-like | PHP | ? | 2013-10-09 | Simple bot IRC basado en PHP con soporte para servidores IRC seguros y soporte plugin | Bot Estadísticas | [44] |
Yauib | Julien Palard | BSD simplificada | Cross-platform | Python | 2011-03-22 | ? | Los plugins se pueden escribir en cualquier idioma | toma todos los pubmsg y priv y trata de igualar la primera palabra como un comando a un directorio con archivos exec y el resto como parámetros | [45] |
En la cultura popular
- La canción del 2006 de Basshunter, Boten Anna, es sobre un usuario de IRC femenino equivocado para un bot IRC
Contenido relacionado
Tarjeta perforada
CPython
Arquitectura Harvard