Ejemplo n.º 1
0
        protected override void Discover()
        {
            var localIP       = UdpClient.GetLocalIPAddress();
            var localEndpoint = new IPEndPoint(IPAddress.Parse(localIP), 3672);

            DISCOVER_REQUEST[8]  = localEndpoint.Address.GetAddressBytes()[0];
            DISCOVER_REQUEST[9]  = localEndpoint.Address.GetAddressBytes()[1];
            DISCOVER_REQUEST[10] = localEndpoint.Address.GetAddressBytes()[2];
            DISCOVER_REQUEST[11] = localEndpoint.Address.GetAddressBytes()[3];
            DISCOVER_REQUEST[12] = (byte)(localEndpoint.Port >> 8);
            DISCOVER_REQUEST[13] = (byte)localEndpoint.Port;

            var udpClient = new UdpClient();

            udpClient.BindSocket(localEndpoint.Port.ToString());
            udpClient.DataReceived += SocketDataReceived;

            Task.Run(async() =>
            {
                await udpClient.Send(new HostName("224.0.23.12"), "3671", DISCOVER_REQUEST);
                await Task.Delay(5000);

                udpClient.DataReceived -= SocketDataReceived;
                udpClient.Dispose();
            });
        }
Ejemplo n.º 2
0
        public KnxNetTunnelingConnection()
        {
            var localIP = UdpClient.GetLocalIPAddress();

            _localEndpoint = new IPEndPoint(IPAddress.Parse(localIP), 3671);
        }