Ejemplo n.º 1
0
        public static AphidObject UdpSend(AphidObject clientObj, AphidObject datagramObj, AphidObject hostObj, AphidObject portObj)
        {
            var host = (string)hostObj.Value;
            var address = GetIPV4Address(host);
            var port = (decimal)portObj.Value;
            var ep = new IPEndPoint(address, (int)port);
            var buffer = AphidByteConverter.ToBytes(datagramObj);
            var client = (UdpClient)clientObj.Value;
            client.Send(buffer, buffer.Length, ep);

            var datagram = new Datagram()
            {
                LocalPort = ep.Port,
                RemotePort = (int)port,
                RemoteHost = host,
                Data = buffer,
            };

            return AphidObject.ConvertFrom(datagram);
        }
Ejemplo n.º 2
0
        public static AphidObject UdpReceive(UdpClient client, decimal port)
        {
            var ep = new IPEndPoint(IPAddress.Any, (int)port);
            var buffer = client.Receive(ref ep);

            var datagram = new Datagram()
            {
                LocalPort = (int)port,
                RemotePort = ep.Port,
                RemoteHost = ep.Address.ToString(),
                Data = buffer,
            };

            return AphidObject.ConvertFrom(datagram);
        }