Beispiel #1
0
        public static void WriteLog(string msg, LOG_LEVEL logLevel = LOG_LEVEL.DEBUG)
        {
            switch (logLevel)
            {
            case LOG_LEVEL.INFO:
                MainLogger.Info(msg);
                break;

            case LOG_LEVEL.ERROR:
                MainLogger.Error(msg);
                break;

            case LOG_LEVEL.DEBUG:
                MainLogger.Debug(msg);
                break;

            case LOG_LEVEL.WARN:
                MainLogger.Warn(msg);
                break;

            case LOG_LEVEL.FATAL:
                MainLogger.Fatal(msg);
                break;
            }
        }
Beispiel #2
0
        void OnPacketReceived(ClientSession session, EFBinaryRequestInfo reqInfo)
        {
            MainLogger.Debug(string.Format("세션 번호 {0} 받은 데이터 크기: {1}, ThreadId: {2}", session.SessionID, reqInfo.Body.Length, System.Threading.Thread.CurrentThread.ManagedThreadId));

            var packet = new ServerPacketData();

            packet.SessionID  = session.SessionID;
            packet.PacketSize = reqInfo.Size;
            packet.PacketID   = reqInfo.PacketID;
            packet.Type       = reqInfo.Type;
            packet.BodyData   = reqInfo.Body;

            Distribute(packet);
        }
        void OnPacketReceived(ClientSession session, EFBinaryRequestInfo reqInfo)
        {
            MainLogger.Debug($"세션 번호: {session.SessionID}, 받은 데이터 크기: {reqInfo.Size}, ThreadId: {System.Threading.Thread.CurrentThread.ManagedThreadId}");

            if (reqInfo.PacketID == (UInt16)PACKETID.SIMPLE_CHAT)
            {
                var sendPacket = new SimpleChatPacket();
                sendPacket.SetValue(reqInfo.Body);

                foreach (var client in GetAllSessions())
                {
                    client.Send(sendPacket.Data, 0, sendPacket.Data.Length);
                }
            }
        }
Beispiel #4
0
        void OnPacketReceived(ClientSession session, EFBinaryRequestInfo reqInfo)
        {
            MainLogger.Debug($"세션 번호: {session.SessionID}, 받은 데이터 크기: {reqInfo.Size}, ThreadId: {System.Threading.Thread.CurrentThread.ManagedThreadId}");

            if (reqInfo.PacketID == (UInt16)CSBaseLib.PACKETID.PACKET_ID_ECHO)
            {
                var sendPacket = new EchoResPacket();
                sendPacket.SetValue(reqInfo.Body);
                session.Send(sendPacket.Data, 0, sendPacket.Data.Length);
                return;
            }
            else if (reqInfo.PacketID == (UInt16)CSBaseLib.PACKETID.PACKET_ID_SIMPLE_CHAT)
            {
                var sendPacket = new SimpleChatPacket();
                sendPacket.SetValue(reqInfo.Body);

                foreach (var client in GetAllSessions())
                {
                    client.Send(sendPacket.Data, 0, sendPacket.Data.Length);
                }

                return;
            }
            else if (reqInfo.PacketID == (UInt16)CSBaseLib.PACKETID.PACKET_ID_CHAT_REQ)
            {
                var responsePkt = MessagePackSerializer.Deserialize <CSMsgPackPacket.ChatReqPkt>(reqInfo.Body);

                var requestPkt = new CSMsgPackPacket.ChatReqPkt();
                requestPkt.UserID = responsePkt.UserID;
                requestPkt.Msg    = responsePkt.Msg;

                byte[] buffer     = MessagePackSerializer.Serialize(requestPkt);
                var    sendPacket = MakePacket.Create(CSBaseLib.PACKETID.PACKET_ID_CHAT_NTF, buffer);
                session.Send(sendPacket, 0, sendPacket.Length);
            }

            var packet = new ServerPacketData();

            packet.SessionID    = session.SessionID;
            packet.SessionIndex = session.SessionIndex;
            packet.PacketSize   = reqInfo.Size;
            packet.PacketID     = reqInfo.PacketID;
            packet.Type         = reqInfo.Type;
            packet.BodyData     = reqInfo.Body;

            Distribute(packet);
        }
Beispiel #5
0
        void OnPacketReceived(ClientSession session, EFBinaryRequestInfo reqInfo)
        {
            MainLogger.Debug(string.Format("세션 번호 {0} 받은 데이터 크기: {1}, ThreadId: {2}", session.SessionID, reqInfo.Body.Length, System.Threading.Thread.CurrentThread.ManagedThreadId));

            if (reqInfo.PacketID == (Int16)PACKETID.REQ_LOGIN)
            {
                RequestLogin(session.SessionID, session.SessionIndex, reqInfo.Body);
                return;
            }


            var packet = new ServerPacketData();

            packet.SessionID    = session.SessionID;
            packet.SessionIndex = session.SessionIndex;
            packet.PacketSize   = reqInfo.Size;
            packet.PacketID     = reqInfo.PacketID;
            packet.Type         = reqInfo.Type;
            packet.BodyData     = reqInfo.Body;

            Distribute(packet);
        }
 void OnPacketReceived(GameServerSession session, EFBinaryRequestInfo reqInfo)
 {
     MainLogger.Debug(string.Format("[GameServer]세션 번호 {0} 받은 데이터 크기: {1}, ThreadId: {2}", session.SessionID, reqInfo.Body.Length, System.Threading.Thread.CurrentThread.ManagedThreadId));
 }