unfortunately, a flaw in the overall design of tnet.
if you are not in the same channel, you must send private messages to the player name. another problem is keeping track of all players in all channels. there are threads covering both these issues though...
alternately, you could create a custom server packet and then respond to all players online (or in specific channels).
yes, it is possible. for me, i try to keep everything that is *non-database* in RFC's and use server packets for data that needs to be stored in mySQL.