Systems and methods for transmitting data
First Claim
1. A system comprising a server computer in communication with a plurality of web clients running on one or more remote terminal devices, said server being configured to:
- receive a message at the server computer from a first web client of the plurality of clients, the message indicating that the first client currently has focus, wherein the message is transmitted by the first client with a first cookie;
transmit updates to the first web client using a low-latency update mechanism in response to receiving the message indicating that the first client has focus;
determine whether the first cookie matches a cookie received by one or more other web clients of the plurality of web clients;
in response to determining that a second cookie received from a second web client of the plurality of web clients matches the first cookie, determine whether the second web client is currently receiving data from the server computer using the low-latency update mechanism; and
in response to determining that the second web client is currently receiving data from the host using the low-latency update mechanism, downgrade the second web client from the low-latency update mechanism to a high-latency update mechanism that provides updates less frequently than the low-latency update mechanism, wherein applying the high-latency update mechanism includes transmitting a message to the second web client that directs the second web client to conduct a poll of the server computer periodically for updates;
wherein code on the server computer responsible for the downgrading is abstracted such that underlying code responsible for providing updated data to the first and second web clients is unaware of whether the respective first and second web clients are receiving data using the low latency update mechanism or the high latency update mechanism.
2 Assignments
0 Petitions
Accused Products
Abstract
A server is in communication with a plurality of clients being executed by a host. The server is configured to receive a message from a first client of the plurality of clients. The message indicates that the first client currently has focus, wherein the message is transmitted by the first client with a first cookie. The server is configured to identify that a second client of the plurality of clients utilizes a second cookie that matches the first cookie, wherein the second client is currently receiving data from the server using a low-latency update mechanism. The server is also configured to downgrade the second client from the low-latency update mechanism to a high-latency update mechanism, wherein the high-latency update mechanism is configured to enable the second client to conduct a poll of the server periodically for updates.
14 Citations
14 Claims
-
1. A system comprising a server computer in communication with a plurality of web clients running on one or more remote terminal devices, said server being configured to:
-
receive a message at the server computer from a first web client of the plurality of clients, the message indicating that the first client currently has focus, wherein the message is transmitted by the first client with a first cookie; transmit updates to the first web client using a low-latency update mechanism in response to receiving the message indicating that the first client has focus; determine whether the first cookie matches a cookie received by one or more other web clients of the plurality of web clients; in response to determining that a second cookie received from a second web client of the plurality of web clients matches the first cookie, determine whether the second web client is currently receiving data from the server computer using the low-latency update mechanism; and in response to determining that the second web client is currently receiving data from the host using the low-latency update mechanism, downgrade the second web client from the low-latency update mechanism to a high-latency update mechanism that provides updates less frequently than the low-latency update mechanism, wherein applying the high-latency update mechanism includes transmitting a message to the second web client that directs the second web client to conduct a poll of the server computer periodically for updates; wherein code on the server computer responsible for the downgrading is abstracted such that underlying code responsible for providing updated data to the first and second web clients is unaware of whether the respective first and second web clients are receiving data using the low latency update mechanism or the high latency update mechanism. - View Dependent Claims (2, 3, 4)
-
-
5. At least one non-transitory computer-readable storage medium having computer-executable instructions embodied thereon, wherein, when executed by at least one processor, the computer-executable instructions cause the at least one processor to:
-
receive a message at a server from a first web client of a plurality of web clients running on one or more remote terminal devices, the message indicating that the first client currently has focus, wherein the message is transmitted by the first client with a first cookie; transmit updates to the first web client using a low-latency update mechanism in response to receiving the message indicating that the first client has focus; determine whether the first cookie matches a cookie received by one or more other web clients of the plurality of web clients; in response to determining that a second cookie received from a second web client of the plurality of web clients matches the first cookie, determine whether the second web client is currently receiving data using the low-latency update mechanism; and in response to determining that the second web client is currently receiving data from the host using the low-latency update mechanism, downgrade the second web client from the low-latency update mechanism to a high-latency update mechanism that provides updates less frequently than the low-latency update mechanism, applying the high-latency update mechanism includes transmitting a message to the second web client that directs the second web client to conduct a poll of the server periodically for updates; wherein the computer-executable instructions provides an abstraction layer such that underlying code responsible for providing updated data to the first and second web clients is unaware of whether the respective first and second web clients are receiving data using the low latency update mechanism or the high latency update mechanism. - View Dependent Claims (6, 7, 8)
-
-
9. A method for transmitting data, said method comprising:
-
receiving a message at a server from a first web client of a plurality of web client running on one or more remote terminal devices, the message indicating that the first client currently has focus, wherein the message is transmitted by the first client with a first cookie; transmitting updates to the first web client using a low-latency update mechanism in response to receiving the message indicating that the first client has focus; determining whether the first cookie matches a cookie received by one or more other web clients of the plurality of web clients; in response to determining that a second cookie received from a second web client of the plurality of web clients matches the first cookie, determining whether the second web client is currently receiving data using the low-latency update mechanism; and in response to determining that the second web client is currently receiving data from the host using the low-latency update mechanism, downgrading the second web client from the low-latency update mechanism to a high-latency update mechanism that provides updates less frequently than the low-latency update mechanism, wherein applying the high-latency update mechanism includes transmitting a message to the second web client that directs the second web client to conduct a poll of the server periodically for updates; wherein the server provides an programming interface to underlying code such that the underlying code responsible for providing updated data to the first and second web clients is unaware of whether the respective first and second web clients are receiving data using the low latency update mechanism or the high latency update mechanism. - View Dependent Claims (10, 11, 12, 13, 14)
-
Specification