private void Update() { if (!_stop) { if (messageReceived) { string temp = lastReceivedUDPPacket; if (temp != null && temp != "") { try { MagicRoomSmartToyManager.instance.updateFromUDPEvent(temp); //lastReceivedUDPPacket = null; messageReceived = false; } catch { print("message unreadable"); } finally { UdpStates udpstate = new UdpStates(); udpstate.e = new IPEndPoint(IPAddress.Parse(address), port);; udpstate.u = client; client.BeginReceive(new AsyncCallback(ReceiveCallback), udpstate); } } } } }
/// <summary> /// start the receiver /// </summary> public void StartReceiver() { _stop = false; client = new UdpClient(port); messageReceived = false; UdpStates udpstate = new UdpStates(); udpstate.e = new IPEndPoint(IPAddress.Parse(address), port);; udpstate.u = client; client.BeginReceive(new AsyncCallback(ReceiveCallback), udpstate); }
public void StartReceiver(int freq) { _stop = false; client = new UdpClient(port); messageReceived = false; UdpStates udpstate = new UdpStates(); udpstate.e = new IPEndPoint(IPAddress.Parse(address), port); udpstate.u = client; endpoint = new IPEndPoint(IPAddress.Parse(address), port); client.BeginReceive(new AsyncCallback(ReceiveCallback), udpstate); //StartCoroutine(listeningUDP(freq)); }
private void ReceiveCallback(IAsyncResult ar) { UdpClient u = client; IPEndPoint e = endpoint; Byte[] receiveBytes = u.EndReceive(ar, ref e); if (receiveBytes.Length > 0) { string receiveString = Encoding.ASCII.GetString(receiveBytes); Debug.Log("Received: " + receiveString); lastReceivedUDPPacket = receiveString; messageReceived = true; } UdpStates udpstate = new UdpStates(); udpstate.e = endpoint; udpstate.u = client; client.BeginReceive(new AsyncCallback(ReceiveCallback), udpstate); }