public static void ReceiveLog(SOEClient sender, byte[] command) { // Setup a reader SOEReader reader = new SOEReader(command); reader.ReadHostUInt16(); // Get the manager and message string manager = reader.ReadASCIIString().Replace(".log", ""); string message = reader.ReadASCIIString(); // Get the logger for the manager ILog log = Server.Logger.GetLogger(manager); int clientId = sender.GetClientID(); string username = AccountManager.GetAccount(sender).Username; // Is this a critical error? if (manager == "ClientCriticalError") { log.ErrorFormat("[{0}, {1}] {2}", clientId, username, message); } else { log.InfoFormat("[{0}, {1}] {2}", clientId, username, message); } }
public void HandleMessage(SOEClient sender, byte[] rawMessage) { // Read the message... SOEReader reader = new SOEReader(rawMessage); ushort opCode = reader.ReadHostUInt16(); // Make the message SOEMessage message = new SOEMessage(opCode, rawMessage); // Handle it HandleMessage(sender, message); }
public static void HandleCommand(SOEClient sender, byte[] command) { // Setup a reader SOEReader reader = new SOEReader(command); // Get the command code ushort commandOpCode = reader.ReadHostUInt16(); // Handle switch (commandOpCode) { case ((ushort)ClientLogCommands.Log): ClientLogManager.ReceiveLog(sender, command); break; default: Log.DebugFormat("Received unknown command! {0:X2}", commandOpCode); break; } }