add privmsg and channel support