ret << ' plainmessage=' << plainmessage.inspect
ret << fields if fields
ret << ' (identified)' if identified?
- ret << ' (addressed to me)' if address?
+ if address?
+ ret << ' (addressed to me'
+ ret << ', with prefix' if prefixed?
+ ret << ')'
+ end
ret << ' (replied)' if replied?
ret << ' (ignored)' if ignored?
ret << ' (in thread)' if in_thread?
@bot = bot
@source = source
@address = false
+ @prefixed = false
@target = target
@message = message || ""
@replied = false
return @address
end
+ # returns true if the messaged was addressed to the bot via the address
+ # prefix. This can be used to tell appart "!do this" from "botname, do this"
+ def prefixed?
+ return @prefixed
+ end
+
# strip mIRC colour escapes from a string
def BasicUserMessage.stripcolour(string)
return "" unless string
bot.config['core.address_prefix'].each {|mprefix|
if @message.gsub!(/^#{Regexp.escape(mprefix)}\s*/, "")
@address = true
+ @prefixed = true
break
end
}