Scalable synchronization of events among server and clients with varying lag-times
First Claim
1. A method of interacting with a plurality of mobile devices, the method comprising using a server comprising a memory coupled to a processor for:
- receiving input from each of the plurality of devices;
aggregating the input to create an aggregate result;
sending the aggregate result to each of the plurality of devices;
instructing each of the plurality of devices to calculate a delay time based on a server timepacket and to display the aggregate result after the delay time elapses; and
receiving a timepacket from each of the plurality of devices and replying with the server timepacket, thereby causing the plurality of devices to all display the aggregate result within seconds of each other.
5 Assignments
0 Petitions
Accused Products
Abstract
The invention relates generally to synchronizing functions on handheld devices and more particularly to precisely synchronizing a function among a large number of devices having multiple different platforms. The invention provides the ability to cause a large number of handheld devices to perform certain functions simultaneously, within seconds or fractions of a second of each other. In certain aspects, the invention provides an apparatus for synchronizing a function among devices, including one or more processors in communication with a memory and configured to, for each of the devices, send an event to the device, receive a timepacket, and send a return timepacket, thereby causing the device to receive the event and invoke the function after a delay.
52 Citations
20 Claims
-
1. A method of interacting with a plurality of mobile devices, the method comprising using a server comprising a memory coupled to a processor for:
-
receiving input from each of the plurality of devices; aggregating the input to create an aggregate result; sending the aggregate result to each of the plurality of devices; instructing each of the plurality of devices to calculate a delay time based on a server timepacket and to display the aggregate result after the delay time elapses; and receiving a timepacket from each of the plurality of devices and replying with the server timepacket, thereby causing the plurality of devices to all display the aggregate result within seconds of each other. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A method of conducting a quiz, the method comprising using a server comprising a memory coupled to a processor for:
-
sending a question to a plurality of mobile devices; instructing each of the plurality of devices to calculate a delay time based on a server timepacket; instructing each of the plurality of devices to, after the delay time elapses, display the question, prompt for input, and receive an answer; receiving a timepacket from each of the plurality of devices and replying with the server timepacket, thereby causing the plurality of devices to all display the question within seconds of each other; receiving an answer from each of the plurality of devices; and determining an identity of a person using one of the plurality of devices and who answered correctly. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification