Example #1
0
 void ClientConn(object sender, NetEventArgs e)
 {
     m_lstReadTime = Sys_GetTime();
     m_lstSendTime = Sys_GetTime();
     m_state       = State.ST_Connected;
     Sys_Log("Connected:" + e.Client.ClientSocket.RemoteEndPoint);
 }
Example #2
0
 void TcpClientX_Received(object sender, NetEventArgs e)
 {
     if (_Received != null)
     {
         _Received(this, new ReceivedEventArgs(e.GetStream()));
     }
 }
Example #3
0
        private void OnReceiveTurnData(NetPeer peer, NetEventArgs args)
        {
            PacketTurnData message = PacketBase.Read <PacketTurnData>((NetDataReader)(args.Data));

            //UnityEngine.Debug.Log("Received data from player " + message.Sender);
            lockstep.Insert(message.Commands, message.Turn, message.Sender);
        }
Example #4
0
 /// <summary>
 /// 服务端接收消息回调
 /// </summary>
 private void _server_ReceiveMes(object e)
 {
     try
     {
         lock (HandCallBoxlockObj)
         {
             NetEventArgs einfo = e as NetEventArgs;
             if (einfo == null)
             {
                 return;
             }
             List <byte> Message       = einfo.MesContent;
             AppSession  ClientSession = einfo.Session;
             if (Message == null || ClientSession == null)
             {
                 return;
             }
             //读开关输入状态
             LogHelper.WriteCallBoxLog("已接受到按钮呼叫!");
             string IP = ((IPEndPoint)ClientSession.ClientSocket.RemoteEndPoint).Address.ToString();
             LogHelper.WriteCallBoxLog("接受到按钮盒" + IP + "呼叫!");
             CallBoxInfo CallBox = CoreData.AllCallBoxes.FirstOrDefault(p => p.CallBoxIP == IP);
             if (CallBox != null && Message[0] == 0x01 && Message[1] == 0x02)//按钮盒呼叫
             {
                 LogHelper.WriteCallBoxLog("开始处理按钮盒子呼叫!");
                 HandleCallBoxRequest(e, CallBox);
             }
         }
     }
     catch (Exception ex)
     { LogHelper.WriteErrorLog(ex); }
 }
Example #5
0
        void RecvData(object sender, NetEventArgs e)
        {
            string info = string.Format("recv data:{0} from:{1}.", e.Client.Datagram, e.Client);

            Console.WriteLine(info);
            Console.Write(">");
        }
Example #6
0
        private void ClientConn(object sender, NetEventArgs e)
        {
            string info = string.Format("Client:{0} connect server Session:{1}. Socket Handle:{2}",
                                        e.Client.ClientSocket.RemoteEndPoint.ToString(),
                                        e.Client.ID, e.Client.ClientSocket.Handle);

            //Console.WriteLine(info);
            //Console.Write(">");
            if (DebugShow)
            {
                rtbe1.SetText(info, true);
            }
            SocketStatus.Text      = e.Client.ID.ToString();
            SocketStatusLabel.Text = info;
            //throw new NotImplementedException();
            ListViewItem lvB      = new ListViewItem();
            int          lenIP    = e.Client.ClientSocket.RemoteEndPoint.ToString().IndexOf(':');
            int          lenPort  = (e.Client.ClientSocket.RemoteEndPoint.ToString().Length - lenIP) - 1;
            String       IPstring = e.Client.ClientSocket.RemoteEndPoint.ToString().Substring(0, lenIP).ToString();

            lenIP++;
            String PortString = e.Client.ClientSocket.RemoteEndPoint.ToString().Substring(lenIP, lenPort).ToString();

            lvB.Text = e.Client.ID.ToString();
            lvB.SubItems.Add(IPstring);
            lvB.SubItems.Add(PortString);
            lvB.SubItems.Add("Client Connect ... Ok!!!");
            lvB.SubItems.Add(String.Empty);
            AddItem(lvB);
            SessionCount.Text = String.Format("Current count of Client is {0}/{1}", ts.SessionCount, ts.Capacity);
            GameVarPool[e.Client.ID.ToString()] = sender;
        }
Example #7
0
        public void EventDisConnectedServer(object sender, NetEventArgs e)
        {
            RunFlag = false;
            TcpCli tc = (TcpCli)sender;

            tc.Connect();
        }
Example #8
0
        /// <summary>
        /// 连接断开处理
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnConnectClose(object sender, NetEventArgs e)
        {
            if (_macDic.ContainsKey(e.IP))
            {
                if (e.ConnectID == _macDic[e.IP])
                {
                    _macDic.Remove(e.IP);
                }
                else
                {
                    LogHelper.Debug(string.Format("设备网络连接断开未执行 IP:{0} OLD:{1} NEW:{2} ", e.IP, e.ConnectID, _macDic[e.IP]));
                    return;
                }
            }

            if (this.OnCommunicationStateChange != null)
            {
                OnCommunicationStateChange(sender, new CommunicationStateChangeArgs()
                {
                    CommunicationCode = this.CommunicationCode, CommunicationState = CommunicationState.Disconnect, RemoteIp = e.IP, RemotePort = e.Port, UniqueCode = e.IP, ConntecionId = e.ConnectID
                });
            }

            LogHelper.Debug(string.Format("设备网络连接断开 ConnectionId{0} MAC:{1} IP:{2} 端口号:{3} ", e.ConnectID, e.MAC, e.IP, e.Port));
        }
