Age | Commit message (Collapse) | Author | |
---|---|---|---|
2009-01-08 | rfc2812: better handling of incomplete mode lines | Giuseppe Bilotta | |
Sometimes the bot may receive incomplete or malformed mode lines. This can be seen for example by kicking repeatedly and at very short intervals the bot from a channel with +l set to some numbers (at least on freenode). We (don't) handle these malformed modelines by skipping them rather than crashing. | |||
2009-01-07 | rfc2812: handle server ERROR | Giuseppe Bilotta | |
2008-08-11 | rfc2812: always return the actual Channel or User when handled | Giuseppe Bilotta | |
For consistency, all delegations now return the actual Channel object in data[:channel] and the actual User object in data[:nick]. | |||
2008-08-11 | rfc2812: handle ERR_NOSUCHNICK and ERR_NOSUCHCHANNEL | Giuseppe Bilotta | |
Delete the corresponding user/channel from the server list (if present), and notify the client about the error. | |||
2008-08-11 | rfc2812: create channels and users for al commands when needed | Giuseppe Bilotta | |
Always create a user or channel when we receive information about it. This makes server message parsing much more robust (no more crashes about NilClass not having user/channel methods) but has a few subtle implications about the server state: for example, channels may exist in the Server object even when the bot is not in the channel itself. | |||
2008-08-10 | + handle WHOIS queries | Giuseppe Bilotta | |
The bot now exposes a whois(nick) method to make WHOIS queries to the server. The extended syntax whois(nick, server) is also supported, allowing another server to be queried (this is useful to retrieve info which is only available on nick's server, such as idle time and signon date). Most if not all RFC-compliant replies are handled, although some of the data received is currently ignored. Non-RFC extended replies such as nickserv identification status are not hanlded yet, since they are highly server-specific, both in numeric reply choice (e.g. 307 vs 320) and in reply message syntax and meaning. A new WhoisMessage is also introduced, for plugin delegation. The source is the originating server, the target is the user for which information was requested. A #whois() method is provided holding all retrieved information. | |||
2008-08-10 | rfc2812.rb: support RPL_AWAY reply | Giuseppe Bilotta | |
2008-08-09 | + support channel URL and creation time | Giuseppe Bilotta | |
2008-06-28 | New IRC framework: allow RPL_TOPIC(_INFO) for channels we are not on, since ↵ | Giuseppe Bilotta | |
some networks allow it | |||
2008-06-23 | rfc2812.rb: skip unknown channel modes altogether | Giuseppe Bilotta | |
Some servers set non-advertized channel modes. Since we cannot handle them (as we don't know what type they are) and setting them crashes the bot, we remove them. | |||
2008-06-23 | rfc2812.rb: warn about unhandled numeric replies too | Giuseppe Bilotta | |
2008-06-23 | rfc2812.rb: refactor MODE parsing to use it for RPL_CHANNELMODEIS (324) too | Giuseppe Bilotta | |
2008-06-18 | rfc2812: be compatible with ruby < 1.8.7 | Giuseppe Bilotta | |
String#each_char is only available in ruby 1.8.7, so use each_byte followed by .chr | |||
2008-06-18 | rfc2812: fix MODE line parsing | Giuseppe Bilotta | |
2008-05-01 | rfc2812.rb: handle mode changes like -o+b | Giuseppe Bilotta | |
2008-04-13 | rfc2812: parse User mode changes, even though they aren't handled yet | Giuseppe Bilotta | |
2008-04-13 | rfc2812: clean up channel mode handling | Giuseppe Bilotta | |
2008-04-12 | + WelcomeMessage class | Giuseppe Bilotta | |
2008-03-11 | Documentation cleanups | Giuseppe Bilotta | |
Fix typos, be more rdocish, and use the README as the main file | |||
2008-02-15 | rfc2812: fix a bug in Client.reset | Giuseppe Bilotta | |
similarly to commit a13ef0352, an empty user should be set with *!*@* | |||
2008-02-13 | rfc2812: fix a bug in Client.user initialization | Giuseppe Bilotta | |
2007-11-06 | New Irc Framework: methods to convert channel user modes (op, voice, etc) ↵ | Giuseppe Bilotta | |
from mode (o, v, ...) to prefix (@, +, ...) and back | |||
2007-09-13 | more rdoc-ification | Giuseppe Bilotta | |
2007-07-31 | Store the real_name information from WHO replies | Giuseppe Bilotta | |
2007-07-31 | New IRC Framework: WHO the channels we join, so that we get as much user ↵ | Giuseppe Bilotta | |
information as possible about the user on channel | |||
2007-05-10 | Be slightly less anal about non-RFC-compliant MOTD, and issue a warning ↵ | Giuseppe Bilotta | |
instead of causing an error further down | |||
2007-04-06 | New IRC Framework: topic setter should be a Netmask, not a User. Also ↵ | Giuseppe Bilotta | |
improve display of Netmasks with unknown (generic) user/host components | |||
2007-04-06 | * (rfc2812) fixed 'Welcome' message parsing | Dmitry Kim | |
2007-03-16 | Server hostname was not being set properly | Giuseppe Bilotta | |
2007-03-08 | Previous attempt at cleaning up the prefix matcher were too restrictive, try ↵ | Giuseppe Bilotta | |
using a different approach | |||
2007-03-05 | Previous commit wasn't that good, too restrictive. Relax, and differentiate ↵ | Giuseppe Bilotta | |
between user id and mask | |||
2007-03-05 | Rework netmask/hostname detection code to work around non-RFC-compliant servers | Giuseppe Bilotta | |
2007-02-20 | Use ASCII KCODE to prevent problems like missing characters or matching ↵ | Giuseppe Bilotta | |
failures when clients send messages in something else than UTF-8 | |||
2007-02-20 | New IRC Framework: bot now keeps track of his nick correctly across disconnects | Giuseppe Bilotta | |
2007-02-18 | Initial steps towards a namespace rationalization | Giuseppe Bilotta | |
2007-02-18 | Plugin header boilerplating. | Giuseppe Bilotta | |
New plugin.header file provided, to be used as model for the header of new plugins. Many existing plugins have been adjusted to provide the same info the same way. I might have misplaced some information, so please let me know if this is the case. Also augmented a couple of copyright notices to include the 'rbot development team' alongside Tom Gilbert. | |||
2007-02-18 | More fixes for nickname handling on connection | Giuseppe Bilotta | |
2007-02-17 | New IRC Framework: optimize processing of server messages by using Symbols ↵ | Giuseppe Bilotta | |
instead of Strings, and try a better fix for mismatching nicks on Welcome messages | |||
2007-02-17 | New IRC Framework: fix initial handling and guessing of nick/user/host for ↵ | Giuseppe Bilotta | |
the bot on connection | |||
2007-02-10 | Handle server connections (e.g. through a bip proxy) that do not use the ↵ | Giuseppe Bilotta | |
full user hostmask as a prefix of user messages | |||
2007-01-06 | Irc framework: fix errors in filling up the user lists for channels | Giuseppe Bilotta | |
2006-10-28 | Move irc_send_penalty method of string in ircsocket.rb, and rework flood ↵ | Giuseppe Bilotta | |
control to be more reactive while still preventing excessive flood disconnections | |||
2006-10-27 | Penalty-based flood protection | Giuseppe Bilotta | |
2006-08-20 | Improve NOTICE and PRIVMSG robustness when target is not a simple channel or ↵ | Giuseppe Bilotta | |
user | |||
2006-08-10 | Fix exception when a QUITting user was not in the first channel of the list ↵ | Giuseppe Bilotta | |
of channels | |||
2006-08-05 | Fix a disconnect on topic change | Giuseppe Bilotta | |
2006-08-04 | Commit [369] was bogus. This one cleans up and sanitizes the Irc framework. | Giuseppe Bilotta | |
2006-08-04 | Fix stupid bug introduced with the new debugging messages. switch to ↵ | Giuseppe Bilotta | |
kind_of? instead of .class<= | |||
2006-08-03 | Fix bug when users changed nick | Giuseppe Bilotta | |
2006-08-03 | Lots of fixes all around, in preparation for the new auth coremodule | Giuseppe Bilotta | |