Patent ID: 7516179

Claim:
A method of managing a queue of collaboration data for clients participating in a real-time collaboration, comprising: operating a control unit configured to manage dissemination of collaboration data to clients participating in a real-time collaboration; in said control unit, maintaining a queue to store said collaboration data, wherein the clients are configured to consume said collaboration data in the order queued; for each client: maintaining a reference identifying a queue entry comprising data currently being processed by the client; and executing a virtual client configured to maintain a virtual screen comprising a portion of the collaboration data; receiving from a first client a request for data from a next entry in the queue; identifying a virtual screen entry in the queue comprising the newest collaboration data included in the virtual screen; determining a total amount of data in all queue entries between the next entry and the virtual screen entry, inclusive; comparing the amount of data in the virtual screen to the total amount; and collapsing the queue by: transmitting said virtual screen to the first client; and updating the client's reference to identify the queue entry comprising the newest data included in said virtual screen.