summaryrefslogtreecommitdiff
path: root/lib/rbot/message.rb
AgeCommit message (Collapse)Author
2008-09-05message.rb: fix the fix to message addressing logicGiuseppe Bilotta
This reverts commit b6bd9a24014ac9fbc822e9051f216f0506f24cd5 "message.rb: fix message addressing logic" since it actually breaks the validity for address? in a number of cases. Instead, add proper @address setting to NickMessage which is the only one getting it wrong presently.
2008-08-13message.rb: fix message addressing logicGiuseppe Bilotta
IRC messages which are not PRIVMSG or NOTICE (i.e. not UserMessage) are 'addressed' to the bot when they originate from it. Rather than putting this logic in each one of them (and forgetting about it for some, e.g. NICK messages), put it in BasicUserMessage. Compensate by always setting @address in UserMessage to test against target instead.
2008-08-10+ handle WHOIS queriesGiuseppe 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-09message.rb: correct @plainmessage and @message for CTCP messagesGiuseppe Bilotta
After CTCP parsing, @plainmessage was not defined correctly (as it still contained the CTCP command), and @plainmessage and @message were not being cleaned up correctly. This manifested itself e.g. with spurious \001ACTION and other strange unusual byte sequence popping up in markov-generated text. Fix by redefining @plainmessage and @message appropriately in CTCP handling.
2008-07-30message.rb: fix a thinko in inspect()Giuseppe Bilotta
2008-06-29message.rb: suppress warning about duplicate methodGiuseppe Bilotta
2008-06-29* fix handling of IDENTIFY_MSGGiuseppe Bilotta
When a server has IDENTIFY-MSG, we would expect identification in any PRIVMSG or NOTICE, even on those generated from the bot. This caused lots of spurious warnings, and would lead to mislogging when a bot-generated message started with + or -. Fix this by only handling IDENTIFY-MSG on server-generated messages.
2008-06-26message.rb: saner \#inspect() for BasicUserMessage and derivativesGiuseppe Bilotta
2008-06-24allow multi-line (artificial) messages be delegated and handledYaohan Chen
2008-06-24message handling: improve IRC format handling for received messagesGiuseppe Bilotta
Rather than stripping colors all around and keeping other format codes, we only strip initial and final formatting before parsing the message. We store the original, unstripped message in #logmessage() and a fully stripped copy of the message in #plainmessage() This means that most plugins will now have full formatting of arguments preserved, while stupid IRC usage of formatting whole lines will not interfere with bot usage. Plugins that need a fully stripped version of the message can still access it.
2008-06-23+ strip all colours and formatting when sending to a +c or +C channelGiuseppe Bilotta
2008-05-28changed m.thread to m.in_thread, with different semanticsYaohan Chen
m.in_thread indicates that the caller of delegate is in thread (and is handled by not creating another thread for m's mapped action)
2008-05-27add attribute BasicUserMessage#threadYaohan Chen
this specifies whether the message handler is to be threaded, and overrides the map option if non-nil.
2008-05-20Fix m.reply() regexp check for nick presence, which failed for nicks such as ↵Giuseppe Bilotta
unfo- or jsn-
2008-04-15IRC logging refactoringGiuseppe Bilotta
2008-04-13+ UnknownMessage classGiuseppe Bilotta
2008-04-13+ NamesMessage classGiuseppe Bilotta
2008-04-13rfc2812: parse User mode changes, even though they aren't handled yetGiuseppe Bilotta
2008-04-13+ ModeChangeMessage classGiuseppe Bilotta
2008-04-13+ MotdMessage classGiuseppe Bilotta
2008-04-12+ WelcomeMessage classGiuseppe Bilotta
2008-04-09message: force Irc color to be specificed with 2 digitsGiuseppe Bilotta
2008-04-07message: new 'ignored' propertyGiuseppe Bilotta
2008-03-27* handle invites properly -- forgot more than half the files :/Giuseppe Bilotta
2008-03-21message.rb: Regexp.escape nickname when embedding it in regexp, as nicknames ↵Yaohan Chen
can contain [ ] | etc
2008-02-22message.rb: #notify() methodGiuseppe Bilotta
2007-09-25message.rb: fix logmessage for CTCP ACTIONsGiuseppe Bilotta
2007-09-24message.rb: logmessage method to retrieve the message for logging purposesGiuseppe Bilotta
When logging messages, it is appropriate to remove color and identification prefixes (in networks that support it), but not the address prefix. Solve this by saving a copy of the message without the address prefix(es) removed, and use it in irclog*() methods.
2007-09-22message.rb: fix "I'm Stupid(TM)" bug in [1100]Giuseppe Bilotta
2007-09-12namespaces: move rbot-specific classes and modules from Irc::* to Irc::Bot::*Giuseppe Bilotta
2007-09-04New Auth Framework, New Irc Framework: convenience methods for Irc::User to ↵Giuseppe Bilotta
retrieve the associated BotUser and its data
2007-09-02message.rb: convenience method to get the botuser corresponding the message ↵Giuseppe Bilotta
source
2007-09-02* CTCP replies always use the same CTCP command. Use the new syntax to reply ↵Giuseppe Bilotta
to CTCP PING and TIME commands in basics
2007-09-02* (message.rb) CTCP commands may have no parametersGiuseppe Bilotta
2007-09-02+ cleaner support for CTCP commandsGiuseppe Bilotta
2007-08-30* (message.rb) dear tango_! i think i know what r1073 was. here's my version.Dmitry Kim
2007-08-30!!! (message.rb) dear tango_! i have no idea what r1073 is! -jsn.Dmitry Kim
2007-08-30message.rb: try to handle situations where the source isn't an Irc::UserGiuseppe Bilotta
2007-08-29Put the Irc attributes back where they belongGiuseppe Bilotta
2007-08-29Color codes and Irc.color(fg, bg) methods to ease color displayGiuseppe Bilotta
2007-08-29ColorRx: accept a color specification with no foreground colorGiuseppe Bilotta
2007-08-29Add Italic (\011) constant to complement Underline, Reverse and BoldGiuseppe Bilotta
2007-03-15* fixed a regexp for "identify-msg" server capability ("^" was missing)Dmitry Kim
2007-02-20Minor message optimizationsGiuseppe Bilotta
2007-02-05sendmsg improvements: plugins can now choose what to do with overlong ↵Giuseppe Bilotta
messages without having to resort to custom solutions
2007-02-04Minor optimization in message.rbGiuseppe Bilotta
2006-08-11nickokay now properly selectedGiuseppe Bilotta
2006-08-11nickreply and nickokay method, with option to let reply/okay behave like ↵Giuseppe Bilotta
this by default
2006-07-31First shot at the new Irc framework. Bot is usable (sort of), but not all ↵Giuseppe Bilotta
functionality may work as expected (or at all). If you are testing it, please report. Auth is known to be nonfunctional
2006-07-25Correct Underline and ReverseGiuseppe Bilotta