Example #9
0
        private void ClientClose(object sender, NetEventArgs e)
        {
            string info;

            if (e.Client.TypeOfExit == Session.ExitType.ExceptionExit)
            {
                info = string.Format("A Client Session:{0} Exception Closed.",
                                     e.Client.ID);
            }
            else
            {
                info = string.Format("A Client Session:{0} Normal Closed.",
                                     e.Client.ID);
            }
            UpdateUItoolStripButton(toolStripButtonStart, "Start Connect", Color.Red, Client.Properties.Resources.Red);
            UpdateUIToolStripTextBox(PortNo, true);
            UpdateUIToolStripTextBox(IPNo, true);
            UpdateUITextBox(SendData, true);
            UpdateUIButton(buttonSend, false);
            tc.Close();
            tc.Dispose();
            //Console.WriteLine(info);
            //Console.Write(">");
            rtbe1.SetText(info, true);
            //throw new NotImplementedException();
        }
Example #10
0
 private void cli_DisConnectedServer(object sender, NetEventArgs e)
 {
     if (DisConnectedServer != null)
     {
         DisConnectedServer(sender, e);
     }
 }
Example #11
0
 void cli_ConnectFailed(object sender, NetEventArgs e)
 {
     if (ConnectFailed != null)
     {
         ConnectFailed(sender, e);
     }
 }
Example #12
0
        /// <summary>
        /// Received turn information, simply forwards it to every other client.
        /// </summary>
        /// <param name="client">sender</param>
        /// <param name="args">wrapper containing a data reader</param>
        private void OnClientTurnData(NetPeer client, NetEventArgs args)
        {
            NetDataReader reader  = (NetDataReader)(args.Data);
            PacketRawData rawdata = new PacketRawData(reader.Data);

            GameServer.SendExcluding(rawdata, client);
        }
Example #13
0
 void server_Connected(IDataTransmit sender, NetEventArgs e)
 {
     //Log(sender.RemoteEndPoint.ToString() + " 连接成功");
     sender.ReceiveData += new NetEventHandler(sender_ReceiveData);
     //接收数据
     sender.Start();
 }
Example #14
0
        protected override void OnNetEvent(NetEventArgs e)
        {
            base.OnNetEvent(e);

            e.LogEvent.Level.Should().Be(_curLevel);
            e.LogMessage.Should().Be(_curTemplate);
        }
Example #15
0
 void server_Connected(IDataTransmit sender, NetEventArgs e)
 {
     //Log(sender.RemoteEndPoint.ToString() + " 连接成功");
     sender.ReceiveData += new NetEventHandler(sender_ReceiveData);
     //接收数据
     sender.Start();
 }
Example #16
0
        private void RecvData(object sender, NetEventArgs e)
        {
            try
            {
                ClientConfig temp = Newtonsoft.Json.JsonConvert.DeserializeObject <ClientConfig>(e.Client.Datagram);
                temp.Session = e.Client;

                string key = MakeDataTCP(e, temp);//查询或保存归我们管理的连接

                CreateServicePort(key, temp);

                if (temp.TransportToService != null)
                {
                    //有转发数据了
                    ShuJuHuiFa(temp);
                }
                //svr.Send(e.Client, "数据已收到");
            }
            catch (Exception ex)
            {
                //不是我们协议的内容,一律干掉。
                //svr.CloseSession(e.Client);
                svr.Send(e.Client, "协议不正确");
            }
        }
Example #17
0
        private void OnClientAuthenticated(NetPeer peer, NetEventArgs args)
        {
            PacketAuth message = PacketBase.Read <PacketAuth>((NetDataReader)(args.Data));

            PlayerManager.SetIdentity(new Player(message.ID, username));
            NetEventManager.Trigger(NetEventType.Authenticated, null);
        }
Example #18
0
 private void OnUserConnected(object sender, NetEventArgs e)
 {
     UserUpdateSet.Send(new UpdateSet()
     {
         Models     = this.Models.ToList(),
         ModelCount = this.Models.Count,
     }, RouterController.GetUser(e.User));
 }
Example #19
0
 private void cli_ReceivedDatagram(object sender, NetEventArgs e)
 {
     if (ReceivedDatagram != null)
     {
         ReceivedDatagram(sender, e);
     }
     Console.WriteLine(e.Client.Datagram);
 }
Example #20
0
 private void cli_ConnectedServer(object sender, NetEventArgs e)
 {
     if (ConnectedServer != null)
     {
         ConnectedServer(sender, e);
     }
     Console.WriteLine(System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "已成功连接到服务器。");
 }
