public async Task<byte[]> Receive(IPEndPoint remoteHost) { var receiver = new UdpSocketReceiver(); byte[] data = new byte[1]; receiver.MessageReceived += (sender, args) => { // get the remote endpoint details and convert the received data into a string data = args.ByteData; }; await receiver.StartListeningAsync(remoteHost.Port); System.Console.WriteLine(System.DateTime.Now.ToString() + "<<< " + remoteHost); System.Console.WriteLine(FormatterHelper.Deserialize(data).ToString()); System.Console.WriteLine(); return data; }
public async void Connect() { try { if (UdpClient != null) { try { await UdpClient.StopListeningAsync(); UdpClient.Dispose(); } catch(Exception ex) { if (IsDebug) { System.Diagnostics.Debug.WriteLine(ex.Message); } } } UdpClient = new UdpSocketReceiver(); UdpClient.MessageReceived += OnMessageReceived; } catch (SocketException ex) { if (IsDebug) { System.Diagnostics.Debug.WriteLine(ex.Message); return; } } await UdpClient.StartListeningAsync(LocalEndpoint.Port); try { ConnectRequest(); } catch(Exception ex) { if (IsDebug) { System.Diagnostics.Debug.WriteLine(ex.Message); } } }
public ServerConnection() { _udpReceiver = new UdpSocketReceiver(); _udpReceiver.StartListeningAsync(9875); _udpReceiver.MessageReceived += MessageReceivedCallback; }