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);
    }
コード例 #3
0
    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));
    }
コード例 #4
0
    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);
    }