コード例 #1
0
		public void Start (string name)
		{
			service = new NSNetService ("", "_debugger._tcp.", name, 0);

			service.Delegate = this;
			service.Publish (NSNetServiceOptions.ListenForConnections);
		}
コード例 #2
0
		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;
			}
		}
コード例 #3
0
		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);
						}
					}
				}
			});
		}
コード例 #4
0
ファイル: UIAirPlayActivity.cs プロジェクト: spouliot/airplay
 public UIAirPlayActivity(NSNetService service)
 {
     device = service;
 }
コード例 #5
0
		public override void PublishFailure (NSNetService sender, NSDictionary errors)
		{
			Console.WriteLine ("PublishFailure {0}", errors);
		}