private void Form1_Load(object sender, EventArgs e) { UdpClient udpServer = new UdpClient(11000); IsUDPActive = true; Thread thrd_UDPServer = new Thread(delegate() { while (IsUDPActive) { var remoteEP = new IPEndPoint(IPAddress.Any, 11000); var data = udpServer.Receive(ref remoteEP); // listen on port 11000 LogMessage("receive data from " + remoteEP.ToString() + ":" + Encoding.ASCII.GetString(data)); string payload = devicename + "," + mac + "," + GetLocalIPAddress() + "," + tcpPort; string rcvddata = Encoding.ASCII.GetString(data); if (rcvddata.ToLower().Contains("ping cielo")) { udpServer.Send(Encoding.ASCII.GetBytes(payload), payload.Length, remoteEP); // reply back // IsUDPActive = false; objServer = new SocketServerAsync(tcpPort); objServer.OnSocketConnected += objServer_OnSocketConnected; objServer.OnMessageReceived += objServer_OnMessageReceived; } } }); thrd_UDPServer.IsBackground = false; thrd_UDPServer.Start(); }
public MainForm() { // Inicjalizacja komponentów InitializeComponent(); // inicjalizacja mServer mServer = new SocketServerAsync(); // Podłączączenie zdarzeń mServer.RaiseClientConnectedEvent += HandleClientConnected; // Client Connected mServer.RaiseTextReceivedEvent += HandleTextReceived; // Text Received mServer.RaiseClientDisconnectedEvent += HandleClientDisconnected; // Client Disconnected mServer.RaiseTextSendToAllEvent += HandleTextSendToAll; // Text Send To All mServer.RaiseServerStartEvent += HandleServerStart; // Server Start mServer.RaiseServerStopEvent += HandleServerStop; // Server Stop }