×

Persistent collaborative framework for interactive web applications

  • US 7,624,145 B2
  • Filed: 01/06/2007
  • Issued: 11/24/2009
  • Est. Priority Date: 01/06/2007
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented process for providing an application-independent framework for facilitating persistent, collaborative interaction between users of a web application respectively running on a client associated with each user, wherein each client comprises a client-side library which interfaces with the web application running on the client and communicates with a server, the process comprising using each client to perform the following process actions:

  • the client application invoking the client-side library to send a request to the server to log into a session of the web application;

    the client application receiving in response to the request an indication of a successful login;

    the client-side library sending an initial update poll to the server requesting an update to place the application running on the client in a current state;

    the client-side library receiving, in response to the initial update poll, a current state of the application from the server as defined by a group of objects with each object comprising a set of property values, and a timestamp representing when the group of objects was sent;

    the client-side library providing the group of objects defining the current state of the application to the application running on the client for implementation;

    the client-side library caching the timestamp;

    the client application generating and the client-side library sending a tuple describing a change to a property of an object to the server each time such a change is made, whereby said change is implemented locally by the client application;

    the client-side library periodically sending an update poll to the server asking for an update to the state of the application, said update poll comprising the last cached timestamp;

    the client-side library receiving from the server, tuples and an updated timestamp in response to each update poll, wherein each tuple describes a change to a property of an object;

    the client-side library providing each tuple received to the application for possible implementation; and

    the client-side library caching the updated timestamp in lieu of the last previously cached timestamp.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×