SIMULTANEOUS EVENTS OVER A NETWORK
First Claim
1. A method for causing concurrent events to take place within a specified span of time across at least two devices comprising:
- a task server computer connected to a network;
the task server computer running a server application in communication with the network;
the at least two devices comprising a client group;
the client group running a client application in communication with the network;
wherein the at least two devices comprising the client group are at least one of the following;
cell phone, PDA, tablet, computer, smartphone, smartwatch, laptop, portable computing device with network capabilities;
the at least two devices performing a time synchronization data exchange with the task server computer to determine network latency;
the at least two devices determining the network latency variance based on data from the time synchronization data exchange;
the task server computer determining the number of devices that can be efficiently processed;
each device of the at least two devices independently determining a best window of simultaneity;
wherein the event will occur across the at least two devices during a period of time indicated by an established window of simultaneity;
the client application sending timing request to the task server to collect data for use in the statistical evaluation of the network latency variance to verify that the at least one device of the client group is expected to achieve the window of simultaneity;
the task server computer establishing an event initiation time via the client application;
the at least two devices of the client group periodically synchronizing the event initiation time relative to the time kept by the task server computer by performing an additional time synchronization data exchange with the task server;
the at least two devices performing independent internal clock countdowns leading up to an event initiation time;
the at least two devices independently initiating the event via the client application after the event initiation time is reached; and
the at least two devices independently reporting the status of the event to the task server computer via communication between the client application and the server application upon event execution.
0 Assignments
0 Petitions
Accused Products
Abstract
The present disclosure relates to a technique for causing the simultaneous initiation of events over multiple devices over a network such that the events begin at a predetermined instant in time, within a precisely defined time window relative to the plurality of devices. The present method and system provides that for a given predetermined instant in time, a witness able to observe all the devices concurrently would note that the plurality of devices would individually begin an activity within a specified time window. The instant in time, t0, is a predetermined moment in the future. The disclosed method and system provides a means to determine a level of confidence to verify that the defined window of simultaneity can be achieved among the plurality of devices prior to the activity taking place. The established level of confidence is based on the statistical nature of data packet transmission over latency limited networks.
33 Citations
13 Claims
-
1. A method for causing concurrent events to take place within a specified span of time across at least two devices comprising:
-
a task server computer connected to a network; the task server computer running a server application in communication with the network; the at least two devices comprising a client group; the client group running a client application in communication with the network; wherein the at least two devices comprising the client group are at least one of the following;
cell phone, PDA, tablet, computer, smartphone, smartwatch, laptop, portable computing device with network capabilities;the at least two devices performing a time synchronization data exchange with the task server computer to determine network latency; the at least two devices determining the network latency variance based on data from the time synchronization data exchange; the task server computer determining the number of devices that can be efficiently processed; each device of the at least two devices independently determining a best window of simultaneity; wherein the event will occur across the at least two devices during a period of time indicated by an established window of simultaneity; the client application sending timing request to the task server to collect data for use in the statistical evaluation of the network latency variance to verify that the at least one device of the client group is expected to achieve the window of simultaneity; the task server computer establishing an event initiation time via the client application; the at least two devices of the client group periodically synchronizing the event initiation time relative to the time kept by the task server computer by performing an additional time synchronization data exchange with the task server; the at least two devices performing independent internal clock countdowns leading up to an event initiation time; the at least two devices independently initiating the event via the client application after the event initiation time is reached; and the at least two devices independently reporting the status of the event to the task server computer via communication between the client application and the server application upon event execution. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for executing an event on multiple network-connected devices over a network comprising:
-
a task server computer connected to the multiple network-connected devices via the network; a server application, said server application running on said task server and interfaced with said network; a client application, said client application running on said multiple network-connected devices; wherein said client application is configured to connect to the server application via the network; wherein said multiple network-connected devices comprise a client group; wherein said multiple network-connected devices include at least one individual device; wherein said multiple network-connected devices are at least one of the following;
cell phone, PDA, tablet, computer, smartphone, smartwatch, laptop, portable computing device with network capabilities;wherein said at least one individual device is configured to determine a latency variance of the network connection between said at least one individual device and said task server; wherein said task server computer is configured to determine the maximum number of individual devices that can be efficiently processed; further comprising said at least one individual device is configured to determine a best window of simultaneity, wherein the event will ideally occur across said multiple network-connected devices within the time span defined by the longest window of simultaneity of the set of devices;
wherein said multiple network-connected devices are configured to synchronize relative time with said task server;wherein said client application is configured to perform at least one time synchronization data exchange with said task server to collect data for use in a statistical evaluation of said network latency variance to verify that said at least one individual device is expected to achieve the window of simultaneity; wherein said task server computer is configured to establish an event initiation time according to input from a user; wherein said multiple network-connected devices are configured to periodically synchronize said event initiation time relative to a time maintained by said task server by sending time request data to said task server during the time synchronization data exchanges; wherein said at least one individual device is configured to autonomously initiate the event after said at least one individual device has performed an internal clock countdown subsequent to a final time synchronization data exchange with said task server; wherein said multiple network-connected devices employ a non-transitory computer readable medium; and wherein said multiple network-connected devices are configured to execute the event simultaneously and report a status of the event to said task server.
-
-
11. A system for simultaneously executing an event on multiple network-connected devices over a network comprising:
-
a task server computer connected to the multiple network-connected devices via the network; a server application, said server application running on said task server and interfaced with said network; a client application, said client application running on said multiple network-connected devices; wherein said client application is configured to connect to the server application via the network; wherein said multiple network-connected devices comprise a client group; wherein said multiple network-connected devices include at least one individual device; wherein said multiple network-connected devices are at least one of the following;
cell phone, PDA, tablet, computer, smartphone, smartwatch, laptop, portable computing device with network capabilities;wherein said at least one individual device is configured to determine a latency variance of the network connection between said at least one individual network-connected device and said task server; wherein said task server computer is configured to determine the maximum number of individual devices that can be efficiently processed; further comprising said at least one individual device is configured to determine a best window of simultaneity, wherein the event will ideally occur across said multiple network-connected devices simultaneously; wherein said multiple network-connected devices are configured to synchronize time with said task server; wherein said client application is configured to send a timing request to said task server to collect data for use in a statistical evaluation of said network latency variance to verify that said at least one individual device is expected to achieve the window of simultaneity; wherein said task server computer is configured to establish an event initiation time according to input from a user; wherein said multiple network-connected devices are configured to periodically synchronize said event initiation time relative to a time maintained by said task server by sending time request data to said task server, then receiving synchronization data from said task server; wherein said at least one individual device is configured to autonomously initiate the event after said at least one individual device has performed an internal clock countdown subsequent to a final time synchronization data exchange with said task server; wherein said multiple network-connected devices employ a non-transitory computer readable medium; and wherein said multiple network-connected devices are configured to execute the event simultaneously and report a status of the event to said task server.
-
-
12. A method for simultaneously executing an event on multiple devices via a network comprising:
-
a task server computer running a server application in communication with the network; the multiple devices loading a client application software; the multiple devices executing the client application software; the client application software interfacing with the task server computer; the client application software performing at least 3 time synchronization data exchanges between the task server computer and the multiple devices to discover latency between the task server computer and the multiple devices; wherein the at least 3 time synchronization data exchanges are initiated by the multiple devices; wherein the multiple devices are composed of individual devices including at least one of the following;
cell phone, PDA, tablet, computer, smartphone, smartwatch, laptop, portable computing device with network capabilities;the multiple devices determining an event initiation time for each individual device via the at least 3 time synchronization data exchanges; wherein maintaining the event initiation time is managed in sync with relative time; further comprising the latency discovery yielding an average latency time for each device of the multiple devices; the multiple devices initiating the event concurrently as instructed by the client application software in communication with the task server; and the multiple devices sending a completion message to indicate success to the task server.
-
-
13. A method for simultaneously executing an event on mobile devices comprising:
-
a pre-countdown stage comprising; a task server computer interfacing with at least one mobile device via a client application over a network; the at least one mobile device performing at least three time synchronization data exchanges with the task server over the network; the at least one mobile device determining the average network latency between the at least one mobile device and the task server; the at least one mobile device determining the latency variance of the network using data from the at least three time synchronization data exchanges. the at least one mobile device determining the margin of error based on data from the at least three time synchronization data exchanges; the at least one mobile device and the task server calculating a window of simultaneity based on the margin of error over network conditions; the at least one mobile device determining the relative time until an event initiation with an internal clock of the at least one mobile device based on a synchronization of relative time with an internal clock of the task server; a countdown stage, comprising; the at least one mobile device performing additional time synchronization data exchanges with the task server; the at least one mobile device establishing parameters an event imminent stage comprising; the at least one mobile device performing a final time synchronization data exchange with the task server over the network; an event initiation stage comprising; the at least one mobile device initiates the event as instructed by the client software; and a reporting stage comprising; the at least one mobile device sending a message to the task server to confirm the success of the event.
-
Specification