> The following is a guest post. Jim Phelan is using WebSync to power a multi-platform real-time presentation app. If you have something to share with the WebSync community, please feel free to Contact Us.
When we started building Electric Slide: Present Anywhere we knew that high performance, realtime messaging was essential to the app’s success. Since Electric Slide lets presenters show PowerPoint presentations, documents and videos in near realtime from iPhones and iPads to web browsers and TVs, fast messaging was of critical importance. We were aiming at the sub 200ms range for commands getting all the way from an iPad or iPhone to our server and then to the connected clients. We also needed something that had a wide array of libraries, since we needed the tool to work in our native iOS app as well as in pretty much any web browser.
In my previous role at Stream57 (now part of InterCall) we relied on Flash Media Server and RTMP for realtime messaging, but in the evolving world of the web Flash is clearly no longer an option. At one point we tried to roll our own comet style server, but that task was formidable. When we started looking at options for Electric Slide our criteria for a library were pretty clear: we needed a library that was compatible with nearly every browser, had an iOS native SDK that we could do some pretty intense multithreading with, performed well in high latency or low bandwidth situations, fit with our target architecture (.NET), was scalable in a cost effective manner, had low latency and implemented some sort of channel based publish / subscribe pattern.
WebSync ended up doing the job quite well. Our architecture uses a combination of WCF services and WebSync for transactional type requests and realtime events, respectively. Essentially anything that happens in a broadcast uses WebSync. We use WebSync to manage our pool of document conversion servers as well. Since we convert any PowerPoint, Office or PDF document to HTML5, we have a group of converter servers alongside a master conversion mediator that dishes out conversion jobs to the converters. Users view realtime progress of their conversion jobs in the app - a status that is updated in a separate WebSync channel.
Overall we’re very happy with WebSync. We can’t say enough about how good the support has been – we pretty much get an instant response to every inquiry. It’s also nice to know that once we’re ready to move to Windows Server 2012 we’ll be able to take advantage of full websocket support.
Jim Phelan is co-founder of Elucidate, makers of Electric Slide. For more information on the app, please check out www.electricslide.net