Hi,
the last day or two I've been playing around with the idea of adding some gateway functionality to the chat system. By that I mean to add functionality to the server to log into chat networks (like a Jabber server) on account of users joining the game and relaying messages. It'd be awesome to be able to chat a little with people not actually in the game as well as saying hello to people I know from the game without actually having to start it myself.
I think intercepting messages sent by people logged into MaNGOS and send them to somewhere else is pretty straight forward. It's the other way around I currently can't figure out. If I understand Player::BuildPlayerChat correctly, only an ID is transmitted, not a string representing the user name. Is that so? Language and GIUD are transferred twice, does that maybe leave some room to transmit yet-untranslated names or something like that, that can be used for the purpose of transmitting a not really existing user name?
WorldObject::BuildMonsterChat on the other hand transfers a mob's name (apparently along it's ID). I have absolutely no idea how that would look like in-game. Can one reply to that? (How) Can one distinguish between a monster-whisper and a player-whisper? Especially interesting: Can one reply to it?
Regards,
-octo