US6865599B2
Expired / Lapsed
US
⏱️ 0.0 years remaining
Browser-to-browser, dom-based, peer-to-peer communication with delta synchronization
Assignee: Individual
•
Filing: 2002-09-03
•
Granted: 2005-03-08
•
Expires: 2022-09-03
Abstract
Abstract A peer-to-peer communication system for use over an underlying computer network system, the peer-to-peer communication system comprising: a web browser; and a broker interposed between the browser and the underlying computer network system, with the broker being adapted to (1) monitor a first event taking place within the browser, encode the first event and associated changes in a first event message, and push the first event message to the at least one other peer over the underlying computer network system.
Inventors
- 👤 Chenglin Zhang
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-24 20:26
CPC Classifications
H; H04; H04L; H04L51/00; H04L51/04; H04L67/00; H04L67/01; H04L67/02; H04L67/10; H04L67/1095; H04L12/00; H04L12/02; H04L12/16; H04L12/18; H04L12/1813; H04L12/1827; H04L51/07; H04L51/18; H04L67/104; H04L69/00; H04L69/30; H04L69/32; H04L69/322; H04L69/329
Claims Analysis
Total Claims: 79
Claim 1
Independent Claim
176 words
A peer-to-peer communication system for use over an underlying computer network system, said peer-to-peer communication system comprising: at least two peers, each said peer comprising: a Web browser; and a broker interposed between said browser and the underlying computer network system, with said broker being adapted to (1) monitor a first event taking place within said browser, encode said first event and associated changes in a first event message, and push said first event message to said at least one other peer over the underlying computer network system, whereby said at least one other peer can reproduce on said at least one other peer the changes associated with the first event; and (2) receive a second event message from said at least one other peer, where said second event message has been encoded to correspond to a second event and associated changes taking place on said at least one other peer, decode said second event message and push the results to said browser, whereby to recreate the changes associated with the second event within said browser.
Claim 2
Dependent Claim
176 words
A peer-to-peer communication system for use over an underlying computer network system, said peer-to-peer communication system comprising: at least two peers, each said peer comprising: a Web browser; and a broker interposed between said browser and the underlying computer network system, with said broker being adapted to (1) monitor a first event taking place within said browser, encode said first event and associated changes in a first event message, and push said first event message to said at least one other peer over the underlying computer network system, whereby said at least one other peer can reproduce on said at least one other peer the changes associated with the first event; and (2) receive a second event message from said at least one other peer, where said second event message has been encoded to correspond to a second event and associated changes taking place on said at least one other peer, decode said second event message and push the results to said browser, whereby to recreate the changes associated with the second event within said browser.
Claim 3
Dependent Claim
26 words
A peer-to-peer communication system according to claim 1 wherein the changes are recreated by creating the second event and reposting the second event on the browser.
Claim 4
Dependent Claim
39 words
A peer-to-peer communication system according to claim 1 wherein the underlying computer network system comprises an Instant Messenger (IM) system, and said broker is adapted to communicate with said at least one other peer over the Instant Messenger system.
Claim 5
Dependent Claim
36 words
A peer-to-peer communication system according to claim 3 wherein the Instant Messenger (IM) system comprises one of the group consisting of AOL AIM Instant Messenger; Microsoft MSN Messenger; Yahoo! Messenger; ICQ; Jabber; Groove; and Sun JXTA.
Claim 6
Dependent Claim
19 words
A peer-to-peer communication system according to claim 1 wherein said browser and said broker comprise two distinct software programs.
Claim 7
Dependent Claim
16 words
A peer-to-peer communication system according to claim 1 wherein said broker is built into said browser.
Claim 8
Dependent Claim
15 words
A peer-to-peer communication system according to claim 1 wherein said broker comprises a browser plug-in.
Claim 9
Dependent Claim
19 words
A peer-to-peer communication system according to claim 1 wherein said browser and said broker reside on the same machine.
Claim 10
Dependent Claim
29 words
A peer-to-peer communication system according to claim 1 wherein the contents of said browser are represented in one of the group consisting of HTML; XHTML; XML; and their variations.
Claim 11
Dependent Claim
17 words
A peer-to-peer communication system according to claim 9 wherein said first event message is an XML message.
Claim 12
Dependent Claim
17 words
A peer-to-peer communication system according to claim 9 wherein said second event message is an XML message.
Claim 13
Dependent Claim
21 words
A peer-to-peer communication system according to claim 9 wherein said first event message and said second event message are XML messages.
Claim 14
Dependent Claim
16 words
A peer-to-peer communication system according to claim 9 wherein said browser comprises Microsoft Internet Explorer (IE).
Claim 15
Dependent Claim
22 words
A peer-to-peer communication system according to claim 9 wherein said browser comprises one from the group consisting of Mozilla and its variants.
Claim 16
Dependent Claim
14 words
A peer-to-peer communication system according to claim 9 wherein said browser comprises Netscape Navigator.
Claim 17
Dependent Claim
25 words
A peer-to-peer communication system according to claim 1 wherein the contents of said browser are uniquely addressable by said broker using an established identification mechanism.
Claim 18
Dependent Claim
31 words
A peer-to-peer communication system according to claim 16 wherein the contents of said browser are uniquely addressable using the Document Object Model (DOM) defined by The World Wide Web Consortium (WC3).
Claim 19
Dependent Claim
23 words
A peer-to-peer communication system according to claim 16 wherein the contents of said browser are uniquely addressable using a stream-based HTML document model.
Claim 20
Dependent Claim
27 words
A peer-to-peer communication system according to claim 18 wherein the contents of the browser are uniquely addressable using a stream-based HTML document model with absolute character position.
Claim 21
Dependent Claim
21 words
A peer-to-peer communication system according to claim 16 wherein the contents of said browser are uniquely addressable using a DHTML model.
Claim 22
Dependent Claim
69 words
A peer-to-peer communication system according to claim 16 wherein said identification mechanism comprises one of the group consisting of an ID attribute for a DOM element in a browser; an XPATH expression; and XPointer expression; an XLINK expression; an Internet Explorer (IE) Markup Pointer identifying contents in a browser; an absolute character position in a stream-based HTML document model; and an object naming identification mechanism in a DHTML model.
Claim 23
Dependent Claim
46 words
A peer-to-peer communication system according to claim 21 wherein said identification mechanism comprises an XPointer expression, and further wherein said XPointer expression is constructed by walking backwards through the DOM tree until finding the earlier of the root or the ID attribute of a containing object.
Claim 24
Dependent Claim
34 words
A peer-to-peer communication system according to claim 21 wherein said XPointer expression is resolved by searching the DOM tree from the root of the sub tree to the final node of the XPointer path.
Claim 25
Dependent Claim
24 words
A peer-to-peer communication system according to claim 23 wherein the root of the subtree is an object ID or the root of the document.
Claim 26
Dependent Claim
34 words
A peer-to-peer communication system according to claim 1 wherein the browser-broker connection is implemented in one of the group consisting of the Component Object Model (COM); and the Cross Platform Component Object Model (XPCOM).
Claim 27
Dependent Claim
30 words
A peer-to-peer communication system according to claim 1 wherein the browser-broker connection is implemented in one of the group consisting of HTTP; XML-RPC; and the Simple Object Access Protocol (SOAP).
Claim 28
Dependent Claim
18 words
A peer-to-peer communication system according to claim 1 wherein the contents of said browser comprise an embedded object.
Claim 29
Dependent Claim
24 words
A peer-to-peer communication system according to claim 27 wherein said embedded object exposes only a specific set of properties and procedures to its host.
Claim 30
Dependent Claim
52 words
A peer-to-peer communication system according to claim 28 wherein said embedded object comprises one of the group consisting of the Microsoft Media Player; the Microsoft Visio ActiveX plug-in; the Macromedia Flash Player ActiveX control; the Macromedia Flash Player Java applet; and the WildTangent Web Driver Java Plug-in for 3D graphics and games.
Claim 31
Dependent Claim
22 words
A peer-to-peer communication system according to claim 27 wherein said embedded object exposes its internal components, properties and procedures to its host.
Claim 32
Dependent Claim
43 words
A peer-to-peer communication system according to claim 30 wherein said embedded object comprises one of the group consisting of Mozilla's support for MathML and SVG; IE's support for VML, HTML+TIME; the Adobe SVGViewer plug-in; and the Macromedia Flash Player implemented in IE's behavior.
Claim 33
Dependent Claim
52 words
A peer-to-peer communication system according to claim 27 wherein said embedded object is configured to release said first event to said browser, whereupon said broker can monitor said first event, encode said first event in said first event message, and push said first event message to said at least on other peer.
Claim 34
Dependent Claim
31 words
A peer-to-peer communication system according to claim 27 wherein said second event message is configured so that said broker activates a specific set of properties and procedures of said embedded object.
Claim 35
Dependent Claim
28 words
A peer-to-peer communication system according to claim 27 wherein said second event message is configured so that said broker will repost said second event to said embedded object.
Claim 36
Dependent Claim
18 words
A peer-to-peer communication system according to claim 1 wherein only changes to a document are pushed to peers.
Claim 37
Dependent Claim
14 words
A peer-to-peer communication system according to claim 35 wherein said changes comprise content changes.
Claim 38
Dependent Claim
14 words
A peer-to-peer communication system according to claim 35 wherein said changes comprise style changes.
Claim 39
Dependent Claim
14 words
A peer-to-peer communication system according to claim 35 wherein said changes comprise view changes.
Claim 40
Dependent Claim
14 words
A peer-to-peer communication system according to claim 35 wherein said changes comprise navigation changes.
Claim 41
Dependent Claim
39 words
A peer-to-peer communication system according to claim 35 wherein said broker is configured so that when it pushes the results of said second event message to said browser, it marks the same to prevent re-transmission to the other peers.
Claim 42
Dependent Claim
23 words
A peer-to-peer communication system according to claim 1 wherein said second event message contains information regarding which peer originated said second event message.
Claim 43
Dependent Claim
26 words
A peer-to-peer communication system according to claim 41 wherein said broker is configured to take selective action according to which peer originated said second event message.
Claim 44
Dependent Claim
40 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to push the results to said browser so that said browser will utilize its script engine to respond to events and associated changes originated at other peers.
Claim 45
Dependent Claim
16 words
A peer-to-peer communication system according to claim 1 wherein concurrency control is maintained among the peers.
Claim 46
Dependent Claim
27 words
A peer-to-peer communication system according to claim 44 wherein concurrency control is maintained by using at least one of the group consisting of locks; and timestamp ordering.
Claim 47
Dependent Claim
32 words
A peer-to-peer communication system according to claim 45 wherein said broker is configured so that said locks may be applied on the basis of one or more objects and/or portions of objects.
Claim 48
Dependent Claim
29 words
A peer-to-peer communication system according to claim 46 wherein said broker is configured so that said timestamp ordering accommodates changes to objects and/or portions of objects on multiple peers.
Claim 49
Dependent Claim
34 words
A peer-to-peer communication system according to claim 47 wherein said broker is configured so that said timestamp ordering comprises a base time synchronization and, for each change, a starting timestamp and an ending timestamp.
Claim 50
Dependent Claim
24 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to send a tool to said at least one another peer.
Claim 51
Dependent Claim
20 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to push a tool to said browser.
Claim 52
Dependent Claim
20 words
A peer-to-peer communication system according to claim 50 wherein said tool was received from said at least one other peer.
Claim 53
Dependent Claim
16 words
A peer-to-peer communication system according to claim 50 wherein said tool was resident with said broker.
Claim 54
Dependent Claim
20 words
A peer-to-peer communication system according to claim 50 wherein said broker is configured to request a tool from a peer.
Claim 55
Dependent Claim
48 words
A peer-to-peer communication system according to claim 53 wherein said broker is configured so that when it decodes said second event message, it will determine whether a non-resident tool is required and, if so, it will request the non-resident tool from the peer originating said second event message.
Claim 56
Dependent Claim
29 words
A peer-to-peer communication system according to claim 50 wherein said tool comprises at least one from the group consisting of scripts, style sheets, HTML/XHTML/XML contents and other special markups.
Claim 57
Dependent Claim
27 words
A peer-to-peer communication system according to claim 50 wherein said tool comprises at least one from the group consisting of an ActiveX control and a Java applet.
Claim 58
Dependent Claim
14 words
A peer-to-peer communication system according to claim 50 wherein said tool comprises a plug-in.
Claim 59
Dependent Claim
33 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to observe the screen position of said browser and to advise the at least one other peer of the same.
Claim 60
Dependent Claim
24 words
A peer-to-peer communication system according to claim 58 wherein said broker is configured to encode a position relative to the contents of said browser.
Claim 61
Dependent Claim
22 words
A peer-to-peer communication system according to claim 59 wherein said broker is configured to encode a position relative to a containing object.
Claim 62
Dependent Claim
36 words
A peer-to-peer communication system according to claim 60 wherein said broker is configured to encode a position relative to a containing object and the character position relative to the beginning or ending of that containing object.
Claim 63
Dependent Claim
22 words
A peer-to-peer communication system according to claim 61 wherein said broker is configured to determine the character position using a range object.
Claim 64
Dependent Claim
31 words
A peer-to-peer communication system according to claim 60 wherein said broker is configured to encode a position relative to a containing object and the relative proportional position within the containing object.
Claim 65
Dependent Claim
25 words
A peer-to-peer communication system according to claim 59 wherein said broker is configured to reflect the screen position on said browser using a range object.
Claim 66
Dependent Claim
34 words
A peer-to-peer communication system according to claim 1 wherein said broker is configured to receive the screen position of said at least one other peer and to reflect the same on its associated browser.
Claim 67
Independent Claim
112 words
A method for operating a peer-to-peer communication system over an underlying computer network system, said method comprising: (1) initiating a first event in a first browser; (2) capturing the first event and associated changes with a first broker; (3) encoding the first event and associated changes in a first event message; (4) pushing the first event message to a second broker over the underlying computer network system; (5) decoding the first event message into corresponding commands for recreating the first event and associated changes on a second browser; and (6) pushing the corresponding commands to the second browser, whereby to recreate the changes associated with said second event on said second browser.
Claim 68
Independent Claim
112 words
A method for operating a peer-to-peer communication system over an underlying computer network system, said method comprising: (1) initiating a first event in a first browser; (2) capturing the first event and associated changes with a first broker; (3) encoding the first event and associated changes in a first event message; (4) pushing the first event message to a second broker over the underlying computer network system; (5) decoding the first event message into corresponding commands for recreating the first event and associated changes on a second browser; and (6) pushing the corresponding commands to the second browser, whereby to recreate the changes associated with said second event on said second browser.
Claim 69
Dependent Claim
18 words
A method according to claim 66 wherein said underlying computer network system comprises an Instant Messenger (IM) system.
Claim 70
Dependent Claim
15 words
A method according to claim 66 wherein said first event message is encoded in XML.
Claim 71
Dependent Claim
18 words
A method according to claim 66 wherein object references for said first event are serialized in XPointer expressions.
Claim 72
Dependent Claim
17 words
A method according to claim 66 wherein the peer-to-peer dialogue is initiated with a blank Web page.
Claim 73
Dependent Claim
17 words
A method according to claim 66 wherein the peer-to-peer dialogue is initiated with an existing Web page.
Claim 74
Dependent Claim
30 words
A method according to claim 71 wherein the existing Web page originates at one of the peers, and the originating peer pushes the existing Web page to the other peers.
Claim 75
Dependent Claim
29 words
A method according to claim 71 wherein the existing Web page originates at a non-peer site, and all of peers obtain the existing Web page from that non-peer site.
Claim 76
Dependent Claim
42 words
A method according to claim 71 wherein the existing Web page originates at a non-peer site, one of the peers obtains the existing Web page from the non-peer site, and the obtaining peer pushes the existing Web page to the other peers.
Claim 77
Dependent Claim
27 words
A method according to claim 66 wherein, upon receiving said corresponding commands, the second broker causes the first broker to push a tool to the second browser.
Claim 78
Dependent Claim
167 words
A peer-to-peer communication system for use over an underlying computer network system, said peer-to-peer communication system comprising: a broker interposed between a browser located on a peer and the underlying computer network system, with said broker being adapted to (1) monitor a first event taking place within said browser, encode said first event and associated changes in a first event message, and push said first event message to at least one other peer over the underlying computer network system, whereby said at least one other peer can reproduce on said at least one other peer the changes associated with the first event; and (2) receive a second event message from said at least one other peer, where said second event message has been encoded to correspond to a second event and associated changes taking place on said at least one other peer, decode said second event message and push the results to said browser, whereby to recreate the changes associated with the second event within said browser.
Claim 79
Dependent Claim
167 words
A peer-to-peer communication system for use over an underlying computer network system, said peer-to-peer communication system comprising: a broker interposed between a browser located on a peer and the underlying computer network system, with said broker being adapted to (1) monitor a first event taking place within said browser, encode said first event and associated changes in a first event message, and push said first event message to at least one other peer over the underlying computer network system, whereby said at least one other peer can reproduce on said at least one other peer the changes associated with the first event; and (2) receive a second event message from said at least one other peer, where said second event message has been encoded to correspond to a second event and associated changes taking place on said at least one other peer, decode said second event message and push the results to said browser, whereby to recreate the changes associated with the second event within said browser.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2008-03-07 | 2008-09-06 | 2009-03-08 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2012-03-07 | 2012-09-06 | 2013-03-08 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2016-03-07 | 2016-09-06 | 2017-03-08 | $7700.00 | Window Closed / Lapsed |