BROWSER BASED WEB CONFERENCING EMPLOYING LAYERING TO DISPLAY SCREEN UPDATES
A browser based web conferencing method is disclosed, wherein Hypertext Markup Language (HTML) code is transmitted to a browser of an attendee computer. A first screen update request is transmitted over a network, and HTML code is received identifying a screen update image of a first layer. A request to receive the screen update image of the first layer is transmitted over the network, and the screen update image of the first layer is displayed. A second screen update request is transmitted over a network, and HTML code is received identifying a screen update image of a second layer. A request to receive the screen update image of the second layer is transmitted over the network, and the screen update image of the second layer is displayed, wherein the screen update image of the second layer overlaps the screen update image of the first layer.
Latest RHUB COMMUNICATIONS, INC. Patents:
This application claims priority from Provisional Application Ser. No. 60/842,729 filed Sep. 6, 2006.
BACKGROUND1. Field
The present invention relates to web conferencing, and in particular, browser based web conferencing employing layering to display screen updates.
2. Description of the Related Art
Web conferencing can be implemented by screen sharing a presenter's screen with attendees over the Internet. Various techniques have been disclosed to implement the screen sharing aspect, such as with a plug-in (e.g., Flash) that augments the basic operation of a web browser (e.g., Internet Explorer, Safari, Firefox, etc.). However, if the plug-in is not pre-installed on an attendee's computer, an attendee typically must download and install the plug-in before joining a meeting. Downloading a plug-in increases the setup time and complexity for an attendee to join a meeting. In addition, the attendee's computer (or gateway server) may have firewall software installed that may inhibit or further complicate the download and installation of the plug-in. Yet another problem is that an attendee may be hesitant to download and install a plug-in for fear of downloading a virus.
An alternative technique employs the basic functionality of a browser to implement screen sharing (browser based web conferencing) which obviates the need to download a plug-in. Thus, any attendee with an appropriate browser installed can join a meeting by simply launching the browser and visiting the designated web site. However, several drawbacks have been identified with browser based web conferencing, such as the comparatively slow response time to transmit screen updates from the presenter to the attendees.
SUMMARY OF THE EMBODIMENTS OF THE INVENTIONAn embodiment of the present invention comprises a browser based web conferencing method, wherein Hypertext Markup Language (HTML) code is transmitted to a browser of an attendee computer. A first screen update request is transmitted over a network, and HTML code is received identifying a screen update image of a first layer. A request to receive the screen update image of the first layer is transmitted over the network, and the screen update image of the first layer is displayed. A second screen update request is transmitted over a network, and HTML code is received identifying a screen update image of a second layer. A request to receive the screen update image of the second layer is transmitted over the network, and the screen update image of the second layer is displayed, wherein the screen update image of the second layer overlaps at least part of the screen update image of the first layer.
In one embodiment, the HTML code comprises an img HTML tag.
In another embodiment, the HTML code identifying the screen update image of the first layer comprises a first z-index HTML tag and the HTML code identifying the screen update image of the second layer comprises a second z-index HTML tag.
In one embodiment, the first update image of the first layer represents a substantially full screen update, and the second update image of the second layer represents a partial screen update.
In yet another embodiment, the HTML code of the first layer is stored in an HTML element, and the HTML code of the second layer is appended to the HTML element. In one embodiment, the HTML code is deleted from the HTML element when a full screen update image is received.
In still another embodiment, transmission of the screen update request comprises a request-update script. In one embodiment, the HTML code of the first layer comprises HTML code identifying a plurality of screen update images of the first layer, and an image-load script is executed in connection with displaying one of the screen update images, wherein the image-load script executes the request-update script after all of the screen update images of the first layer have been displayed.
In another embodiment, when a communication error is detected, a request for a full screen update image is transmitted.
Another embodiment of the present invention comprises a browser based web conferencing system comprising a server computer, a presenter computer, and an attendee computer. The server computer receives screen update images from the presenter computer and transmits the screen update images to the attendee computer. The attendee computer transmits to the server computer a first screen update request, and receives from the server computer HTML code identifying a screen update image of a first layer. The attendee computer transmits a request to the server computer to receive the screen update image of the first layer, and displays the screen update image of the first layer. The attendee computer transmits a second screen update request to the server computer, and receives from the server computer HTML code identifying a screen update image of a second layer. The attendee computer transmits a request to the server computer to receive the screen update image of the second layer, and displays the screen update image of the second layer, wherein the screen update image of the second layer overlaps at least part of the screen update image of the first layer.
“/request-img?mid=293902&uid=2&did=232&iid=0”,
“/request-img?mid=293902&uid=2&did=232&iid=1”,
“/request-img?mid=293902&uid=2&did=232&iid=2”.
The first parameter (mid) in the URL identifies the web meeting, the next parameter (uid) identifies an attendee, the next parameter (did) identifies the layer, and the last parameter (iid) (0, 1, and 2) identifies the respective image files (.gif format in the example, which can be any other image format such as .jpeg). The screen update images are displayed according to suitable style parameters as identified by an HTML style tag (style), including a z-index id parameter (232 in the example) that identifies the layer for displaying the screen update images. In one embodiment, the browser displays the images of each layer in an ascending order corresponding to the z-index (the images of layer 1 are displayed, then the images of layer 2, etc.). Displaying the images in layers enables the images of higher layers to overlap images of lower layers as described in more detail below.
The update requests may be transmitted over the network to any suitable computer, such as the computer that is displaying the original presentation (the presenter computer). In an alternative embodiment shown in
The HTML code may be appended to the HTML element in any suitable manner. In one embodiment illustrated by the source code shown in
In an embodiment shown in
In one embodiment, the browser at an attendee computer displays all of the screen update images for the current layers before sending a new update request over the network. This embodiment is illustrated in the flow diagram of
Any suitable code may be employed to generate the update request at the attendee computer. In an embodiment shown in the flow diagram of
Any suitable code may be employed to detect when to send an update request for a full screen update image in response to a communication error. In the source code of
Any suitable source code may be employed in the embodiments of the present invention. For example, alternative source code executed by the browser at each attendee computer is shown
Any suitable browser (e.g., Internet Explorer, Safari, Firefox, etc.) may be executed by the attendee computers 24A-24C in order to implement the various embodiments of the present invention. However, earlier versions of browsers may not include sufficient resources to implement all of the embodiments disclosed above. For example, the ability to display images in layers (e.g., using the z-index parameter) may not be supported by older browsers. However, most computers have been installed or updated with browsers having the capabilities to implement all of the above embodiments. Further, if an attendee computer has not yet been installed or updated with a newer browser, the concern of downloading a virus is ameliorated since installing or updating a browser typically involves downloading a trusted application.
Claims
1. A browser based web conferencing method, the method comprising transmitting Hypertext Markup Language (HTML) code to a browser of an attendee computer connected to a network, the HTML code comprising code segments for:
- transmitting over the network a first screen update request;
- receiving over the network HTML code identifying a screen update image of a first layer;
- transmitting over the network a request to receive the screen update image of the first layer;
- displaying the screen update image of the first layer;
- transmitting over the network a second screen update request;
- receiving over the network HTML code identifying a screen update image of a second layer;
- transmitting over the network a request to receive the screen update image of the second layer; and
- receiving and displaying the screen update image of the second layer,
- wherein the screen update image of the second layer overlaps at least part of the screen update image of the first layer.
2. The method as recited in claim 1, wherein the HTML code comprises an img HTML tag.
3. The method as recited in claim 1, wherein the HTML code identifying the screen update image of the first layer comprises a first z-index HTML tag and the HTML code identifying the screen update image of the second layer comprises a second z-index HTML tag.
4. The method as recited in claim 1, wherein:
- the first update image of the first layer represents a substantially full screen update; and
- the second update image of the second layer represents a partial screen update.
5. The method as recited in claim 1, wherein the HTML code further comprises code segments for:
- storing the HTML code of the first layer in an HTML element; and
- appending the HTML code of the second layer to the HTML element.
6. The method as recited in claim 5, wherein the HTML code further comprises a code segment for deleting the HTML code from the HTML element when a full screen update image is received.
7. The method as recited in claim 1, wherein the code segment for transmitting over the network the screen update request comprises a request-update script.
8. The method as recited in claim 7, wherein:
- the code segment for receiving the HTML code of the first layer comprises a code segment for receiving HTML code identifying a plurality of screen update images of the first layer; and
- the code segment for transmitting over the network a request to receive the screen update image of the first layer comprises an image-load script executed in connection with receiving one of the screen update images, wherein the image-load script executes the request-update script after all of the screen update images of the first layer have been displayed.
9. The method as recited in claim 1, wherein the HTML code further comprises code segments for:
- detecting a communication error by a timeout period when a browser has not received any images; and
- transmitting over the network a request for a full screen update image in response to the communication error.
10. A computer readable medium comprising code segments to be executed by a computer, the code segments for:
- transmitting over a network a first screen update request;
- receiving over the network Hypertext Markup Language (HTML) code identifying a screen update image of a first layer;
- transmitting over the network a request to receive the screen update image of the first layer;
- displaying the screen update image of the first layer;
- transmitting over the network a second screen update request;
- receiving over the network HTML code identifying a screen update image of a second layer;
- transmitting over the network a request to receive the screen update image of the second layer; and
- receiving and displaying the screen update image of the second layer,
- wherein the screen update image of the second layer overlaps at least part of the screen update image of the first layer.
11. The computer readable medium as recited in claim 10, wherein the HTML code comprises an img HTML tag.
12. The computer readable medium as recited in claim 10, wherein the HTML code identifying the screen update image of the first layer comprises a first z-index HTML tag and the HTML code identifying the screen update image of the second layer comprises a second z-index HTML tag.
13. The computer readable medium as recited in claim 10, wherein:
- the first update image of the first layer represents a substantially full screen update; and
- the second update image of the second layer represents a partial screen update.
14. The computer readable medium as recited in claim 10, further comprising code segments for:
- storing the HTML code of the first layer in an HTML element; and
- appending the HTML code of the second layer to the HTML element.
15. The computer readable medium as recited in claim 14, further comprising a code segment for deleting the HTML code from the HTML element when a full screen update image is received.
16. The computer readable medium as recited in claim 10, wherein the code segment for transmitting over the network the screen update request comprises a request-update script.
17. The computer readable medium as recited in claim 16, wherein:
- the code segment for receiving the HTML code of the first layer comprises a code segment for receiving HTML code identifying a plurality of screen update images of the first layer; and
- the code segment for transmitting over the network a request to receive the screen update image of the first layer comprises an image-load script executed in connection with displaying one of the screen update images, wherein the image-load script executes the request-update script after all of the screen update images of the first layer have been displayed.
18. The computer readable medium as recited in claim 10, further comprising code segments for:
- detecting a communication error; and
- transmitting over the network a request for a full screen update image in response to the communication error.
19. A browser based web conferencing method comprising:
- an attendee computer transmitting over a network a first screen update request;
- the attendee computer receiving over the network Hypertext Markup Language (HTML) code identifying a screen update image of a first layer;
- the attendee computer transmitting over the network a request to receive the screen update image of the first layer;
- the attendee computer displaying the screen update image of the first layer;
- the attendee computer transmitting over the network a second screen update request;
- the attendee computer receiving over the network HTML code identifying a screen update image of a second layer;
- the attendee computer transmitting over the network a request to receive the screen update image of the second layer; and
- the attendee computer displaying the screen update image of the second layer,
- wherein the screen update image of the second layer overlaps at least part of the screen update image of the first layer.
20. A browser based web conferencing system comprising a server computer, a presenter computer, and an attendee computer, wherein
- the server computer for receiving screen update images from the presenter computer and for transmitting the screen update images to the attendee computer;
- the attendee computer for transmitting to the server computer a first screen update request;
- the attendee computer for receiving from the server computer Hypertext Markup Language (HTML) code identifying a screen update image of a first layer;
- the attendee computer for transmitting to the server computer a request to receive the screen update image of the first layer;
- the attendee computer for displaying the screen update image of the first layer;
- the attendee computer for transmitting to the server computer a second screen update request;
- the attendee computer for receiving from the server computer HTML code identifying a screen update image of a second layer;
- the attendee computer for transmitting to the server computer a request to receive the screen update image of the second layer; and
- the attendee computer for displaying the screen update image of the second layer,
- wherein the screen update image of the second layer overlaps at least part of the screen update image of the first layer.
Type: Application
Filed: Sep 5, 2007
Publication Date: Mar 6, 2008
Applicant: RHUB COMMUNICATIONS, INC. (Santa Clara, CA)
Inventors: Chengjiang Mao (San Jose, CA), Yanlin Guan (Santa Clara, CA), Lawrence A. Dorie (Los Altos, CA)
Application Number: 11/850,192
International Classification: G06F 15/16 (20060101);