U.S. patent application number 10/318393 was filed with the patent office on 2003-05-08 for method and apparatus for conducting a collaboration session in which screen displays are commonly shared with participants.
Invention is credited to Chen, Tsung-Yen ( Eric ), Gu, Ke-Qin, Han, Ching-Chih ( Jason ), Lee, Kuo-Chun.
Application Number | 20030085923 10/318393 |
Document ID | / |
Family ID | 24251411 |
Filed Date | 2003-05-08 |
United States Patent
Application |
20030085923 |
Kind Code |
A1 |
Chen, Tsung-Yen ( Eric ) ;
et al. |
May 8, 2003 |
Method and apparatus for conducting a collaboration session in
which screen displays are commonly shared with participants
Abstract
A method for conducting a collaboration session, comprising:
launching a collaboration session through a program on a computer
so as to communicate with other computers concurrently logged on a
network; and generating a graphics file including pixel information
of a graphics image displayable on a display screen of the computer
for transmission to the other computers so as to be viewable
through graphics file readers associated with web browsers of the
other computers during the collaboration session.
Inventors: |
Chen, Tsung-Yen ( Eric );
(Fremont, CA) ; Gu, Ke-Qin; (Milpitas, CA)
; Han, Ching-Chih ( Jason ); (Fremont, CA) ; Lee,
Kuo-Chun; (Fremont, CA) |
Correspondence
Address: |
VICTOR H. OKUMOTO
P.O. BOX 6120
FREMONT
CA
94538
US
|
Family ID: |
24251411 |
Appl. No.: |
10/318393 |
Filed: |
December 11, 2002 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10318393 |
Dec 11, 2002 |
|
|
|
09563658 |
May 2, 2000 |
|
|
|
Current U.S.
Class: |
715/751 |
Current CPC
Class: |
H04L 12/1813 20130101;
H04L 69/329 20130101; H04L 67/142 20130101; H04L 67/02
20130101 |
Class at
Publication: |
345/751 |
International
Class: |
G09G 005/00 |
Claims
We claim:
1. A method for conducting a collaboration session, comprising:
launching a collaboration session through a program on a computer
so as to communicate with other computers concurrently logged on a
network; and generating a graphics file including pixel information
of a graphics image displayable on a display screen of said
computer for transmission to said other computers so as to be
viewable through graphics file readers associated with web browsers
of said other computers during said collaboration session.
2. The method according to claim 1, wherein said program is an
instant messenger, and said computer and said other computers are
members of a group identified through said instant messenger.
3. The method according to claim 1, wherein said network is a
restricted user network.
4. The method according to claim 3, wherein said restricted user
network is an intranet.
5. The method according to claim 3, wherein said restricted user
network is a virtual private network.
6. The method according to claim 1, wherein said graphics file is
formatted as a JPEG file.
7. The method according to claim 1, wherein said graphics file is
formatted as a GIF file.
8. The method according to claim 1, wherein said graphics file is
formatted as a PNG file.
9. A method for conducting a collaboration session, comprising:
providing an instant messenger for transmitting instant messages
between a computer and other computers concurrently logged on a
network, and launching a collaboration session between computers of
a group including said computer and at least one of said other
computers upon receiving an indication to do so from an operator of
said computer; and providing a snapshot program to said computer
for generating a graphics file including pixel information of a
graphics image displayable on a display screen of said computer so
that said graphics image is viewable through graphics file readers
associated with web browsers of computers of said group during said
collaboration session.
10. The method according to claim 9, wherein said snapshot program
generates said graphics file upon receiving an indication to do so
from said operator of said computer.
11. The method according to claim 9, wherein said network is a
restricted user network.
12. The method according to claim 11, wherein said restricted user
network is an intranet.
13. The method according to claim 11, wherein said restricted user
network is a virtual private network.
14. The method according to claim 9, wherein said graphics file is
formatted as a JPEG file.
15. The method according to claim 9, wherein said graphics file is
formatted as a GIF file.
16. The method according to claim 9, wherein said graphics file is
formatted as a PNG file.
17. The method according to claim 9, wherein said operator provides
said indication to launch said collaboration session through a
launch command indicator displayed on said display screen by said
instant messenger.
18. The method according to claim 9, wherein said operator
identifies said group through at least one group identification
indicator displayed on said display screen by said instant
messenger.
19. The method according to claim 9, wherein said group is
automatically determined by identifications of participants in a
chat session managed by said instant messenger.
20. An apparatus for conducting a collaboration session, comprising
a computer having: an instant messenger for transmitting instant
messages between said computer and other computers concurrently
logged on a network, and launching a collaboration session between
computers of a group including said computer and at least one of
said other computers upon receiving an indication to do so from an
operator of said computer; and a snapshot program for generating a
graphics file including pixel information of a graphics image
displayable on a display screen of said computer so that said
graphics image is viewable through graphics file readers associated
with web browsers of computers of said group during said
collaboration session.
21. The apparatus according to claim 20, wherein said snapshot
program generates said graphics file upon receiving an indication
to do so from said operator of said computer.
22. The apparatus according to claim 20, wherein said network is a
restricted user network.
23. The apparatus according to claim 22, wherein said restricted
user network is an intranet.
24. The apparatus according to claim 22, wherein said restricted
user network is a virtual private network.
25. The apparatus according to claim 22, further comprising a
server connected to said restricted user network and configured so
as to receive said graphics file from said computer and transmit
said graphics file to said computers of said group during said
collaboration session.
26. The apparatus according to claim 20, wherein said graphics file
is formatted as a JPEG file.
27. The apparatus according to claim 20, wherein said graphics file
is formatted as a GIF file.
28. The apparatus according to claim 20, wherein said graphics file
is formatted as a PNG file.
29. The apparatus according to claim 20, wherein said operator
provides said indication to launch said collaboration session
through a launch command indicator displayed on said display screen
by said instant messenger.
30. The apparatus according to claim 20, wherein said operator
identifies said group through at least one group identification
indicator displayed on said display screen by said instant
messenger.
31. The apparatus according to claim 20, wherein said group is
automatically determined by identifications of participants in a
chat session managed by said instant messenger.
32. A method for conducting a collaboration session, comprising:
selectively admitting a plurality of clients communicating through
web browsers over a restricted user network to a collaboration
session; receiving a graphics file indicative of a graphics image
being displayed on a display screen of one of said plurality of
clients; and transmitting said graphics file to said plurality of
clients so that said graphics image is viewable through graphics
file readers associated with said web browsers.
33. The method according to claim 32, wherein said receiving a
graphics file comprises receiving a JPEG file.
34. The method according to claim 32, wherein said receiving a
graphics file comprises receiving a GIF file.
35. The method according to claim 32, wherein said receiving a
graphics file comprises receiving a PNG file.
36. The method according to claim 32, further comprising providing
a snapshot program to one of said plurality of clients, and said
receiving a graphics file comprises receiving a graphics file
generated by said snapshot program from said one of said plurality
of clients.
37. The method according to claim 36, wherein said snapshot program
is included as part of an application program generating said
graphics image being displayed on said display screen of said one
of said plurality of clients.
38. The method according to claim 32, further comprising providing
a java applet to each of said plurality of clients to run in said
web browsers, and said transmitting said graphics file comprises
transmitting said graphics file to said plurality of clients in
response to said java applets.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation-in-part of commonly-owned
U.S. patent application Ser. No. 09/563,658, filed May 2, 2000.
FIELD OF THE INVENTION
[0002] The present invention generally relates to methods of
conducting collaboration sessions and in particular, to a method
and apparatus for conducting a collaboration session in which
screen displays are commonly shared with participants.
BACKGROUND OF THE INVENTION
[0003] It is useful in a collaboration session at times for the
screen or window display on a session participant's display screen
to be shared with or displayed on other session participants'
display screens. One example of such a collaboration session is in
a design conference where session participants discuss a particular
design that is commonly displayed on each participant's display
screen. One problem with certain conventional methods of conducting
such collaboration sessions, however, is that each client
participating in the conference needs to run the same application
program in order to view shared files. Another problem is that the
application program generally needs to be run on the same platform.
Still another problem is that shared files tend to be large and
require considerable transmission time.
OBJECTS AND SUMMARY OF THE INVENTION
[0004] Accordingly, it is an object of the present invention to
provide a method and apparatus for conducting a collaboration
session that does not require each client participating in the
conference to run the same application program in order to view
shared files.
[0005] Another object is to provide a method and apparatus for
conducting a collaboration session that is platform
independent.
[0006] Still another object is to provide a method and apparatus
for conducting a collaboration session that minimizes the size and
transmission time for shared files.
[0007] These and additional objects are accomplished by the various
aspects of the present invention, wherein briefly stated, one
aspect of the invention is a method for conducting a collaboration
session, comprising: launching a collaboration session through a
program on a computer so as to communicate with other computers
concurrently logged on a network; and generating a graphics file
including pixel information of a graphics image displayable on a
display screen of the computer for transmission to the other
computers so as to be viewable through graphics file readers
associated with web browsers of the other computers during the
collaboration session.
[0008] Another aspect is a method for conducting a collaboration
session, comprising: providing an instant messenger for
transmitting instant messages between a computer and other
computers concurrently logged on a network, and launching a
collaboration session between computers of a group including the
computer and at least one of the other computers upon receiving an
indication to do so from an operator of the computer; and executing
a snapshot program on the computer for generating a graphics file
including pixel information of a graphics image displayable on a
display screen of the computer so that the graphics image is
viewable through graphics file readers associated with web browsers
of computers of the group during the collaboration session.
[0009] In another aspect, an apparatus for conducting a
collaboration session comprises a computer having an instant
messenger and a snapshot program. The instant messenger transmits
instant messages between the computer and other computers
concurrently logged on a network, and launches a collaboration
session between computers of a group including the computer and at
least one of the other computers upon receiving an indication to do
so from an operator of the computer. The snapshot program generates
a graphics file including pixel information of a graphics image
displayable on a display screen of the computer so that the
graphics image is viewable through graphics file readers associated
with web browsers of computers of the group during the
collaboration session.
[0010] Still another aspect is a method for conducting a
collaboration session, comprising: selectively admitting a
plurality of clients communicating through web browsers over a
restricted user network to a collaboration session; receiving a
graphics file indicative of a graphics image being displayed on a
display screen of one of the plurality of clients; and transmitting
the graphics file to the plurality of clients so that the graphics
image is viewable through graphics file readers associated with the
web browsers.
[0011] Additional objects, features and advantages of the various
aspects of the present invention will become apparent from the
following description of its preferred embodiments, which
description should be taken in conjunction with the accompanying
drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] FIG. 1 illustrates a diagram of a system including an
apparatus for conducting an interactive design conference over the
Internet.
[0013] FIG. 2 illustrates a diagram further detailing an
interactive design conference on the client side.
[0014] FIG. 3 illustrates a flow diagram of a portion of a method
for conducting an interactive design conference over the Internet,
including setting up an initiator of the design conference.
[0015] FIG. 4 illustrates an example of a menu provided to the
initiator of the design conference before the initiator sets up the
design conference.
[0016] FIG. 5 illustrates an example of a menu provided to the
initiator of the design conference after the initiator sets up the
design conference.
[0017] FIG. 6 illustrates a flow diagram of a portion of a method
for conducting an interactive design conference over the Internet,
including the initiator setting up the design conference.
[0018] FIG. 7 illustrates a flow diagram of a portion of a method
for conducting an interactive design conference over the Internet,
including selectively admitting clients to the design
conference.
[0019] FIG. 8 illustrates design conference application page
displayed by a web browser after a participant joins a design
conference.
[0020] FIG. 9 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including receiving and transmitting a graphics file to
clients.
[0021] FIG. 10 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including receiving and transmitting an annotation of the
graphics file to clients.
[0022] FIG. 11 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including receiving and transmitting a message to
clients.
[0023] FIG. 12 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including logging out participants from the design
conference.
[0024] FIG. 13 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including logging out the initiator of the design
conference after creating a data-log of the design conference.
[0025] FIG. 14 illustrates a diagram of a system including an
apparatus for conducting a collaboration session.
[0026] FIG. 15 illustrates a diagram of computers and associated
software for conducting a collaboration session launched through an
instant messenger.
[0027] FIG. 16 illustrates an instant messenger window displayable
on a display screen of a computer.
[0028] FIG. 17 illustrates a flow diagram of a method for setting
up a collaboration session in response to a launch initiated
through an instant messenger.
[0029] FIG. 18 illustrates a flow diagram of a method for setting
up consoles of invitees accepting an invitation to participate in a
collaboration session.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
[0030] FIG. 1 illustrates a diagram of a system 100 including a web
server 10 programmed with control program 12 to conduct or manage
one or more interactive design conferences 30, 40, 50 over the
Internet 20. In addition to the control program 12 and its
associated databases, master copies of a snapshot program 14 and a
java applet 16 also reside on the web server 10. As will be
described in detail below in reference to FIGS. 2-13, a copy of the
snapshot program 14 is transmitted to an initiator of each design
conference, and a copy of the java applet 16 is transmitted to each
participant of the design conference, including the initiator, to
facilitate the interactive design conference.
[0031] FIG. 2 illustrates a diagram further detailing
representative interactive design conference 30, including web
clients 310, 320, 330, communicating with web server 10 through
respective web browsers 312, 322, 332 over the Internet 20. In this
example, web client 310 has initiated the design conference 30 by
running a copy 316 of the snapshot program 14. A design database
314 is resident on web client 310. Web client 310 selects data from
the design database 314 to be presented to other web clients 320,
330 during the design conference by taking a snapshot of a window
displayed on its display screen. The snapshot program 316 residing
in web client 310 facilitates taking of the snapshot, conversion of
the snapshot into a graphics file, and transmission of the graphics
file to the web server 10. The graphics file may be in any one of a
number of graphics file formats such as JPEG, GIF or TIF. The web
server 10 receives the graphics file, and transmits the graphics
file to all web clients 310, 320, 330 participating in the design
conference.
[0032] The graphics file is indicative of a design stored in the
design database 314. As an example, if the design is an integrated
circuit design, the design database may include physical layout
information, and the graphics file may include two-dimensional
image information of a top view of the integrated circuit. To
create the graphics file, the user at web client 310 selects a
window on its display screen, and clicks on an appropriate menu
button presented by the snapshot program 316 on the display screen.
The snapshot program 316 then captures the pixel information in the
selected window from a frame buffer in the web client 310, converts
the pixel information into a selected graphics file format, and
transmits the graphics file to the web server 10. The web server 10
then transmits the graphics file upon request to all participating
web clients 310, 320, 330 in the design conference so as to be
viewable as a graphics image through graphics file readers in or
invoked by the web browsers 312, 322, 332. Transmission of the
graphics file to web clients 310, 320, 330 can be by specific
download requests from the web clients 310, 320, 330, or through
requests automatically generated by java applets 318, 328, 338
residing on the web clients 310, 320, 330.
[0033] By transmitting the design information through graphics
files in this fashion, the information can be conveniently viewed
through conventional web browsers independent of platform. Further,
to view the graphics image, no special applications program is
necessary, only graphics file readers already available with most
web browsers. Finally, the graphics file format significantly
compresses the data to be transmitted, making transmission quick
and easy.
[0034] Each web client participating in the design conference
receives its respective copy 318, 328, 338 of the java applet 16
from the web server 10 at the time it is admitted to the
interactive design conference 30. The java applets 318, 328, 338
work with their respective client web browsers 312, 322, 332 to
perform several useful functions. For example, they automatically
refresh the graphics image by periodically requesting downloads
from the web server 10. They also facilitate users of web clients
310, 320, 330 in making annotations of the graphics image, and
transmitting the annotations back to the web server 10 for
retransmission to other web clients. They also facilitate users of
web clients 310, 320, 330 in transmitting messages back and forth
to each other over the Internet 20 through the web server 10.
[0035] FIG. 3 illustrates a flow diagram of a portion of a method
for conducting an interactive design conference over the Internet,
including setting up the initiator of the design conference. In
301, the user at web client 310 (the initiator) contacts web server
10 by addressing its URL, and logs-on in a conventional fashion by
providing a username and password when prompted. The web server 10
is programmed to check whether the username and password provided
by the web client 310 is registered in a database of registered
users. If it is not, then the web server 10 is programmed to
transmit an appropriate error message back to the web client 310.
On the other hand, if it is, then the web server 10 is programmed
to transmit a welcome page back to the web client 310, in HTML so
that it may be interpreted by the web browser 312 and displayed on
the user's display screen. From the welcome page, in 302, the user
then downloads the copy 316 of the snapshot program 14 from the web
server 10, in a version suitable for the system environment (e.g.,
operating system and CPU type) of web client 310. Preferably, the
download of the snapshot program uses FTP (File Transfer
Protocol).
[0036] FIG. 4 illustrates an example of a menu displayed on the web
client 310 by the snapshot program 316 after the snapshot program
316 is initiated by the user of web client 310 through a
conventional run program command, and FIG. 5 illustrates an example
of the menu displayed on the web client 310 after the design
conference is initiated. Before the design conference is initiated,
button 401 functions to initiate a sign-in procedure as described
in reference to FIG. 6, when clicked by the initiator. After the
design conference is initiated, button 401 functions to initiate an
initiator log-out procedure as described in reference to FIG. 13,
when clicked by the initiator. Buttons 402 and 403 are used after
the design conference is initiated to respectively take a snapshot
of a window displayed on the display screen of web client 310, and
transmit a graphics file containing image information of that
window to web clients participating in the design conference. To
send images to other participants, the initiator simply clicks on
the grab button 402, then clicks on the window whose image is to be
sent, then clicks on the send button 403.
[0037] FIG. 6 illustrates a flow diagram of a portion of a method
for conducting an interactive design conference over the Internet,
including the initiator setting up the design conference. In 601,
the user of web client 310 logs-on by clicking the sign-in button
401, and proceeding as described in reference to 301 of FIG. 3. In
602, the web server 10 is programmed to initiate the design
conference by first setting up a design conference group. The
preferred method of doing 602 is by assigning a conference
identification number to the design conference, and reserving
memory space for a list of attendees starting with the initiator
(user of web client 310), and including other participants (users,
of web clients 320, 330) after being admitted to the design
conference by providing the conference identification number to the
web server 10. Alternatively, 602 may be performed by the initiator
first providing a list of authorized attendees (e.g., by username
and/or password), and reserving memory space for a list of
attendees starting with the initiator, and including other
participants after being admitted to the design conference by the
web server 10 verifying that such other participants are on the
initiator's list of authorized attendees. In 603, the copy 318 of
the java applet 16 is transmitted to the web client 310 along with
a design conference application page for the design conference
30.
[0038] FIG. 7 illustrates a flow diagram of a portion of a method
for conducting an interactive design conference over the Internet,
including selectively admitting clients to the design conference
after initiated by the initiator. In 701, the users at web clients
320, 330 (other participants) first contact web server 10 by
addressing its URL, then log-on. In the preferred method described
in reference to 602, the other design conference participants
log-on by providing the previously assigned conference
identification number for the design conference 30. In the
alternative method described in reference to 602, the other design
conference participants merely identify themselves by providing,
for example, their username and password. In 702, the web server 10
is programmed to confirm that each participant logging on is
authorized to participate in the design conference 30. In the
preferred method described in reference to 602, such confirmation
merely requires that the conference identification number provided
by the participant matches the conference identification number
previously provided to the initiator and assigned to the design
conference 30. In the alternative method described in reference to
602, confirmation requires that the identity of each participant
matches that previously provided by the initiator.
[0039] After confirming authorization of the other design
conference participants to participate in the design conference 30,
in 703, the web server 10 is programmed to update the attendee list
by adding the identity of the participant and the URL of the
participant's web client to the attendee list. In 704, a copy of
the java applet 16 is preferably transmitted to the newly admitted
participant's web client, along with the design conference
application page for the design conference 30.
[0040] FIG. 8 illustrates an example of a design conference
application page 800 transmitted to web clients 310, 320, 330, and
displayed by their respective web browsers 312, 322, 332 after
their respective users join the design conference 30. The
application page 800 has two major areas. A display window 801 is
reserved for displaying the graphics image provided by the
initiator as described in reference to FIG. 9. A right menu frame
802, 803 includes a top portion 802 for image manipulation and
annotation, and a bottom portion 803 for a Chat area. Graphics
image manipulation functions include Pan and Zoom. Annotation is
facilitated by the use of provided Markers that can be of
selectable styles, such as alphanumeric, a line, a circle or oval,
or a square or rectangle, and selectable colors. Typically, each
web client uses a different color to quickly indicate the source of
the annotation. The Chat area functions like a conventional chat
facility where messages can be typed and transmitted to other web
clients, or received from other web clients and displayed.
[0041] FIG. 9 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including receiving and transmitting a graphics file to
clients. In 901, the web server 10 is programmed to receive a
graphics file from the initiator web client 310, and in 902,
transmit the graphics file to all web clients 310, 320, 330
participating in the design conference 30 so as to be viewable as a
graphics image through graphics file readers in or invoked by web
browsers 312, 322, 332. The received graphics file may be in any
one of a number of common graphics file formats such as JPEG, GIF
or TIF.
[0042] FIG. 10 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including receiving and transmitting an annotation of the
graphics file to clients. In 1001, the web server 10 is programmed
to receive an annotation of the graphics file from any of the web
clients 310, 320, 330, and in 1002, transmit the annotation to all
participating clients 310, 320, 330 so as to be-viewable as an
overlay over the graphics image. The received annotation or Marker
may be in any one of a number of styles and colors provided in the
image manipulation and annotation area 802 of the design conference
application page 800.
[0043] FIG. 11 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including receiving and transmitting a message to
clients. In 1101, the web server 10 is programmed to receive a
message from any of the web clients 310, 320, 330, and in 1102,
transmit the message to all participating clients 310, 320, 330 so
as to be readable in an area adjacent to the graphics image.
Operation and feel of the messaging system is preferably a chat
room type environment utilizing the Chat area 803 of the design
conference application page 800.
[0044] FIG. 12 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including logging out participants from the design
conference. In 1201, the web server 10 is programmed to recognize a
log-out request received from one of the design conference
participants using web clients 320, 330, after the participant logs
off in a conventional manner by clicking on a Log-off or Exit
button located on the design conference application page 800. In
1202, the web server 10 then updates the attendee list by deleting
the participant logging off the design conference 30 from the
attendee list.
[0045] FIG. 13 illustrates a flow diagram of another portion of a
method for conducting an interactive design conference over the
Internet, including logging out the initiator of the design
conference after creating a data-log of the design conference. In
1301, the web server 10 is programmed to recognize a log-out
request received from the initiator of the design conference using
web client 310 after the initiator logs off in a conventional
manner by clicking on a Log-off or Exit button 401 of a menu
adjacent to the design conference application page 800. In 1302,
the web server 10 then creates a data-log of the design conference
30 for future reference, and in 1303, updates the attendee list by
deleting the initiator of the design conference 30 from the
attendee list.
[0046] FIGS. 3, 6 and 8 describe a preferred method for conducting
an interactive design conference over the Internet, including
transmitting a copy 316 of the snapshot program 14 and a copy 318
of the java applet 16 from the web server 10 to the initiator web
client 310. Alternatively, the functions of the snapshot program
14, the java applet 16, and even the web browser 312, may be
included in a "wrap-around" program that may stand alone and
cooperate with a design application program that generates the
graphics image, or be an integral part of or integrated into the
design application program.
[0047] When transmitting graphics files representing a sequence of
images, each image in the sequence may only be modestly different
than an immediately prior image. Therefore, to reduce the size of
the graphics files and the time it takes to download them, it is
desirable to store and transmit image updates employing high
compression encoding. U.S. patent application Ser. No. 09/940,098,
assigned to the same assignee as the present invention and titled
"Method and Apparatus for Transmitting Image Updates Employing High
Compression Encoding" describes one such method and apparatus which
is incorporated herein in its entirety by this reference.
[0048] Although the discussion to this point has been directed
towards an interactive design conference conducted over the
Internet, it should be readily appreciated that its teachings can
be applied to collaboration sessions in general in which screen
displays are commonly shared with participants. In addition, it
should be readily appreciated that such teachings are also
generally applicable to a restricted user network, such as a
company controlled Intranet or Virtual Private Network (VPN), as
well as the Internet. A common characteristic of such restricted
user networks is their restriction of access only to those users
(i.e., operators of computers) that have logged on to the network
by providing, for example, a valid user identification and
password.
[0049] FIG. 14 illustrates a diagram of a system 1400 including an
apparatus for conducting a collaboration session. In the system
1400, server computer 1401 and client computers 1402.about.1406
communicate with one another through a network 1410. For this
example, clients 1402, 1403 and 1404 are of one platform type
running on an operating system such as those developed for personal
computers, and clients 1405 and 1406 are of another platform type
running on an operating system such as Unix or Linux. When the
network 1410 is the Internet, the system 1400 operates as described
above in reference to FIGS. 1.about.13. When the network 1410 is a
restricted user network, however, the system 1400 preferably takes
advantage of certain built-in security features of the network 1410
to simplify initiation of a collaboration session.
[0050] FIG. 15 illustrates a diagram of computers and associated
software of the system 1400 that are used for conducting a
collaboration session between clients 1403, 1404 and 1405. For this
example, the network 1410 is a restricted user network and the
collaboration session is launched through instant messenger 1532 of
the client 1405. Server 1401 has a control program (CNTRL) 1501 for
managing the collaboration session in much the same manner as web
server 10 of FIG. 1, except that initiating and joining the
collaboration session is simplified since the network 1410 is a
restricted user network. In particular, since users of clients
1402.about.1406 have already logged-on to the network 1410, for
example, by providing their respective user identifications and
passwords when first accessing the network 1410, it is not
necessary for them to re-identify themselves when initiating or
joining a collaboration session. In addition to the control program
1501, server 1401 also has master copies of a snapshot program
(SNAP) 1502 and java applet (JAV) 1503 that perform the same
functions as their counterparts 14 and 16 of the system 100
described in reference to FIG. 1.
[0051] Clients 1403, 1404 and 1405 have respective Web Browsers
(WB) 1511, 1521 and 1531; respective Instant Messengers (IM) 1512,
1522 and 1532; and respective copies of the java applet (JAV) 1513,
1523 and 1533. The web browsers are conventional web browsers such
as those commonly used to access the Internet. The instant
messengers, however, are specially configured to run in an
enterprise-wide or company-wide environment and launch
collaboration sessions in such an environment.
[0052] Client 1405 being the initiator and initial session leader
of the collaboration session also has an application program
(APPLIC) 1535 and copy of the snapshot program (SNAP) 1534. The
application program 1535 generates graphics images in one or more
windows that are displayable on a display screen of the client
1405. The snapshot program 1534 captures pixel information of the
graphics images in an user selected window from a frame buffer in
the client 1405; converts the captured pixel information into a
selected graphics file format such as JPEG, GIF, TIF, ZLIB or PNG;
and transmits the resulting graphics file to the server 1401 for
retransmission to clients 1403 and 1404 over the network 1410
during the collaboration session.
[0053] Java applets such as 1513, 1523 and 1533 may be
pre-installed on each of the clients 1402.about.1406 in the system
1400, or as previously described in reference to FIGS. 1.about.13,
downloaded at the time their corresponding clients initiate or join
a collaboration session. Likewise, snapshot programs such as
snapshot program 1534 may also be pre-installed on each of the
clients 1402.about.1406, or as previously described in reference to
FIGS. 1.about.13, downloaded to a collaboration session initiator
upon launching of the collaboration session, or to other
collaboration session participants when they need it.
[0054] FIG. 16 illustrates, as an example, an Instant Messenger
(IM) window 1600 displayable on a display screen of one of the
clients 1403, 1404 or 1405. A conventional contacts or groups list
area 1601 shows three groups--Group 1, Group 2 and Group 3--for its
respective client. Other clients may have different groups
identified for their respective instant messengers. A button is
provided next to each of the groups so that when it is clicked by a
user, the group is selected and information of the individual group
members is displayed. A button is also provided next to each member
of the group in that case so that when it is clicked by a user, the
member is selected so that an instant message may be sent to that
member by the user. Indications of which group members are
currently logged on to the network 1410 are also displayed. An
actions area 1602 includes buttons that allow the user or operator
to perform certain actions such as send an instant message to a
selected member of a group or broadcast a message to all of the
members of a selected group, or launch a collaboration session with
a selected one of the groups.
[0055] FIG. 17 illustrates a flow diagram of a method performed by
the server 1401 for setting up a collaboration session in response
to a launch initiated through instant messenger 1532 of client 1405
on network 1410, which is a restricted user network for this
example. In 1701, a collaboration session launch request is
received from a network node identified as client 1405 by its host
identification (ID), which is a unique identifier such as a
computer identification number or a network interface card
identification number. The network node also identifies the user
making the request since the node was associated with the user when
the user logged-on to the network 1410 from that network node. In
addition to the launch request generated through the instant
messenger 1532 of the client 1405, information of the selected
group is also received at this point.
[0056] In 1702, it is determined whether or not copies of the
snapshot program and java applet have already been installed on the
requesting node's computer 1705. This determination may be made,
for example, from information in a configuration file residing on
the server 1401 that indicates whether or not such copies have
already been provided to each host ID on the network 1410.
Alternatively, this determination may be made from information
requested by the server 1401 following its receipt of the launch
request, or from information provided by the requesting node's
computer 1405 along with the launch request. If the determination
in 1702 is NO, then in 1703, the server 1401 downloads copies of
the snapshot program and/or the java applet to the requesting
node's computer 1405. On the other hand, if the determination in
1702 is a YES, then the method skips 1703 and proceeds directly to
1704. In 1704, an attendee list is established initially including
the user identification of the user initiating the collaboration
session, and preferably displayed and periodically updated on the
application conference page provided to all participants as they
join the collaboration session. In 1705, an application conference
page such as described in reference to FIG. 8 is transmitted to the
requesting node's computer 1405 and displayed along with a menu
such as the menu described in reference to FIG. 5. The requesting
node's computer 1405 is now ready to participate in the
collaboration session. In 1706, all members of the selected group
that are currently or subsequently on-line are then invited to
attend or participate in the collaboration session until its
completion.
[0057] FIG. 18 illustrates a flow diagram of a method for setting
up consoles of invitees accepting the invitation to participate in
a collaboration session. In 1801, the acceptance is received. In
1802, it is determined whether or not a copy of the java applet has
already been installed on the invitee's computer. This
determination may be made in a similar fashion as described in
reference to 1702 of FIG. 17. If the determination in 1802 is NO,
then in 1803, the server 1401 downloads a copy of the java applet
to the invitee's computer (e.g., 1403 or 1404). On the other hand,
if the determination in 1802 is YES, then the method skips 1803 and
proceeds directly to 1804. In 1804, the attendee list is updated
with the invitee's user identification. In 1805, an application
conference page as described in reference to FIG. 8 is then
transmitted to the invitee's computer and displayed on its display
screen. The invitee's computer is now ready to participate in the
collaboration session. As participants subsequently leave the
collaboration session, the attendee list will be accordingly
updated to reflect deletion of their respective user
identifications, and such updated attendee list is provided in the
application conference page displayed on remaining participants'
display screens.
[0058] Although the various aspects of the present invention have
been described with respect to a preferred embodiment, it will be
understood that the invention is entitled to full protection within
the full scope of the appended claims.
* * * * *