Ex Machina is proud to present PlayToTV, the world’s most versatile and proven platform for second screen interactivity and social gaming. PlayToTV unites Ex Machina’s decade of multiplayer gaming experience with the changing way people consume and interact with media: two screens, multitasking, communicating, connected always and anywhere.

PlayToTV Features

PlayToTV supports hundreds of thousands of people to simultaneously and synchronously interact around live, linear and on demand content. PlayToTV supports any TV type and via its HTML5-based client core is compatible with smartphones, tablets, computers and connected TVs.

PlayToTV includes all relevant features for second screen use, including prediction, poll, rating, vote and quiz as well as communication capabilities, product placement, interactive ads, tournaments and various synchronisation methods. A director client for content creation, management and scheduling is included as well, meaning PlayToTV is an end-to-end solution for broadcasters, production companies and brands looking for a truly meaningful second screen experience. The video below shows the various ways in which PlayToTV can be used to make simultaneous consumption of TV and online activity more meaningful and valuable.

PlayToTV allows consumers to play along with their favorite TV content while competing against friends and other people sharing the experience. It enables like-minded fans to network and assemble communities around their favorite TV programs, games and events:

  • Poll, Rate, Vote, Predict, Share, see friends choice live with real time statistics
  • Quizzes, Trivia, Games, Prizes and Leaderboards, synchronized in real time
  • Texting, sharing and commenting on friends, choices and results
  • Rewarding interaction through an integrated loyalty system
  • Check-in on favorite shows and formats
  • Push relevant and synchronized information
  • Integration with coupon and e-commerce systems

PlayToTV TV Content

PlayToTV offers a unique cross-platform experience, allowing users to compete with one another regardless of device:

  • Web
  • Mobile
  • Tablet
  • Connected TV

PlayToTV includes a reference HTML5 client suitable for all these devices and support for all main interaction types. It is template based and can easily be adjusted to a specific look and feel for a project.

For more custom experiences, PlayToTV Client APIs are available that can be implemented in external websites or native apps.

Lees verder

Director Client & Sync

A key ingredient to any second screen project is content. The right content at the right time.

PlayToTV includes Director Client, a fully web-based management system that has all the features producers & webmasters require: content preparation, scheduling, live production, real time statistics and reports. It offers full control, pre-show as well as live, of creating, editing and triggering all events in the PlayToTV platform. It can also feed data to broadcast play-out systems, allowing for on-the-fly rendering of data from second screen users.

PlayToTV Sync

Synchronization is another key element, which can make or break a second screen experience. PlayToTV includes several methods of synchronization of the platform, the client and the content, including audio sync. Audio sync is offered in two flavors: fingerprinting and watermarking. For more information, see below:

This video demonstrates several use cases in which audio sync enhances the second screen experience. Ex Machina has implemented both audio and watermark based audio synchronisation in PlayToTV and can offer both.

Lees verder


The PlayToTV platform has been designed with scalability and robustness in mind as the primary design goals. PlayToTV’s architecture uses 6 core components: gatekeepers, core servers, push servers, database servers, messaging servers and async processing servers.

PlayToTV can be set up without any single points of failure. Even with a limited amount of physical machines a lot of fail-over and redundancy is built into the overall system to make sure applications running on the PlayToTV platform can host high loads and do so consistently and reliably while maintaining an acceptable quality of service.

See below for a more detailed technical overview.

Gatekeeper Servers
The gatekeeper servers are the first point of contact for PlayToTV enabled clients and are primarily responsible for maintaining an acceptable quality of service and balancing clients across all available servers. Gatekeeper servers do so by providing clients with a list of web service endpoints if, and only if, maximum capacity is not reached. If maximum capacity is reached the client is notified that the service is at capacity. Maximum capacity in this context is either the maximum licensed capacity or the highest possible capacity at which the periodically measured quality of service (QoS) remains acceptable, whichever is reached first.

Once a client passes the gatekeeper server it will start talking directly to the other services. This architecture ensures that even overloaded gatekeeper servers will not interrupt or degrade the service for consumers that are already connected to the platform.

Core Servers
The core PlayToTV services are RESTful Web Services that expose all PlayToTV functionality to connected clients through a public API. The API uses standard HTTP requests and JSON (ww.json.org) as its data format.

Clients are expected to remain sticky to one specific core service instance until that instance becomes unavailable or request roundtrip times reach a certain maximum indicating the instance is under more load than it can comfortably handle. This stickiness allows for user specific instance local caching to be as effective as possible. All state other than instance local caching is distributed and does not require clients to remain on a specific server instance. In other words, instance stickiness is an optimization rather than a requirement.

Asynchronous Processing
The PlayToTV makes heavy use of processing non-critical workload asynchronously using workload queues and consumers, typically processed by dedicated instances to offload the servers that are performing application critical operations. This allows for more efficient use of available hardware resources as well as avoiding issues with non-critical operations interrupting or degrading critical ones.

Work that typically qualifies as non-critical are various forms of data aggregation, real-time statistics on a best effort basis and user specific notification such as friend, achievement and other notifications.

Additionally, job scheduling is used for automatically triggering interactions for prerecorded shows as well as internal monitoring and housekeeping.

Push Servers
The PlayToTV push servers are server instances dedicated to pushing notifications and state updates to connected clients. The push servers are highly optimized servers that use WebSockets as the preferred technology with HTTP polling as a fallback for client platforms that do not support WebSockets.

Push server are isolated from the core server instances because they are specifically optimized to push data to all or to large groups of connected clients in an as short as possible amount of time. On a cluster with loads below maximum capacity it can generally be guaranteed that push data reaches all clients within 1 to 2 seconds after a director triggers an event or interaction.

All services use the PlayToTV persistence cluster for data storage and retrieval. The persistence cluster consists of two or more servers that host instances of our document database. The database cluster can be configured in such a way that there are no single point of failure throughout the entire persistence solution.

Cloud hosting
The PlayToTV platform was designed to be hosted on cloud environments in order to be able to easily scale up and down to a specific target capacity.

Given the nature of most play along concepts where the service is only required to up for a limited amount of time, say an hour every day or week, the cloud computing approach also reduces hosting costs since it allows you to pay for server resources only during times when these resources are actually required. Ex Machina typically requires between 1 and 2 hours setting up all instances and warming up the system and load balancers. In frequent or continuous use scenario’s PlayToTV can also be deployed on servers that are permanently available.

Lees verder