IP Library › Granted Patent US 9,253,128
Granted Patent B2
US 9,253,128 · App. 12/899,142 · Granted Feb 2, 2016

Instant messaging with browser collaboration

Inventors: Richard Tuthill Bassemir (Austin, TX); Ismael Numitor Castillo (Round Rock, TX)
Assignee: International Business Machines Corporation
H04L51/046H04L67/02G06F3/1454G06F9/4445G06F9/547
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,253,128
App. No.
12/899,142
Granted
Feb 2, 2016
Kind
B2
Abstract

The invention enables collaboration between first and second users at first and second workstations having first and second browsers, respectively. A page is loaded into the first browser. An instant messaging connection is established between the first workstation and the second workstation. Then an address of the page loaded at the first browser is sent to the second browser via the instant messaging connection. At the second browser the page is loaded in response to receipt of the page address. A network connection is then established between the first browser and the second browser. Thereafter, messages are sent from the first browser to the second browser via the network connection responsive to screen events by a user at the first workstation to control screen events at the second workstation.

Claims (49)

1. A non-transitory storage medium containing program code for controlling computers in collaborating between first and second users at first and second workstations, the first and second workstations having first and second web browsers and first and second display screens, respectively, comprising:

program code for loading a web page into the first web browser;

program code for establishing an instant messaging connection between the first workstation and the second workstation;

program code for sending an address of the web page loaded at the first web browser to the second web browser at the second workstation via the instant messaging connection;

program code for loading the web page at the second web browser in response to receipt of the web page address;

program code for establishing a network connection using a TCP/IP protocol between the first web browser and the second web browser;

program code for sending messages from the first web browser to the second web browser via the TCP/IP protocol network connection responsive to screen events by a user at the first web browser to control screen events at the second web browser;

program code for caching source language of the web page displayed at the first and second web browsers;

program code for parsing, separately at the first web browser and the second web browser, the source language of the cached source language of the web page displayed at the first web browser and the second web browser to identify one or more screen components defined by the source language;

program code for assigning a unique identifier to each screen component of the one or more screen components, the unique identifiers being used to synchronize the screen events at the first and second web browsers, wherein the screen components for the web page displayed at the second web browser are assigned the same unique identifiers as the unique identifiers assigned to the screen components for the web page displayed at the first web browser; and

program code for detecting a text selection in the web page at the first web browser, wherein a message is sent to the second web browser comprising a copy of the text selected in the web page at the first web browser, wherein text in the web page at the second web browser that corresponds to the copy of the text selected in the web page at the first web browser is highlighted in the second web browser.

2. The storage medium of claim 1 further comprising program code for monitoring screen events at the first web browser.

3. The storage medium of claim 1 further comprising

program code responsive to a screen event on a screen component by a user at the first web browser for sending a message to the second web browser via the TCP/IP protocol network connection to perform the same event on the same screen component at the second web browser.

4. The storage medium of claim 3 wherein program code for monitoring screen events at the first web browser comprises program code for detecting a selection operation of a screen component by a user at the first web browser.

5. The storage medium of claim 1 further comprising program code for sending one of the messages from the first web browser to the second web browser via the TCP/IP protocol network connection to swap roles between the first and second web browsers.

6. The storage medium of claim 1 , further comprising program code for sending a message to the second web browser comprising an identifier assigned to a screen component for the web page displayed at the first web browser in response to a screen event on the screen component at the first web browser.

7. The storage medium of claim 1 , wherein the screen events comprise input received at the first web browser in response to a user interacting with the web page displayed at the first web browser.

8. A system for collaborating between first and second users at first and second workstations, the first and second workstations comprising non-transitory computer readable storage media that stores software executable by a processor, the first and second workstations having first and second web browsers and first and second display screens, respectively, the software comprising:

software embedded in the first workstation for loading a web page into the first web browser;

software embedded in the first workstation and the second workstation for establishing an instant messaging connection between the first workstation and the second workstation;

software embedded in the first workstation for sending an address of the web page loaded at the first web browser to the second web browser at the second workstation via the instant messaging connection;

software embedded in the second workstation for loading the web page at the second web browser in response to receipt of the web page address;

software embedded in the first workstation and the second workstation for establishing TCP/IP network connection between the first web browser and the second web browser;

