public void Start (string name) { service = new NSNetService ("", "_debugger._tcp.", name, 0); service.Delegate = this; service.Publish (NSNetServiceOptions.ListenForConnections); }
bool TryCreateListener (NSNetService sender, out TcpListener listener) { try { listener = CreateListener((int)sender.Port); return true; } catch (Exception e) { Console.WriteLine (e); listener = null; return false; } }
public override void Published (NSNetService sender) { ThreadPool.QueueUserWorkItem (_ => { if(!TryCreateListener (sender, out tcpListener)) return; tcpListener.Start (); byte[] buffer = new byte[1024]; while (true) { using (TcpClient client = tcpListener.AcceptTcpClient ()) { using (NetworkStream strem = client.GetStream ()) { var size = strem.Read (buffer, 0, buffer.Length); string request = Encoding.ASCII.GetString (buffer, 0, size); RaiseRequestEvent (request); } } } }); }
public UIAirPlayActivity(NSNetService service) { device = service; }
public override void PublishFailure (NSNetService sender, NSDictionary errors) { Console.WriteLine ("PublishFailure {0}", errors); }