views:

175

answers:

1

We are currently starting to build a client-server system which will see 10 or more Apple iPad client devices communicating to a central Windows server over a wireless LAN.

We wanted to some existing plumbing (.NET remoting/WCF/web services/etc) that would allow us to implement a reliable, secure solution without having to start at a low level (e.g. sockets) and recreate the wheel.

One of the major requirements that complicates this scenario is that unlike a traditional web service, the windows server needs to be able to arbitrarily notify the clients whenever certain events occur -- so it is not a simple request/response scenario like the web.

Initially, we were going to use Windows clients, so our plan was to use the full-duplex mode of .NET WCF over HTTP|TCP. But now using the iPad, we don't have any of the WCF infrastructure.

So my question is: what is the best way to allow an iPad and a Windows server to (securely) communicate over a LAN, with each device able to initiate communication to the other? Should it involve Bonjour services?

Am I stuck writing low-level socket code? Thanks!

A: 

HTTP long-polling should be relatively easy to implement on both the server and client side. Tomek on Software has some details on implementing long polling on WCF using a Silverlight client. It shouldn't be too difficult to implement an iOS client

rpetrich