public ConfiguratorViewModel() { configuration = Configuration.LoadConfiguration(); if (configuration is null) { configuration = new Configuration(); } _devices = new ObservableCollection <Device>(configuration.Devices); cancTokenSource = new CancellationTokenSource(); broadcaster = new Thread(() => UdpBroadcaster.Broadcast(new Server_Advertisement_Message(), cancTokenSource.Token)); server = new TcpServer(ServerMode.CONFIGURATION_MODE); //_selectedSSID = configuration.SSID; }
/// <summary> /// Handle an event that should be treated as a UID being successfully read. /// </summary> /// <param name="payload">The payload to send with the event.</param> public void HandleUidEvent(byte[] uid) { byte[] payload = PreferredFormatter.GetPayload(uid); Log.InfoFormat("Using payload '{0}'.", BitConverter.ToString(payload).Replace("-", string.Empty)); if (UseLoopback) { UdpBroadcaster.BroadcastLoopback(payload, Port); } else { UdpBroadcaster.Broadcast(payload, Port, IPAddress, NetworkInterface); } }
public void CanStart() { const string TestData = "pwerowerower"; using (UdpBroadcaster caster = new UdpBroadcaster(47777)) using (UdpBroadcastListener listener = new UdpBroadcastListener(47777)) { listener.StartListen(); caster.SetData(TestData); caster.Broadcast(); Thread.Sleep(1000); var pkt = listener.GetPackets(); foreach (var p in pkt) { Console.WriteLine($"{p.Data} {p.Sender}"); Assert.AreEqual(TestData, p.Data); } Assert.AreEqual(1, pkt.Length); } }