async void Start() { if (udpEvent == null) { udpEvent = new UDPMessageEvent(); udpEvent.AddListener(UDPMessageReceived); } Debug.Log("Waiting for a connection..."); socket = new DatagramSocket(); socket.MessageReceived += Socket_MessageReceived; HostName IP = null; try { var icp = NetworkInformation.GetInternetConnectionProfile(); IP = Windows.Networking.Connectivity.NetworkInformation.GetHostNames() .SingleOrDefault( hn => hn.IPInformation?.NetworkAdapter != null && hn.IPInformation.NetworkAdapter.NetworkAdapterId == icp.NetworkAdapter.NetworkAdapterId); await socket.BindEndpointAsync(IP, internalPort); } catch (Exception e) { Debug.Log(e.ToString()); Debug.Log(SocketError.GetStatus(e.HResult).ToString()); return; }
public void Run() { byte[] data = new byte[1024]; IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 12060); UdpClient newsock = new UdpClient(ipep); Console.WriteLine("Waiting for a client..."); IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0); data = newsock.Receive(ref sender); Console.WriteLine("Message received from {0}:", sender.ToString()); Console.WriteLine(Encoding.ASCII.GetString(data, 0, data.Length)); string welcome = "Welcome to my test server"; data = Encoding.ASCII.GetBytes(welcome); newsock.Send(data, data.Length, sender); while (true) { data = newsock.Receive(ref sender); Console.WriteLine("Next Message "); Console.WriteLine(Encoding.ASCII.GetString(data, 0, data.Length)); UDPMessageEvent?.Invoke(null, new UDPMessageRecievedEventArgs(Encoding.ASCII.GetString(data, 0, data.Length))); newsock.Send(data, data.Length, sender); } }
private void OnEnable() { if (udpEvent == null) { udpEvent = new UDPMessageEvent(); udpEvent.AddListener(UDPMessageReceived); } }
async void Start() { if (udpEvent == null) { udpEvent = new UDPMessageEvent(); udpEvent.AddListener(UDPMessageReceived); } socket.MessageReceived += OnMessage; await socket.BindServiceNameAsync(internalPort); }
public void ServerThread() { byte[] data = new byte[1024]; IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 12060); UdpClient newsock = new UdpClient(ipep); Console.WriteLine("Waiting for a client..."); IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0); while (true) { data = newsock.Receive(ref sender); UDPMessageEvent?.Invoke(this, new UDPMessageRecievedEventArgs(Encoding.ASCII.GetString(data, 0, data.Length))); newsock.Send(data, data.Length, sender); } }