public void SendMessage(IClientMessage message, bool compress = false, byte channel = 0, bool delay = true) { var protocolPacket = new ProtocolPacket(message, message.Type, compress, channel); if (!delay) { SendPacket(protocolPacket); } else { _packetQueue.EnqueueOutgoing(protocolPacket); } }