only interact over privmsg