software embedded in the first workstation for sending messages from the first web browser to the second web browser via TCP/IP network connection responsive to screen events by a user at the first web browser to control screen events at the second web browser; and

software embedded in the first workstation and the second workstation for caching source language of the web page displayed at the first and second web browsers;

software embedded in the first workstation and the second workstation for parsing, separately at the first web browser and the second web browser, the source language of the cached source language of the web page displayed at the first web browser and the second web browser to identify one or more screen components defined by the source language;

software embedded in the first workstation and the second workstation for assigning a unique identifier to each screen component of the one or more screen components, the unique identifiers being used to synchronize the screen events at the first and second web browsers, wherein the screen components for the web page displayed at the second web browser are assigned the same unique identifiers as the unique identifiers assigned to the screen components for the web page displayed at the first web browser, and

software embedded in the first workstation for detecting a text selection in the web page at the first web browser, wherein a message is sent to the second web browser comprising a copy of the text selected in the web page at the first web browser, wherein text in the web page at the second web browser that corresponds to the copy of the text selected in the web page at the first web browser is highlighted in the second web browser.

9. The system of claim 8 further comprising software embedded in a plug-in at the first web browser to monitor screen events at the first web browser.

10. The system of claim 8 further comprising

software embedded in the first workstation for monitoring screen events at the first web browser;

software embedded in the first workstation responsive to a screen event on a screen component by a user at the first web browser for sending a message to the second workstation via the TCP/IP protocol network connection to perform the same event on the same screen component at the second web browser.

11. The system of claim 10 wherein the software embedded in the first workstation responsive to a screen event on a screen component by a user at the first web browser further comprises software for detecting a selection operation of a screen component by a user at the first web browser.

12. The system of claim 8 wherein the system further compromises

software embedded in the first workstation for sending one of the messages from the first web browser to the second web browser via the TCP/IP protocol network connection to swap roles between the first and second web browser.

13. The system of claim 8 wherein the identifiers are used to synchronize the screen events at the first and second web browsers.

14. The system of claim 13 wherein the system further comprises

software embedded in the first workstation responsive to a screen event on a screen component by a user at the first web browser for sending a message to the second web browser containing the identifier assigned to the screen component at both the first and second web browsers.

15. The system of claim 8 , further comprising program code for sending a message to the second web browser comprising an identifier assigned to a screen component for the web page displayed at the first web browser in response to a screen event on the screen component at the first web browser.

16. The system of claim 8 , wherein the screen events comprise input received at the first web browser in response to a user interacting with the web page displayed at the first web browser.

17. A first workstation having a processor and a local web browser and a second workstation having a processor and a remote web browser, the first workstation configured to send messages to the second workstation responsive to a screen event to synchronize screen events at the local and remote web browsers, wherein the first and second workstation comprise:

software embedded in the first workstation for loading a web page into the local web browser;

software embedded in the first workstation for sending an address of the web page loaded in the local web browser to the remote web browser;

software embedded in the first workstation and the second workstation for caching source language of the web page at the local and remote web browsers;

software embedded in the first workstation and the second workstation for parsing, separately at the local web browser and the remote web browser, the source language of the cached source language of the web page displayed at the local web browser and the remote web browser to identify one or more screen components defined by the source language;

software embedded in the first workstation for assigning a unique identifier to each screen component of the one or more screen components, the unique identifiers being used to synchronize the screen events at the local and remote web browsers, wherein the screen components for the web page displayed at the remote web browser are assigned the same unique identifiers as the unique identifiers assigned to the screen components for the web page displayed at the local web browser; and

software embedded in the first workstation for detecting a text selection in the web page at the local web browser, wherein a message is sent to the remote web browser comprising a copy of the text selected in the web page at the local web browser, wherein text in the web page at the remote web browser that corresponds to the copy of the text selected in the web page at the local web browser is highlighted in the remote web browser.

18. The workstation of claim 17 wherein software embedded in the first workstation responsive to a screen event on a screen component comprises software for detecting a selection operation of a screen component by a user at the local web browser.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2010
From: BASSEMIR, RICHARD TUTHILL; CASTILLO, ISMAEL NUMITOR
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 025102/0430 →
Continuity (1)
Related Publication 20120089926A1 · Apr 12, 2012