# File lib/rbot/message.rb, line 46
    def initialize(bot, source, target, message)
      @msg_wants_id = false unless defined? @msg_wants_id

      @time = Time.now
      @bot = bot
      @source = source
      @address = false
      @target = target
      @message = BasicUserMessage.stripcolour message
      @replied = false

      @identified = false
      if @msg_wants_id && @bot.capabilities["identify-msg".to_sym]
        if @message =~ /([-+])(.*)/
          @identified = ($1=="+")
          @message = $2
        else
          warning "Message does not have identification"
        end
      end

      # split source into consituent parts
      if source =~ /^((\S+)!(\S+))$/
        @sourcenick = $2
        @sourceaddress = $3
      end

      if target && target.downcase == @bot.nick.downcase
        @address = true
      end

    end