US20080059583A1 - Browser based web conferencing employing layering to display screen updates - Google Patents
Browser based web conferencing employing layering to display screen updates Download PDFInfo
- Publication number
- US20080059583A1 US20080059583A1 US11/850,192 US85019207A US2008059583A1 US 20080059583 A1 US20080059583 A1 US 20080059583A1 US 85019207 A US85019207 A US 85019207A US 2008059583 A1 US2008059583 A1 US 2008059583A1
- Authority
- US
- United States
- Prior art keywords
- screen update
- layer
- html
- update image
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
- H04L65/4053—Arrangements for multi-party communication, e.g. for conferences without floor control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Definitions
- the present invention relates to web conferencing, and in particular, browser based web conferencing employing layering to display screen updates.
- 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.).
- a plug-in e.g., Flash
- a plug-in that augments the basic operation of a web browser
- 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.
- the attendee's computer or gateway server
- 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.
- screen sharing browser based web conferencing
- any attendee with an appropriate browser installed can join a meeting by simply launching the browser and visiting the designated web site.
- 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.
- An 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.
- HTML Hypertext Markup Language
- 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.
- the HTML code comprises an img HTML tag.
- 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.
- the first update image of the first layer represents a substantially full screen update
- the second update image of the second layer represents a partial screen update
- 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.
- the HTML code is deleted from the HTML element when a full screen update image is received.
- transmission of the screen update request comprises a request-update script.
- 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.
- 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.
- FIG. 1A is a flow diagram according to an embodiment of the present invention for implementing browser based web conferencing using layers.
- FIG. 1B is example HTML code used to display images in layers according to an embodiment of the present invention.
- FIG. 2 shows a browser based web conferencing system according to an embodiment of the present invention comprising a presenter computer, a server computer, and a plurality of attendee computers.
- FIG. 3 shows an embodiment of the present invention wherein the screen is divided into a grid of blocks which are then aggregated into a macro block representing a screen update image.
- FIG. 4A is an example full screen update image transmitted to the attendees.
- FIG. 4B is an example screen update when a new window is opened.
- FIG. 4C is another example screen update when the new window is moved.
- FIG. 4D illustrates an embodiment of the present invention wherein two macro blocks are generated and transmitted corresponding to two screen update images.
- FIG. 5 shows an embodiment of the present invention wherein the macro blocks of a screen update are transmitted in a delta data packet, wherein a full screen update image (still) is transmitted periodically in order to synchronize the attendees.
- FIG. 6A is a flow diagram according to an embodiment of the present invention wherein the HTML code for displaying the screen update images is appended to an HTML element.
- FIG. 6B is a flow diagram according to an embodiment of the present invention wherein the HTML code is deleted from the HTML element when a full screen update image (still) is received.
- FIG. 7 is a flow diagram according to an embodiment of the present invention wherein all of the screen update images included in a delta data packet are displayed before transmitting a new update request.
- FIG. 8 is a flow diagram according to an embodiment of the present invention wherein an update request is executed by executing a request-update JavaScript.
- FIG. 9 is a flow diagram according to an embodiment of the present invention wherein an update request is executed by executing a request-update JavaScript from an image-load JavaScript after displaying all of the images in the current delta data packet.
- FIG. 10 is a flow diagram according to an embodiment of the present invention wherein a request for a full screen update image is transmitted when a communication error is detected.
- FIGS. 11A-11C is source code executed by the browser at each attendee computer according to an embodiment of the present invention.
- FIG. 11D is source code executed by the server computer according to an embodiment of the present invention.
- FIGS. 12A-12C is source code executed by the browser at each attendee computer according to an alternative embodiment of the present invention.
- FIG. 12D is source code executed by the server computer according to an alternative embodiment of the present invention.
- FIG. 1A is a flow diagram according to an embodiment of the present invention for a browser based web conferencing system, 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 (step 2 ), and HTML code is received identifying a screen update image of a first layer (step 4 ).
- a request to receive the screen update image of the first layer is transmitted over the network (step 6 ), and the screen update image of the first layer is displayed (step 8 ).
- a second screen update request is transmitted over a network (step 10 ), and HTML code is received identifying a screen update image of a second layer (step 12 ).
- a request to receive the screen update image of the second layer is transmitted over the network (step 14 ), and the screen update image of the second layer is displayed (step 16 ), wherein the screen update image of the second layer overlaps at least part of the screen update image of the first layer.
- FIG. 1B shows example HTML code for identifying a screen update image according to an embodiment of the present invention.
- the HTML code shown in FIG. 1B is received in response to a single update request, for example, an update request for the No. 232 layer.
- Each screen update image is identified by a source tag (src) followed by an image request URL:
- 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
- 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.
- 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).
- a server computer 20 acts as an intermediary between a presenter computer 22 and the attendee computers 24 A- 24 C. Also in the embodiment of FIG. 2 , the server computer 20 communicates with the presenter computer 22 and the attendee computers 24 A- 24 C over the Internet using a suitable communication protocol.
- An attendee computer (e.g., 24 A) sends a update to the Server computer 20 .
- the server determines whether there is a new image to send back to the attendee computer. If not, the server sends a request to the presenter computer 22 .
- FIG. 4C illustrates an example wherein the newly opened window is moved at the presenter computer 22
- FIG. 4D illustrates two macro blocks 28 A and 28 B that are generated for two screen update images corresponding to the screen change at the presenter.
- Any suitable algorithm may be employed to identify the macro blocks, wherein the dimensions of each macro block (screen update image) is ultimately identified using suitable HTML tags, such as the position, left, top, width and height tags shown in the HTML code of FIG. 1B .
- FIG. 5 shows an embodiment of the present invention wherein the screen update images are transmitted to the attendee computers 24 A- 24 C as delta data packets comprising one or more macro blocks.
- the first delta data packet (Delta — 1) comprises a single macro block referred to as a “still” which represents a substantially full screen update image of the presenter's screen.
- the next delta data packet (Delta — 2) comprises one or more macro blocks identifying the screen update images of the presenter's screen, the next delta data packet (Delta — 3) comprising the next screen update images, and so on.
- an attendee computer will receive a delta data packet comprising a “still” macro block representing a full screen update, and in one embodiment when the delta data packet comprising the “still” macro block is received by the server computer 20 from the presenter computer 22 , all other pending delta's buffered by the server 20 are flushed and the delta comprising the “still” macro block transmitted to all of the attendee computers 24 A- 24 C. In this manner, all of the attendee computers 24 A- 24 C will be synchronized in that they will be displaying the same full screen image.
- FIG. 6A is a flow diagram according to an embodiment of the present invention wherein the HTML code for identifying the screen update images is stored in an HTML element.
- the HTML element is instantiated by the browser (step 30 ), and when the browser receives the HTML code identifying the screen update images of a first layer (step 32 ), the HTML code is stored in the HTML element (step 34 ).
- the screen update images identified by the HTML code stored in the HTML element are then retrieved from the sever computer 20 and displayed at the attendee computer 24 (step 36 ).
- the browser receives the HTML code identifying the screen update images of the second layer (step 38 )
- the HTML code is appended to the HTML element (step 40 ).
- the screen update images identified by all of the HTML code stored in the HTML element are then displayed at the attendee computer 24 (step 42 ).
- the previously displayed screen update images e.g., for the first layer
- the new screen update images are received over the network from the server computer 20 .
- the HTML code may be appended to the HTML element in any suitable manner.
- the server computer 20 generates a suitable script (e.g., a JavaScript) which is transmitted to the browser at the attendee computer 24 .
- a suitable script e.g., a JavaScript
- the browser executes the script (by executing the eval command within the function StateChanged( )), the browser appends the newly received HTML code to the HTML element.
- step 44 when an attendee computer 24 receives a full screen update image (step 44 ), all of the current HTML code stored in the HTML element is deleted (step 46 ) and the flow diagram continues at step 32 of FIG. 6A . Otherwise, the HTML code identifying the screen update images of the next layer (e.g., 3 rd layer) are received (step 48 ), appended to the HTML element (step 50 ), and displayed (step 52 ) together with the previous screen update images identified by the previous HTML code for all other layers (displayed in ascending order).
- a script e.g., a JavaScript
- the network as in the example source code shown in FIGS. 11A-11D
- 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 FIG. 7 wherein after sending an update request over the network (step 54 ), the HTML code identifying the next screen update images is received over the network (step 56 ). The browser then executes the HTML code to retrieve the screen update image of the first layer, which may be retrieved from the local cache or loaded over the network (step 60 ). The screen update image is displayed on the attendee's screen (step 62 ), and if there are more screen update images to display (step 64 ), the flow diagram continues at step 60 . Once all of the screen update images have been displayed, including the screen update images of the layer associated with the current update request, the browser sends a new update request to receive the HTML code identifying the next screen update images (step 54 ).
- Any suitable code may be employed to generate the update request at the attendee computer.
- a script e.g., a JavaScript
- An example script RquestUpdate( ) is shown in the source code of FIGS. 11A-11D which is called from the function Start( ) in the body section of the HTML web page as well as from the function ImageLoad( ).
- any suitable code may be employed to wait for all of the screen update images to be displayed before sending a new update request.
- FIG. 11A-11D An example script RquestUpdate( ) is shown in the source code of FIGS. 11A-11D which is called from the function Start( ) in the body section of the HTML web page as well as from the function ImageLoad( ).
- any suitable code may be employed to wait for all of the screen update images to be displayed before sending a new update request.
- a script (e.g., a JavaScript) is received by the attendee computer within an HTML web page (step 68 ).
- An example script ImageLoad( ) is shown in the source code of FIGS. 11A-11D which is called after a screen update image is loaded (received over the network at step 60 ).
- the onload HTML tag causes the browser to call function ImageLoad( ) after a screen update image is loaded over the network (as opposed to retrieved from the local cache).
- the screen update images associated with the current update request are loaded over the network, and the ImageLoad( ) function executed after each screen update image is loaded (step 70 ).
- the ImageLoad( ) function calls the RquestUpdate( ) function to send a new update request over the network (step 54 ).
- FIG. 10 is a flow diagram according to another embodiment of the present invention wherein when a communication error is detected or when the update request is called the first time (step 72 ), the attendee computer sends a request for a full screen update image (step 74 ).
- the HTML code identifying the full screen update image is received over the network (step 76 ) and then executed to load the full screen update image over the network (step 78 ).
- a new update request is sent over the network (step 54 ) and the process continues as described above.
- a response is not received over the network (e.g., after sending a request to load a screen update image) over a period of time (timeout)
- a communication error is detected (step 72 ) and a new update request for a full screen update image is sent over the network (step 74 ).
- a variable gUpdatedInTimeout tracks whether a response has been received over the network.
- the variable gUpdatedInTimeout is initialized to zero in the Start( ) function, and the Start( ) function is scheduled to be executed at a predetermined interval (gTimeout).
- the variable gUpdatedInTimeout is set to one in the ImageLoad( ) function after receiving a screen update image over the network. If the ImageLoad( ) function is not called within the timeout interval, the Start( ) function will call the RquestUpdate( ) function with a timeout parameter set to true so that a request for a full screen update image is sent over the network.
- any suitable source code may be employed in the embodiments of the present invention.
- alternative source code executed by the browser at each attendee computer is shown FIGS. 12A-12C
- alternative source code executed by the server computer is shown in FIG. 12D .
- the layers aspect of the present invention may be implemented in any suitable manner.
- a z-index HTML tag is employed to simplify the display of images in the appropriate layers.
- the z-index HTML tag may not be necessary to implement the layers aspect.
- the z-index HTML tag may not be necessary if the gMaxDiv constant of FIG. 12A is sufficiently large.
- future versions of browsers may not utilize a z-index HTML tag, or may use a different type of HTML tag.
- Any suitable browser e.g., Internet Explorer, Safari, Firefox, etc.
- Any suitable browser may be executed by the attendee computers 24 A- 24 C in order to implement the various embodiments of the present invention.
- earlier versions of browsers may not include sufficient resources to implement all of the embodiments disclosed above.
- the ability to display images in layers e.g., using the z-index parameter
- most computers have been installed or updated with browsers having the capabilities to implement all of the above embodiments.
- 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.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
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.
Description
- This application claims priority from Provisional Application Ser. No. 60/842,729 filed Sep. 6, 2006.
- 1. 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.
- An 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.
-
FIG. 1A is a flow diagram according to an embodiment of the present invention for implementing browser based web conferencing using layers. -
FIG. 1B is example HTML code used to display images in layers according to an embodiment of the present invention. -
FIG. 2 shows a browser based web conferencing system according to an embodiment of the present invention comprising a presenter computer, a server computer, and a plurality of attendee computers. -
FIG. 3 shows an embodiment of the present invention wherein the screen is divided into a grid of blocks which are then aggregated into a macro block representing a screen update image. -
FIG. 4A is an example full screen update image transmitted to the attendees. -
FIG. 4B is an example screen update when a new window is opened. -
FIG. 4C is another example screen update when the new window is moved. -
FIG. 4D illustrates an embodiment of the present invention wherein two macro blocks are generated and transmitted corresponding to two screen update images. -
FIG. 5 shows an embodiment of the present invention wherein the macro blocks of a screen update are transmitted in a delta data packet, wherein a full screen update image (still) is transmitted periodically in order to synchronize the attendees. -
FIG. 6A is a flow diagram according to an embodiment of the present invention wherein the HTML code for displaying the screen update images is appended to an HTML element. -
FIG. 6B is a flow diagram according to an embodiment of the present invention wherein the HTML code is deleted from the HTML element when a full screen update image (still) is received. -
FIG. 7 is a flow diagram according to an embodiment of the present invention wherein all of the screen update images included in a delta data packet are displayed before transmitting a new update request. -
FIG. 8 is a flow diagram according to an embodiment of the present invention wherein an update request is executed by executing a request-update JavaScript. -
FIG. 9 is a flow diagram according to an embodiment of the present invention wherein an update request is executed by executing a request-update JavaScript from an image-load JavaScript after displaying all of the images in the current delta data packet. -
FIG. 10 is a flow diagram according to an embodiment of the present invention wherein a request for a full screen update image is transmitted when a communication error is detected. -
FIGS. 11A-11C is source code executed by the browser at each attendee computer according to an embodiment of the present invention. -
FIG. 11D is source code executed by the server computer according to an embodiment of the present invention. -
FIGS. 12A-12C is source code executed by the browser at each attendee computer according to an alternative embodiment of the present invention. -
FIG. 12D is source code executed by the server computer according to an alternative embodiment of the present invention. -
FIG. 1A is a flow diagram according to an embodiment of the present invention for a browser based web conferencing system, 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 (step 2), and HTML code is received identifying a screen update image of a first layer (step 4). A request to receive the screen update image of the first layer is transmitted over the network (step 6), and the screen update image of the first layer is displayed (step 8). A second screen update request is transmitted over a network (step 10), and HTML code is received identifying a screen update image of a second layer (step 12). A request to receive the screen update image of the second layer is transmitted over the network (step 14), and the screen update image of the second layer is displayed (step 16), wherein the screen update image of the second layer overlaps at least part of the screen update image of the first layer. -
FIG. 1B shows example HTML code for identifying a screen update image according to an embodiment of the present invention. The HTML code shown inFIG. 1B is received in response to a single update request, for example, an update request for the No. 232 layer. Three screen update images are identified by the HTML code using three HTML image tags (img with image iid=0, iid=1, iid=2). Each screen update image is identified by a source tag (src) followed by an image request URL: - “/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 oflayer 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
FIG. 2 , aserver computer 20 acts as an intermediary between apresenter computer 22 and theattendee computers 24A-24C. Also in the embodiment ofFIG. 2 , theserver computer 20 communicates with thepresenter computer 22 and theattendee computers 24A-24C over the Internet using a suitable communication protocol. An attendee computer (e.g., 24A) sends a update to theServer computer 20. The server determines whether there is a new image to send back to the attendee computer. If not, the server sends a request to thepresenter computer 22. The server receives a screen a update image from the presenter computer and sends the image to the attendee computer (24A) that makes the initial update request. Meanwhile, the server buffers the received images from the presenter computer in order to respond to later update requests from other attendees (24B, 24C). In one embodiment, eachattendee computer 24A-24C communicates over a different connection having a different data rate, and therefore theattendee computers 24A-24C may be out of sync with respect to the screen update images (i.e., some of the attendee computers may be slower than others in receiving the screen update images). In an embodiment disclosed in more detail below, theserver computer 20 may periodically transmit a full screen update image to all of theattendee computers 24A-24C in order to resynchronize all of theattendee computers 24A-24C. -
FIG. 3 shows an embodiment wherein the screen of thepresenter computer 22 is represented as a grid of blocks which are aggregated to form a macro block (e.g.,macro block 26A) representing a screen update image. A full screen update image is generated by forming a macro block comprising all of the blocks of the screen. Thus, in one embodiment a full screen update image is generated first (corresponding to the first layer) and transmitted to theattendee computers 24A-24C. Then when the presenter's screen changes (e.g., as shown bymacro blocks attendee computers 24A-24C that display the delta in the next layer. -
FIGS. 4A-4B further illustrate an embodiment of the present invention, wherein the presenter's screen initially comprises a spread sheet document as shown inFIG. 4A and wherein a corresponding initial full screen update image is generated and transmitted to theattendee computers 24A-24C.FIG. 4B shows that the presenter's screen changes by opening a new window, wherein a corresponding screen update image is generated and transmitted to theattendee computers 24A-24C for display in a new layer. Note that the screen update image representing the newly opened window overlaps the previous full screen update image. Thus, when the browser of the attendee computers displays the update, it first displays the initial full screen update image in a first layer, and then displays the screen update image corresponding to the newly opened window in a second layer that overlaps the first layer. -
FIG. 4C illustrates an example wherein the newly opened window is moved at thepresenter computer 22, andFIG. 4D illustrates twomacro blocks FIG. 1B . -
FIG. 5 shows an embodiment of the present invention wherein the screen update images are transmitted to theattendee computers 24A-24C as delta data packets comprising one or more macro blocks. The first delta data packet (Delta—1) comprises a single macro block referred to as a “still” which represents a substantially full screen update image of the presenter's screen. The next delta data packet (Delta—2) comprises one or more macro blocks identifying the screen update images of the presenter's screen, the next delta data packet (Delta—3) comprising the next screen update images, and so on. In one embodiment, an attendee computer will receive a delta data packet comprising a “still” macro block representing a full screen update, and in one embodiment when the delta data packet comprising the “still” macro block is received by theserver computer 20 from thepresenter computer 22, all other pending delta's buffered by theserver 20 are flushed and the delta comprising the “still” macro block transmitted to all of theattendee computers 24A-24C. In this manner, all of theattendee computers 24A-24C will be synchronized in that they will be displaying the same full screen image. -
FIG. 6A is a flow diagram according to an embodiment of the present invention wherein the HTML code for identifying the screen update images is stored in an HTML element. The HTML element is instantiated by the browser (step 30), and when the browser receives the HTML code identifying the screen update images of a first layer (step 32), the HTML code is stored in the HTML element (step 34). The screen update images identified by the HTML code stored in the HTML element are then retrieved from the severcomputer 20 and displayed at the attendee computer 24 (step 36). When the browser receives the HTML code identifying the screen update images of the second layer (step 38), the HTML code is appended to the HTML element (step 40). The screen update images identified by all of the HTML code stored in the HTML element are then displayed at the attendee computer 24 (step 42). In one embodiment, the previously displayed screen update images (e.g., for the first layer) are retrieved from a local cache at the attendee computer 24, whereas the new screen update images (e.g., for the second layer) are received over the network from theserver computer 20. - The HTML code may be appended to the HTML element in any suitable manner. In one embodiment illustrated by the source code shown in
FIGS. 11A-11D , theserver computer 20 generates a suitable script (e.g., a JavaScript) which is transmitted to the browser at the attendee computer 24. When the browser executes the script (by executing the eval command within the function StateChanged( )), the browser appends the newly received HTML code to the HTML element. - In an embodiment shown in
FIG. 6B , when an attendee computer 24 receives a full screen update image (step 44), all of the current HTML code stored in the HTML element is deleted (step 46) and the flow diagram continues atstep 32 ofFIG. 6A . Otherwise, the HTML code identifying the screen update images of the next layer (e.g., 3rd layer) are received (step 48), appended to the HTML element (step 50), and displayed (step 52) together with the previous screen update images identified by the previous HTML code for all other layers (displayed in ascending order). In one embodiment, a script (e.g., a JavaScript) is received over the network (as in the example source code shown inFIGS. 11A-11D ) which causes the current HTML code stored in the HTML element to be deleted (step 46) and replaced by the HTML code identifying the full screen update image. - 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
FIG. 7 wherein after sending an update request over the network (step 54), the HTML code identifying the next screen update images is received over the network (step 56). The browser then executes the HTML code to retrieve the screen update image of the first layer, which may be retrieved from the local cache or loaded over the network (step 60). The screen update image is displayed on the attendee's screen (step 62), and if there are more screen update images to display (step 64), the flow diagram continues atstep 60. Once all of the screen update images have been displayed, including the screen update images of the layer associated with the current update request, the browser sends a new update request to receive the HTML code identifying the next screen update images (step 54). - Any suitable code may be employed to generate the update request at the attendee computer. In an embodiment shown in the flow diagram of
FIG. 8 , a script (e.g., a JavaScript) is received by the attendee computer within an HTML web page (step 66). An example script RquestUpdate( ) is shown in the source code ofFIGS. 11A-11D which is called from the function Start( ) in the body section of the HTML web page as well as from the function ImageLoad( ). Similarly, any suitable code may be employed to wait for all of the screen update images to be displayed before sending a new update request. In an embodiment shown in the flow diagram ofFIG. 9 , a script (e.g., a JavaScript) is received by the attendee computer within an HTML web page (step 68). An example script ImageLoad( ) is shown in the source code ofFIGS. 11A-11D which is called after a screen update image is loaded (received over the network at step 60). Referring to the example HTML code ofFIG. 1B , the onload HTML tag causes the browser to call function ImageLoad( ) after a screen update image is loaded over the network (as opposed to retrieved from the local cache). After displaying all of the cached screen update images (step 62), the screen update images associated with the current update request are loaded over the network, and the ImageLoad( ) function executed after each screen update image is loaded (step 70). Once all of the new screen update images have been loaded and displayed, the ImageLoad( ) function calls the RquestUpdate( ) function to send a new update request over the network (step 54). -
FIG. 10 is a flow diagram according to another embodiment of the present invention wherein when a communication error is detected or when the update request is called the first time (step 72), the attendee computer sends a request for a full screen update image (step 74). The HTML code identifying the full screen update image is received over the network (step 76) and then executed to load the full screen update image over the network (step 78). After displaying the full screen update image (step 80), a new update request is sent over the network (step 54) and the process continues as described above. If a response is not received over the network (e.g., after sending a request to load a screen update image) over a period of time (timeout), a communication error is detected (step 72) and a new update request for a full screen update image is sent over the network (step 74). - 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
FIGS. 11A-11D , a variable gUpdatedInTimeout tracks whether a response has been received over the network. The variable gUpdatedInTimeout is initialized to zero in the Start( ) function, and the Start( ) function is scheduled to be executed at a predetermined interval (gTimeout). The variable gUpdatedInTimeout is set to one in the ImageLoad( ) function after receiving a screen update image over the network. If the ImageLoad( ) function is not called within the timeout interval, the Start( ) function will call the RquestUpdate( ) function with a timeout parameter set to true so that a request for a full screen update image is sent over the network. - 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
FIGS. 12A-12C , and alternative source code executed by the server computer is shown inFIG. 12D . In addition, the layers aspect of the present invention may be implemented in any suitable manner. In the embodiments described above, a z-index HTML tag is employed to simplify the display of images in the appropriate layers. However, the z-index HTML tag may not be necessary to implement the layers aspect. For example, the z-index HTML tag may not be necessary if the gMaxDiv constant ofFIG. 12A is sufficiently large. In addition, future versions of browsers may not utilize a z-index HTML tag, or may use a different type of HTML tag. - 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 (20)
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.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/850,192 US20080059583A1 (en) | 2006-09-06 | 2007-09-05 | Browser based web conferencing employing layering to display screen updates |
US12/768,935 US7966371B2 (en) | 2006-09-06 | 2010-04-28 | Browser based web conferencing employing layering to display screen updates |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US84272906P | 2006-09-06 | 2006-09-06 | |
US11/850,192 US20080059583A1 (en) | 2006-09-06 | 2007-09-05 | Browser based web conferencing employing layering to display screen updates |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/768,935 Continuation US7966371B2 (en) | 2006-09-06 | 2010-04-28 | Browser based web conferencing employing layering to display screen updates |
Publications (1)
Publication Number | Publication Date |
---|---|
US20080059583A1 true US20080059583A1 (en) | 2008-03-06 |
Family
ID=39153316
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/850,192 Abandoned US20080059583A1 (en) | 2006-09-06 | 2007-09-05 | Browser based web conferencing employing layering to display screen updates |
US12/768,935 Expired - Fee Related US7966371B2 (en) | 2006-09-06 | 2010-04-28 | Browser based web conferencing employing layering to display screen updates |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/768,935 Expired - Fee Related US7966371B2 (en) | 2006-09-06 | 2010-04-28 | Browser based web conferencing employing layering to display screen updates |
Country Status (1)
Country | Link |
---|---|
US (2) | US20080059583A1 (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090106347A1 (en) * | 2007-10-17 | 2009-04-23 | Citrix Systems, Inc. | Methods and systems for providing access, from within a virtual world, to an external resource |
WO2011039594A1 (en) * | 2009-09-29 | 2011-04-07 | Ultra Sales Technology Inc. | Systems and methods for controlling the content displayed on the browser of a remote user |
US20110126130A1 (en) * | 2009-11-24 | 2011-05-26 | Adam Michael Lieb | Method and system for browser-based screen sharing |
US20140013235A1 (en) * | 2012-07-03 | 2014-01-09 | Intemational Business Machines Corporation | Representing a graphical user interface using a topic tree structure |
US20140025784A1 (en) * | 2003-12-22 | 2014-01-23 | International Business Machines Corporation | Pull-configured distribution of imagery |
US9471694B2 (en) | 2011-05-30 | 2016-10-18 | Clearslide, Inc. | Method and system for browser-based control of a remote computer |
CN107562852A (en) * | 2017-08-28 | 2018-01-09 | 网易乐得科技有限公司 | A kind of page display method, medium, device and computing device |
US10311130B1 (en) * | 2016-05-09 | 2019-06-04 | Amazon Technologies, Inc. | Dynamic page transitions in electronic content |
US10860279B2 (en) | 2009-11-24 | 2020-12-08 | Clearslide, Inc. | Method and system for browser-based screen sharing |
US11379174B2 (en) * | 2019-07-04 | 2022-07-05 | Ricoh Company, Ltd. | Information processing system, information processing apparatus, and information processing method |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5230401B2 (en) | 2008-12-19 | 2013-07-10 | キヤノン株式会社 | Display control device, image processing device |
US8994748B2 (en) | 2011-05-10 | 2015-03-31 | Google Inc. | Anchors for displaying image sprites, sub-regions and 3D images |
US9293008B2 (en) | 2012-03-16 | 2016-03-22 | Bally Gaming, Inc. | Layout elements as rendering placeholders for native wagering game applications |
Citations (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5491780A (en) * | 1992-09-15 | 1996-02-13 | International Business Machines Corporation | System and method for efficient computer workstation screen updates |
US6012087A (en) * | 1997-01-14 | 2000-01-04 | Netmind Technologies, Inc. | Unique-change detection of dynamic web pages using history tables of signatures |
US6295551B1 (en) * | 1996-05-07 | 2001-09-25 | Cisco Technology, Inc. | Call center system where users and representatives conduct simultaneous voice and joint browsing sessions |
US20020038346A1 (en) * | 2000-08-10 | 2002-03-28 | Frank Morrison | Method for screen image sharing |
US20020054044A1 (en) * | 2000-11-08 | 2002-05-09 | Lee-Chung Lu | Collaborative screen sharing system |
US20020198938A1 (en) * | 2001-04-24 | 2002-12-26 | Fujitsu Limited | Display engagement system |
US20030072429A1 (en) * | 2001-10-17 | 2003-04-17 | Infocus Corporation | Dataconferencing appliance and system |
US20030085923A1 (en) * | 2000-05-02 | 2003-05-08 | Chen Tsung-Yen ( Eric ) | Method and apparatus for conducting a collaboration session in which screen displays are commonly shared with participants |
US6668273B1 (en) * | 1999-11-18 | 2003-12-23 | Raindance Communications, Inc. | System and method for application viewing through collaborative web browsing session |
US20040080528A1 (en) * | 2000-06-21 | 2004-04-29 | Watchit.Com,Inc. | Systems and methods for presenting interactive programs over the internet |
US6766356B1 (en) * | 2000-09-14 | 2004-07-20 | Genesys Conferencing, Ltd. | Method and system for remotely modifying presentations in a multimedia conference |
US20050097159A1 (en) * | 2003-11-05 | 2005-05-05 | Skidgel Brandon S. | Apparatus and method for remotely sharing information and providing remote interactive assistance via a communications network |
US20050108095A1 (en) * | 2000-08-09 | 2005-05-19 | Adicus Media. Inc. | System and method for electronic advertising, advertisement play tracking and method of payment |
US20050138117A1 (en) * | 2003-12-18 | 2005-06-23 | Samsung Electronics Co., Ltd. | Method and system for pushing notifications to networked device |
US20050193062A1 (en) * | 2004-02-27 | 2005-09-01 | International Business Machines Corporation | Collaboration server, collaboration system, and method and program for collaboration server and system |
US20050198139A1 (en) * | 2004-02-25 | 2005-09-08 | International Business Machines Corporation | Multispeaker presentation system and method |
US20060031779A1 (en) * | 2004-04-15 | 2006-02-09 | Citrix Systems, Inc. | Selectively sharing screen data |
US20060271624A1 (en) * | 2005-05-12 | 2006-11-30 | International Business Machines Corporation | Method, system, and computer program product for web conference participant display render acknowledgement |
US20070050448A1 (en) * | 2005-08-25 | 2007-03-01 | Polycom, Inc. | Method and system for information collaboration over an IP network via handheld wireless communication devices |
US20070094380A1 (en) * | 2005-10-20 | 2007-04-26 | Samuel Fu | Method and apparatus for collocating application monitoring reports with web applications |
US20070185956A1 (en) * | 2006-02-09 | 2007-08-09 | Ogle David M | Communication system and method |
US7271815B2 (en) * | 2004-10-21 | 2007-09-18 | International Business Machines Corporation | System, method and program to generate a blinking image |
US20080209327A1 (en) * | 2007-02-27 | 2008-08-28 | Microsoft Corporation | Persistent spatial collaboration |
US7523393B2 (en) * | 2003-03-07 | 2009-04-21 | International Business Machines Corporation | Dynamically updating rendered content |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020156815A1 (en) * | 2001-04-19 | 2002-10-24 | International Business Machines Corporation | Method and apparatus for the separation of web layout, logic, and data when used in server-side scripting languages |
US6973623B2 (en) * | 2001-06-14 | 2005-12-06 | International Business Machines Corporation | System and method for client refresh mode selection |
US7230621B2 (en) * | 2002-02-19 | 2007-06-12 | Adams Jr William O | Three-dimensional imaging system and methods |
KR100772861B1 (en) * | 2005-09-23 | 2007-11-02 | 삼성전자주식회사 | Apparatus and method for providing a remote user interface |
-
2007
- 2007-09-05 US US11/850,192 patent/US20080059583A1/en not_active Abandoned
-
2010
- 2010-04-28 US US12/768,935 patent/US7966371B2/en not_active Expired - Fee Related
Patent Citations (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5491780A (en) * | 1992-09-15 | 1996-02-13 | International Business Machines Corporation | System and method for efficient computer workstation screen updates |
US6295551B1 (en) * | 1996-05-07 | 2001-09-25 | Cisco Technology, Inc. | Call center system where users and representatives conduct simultaneous voice and joint browsing sessions |
US6012087A (en) * | 1997-01-14 | 2000-01-04 | Netmind Technologies, Inc. | Unique-change detection of dynamic web pages using history tables of signatures |
US7228332B2 (en) * | 1999-11-18 | 2007-06-05 | Intercall, Inc. | System and method for application viewing through collaborative web browsing session |
US7373381B2 (en) * | 1999-11-18 | 2008-05-13 | Intercall, Inc. | System and method for application viewing through collaborative web browsing session |
US6668273B1 (en) * | 1999-11-18 | 2003-12-23 | Raindance Communications, Inc. | System and method for application viewing through collaborative web browsing session |
US20030085923A1 (en) * | 2000-05-02 | 2003-05-08 | Chen Tsung-Yen ( Eric ) | Method and apparatus for conducting a collaboration session in which screen displays are commonly shared with participants |
US6809749B1 (en) * | 2000-05-02 | 2004-10-26 | Oridus, Inc. | Method and apparatus for conducting an interactive design conference over the internet |
US20040080528A1 (en) * | 2000-06-21 | 2004-04-29 | Watchit.Com,Inc. | Systems and methods for presenting interactive programs over the internet |
US20050108095A1 (en) * | 2000-08-09 | 2005-05-19 | Adicus Media. Inc. | System and method for electronic advertising, advertisement play tracking and method of payment |
US20020038346A1 (en) * | 2000-08-10 | 2002-03-28 | Frank Morrison | Method for screen image sharing |
US6766356B1 (en) * | 2000-09-14 | 2004-07-20 | Genesys Conferencing, Ltd. | Method and system for remotely modifying presentations in a multimedia conference |
US20020054044A1 (en) * | 2000-11-08 | 2002-05-09 | Lee-Chung Lu | Collaborative screen sharing system |
US20020198938A1 (en) * | 2001-04-24 | 2002-12-26 | Fujitsu Limited | Display engagement system |
US7174505B2 (en) * | 2001-04-24 | 2007-02-06 | Fujitsu Limited | Display engagement system |
US20030072429A1 (en) * | 2001-10-17 | 2003-04-17 | Infocus Corporation | Dataconferencing appliance and system |
US7523393B2 (en) * | 2003-03-07 | 2009-04-21 | International Business Machines Corporation | Dynamically updating rendered content |
US20050097159A1 (en) * | 2003-11-05 | 2005-05-05 | Skidgel Brandon S. | Apparatus and method for remotely sharing information and providing remote interactive assistance via a communications network |
US20050138117A1 (en) * | 2003-12-18 | 2005-06-23 | Samsung Electronics Co., Ltd. | Method and system for pushing notifications to networked device |
US20050198139A1 (en) * | 2004-02-25 | 2005-09-08 | International Business Machines Corporation | Multispeaker presentation system and method |
US20050193062A1 (en) * | 2004-02-27 | 2005-09-01 | International Business Machines Corporation | Collaboration server, collaboration system, and method and program for collaboration server and system |
US20060031779A1 (en) * | 2004-04-15 | 2006-02-09 | Citrix Systems, Inc. | Selectively sharing screen data |
US7271815B2 (en) * | 2004-10-21 | 2007-09-18 | International Business Machines Corporation | System, method and program to generate a blinking image |
US20060271624A1 (en) * | 2005-05-12 | 2006-11-30 | International Business Machines Corporation | Method, system, and computer program product for web conference participant display render acknowledgement |
US20070050448A1 (en) * | 2005-08-25 | 2007-03-01 | Polycom, Inc. | Method and system for information collaboration over an IP network via handheld wireless communication devices |
US20070094380A1 (en) * | 2005-10-20 | 2007-04-26 | Samuel Fu | Method and apparatus for collocating application monitoring reports with web applications |
US20070185956A1 (en) * | 2006-02-09 | 2007-08-09 | Ogle David M | Communication system and method |
US20080209327A1 (en) * | 2007-02-27 | 2008-08-28 | Microsoft Corporation | Persistent spatial collaboration |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140025784A1 (en) * | 2003-12-22 | 2014-01-23 | International Business Machines Corporation | Pull-configured distribution of imagery |
US9313273B2 (en) * | 2003-12-22 | 2016-04-12 | International Business Machines Corporation | Pull-configured distribution of imagery |
US8024407B2 (en) | 2007-10-17 | 2011-09-20 | Citrix Systems, Inc. | Methods and systems for providing access, from within a virtual world, to an external resource |
US20090106347A1 (en) * | 2007-10-17 | 2009-04-23 | Citrix Systems, Inc. | Methods and systems for providing access, from within a virtual world, to an external resource |
WO2011039594A1 (en) * | 2009-09-29 | 2011-04-07 | Ultra Sales Technology Inc. | Systems and methods for controlling the content displayed on the browser of a remote user |
US8472590B1 (en) * | 2009-09-29 | 2013-06-25 | Now Solutions Integration Group Inc. | Systems and methods for controlling the content displayed on the browser of a remote user |
US20110126130A1 (en) * | 2009-11-24 | 2011-05-26 | Adam Michael Lieb | Method and system for browser-based screen sharing |
US10860279B2 (en) | 2009-11-24 | 2020-12-08 | Clearslide, Inc. | Method and system for browser-based screen sharing |
US9733886B2 (en) * | 2009-11-24 | 2017-08-15 | Clearslide, Inc. | Method and system for browser-based screen sharing |
US9471694B2 (en) | 2011-05-30 | 2016-10-18 | Clearslide, Inc. | Method and system for browser-based control of a remote computer |
US9110554B2 (en) * | 2012-07-03 | 2015-08-18 | International Business Machines Corporation | Representing a graphical user interface using a topic tree structure |
US9046982B2 (en) * | 2012-07-03 | 2015-06-02 | International Business Machines Corporation | Representing a graphical user interface using a topic tree structure |
US20140013235A1 (en) * | 2012-07-03 | 2014-01-09 | Intemational Business Machines Corporation | Representing a graphical user interface using a topic tree structure |
US10311130B1 (en) * | 2016-05-09 | 2019-06-04 | Amazon Technologies, Inc. | Dynamic page transitions in electronic content |
CN107562852A (en) * | 2017-08-28 | 2018-01-09 | 网易乐得科技有限公司 | A kind of page display method, medium, device and computing device |
US11379174B2 (en) * | 2019-07-04 | 2022-07-05 | Ricoh Company, Ltd. | Information processing system, information processing apparatus, and information processing method |
Also Published As
Publication number | Publication date |
---|---|
US7966371B2 (en) | 2011-06-21 |
US20100211823A1 (en) | 2010-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7966371B2 (en) | Browser based web conferencing employing layering to display screen updates | |
US12093429B2 (en) | Remoting application across a network using draw commands with an isolator application | |
JP5022301B2 (en) | Proxy server, communication relay program, and communication relay method | |
JP4698756B2 (en) | Offline execution of web-based applications | |
US9292467B2 (en) | Mobile resource accelerator | |
JP4867482B2 (en) | Control program and communication system | |
US8984164B2 (en) | Methods for reducing latency in network connections and systems thereof | |
JP4387446B2 (en) | WEB content editing method and apparatus by URL conversion | |
US9621627B2 (en) | Dynamically launching a server-based application on a mobile device | |
CN109002366A (en) | A remote debugging method and device for mobile web pages | |
US8959434B2 (en) | Add-in program for upload, auxiliary program for upload and upload method | |
US7437275B2 (en) | System for and method of multi-location test execution | |
US20110231482A1 (en) | Automated Optimization Based On Determination Of Website Usage Scenario | |
KR20050043689A (en) | Optimizing file replication using binary comparisons | |
CN103294474A (en) | Browser operation synchronizing method and device for performing browser operation synchronization | |
US20110264729A1 (en) | Augmentation of network traffic | |
CN103533038A (en) | Remote control system based on HTML(hypertext markup language)5 and remote control method of remote control system | |
US20160100025A1 (en) | Ui framework support for portal systems | |
JP2010152772A (en) | Information processor, information processing method and program | |
JP4186164B2 (en) | Web sharing system, Web sharing method, Web sharing program, relay server, and WWW browser display device | |
JP4302057B2 (en) | Seamless ubiquitous system, recording medium, and computer processing continuation method | |
EP2908256A1 (en) | Method, apparatus and computer program product for managing static uniform resource locator access | |
JP5332117B2 (en) | WWW content acquisition system and WWW content acquisition method | |
JP4165796B2 (en) | Client, data download method, program, and recording medium | |
US20070032253A1 (en) | Multisided synchronization of execution in a wireless test environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: RHUB COMMUNICATIONS, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MAO, CHENGJIANG;DORIE, LARRY;GUAN, YANLIN;REEL/FRAME:019947/0583 Effective date: 20071001 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |