Method and software for enabling N-way collaborative work over a network of computers
DCFirst Claim
1. A method for collaboration over a computer network, comprising:
- intercepting data regarding one or more application level events that occur within a first instance of a stand-alone application operable to create and edit documents in response to user actions, and wherein said one or more application level events reflect user actions that result in changes to a native document file generated by said first instance of stand-alone application, wherein a sequence number is assigned to each of said one or more application level events to resolve any conflicts between said one or more application level events;
transmitting data comprising said native document file and said data regarding one or more application level events over said computer network, automatically and in real time, to a second instance of said stand-alone application, wherein said stand-alone application is running only on workstations operated by users; and
causing said second instance of said stand-alone application;
to display a local copy of a document corresponding to a local copy of said native document file,to receive and use said data comprising data regarding one or more application level events to replicate said events that occurred within said first instance,to mirror said user actions performed in said first instance without user intervention by performing an equivalent action on said local copy of said native document file and thereby make corresponding changes to said local copy of said native document file, andto display said changes to said local copy of said document.
2 Assignments
Litigations
0 Petitions
Accused Products
Abstract
Method, software, and system for efficiently enabling n-way collaborative work using common software over a network of computers. In a preferred embodiment of the invention, each participant in a collaborative session starts up a common software application, which includes a collaboration component. This collaboration component is used to establish a common session that includes all interested parties. The collaboration component replicates operations performed on any one instance of said application to all other instances participating in the same session, so the effect is as if all members of the session were sharing a single instance of the application on a single computer. In one aspect, the collaboration component also supports broadcast of audio and video over a computer network, to enable session participants to see and/or hear each other, and further includes other features that support collaborative work.
18 Citations
59 Claims
-
1. A method for collaboration over a computer network, comprising:
-
intercepting data regarding one or more application level events that occur within a first instance of a stand-alone application operable to create and edit documents in response to user actions, and wherein said one or more application level events reflect user actions that result in changes to a native document file generated by said first instance of stand-alone application, wherein a sequence number is assigned to each of said one or more application level events to resolve any conflicts between said one or more application level events; transmitting data comprising said native document file and said data regarding one or more application level events over said computer network, automatically and in real time, to a second instance of said stand-alone application, wherein said stand-alone application is running only on workstations operated by users; and causing said second instance of said stand-alone application; to display a local copy of a document corresponding to a local copy of said native document file, to receive and use said data comprising data regarding one or more application level events to replicate said events that occurred within said first instance, to mirror said user actions performed in said first instance without user intervention by performing an equivalent action on said local copy of said native document file and thereby make corresponding changes to said local copy of said native document file, and to display said changes to said local copy of said document. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A computer readable storage medium storing software for collaboration over a computer network, comprising:
-
a software plug-in operable to intercept data regarding application level events that occur within a first instance of a stand-alone application operable to create and edit documents in response to user actions, and to which said first instance of said software plug-in has been plugged in and wherein said one or more application level events reflect user actions that result in changes to a native document file generated by said first instance of stand-alone application are delivered to said plug-in, wherein a sequence number is assigned to each of said one or more application level events to resolve any conflicts between said one or more application level events; wherein said software plug-in is further operable to receive data regarding one or more application level events that occur within a second instance of said stand-alone application and are transmitted over said computer network from a second instance of said plug-in plugged into the second instance of said stand-alone application, wherein said instances of stand-alone application are separate instances running only on workstations operated by users; and wherein said first instance of said software plug-in is further operable to use said received data regarding one or more application level events to replicate said events that occurred within said second instance of said stand-alone application, using said first instance of said stand-alone application to mirror said user actions performed on said second instance by performing an equivalent action on a local copy of said native document file, and to display said changes to said local document corresponding to said native document file, automatically, in real time, and without user intervention. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
49. A method for collaboration over a computer network, comprising:
-
intercepting data regarding one or more application level events that occur within a first instance of a stand-alone application operable to create and edit documents in response to user actions, and wherein said one or more application level events reflect user actions that result in changes to a native document file generated by said first instance of stand-alone application wherein a sequence number is assigned to each of said one or more application level events to resolve any conflicts between said one or more application level events; transmitting data comprising said native document file and said data regarding one or more application level events over said computer network, automatically and in real time, to a one or more other instances of said stand-alone application, wherein said instances of stand-alone application are separate instances running only on workstations operated by users; receiving data regarding one or more application level events that reflect user actions that result in changes to a native document file generated by one or more other instances of stand-alone application; and causing said first instance of said stand-alone application; to use said received data comprising data regarding one or more application level events to replicate said events that occurred within said one or more other instances, to mirror said user actions performed in said one or more other instances by performing an equivalent action on said local copy of said native document file and thereby make corresponding changes to said local copy of said native document file, and to display said changes to said local copy of said document. - View Dependent Claims (50, 51)
-
-
52. A method for collaboration over a computer network, comprising:
-
intercepting data regarding one or more application level events that occur within a first instance of a stand-alone application operable to create and edit documents in response to user actions, and wherein said one or more application level events reflect user actions that result in changes to a native document file generated by said first instance of stand-alone application; transmitting data comprising said native document file and said data regarding one or more application level events over said computer network, automatically and in real time, to a one or more other instances of said stand-alone application, wherein said instances of stand-alone application are separate instances running only on workstations operated by users; receiving data, transmitted from over said computer network, automatically and in real time, regarding one or more application level events that reflect user actions that result in changes to a native document file generated by one or more other instances of stand-alone application; and causing said first instance of said stand-alone application; to use said received data comprising data regarding one or more application level events to replicate said events that occurred within said one or more other instances, to mirror said user actions performed in said one or more other instances by performing an equivalent action on said local copy of said native document file and thereby make corresponding changes to said local copy of said native document file, and to display said changes to said local copy of said document. - View Dependent Claims (53, 54)
-
-
55. A method for collaboration over a computer network, comprising:
-
intercepting data regarding one or more application level events that occur within a first instance of a stand-alone application operable to create and edit documents in response to user actions, and wherein said one or more application level events reflect user actions that result in changes to a native document file generated by said first instance of stand-alone application; receiving data, transmitted from over said computer network, automatically and in real time, regarding one or more application level events that reflect user actions that result in changes to a native document file generated by one or more other instances of stand-alone application wherein said instances of stand-alone application are separate instances running only on workstations operated by users; and causing said first instance of said stand-alone application; to use said received data comprising data regarding one or more application level events to replicate said events that occurred within said one or more other instances, to mirror said user actions performed in said one or more other instances by performing an equivalent action on said local copy of said native document file and thereby make corresponding changes to said local copy of said native document file, and to display said changes to said local copy of said document. - View Dependent Claims (56, 57)
-
-
58. A method for collaboration over a computer network, comprising:
-
a first instance of a plug-in, operating on a user workstation, a intercepting data regarding one or more application level events that occur within a first instance of a stand-alone application operable to create and edit documents in response to user actions, and wherein said one or more application level events reflect user actions that result in changes to a native document file generated by said first instance of stand-alone application; said first instance of said plug-in assigning a sequence number to each of said one or more application level events to resolve any conflicts with other application level events; said first instance of said plug-in transmitting data comprising said native document file and said data regarding one or more application level events over said computer network, automatically and in real time, to a one or more other instances of said stand-alone application, wherein said instances of stand-alone application are separate instances running only on workstations operated by users; said first instance of said plug-in receiving data, transmitted from over said computer network, by second instance of said plug-in, automatically and in real time, regarding one or more application level events that reflect user actions that result in changes to a native document file generated by a second instances of said stand-alone application; and said first instance of said plug-in causing said first instance of said stand-alone application; to use said received data comprising data regarding one or more application level events to replicate said events that occurred within said one or more other instances, to mirror said user actions performed in said one or more other instances by performing an equivalent action on said local copy of said native document file and thereby make corresponding changes to said local copy of said native document file, and to display said changes to said local copy of said document.
-
-
59. A method for collaboration over a computer network, comprising:
-
a first instance of a plug-in, operating on a user workstation, a intercepting data regarding one or more application level events that occur within a first instance of a stand-alone application operable to create and edit documents in response to user actions, and wherein said one or more application level events reflect user actions that result in changes to a native document file generated by said first instance of stand-alone application; said first instance of said plug-in assigning a sequence number to each of said one or more application level events to resolve any conflicts with other application level events; said first instance of said plug-in transmitting data comprising said native document file and said data regarding one or more application level events over said computer network, automatically and in real time, to a one or more other instances of said stand-alone application; said first instance of said plug-in receiving data, transmitted from over said computer network, by second instance of said plug-in, automatically and in real time, regarding one or more application level events that reflect user actions that result in changes to a native document file generated by a second instances of said stand-alone application; and said first instance of said plug-in causing said first instance of said stand-alone application; to use said receive data comprising data regarding one or more application level events to replicate said events that occurred within said one or more other instances, to mirror said user actions performed in said one or more other instances by performing an equivalent action on said local copy of said native document file and thereby make corresponding changes to said local copy of said native document file, and to display said changes to said local copy of said document.
-
Specification