Computers have been used in meetings for some time. Computers have been used to take meeting minutes or notes in real time. It is almost common practice now to use a computer and an attached projector when presenting information to a group at a meeting. Several attempts have been made, with varying success, to address meetings with remote participants. Initially, meeting participants would e-mail documents to all expected attendees for presentation during the meeting. Even when meeting attendees were co-located, distribution of files often required “sneaker-net” sharing with USB memory keys, etc. Presentations were synchronized by the leader's verbal instructions during a teleconference. Later, products such as Microsoft LiveMeeting allowed the use of presentation synchronization during the meeting and interactive tools such as an electronic white board would allow real-time interaction between users. However, these products are server-based and require a hosted environment for operation.
A user interface for starting meetings provides users with a simple interactive single-window mechanism for starting meetings, both computer-to-computer network based meetings and simple meetings with co-located attendees. An underlying application receives user input and manages attendee selection, file transfers, and presentations transparent to the user using peer-to-peer networking. A web server or meeting host is not required. Peer-to-peer networking infrastructure develops and manages the sharing and connectivity required to set up the links with meeting attendees and delivers the appropriate data streams to network resources associated with the attendees.
The meeting window includes three panes, one for selecting and managing users, another for sharing files between users, and a third for presenting data via a streaming service, such as a peer-to-peer network terminal service. A robust set of features for managing attendees, online presentation materials, and network presentation resources are made available through the meeting window menu selections.
a is a representation of the computer display of
b is a representation of the computer display of
c is a representation of the computer display of
d is a representation of the computer display of
Although the following text sets forth a detailed description of numerous different embodiments, it should be understood that the legal scope of the description is defined by the words of the claims set forth at the end of this disclosure. The detailed description is to be construed as exemplary only and does not describe every possible embodiment since describing every possible embodiment would be impractical, if not impossible. Numerous alternative embodiments could be implemented, using either current technology or technology developed after the filing date of this patent, which would still fall within the scope of the claims.
It should also be understood that, unless a term is expressly defined in this patent using the sentence “As used herein, the term ‘______’ is hereby defined to mean . . . ” or a similar sentence, there is no intent to limit the meaning of that term, either expressly or by implication, beyond its plain or ordinary meaning, and such term should not be interpreted to be limited in scope based on any statement made in any section of this patent (other than the language of the claims). To the extent that any term recited in the claims at the end of this patent is referred to in this patent in a manner consistent with a single meaning, that is done for sake of clarity only so as to not confuse the reader, and it is not intended that such claim term be limited, by implication or otherwise, to that single meaning. Finally, unless a claim element is defined by reciting the word “means” and a function without the recital of any structure, it is not intended that the scope of any claim element be interpreted based on the application of 35 U.S.C. §112, sixth paragraph.
Much of the inventive functionality and many of the inventive principles are best implemented with or in software programs or instructions and integrated circuits (ICs) such as application specific ICs. It is expected that one of ordinary skill, notwithstanding possibly significant effort and many design choices motivated by, for example, available time, current technology, and economic considerations, when guided by the concepts and principles disclosed herein will be readily capable of generating such software instructions and programs and ICs with minimal experimentation. Therefore, in the interest of brevity and minimization of any risk of obscuring the principles and concepts in accordance to the present invention, further discussion of such software and ICs, if any, will be limited to the essentials with respect to the principles and concepts of the preferred embodiments.
The computer 110 may also include a cryptographic unit 125. Briefly, the cryptographic unit 125 has a calculation function that may be used to verify digital signatures, calculate hashes, digitally sign hash values, and encrypt or decrypt data. The cryptographic unit 125 may also have a protected memory for storing keys and other secret data. In addition, the cryptographic unit 125 may include an RNG (random number generator) which is used to provide random numbers. In other embodiments, the functions of the cryptographic unit may be instantiated in software or firmware and may run via the operating system or on a device.
Computer 110 typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer 110 and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, FLASH memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by computer 110. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency, infrared and other wireless media. Combinations of any of the above should also be included within the scope of computer readable media.
The system memory 130 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) 131 and random access memory (RAM) 132. A basic input/output system 133 (BIOS), containing the basic routines that help to transfer information between elements within computer 110, such as during start-up, is typically stored in ROM 131. RAM 132 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 120. By way of example, and not limitation,
The computer 110 may also include other removable/non-removable, volatile/nonvolatile computer'storage media. By way of example only,
The drives and their associated computer storage media discussed above and illustrated in
The computer 110 may operate in a networked environment using logical connections to one or more remote computers, such as a remote computer 180. The remote computer 180 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer 110, although only a memory storage device 181 has been illustrated in
When used in a LAN networking environment, the computer 110 is connected to the LAN 171 through a network interface or adapter 170. When used in a WAN networking environment, the computer 110 typically includes a modem 172 or other means for establishing communications over the WAN 173, such as the Internet. The modem 172, which may be internal or external, may be connected to the system bus 121 via the input interface 160, or other appropriate mechanism. In a networked environment, program modules depicted relative to the computer 110, or portions thereof, may be stored in the remote memory storage device. By way of example, and not limitation,
The communications connections 170172 allow the device to communicate with other devices. The communications connections 170172 are an example of communication media. The communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. A “modulated data signal” may be a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Computer readable media may include both storage media and communication media.
A sharing pane 412 may include a selection icon 414 and a drag-and-drop icon 416. Activating the selection icon 414 may produce a normal file selection dialog box for navigating to a folder and selecting one or more files. Similarly, one or more files may be dragged onto the drag-and-drop icon 416. The effect of file selection or dragging and dropping is to distribute the files to each attendee over a peer-to-peer network connection, according to an underlying file sharing protocol. The files may be physically copied or distributed using a metadata publish/ask model. Files made available by other meeting participants may be shown in the sharing pane 412 by file icons (not depicted). At the conclusion of a meeting the user may select to keep a copy of the shared files or to have the shared files discarded.
A presentation pane 418 may include a selection icon 420 and a drag-and-drop icon 422. As discussed in more detail in a co-pending patent application (Attorney Docket number 30835/313456), the presentation pane 418 may be used to launch presentations on networked devices, including the computers of meeting attendees and presentation equipment, for example, computers 12 and 15 and projector 13 of
A menu bar 424 may include file 426 and control 428 menu selections used for advanced control of the meeting process. A status bar 430 may display a meeting title, as shown, or other information regarding the meeting, for example, current status information such as “distributing files.” The minimize icon 431 may be used to reduce the three pane meeting window 406 to a smaller size, and as discussed more with respect to
a depicts a close-up view of a portion of the computer display 400 of
c similarly depicts a close-up view of a portion of the computer display 400 of
d also depicts a close-up view of a portion of the computer display 400 of
When a selection of network is received 706 an attendee selection window may be activated 708. Attendees may be selected from a variety of groups or lists of individuals. For example, a buddy list used for Instant Messaging (IM) may provide names for selection. Personal, local, and network-based, for example corporate, address books may be used to supply names for selection. Additional selections may be made from persons recently invited to other meetings. After receiving 710 the selection of users, invitations, such as toast messages, may be forwarded to the invitees. As shown in
Once the meeting is active, multiple activities may be performed. Often it is desirable to distribute materials to meeting participants. The application associated with the meeting may provide, as discussed above, the capability to receive 714 a selection of whether to share data or files with meeting participants. If the choice is to share files, the ‘yes’ branch of block 714 may be followed. A selection of files for sharing may be received 716 by the application. The selection may be for distribution of files or for streaming of presentation data. Familiar menu pick or drag-and-drop methods are two examples of ways to introduce files for sharing with meeting participants. Once identified, known peer-to-peer network services, such as a file replication service, may be used to distribute 718 the selected data to current participants as well as updating newly added participants. When the selection is to stream presentation data, an appropriate application program may be activated, if needed, and output data associated with the presentation may be distributed 718 to participating computers. In addition, certain network devices such as network accessible projectors may also be designated as targets of the presentation data stream. If additional presentation materials or data files are to be shared, the ‘yes’ branch from block 720 may be followed and the process repeated.
If no data is shared at block 714, the ‘no’ branch may be followed to block 722. Similarly, when no more data is to be shared, the ‘no’ branch from 720 may be followed to block 722. The meeting may proceed as normal to a conclusion.
At the conclusion of the meeting (or earlier), participants may leave 722 the meeting. Participants may have the opportunity to save any files that were shared during the meeting process or alternatively to discard those files to limit the possibility of version confusion in the future.
The meeting application described and its associated user interface bring new features and capabilities to meeting organizers and meeting attendees. The simple organization of the meeting window and special function panes reduce the overhead associated with inviting, attending, sharing files, and presenting live data during a meeting. The use of peer-to-peer network data streaming for presentations greatly simplifies the processes currently available for viewing presentation materials.
Although the foregoing text sets forth a detailed description of numerous different embodiments of the invention, it should be understood that the scope of the invention is defined by the words of the claims set forth at the end of this patent. The detailed description is to be construed as exemplary only and does not describe every possibly embodiment of the invention because describing every possible embodiment would be impractical, if not impossible. Numerous alternative embodiments could be implemented, using either current technology or technology developed after the filing date of this patent, which would still fall within the scope of the claims defining the invention.
Thus, many modifications and variations may be made in the techniques and structures described and illustrated herein without departing from the spirit and scope of the present invention. Accordingly, it should be understood that the methods and apparatus described herein are illustrative only and are not limiting upon the scope of the invention.