Example #21
0
        void ClientConn(object sender, NetEventArgs e)
        {
            string info = string.Format("A Client:{0} connect server :{1}", e.Client,
                                        e.Client.ClientSocket.RemoteEndPoint.ToString());

            Console.WriteLine(info);
            Console.Write(">");
        }
Example #22
0
        private void OnConnect(NetPeer peer, NetEventArgs args)
        {
            NetEventManager.Trigger(NetEventType.Connected, args);
            PacketBase message = new PacketAuth(0, username, 0);

            GameClient.CurrentState = ClientState.Connected;
            GameClient.Send(message);
        }
Example #23
0
 /// <summary>
 /// 客户端已满
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 void ServerFull(object sender, NetEventArgs e)
 {
     //Must do it
     e.Client.Close();
     //日志记录
     ShareData.Log.Warn("服务端达到设定的最大连接数:" + svr.Capacity);
     pictureBox1.Image = global::GSSServer.Properties.Resources.GSSserver_over;
     notifyIcon1.Icon  = ((System.Drawing.Icon)(global::GSSServer.Properties.Resources.GSSserver_Nover));
 }
Example #24
0
        /// <summary>
        /// 客户端建立连接
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ClientConn(object sender, NetEventArgs e)
        {
            string info = string.Format("A Client:{0} connect server Session:{1}. Socket Handle:{2}",
                                        e.Client.ClientSocket.RemoteEndPoint.ToString(),
                                        e.Client.ID, e.Client.ClientSocket.Handle);

            Console.WriteLine(info);
            Console.Write(">");
        }
Example #25
0
        private void RecvData(object sender, NetEventArgs e)
        {
            string info = string.Format("recv data:{0} from:{1}.", e.Client.Datagram, e.Client);

            //Console.WriteLine(info);
            //Console.Write(">");
            rtbe1.SetText(info, true);
            //throw new NotImplementedException();
        }
Example #26
0
        private void OnUserDisconnected(object sender, NetEventArgs args)
        {
            var user = args.User;

            user.SetLocal <SharedDataService>(Key_Service, null);
            user.SetLocal <Dictionary <int, byte[]> >(Key_UserMap, null);
            user.SetLocal <Dictionary <int, double> >(Key_UserDateMap, null);
            user.SetLocal <int>(Key_UserId, 0);
        }
Example #27
0
        /// <summary>处理接收到的数据</summary>
        /// <param name="e"></param>
        protected internal override void ProcessReceive(NetEventArgs e)
        {
            if (e.Session == null)
            {
                e.Session = CreateSession();
            }

            base.ProcessReceive(e);
        }
Example #28
0
        internal void SetRemote(NetEventArgs e)
        {
            var ep = e.RemoteEndPoint as IPEndPoint;

            if ((ep == null || ep.Address.IsAny() && ep.Port == 0) && RemoteEndPoint != null)
            {
                e.RemoteEndPoint = RemoteEndPoint;
            }
        }
Example #29
0
 /// <summary>
 /// Connected事件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void tsh_Connected(object sender, NetEventArgs e)
 {
     if (!blConnected)
     {
         blConnected =true;
         //raise connect event
         OnConnectionStatusChanged(NetStatus.Connected);
     }
 }
Example #30
0
    public static void Trigger(NetEventType eventName, NetEventArgs args)
    {
        NetworkEvent e = null;

        if (instance.events.TryGetValue(eventName, out e))
        {
            e.Invoke(args);
        }
    }
Example #31
0
        private void ClientConn(object sender, NetEventArgs e)
        {
            string info = string.Format("A Client:{0} connect server :{1}", e.Client, e.Client.ClientSocket.RemoteEndPoint.ToString());

            //Console.WriteLine(info);
            //Console.Write(">");
            rtbe1.SetText(info, true);
            //throw new NotImplementedException();
        }
Example #32
0
 //接收数据并修改部分数据然后发送回去
 void sender_ReceiveData(IDataTransmit sender, NetEventArgs e)
 {
     string result;
     try
     {
         byte[] data = (byte[])e.EventArg;
         var json = encode.GetString(data);
         result = CRL.CacheServer.CacheService.Deal(json);
     }
     catch (Exception ex)
     {
         Log("处理数据出错:" + ex.Message);
         result = "error,服务器内部错误:" + ex.Message;
     }
     //发送数据
     var data2 = encode.GetBytes(result);
     sender.Send(data2);
 }
 private void Server_LostConnection(object sender, NetEventArgs e)
 {
     WriteLine("Lost user from: " + e.Client.IP.ToString());
 }
 private void Client_Disconnected(object sender, NetEventArgs e)
 {
     Online = false;
     Client.Dispose();
 }
 private void Server_NewConnection(object sender, NetEventArgs e)
 {
     WriteLine("New user from: " + e.Client.IP.ToString());
     Server.SendTcp(e.Client, Encoding.ASCII.GetBytes("%r" + CanvasSize.X + "," + CanvasSize.Y));
 }
Example #36
0
 void server_DisConnect(IDataTransmit sender, NetEventArgs e)
 {
     //Log(sender.RemoteEndPoint.ToString() + " 连接断开");
 }