A portion of the disclosure of this patent document and its figures contain material subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, but otherwise reserves all copyrights whatsoever.
The exemplary embodiments relate to conferencing over telecommunications and/or data networks and, more particularly, to efficient management of distributed conference ports.
Bandwidth is a problem when conferencing. Video and/or desktop conferencing, such as conference sessions, training sessions, and distributed presentations, require available conferencing ports with bandwidth to support communications among the participants and may also include bandwidth to support streaming of any presentation materials. If the participants are few in number, and/or if the file size of the presentation materials is manageable, then current conferencing technology may provide adequate communications and adequate quality of the presentation materials. If, however, there are a large number of host participants, a large number of participants, and/or if the file size of the materials is quite large, then communications and data streaming pose problems. As the number of participants (including host participants) increases and/or as the file size of the presentation materials increases, the required bandwidth also increases. Fifty (50) participants, for example, require fifty (50) conference ports, and, if there are presentation materials, then also require fifty data streams fanning out from a host computer. As the number of participants increases, the host communications system (e.g., communications device, computer, conferencing system, etc.) is also taxed to manage communications with all the participants. All the participants to the conference, then, may eventually suffer from unavailability, from network congestion, and/or from degradation in processor performance of the communications system. Consequently, availability and/or the quality of the conference may be reduced, and the participants to the conference may have a less-than-desirable experience.
Conventional conferencing systems include reservation-based conferencing and on-demand conferencing. Reservation based conferencing provides a guaranteed number of reserved ports and allocates these guaranteed ports regardless if all of the ports are needed. On-demand conferencing provides a conferencing bridge and attempts to allocate ports as participants call in; however, on-demand conferencing does not guarantee any available ports such that all participants may not be able to connect to a conference bridge and participate in the conference.
There is, accordingly, a need in the art for methods, systems, and products for improved conferencing among participants. There is also a need for efficient management of bandwidth required when conferencing.
According to exemplary embodiments, the needs described above and other needs are met by methods, systems, computer programs, and computer program products that improve conferencing among participants including the host participant and other conference participants. According to some of the embodiments, conference communications assets are dynamically allocated and managed to add in one or more new participants in real-time using a hybrid conferencing system. The hybrid conferencing system leverages both reservation-based conferencing features and on-demand (ad-hoc) conferencing features as well as dynamic conferencing features to access, allocate, and/or otherwise manage ports of one or more conference bridges interfacing with a conference gateway. Still further exemplary embodiments include one or more bridge gateways that communicate with the one or more bridges and with the conferencing gateway. The conference bridge(s), bridge gateway(s), and the conferencing gateway are managed and controlled by a Hybrid Conferencing Module implemented as computer product code (e.g., software) that may reside on a conferencing server, a host participant's communications device, and/or another processing system.
According to exemplary embodiments, the hybrid conferencing system allocates a conferencing bridge (or a shared conferencing bridge resource) to each host user of a communications network. Each host user (or, alternatively a group of host users) is allocated a telephone number and an authentication code to connect to the conference bridge that has a default maximum number of conferencing ports that are “always” available—that is, scheduling and/or operator interaction is not required to set up the conference call. The host user may participate in a conference call as a host participant by dialing a conference telephone number and entering the authentication code to access his/her conference bridge. Other participants connect to the conference bridge by dialing the conference telephone number and entering a conference code (e.g., a PIN). Alternatively, the other participants may connect to the conference bridge by dialing the host participant's phone number, enter the conference code, and automatically be routed to the conference bridge (since the host participant's phone number is associated with the conference bridge). The conference code may be selected by the host participant, or alternatively, the conference code may be selected by the Hybrid Conferencing Module and distributed to the host participant. When the number of conferencing ports for the participants exceeds the default maximum number of conferencing ports allocated to the host participant, the Hybrid Conferencing Module routes each of the excess participants to the conference gateway.
According to some of the exemplary embodiments, the conference gateway communicates with a plurality of conference bridges to identify one or more available ports needed for the excess participants and then automatically assigns each of the excess participants to an available port, configures the available port to access the host participant's conference bridge, and connects the participant to the conference call. The hybrid conferencing system may automatically access available port(s) assigned to another host user (e.g., another host user that is not using his/her conference bridge) and/or another host participant (e.g., another host participant that is not using all of his/her ports allocated to his/her bridge), or, alternatively, the hybrid conferencing system may include a plurality of unassigned ports that are available for configuration and allocation to any of the bridges in the hybrid conferencing system. According to other exemplary embodiments, the Hybrid Conferencing Module may identify an available port(s) allocated to another host user and/or another host participant and then prompt the host user and/or host participant to “share” one or more of his/her available ports. The host user and/or host participant having the available port may agree to “share” and then the Hybrid Conferencing Module will automatically access, configure, and connect the excess participant to the conference call via the “shared” port. Alternatively, the other host user and/or the other host participant may respond to the prompt by requesting additional information (e.g., approximately how long will the conference call last, will the “borrowing” host participant pay a fee and/or provide another incentive to share, and other information) before agreeing to “share” his/her port(s). Still, another alternate exemplary embodiment enables the “borrowing” host user or host participant to specifically select another host participant (e.g., by selecting a name, a phone number, a geographic area, a business group, a host user (or host participant) that identifies available ports to “share” (e.g., a host user that is on vacation and not using his/her bridge), and other identifying information for selecting another host participant). The “borrowing” host user may request the “shared” port(s) prior to the conference call, and the Hybrid Conferencing Module will access, configure, and allocate the “shared” port(s) to the conference call. Similarly, the “borrowing” host participant may request the “shared” port(s) during the conference call, and the Hybrid Conferencing Module will access, configure, and connect the excess participant to the conference call.
Other exemplary embodiments may include features for analyzing communications connections of conference participants and of excess participants to determine optimal assignment of the allocated ports and the “shared” ports. Still other exemplary embodiments may include conference management features including a user interface for the host participant to manage conference resources (including administrative features, a profile of the host participant, a participant profile, “sharing features” such as a request to “borrow” an available port, an offer to “share” an available port, an incentive to “share” an available port, a request for an unassigned port, features to control connections with his/her ports including “shared” ports, and other management features) and to communicate and distribute conference materials. For example, the host participant can execute commands and/or instructions that delay presentment of the conference and/or presentment of conference materials until all participants (including excess participants) are connected with the conference call, modify one or more communications connection with and/or among participants, and/or other features. The communications connection may utilize a variety of communications networks, such as, for example, a telecommunications network (e.g., Public Switched Telephone Network (PSTN)), a data communications network (e.g., an Internet Protocol (IP) communications network), and/or a satellite network. Further exemplary embodiments provide a variety of host participant interfaces for the Hybrid Conferencing Module that include, for example, dual tone multi frequency (DTMF) signals, web-based interfaces (e.g., Internet), e-mail interfaces, interactive voice response interfaces, and others. Accordingly, the hybrid conferencing system leverages conferencing assets to provide an “always” available hybrid conferencing system for the host participant, participants, and/or excess participants.
Other exemplary embodiments describe a computer program product. A computer-readable medium stores a Hybrid Conferencing Module. According to some of the embodiments, the Hybrid Conferencing Module may be stored in a memory device of a host participant's communications device and/or a conference server in communication with a conferencing gateway and one or more communications networks.
Other systems, methods, and/or computer program products according to these and other embodiments will be or become apparent to one with skill in the art upon review of the following drawings and detailed description. It is intended that all such additional systems, methods, and/or computer program products be included within and protected by this description and be within the scope of this invention.
The above and other embodiments, objects, uses, advantages, and novel features are more clearly understood by reference to the following description taken in connection with the accompanying figures, wherein:
The exemplary embodiments now will be described more fully hereinafter with reference to the accompanying drawings. The exemplary embodiments may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. These embodiments are provided so that this disclosure will be thorough and complete and will fully convey the scope of the invention to those of ordinary skill in the art. Moreover, all statements herein reciting embodiments of the invention, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future (i.e., any elements developed that perform the same function, regardless of structure).
Thus, for example, it will be appreciated by those of ordinary skill in the art that the diagrams, flowcharts, illustrations, and the like represent conceptual views or processes illustrating systems, methods and computer program products embodying this invention. The functions of the various elements shown in the figures may be provided through the use of dedicated hardware as well as hardware capable of executing associated software. Those of ordinary skill in the art further understand that the exemplary hardware, software, processes, methods, and/or operating systems described herein are for illustrative purposes and, thus, are not intended to be limited to any particular named manufacturer.
The exemplary embodiments include methods, systems, computer programs, and/or computer program products for providing flexible conference resource allocation tools for allocating, accessing, updating, refreshing, sharing, borrowing, and otherwise managing conference resources for hybrid conferencing system. According to some of the embodiments, conference communications assets are dynamically allocated and managed to add in one or more new participants in real-time using a hybrid conferencing system. The hybrid conferencing system leverages both reservation-based conferencing features and on-demand (ad-hoc) conferencing features as well as dynamic conference management features to access, allocate, and/or otherwise manage ports of one or more conference bridges interfacing with a conference gateway. Still further exemplary embodiments include one or more bridge gateways that communicate with the one or more bridges and with the conferencing gateway. The conference bridge(s), bridge gateway(s), and the conferencing gateway are managed and controlled by a Hybrid Conferencing Module implemented as computer product code (e.g., software) that may reside on a conferencing server, a host participant's communications device, and/or another processing system. This improves conferencing among host users, host participants, participants, and/or excess participants. As used herein, the term “host user” is user or a subscriber to the hybrid conferencing system that is allocated a conferencing bridge (or a shared conferencing bridge resource) having a default maximum number of conferencing ports (e.g., 6 ports) that are “always” available—that is, scheduling and/or operator interaction is not required to set up the conference call. As used herein, the term “host participant” is a user or subscriber who participates in a conference by accessing his/her conference bridge (e.g., by dialing a telephone number and entering the authentication code to access his/her conference bridge). As used herein, the term “participant” may include a non-user or non-subscriber as well as another host user that connects to the host participant's conference bridge via an allocated port. As used herein, the term “excess participant” may include a non-user or non-subscriber as well as another host user that connects to the host participant's conference bridge via a “shared” port.
Referring now to the figures,
Those of ordinary skill in the art also understand the central processor 148 is typically a microprocessor. Advanced Micro Devices, Inc., for example, manufactures a full line of ATHLON™ microprocessors (ATHLON™ is a trademark of Advanced Micro Devices, Inc., One AMD Place, P.O. Box 3453, Sunnyvale, Calif. 94088-3453, 408.732.2400, 800.538.8450, www.amd.com). The Intel Corporation also manufactures a family of X86 and P86 microprocessors (Intel Corporation, 2200 Mission College Blvd., Santa Clara, Calif. 95052-8119, 408.765.8080, www.intel.com). Other manufacturers also offer microprocessors. Such other manufacturers include Motorola, Inc. (1303 East Algonquin Road, P.O. Box A3309 Schaumburg, Ill. 60196, www.Motorola.com), International Business Machines Corp. (New Orchard Road, Armonk, N.Y. 10504, (914) 499-1900, www.ibm.com), Sun Microsystems, Inc. (4150 Network Circle, Santa Clara Calif. 95054, www.sun.com), and Transmeta Corp. (3940 Freedom Circle, Santa Clara, Calif. 95054, www.transmeta.com). Those skilled in the art further understand that the program, processes, methods, and systems described in this patent are not limited to any particular manufacturer's central processor.
According to an exemplary embodiment, UNIX® is the operating system (UNIX® is a registered trademark of the Open Source Group, www.opensource.org). Other UNIX-based operating systems, however, are also suitable, such as LINUX® or a RED HAT® LINUX-based system (LINUX® is a registered trademark of Linus Torvalds, and RED HAT® is a registered trademark of Red Hat, Inc., Research Triangle Park, N.C., 1-888-733-4281, www.redhat.com). Other operating systems, however, are also suitable. Such other operating systems would include a WINDOWS-based operating system (WINDOWS® is a registered trademark of Microsoft Corporation, One Microsoft Way, Redmond Wash. 98052-6399, 425.882.8080, www.Microsoft.com). and Mac® OS (Mac® is a registered trademark of Apple Computer, Inc., 1 Infinite Loop, Cupertino, Calif. 95014, 408.996.1010, www.apple.com). Those of ordinary skill in the art again understand that the program, processes, methods, and systems described in this patent are not limited to any particular operating system.
The system memory device (shown as memory subsystem 142, flash memory 144, or peripheral storage device 146) may also contain an application program. The application program cooperates with the operating system and with a video display unit (via the serial port 164 and/or the parallel port 166) to provide a Graphical User Interface (GUI). The Graphical User Interface typically includes a combination of signals communicated along the keyboard port 160 and the mouse port 162. The Graphical User Interface provides a convenient visual and/or audible interface of the Hybrid Conferencing Module 110 with a user of the communications system 100.
According to some of the exemplary embodiments, each host user H1, H2, H3 to Hx (or, alternatively a group of host users) is allocated a telephone number (or another communications address, such as, for example, a URL of a data communications network) and an authentication code to connect to the conference bridge 216 that has a default maximum number of conferencing ports 218 (e.g., 6 ports as shown in
Referring now to an exemplary hybrid conferencing communications system 400 of
According to exemplary embodiments, the hybrid conferencing communications system 800 allocates a conferencing bridge B11-B1X thru Bn1-Bnx (or a “shared” conferencing bridge 816) to each host user (or host participant). Each host user (or, alternatively a group of host users and/or host participants) is allocated a telephone number (or other communications access address to his/her conference bridge) and an authentication code to connect to his/her conference bridge that has a default maximum number of conferencing ports that are “always” available. Additionally, the host user may access or may automatically be displayed (or otherwise presented) one or more Graphical User Interfaces (GUIs) of the Hybrid Conferencing Module 110 to manage his/her conference resources. The host user may access or otherwise be presented these GUIs to request additional conference resources for a scheduled time, day, and/or week, request additional allocated ports, offer available, allocated ports (or other conference resources) to share with another host user and/or host participant, confirm a request to “share” his/her allocated ports, manage communications connections of participants and add-in participants to a conference call, manage profile information associated with the host user (e.g., name, billing information, communications preferences, communications addresses such as telephone numbers for work, home, cellular, and a history of conference calls with participant information, date and time of conference call information, and other information). For example, when the number of participants to a conference is greater than the allocated ports, the host user H11 may access (or automatically be presented) a resource management GUI of the Hybrid Conferencing Module 110 to specifically select another host user H12 (e.g., by selecting a name, a phone number, a geographic area, a business group, a host user (or host participant) that identifies available ports to “share” (e.g., a host user that is on vacation and not using his/her bridge), and other identifying information for selecting the other host participant H12) and ask to “borrow” conference resources. The “borrowing” host user H11 may request the “shared” port(s) prior to the conference call, and the Hybrid Conferencing Module 110 accesses, configures, and allocates the “shared” port(s) to the conference call. Similarly, the “borrowing” host participant H11 may request the “shared” port(s) during the conference call, and the Hybrid Conferencing Module 110 then accesses and configures the “shared” port(s) and the hybrid conferencing communications system connects the excess participant to the conference call.
In exemplary embodiments, the host participant H11 dials the conference telephone number and an authentication code to connect to his/her conference bridge. Other participants P11 connect to the conference bridge B11 by dialing the conference telephone number and entering the conference code. Alternatively, the other participants P11 may connect to the conference bridge by dialing the host participant's phone number, enter the conference code, and automatically be routed to the conference bridge B11 (since the host participant's phone number is associated with his/her conference bridge). The conference code may be selected by the host participant H11, or alternatively, the conference code may be selected by the Hybrid Conferencing Module 110 and distributed to the host participant H11 and/or automatically communicated to one or more communications address(es) of other participants P11. When the number of conferencing ports for the participants P11 exceeds the default maximum number of conferencing ports allocated to the host participant H11, the Hybrid Conferencing Module 110 routes each of the excess participants to the conference gateway 214. The conference gateway 214 communicates with the plurality of bridge gateway 614 to identify one or more available ports needed for the excess participants and then automatically assigns each of the excess participants to an available port, configures the available port to access the host participant's conference bridge, and connects the participant to the conference call. Each of the plurality of bridge gateways 614 communicates with one or more selected conference bridges of the plurality of conference bridges B11-B1X thru Bn1-Bnx to manage a grouping of conference bridges For example, BGW1 manages conference bridges B11-B1X assigned to host users and/or host participants H11-H1X.
The hybrid conferencing communications system 800 may automatically access available port(s) assigned to another host user (e.g., another host user that is not using his/her conference bridge) and/or another host participant (e.g., another host participant that is not using all of his/her ports allocated to his/her bridge), or, alternatively, the hybrid conferencing system 800 may include a plurality of unassigned ports (not shown) that are available for configuration and allocation to any of the conference bridges B11-B1X thru Bn1-Bnx in the hybrid conferencing communications system 800. According to other exemplary embodiments, the Hybrid Conferencing Module 110 may identify an available port(s) allocated to another host user and/or another host participant and then prompt the identified host user and/or host participant to “share” one or more of his/her available ports. The host user and/or host participant having the available port may agree to “share” and then the Hybrid Conferencing Module 110 automatically accesses, configures, and connects the excess participant to the conference call via the “shared” port. Alternatively, the host user and/or the other host participant having available port(s) may respond to the prompt by requesting additional information (e.g., approximately how long will the conference call last, will the “borrowing” host participant pay a fee and/or provide another incentive to share, and other information) before agreeing to “share” his/her port(s). Other exemplary embodiments include features for analyzing communications connections of conference participants and of excess participants to determine optimal assignment of the allocated ports and the “shared” ports.
Regardless of how the “shared” ports are obtained, the hybrid conferencing communications system 800 connects the excess participants with the bridge gateway BGW1 and the conference bridge of the “borrowing” host participant H11 such that an “added to” conference bridge 816 supports the conference call for all participants (e.g., host participant, participants communicating via allocated ports, and excess participants communicating via “shared” ports).
Still other exemplary embodiments may include conference management features including a user interface for the host participant to manage conference resources (including administrative features, a profile of the host participant, a participant profile, “sharing features” such as a request to “borrow” an available port, an offer to “share” an available port, an incentive to “share” an available port, a request for an unassigned port, features to control connections with his/her ports including “shared” ports, and other management features) and to communicate and distribute conference materials. For example, the host participant can execute commands and/or instructions that delay presentment of the conference and/or presentment of conference materials until all participants (including excess participants) are connected with the conference call, modify one or more communications connection with and/or among participants, and/or other features. The communications connection may utilize a variety of communications networks, such as, for example, a telecommunications network (e.g., Public Switched Telephone Network (PSTN)), a data communications network (e.g., an Internet Protocol (IP) communications network), and/or a satellite network. Further exemplary embodiments provide a variety of host participant interfaces for the Hybrid Conferencing Module that include, for example, dual tone multi frequency (DTMF) signals, web-based interfaces (e.g., Internet), e-mail interfaces, interactive voice response interfaces, and others. Accordingly, the hybrid conferencing system leverages conferencing assets to provide an “always” available hybrid conferencing system for the host participant, participants, and/or excess participants.
The Hybrid Conferencing Module (shown as reference numeral 110 in
Still in further exemplary embodiments, the Hybrid Communications Module may be physically embodied on or in any addressable (e.g., HTTP, I.E.E.E. 802.11, Wireless Application Protocol (WAP)) wireless device capable of presenting an IP address. Examples could include a computer, a wireless personal digital assistant (PDA), an Internet Protocol phone, a cellular phone, and any communications device having a digital signal processor.
While several exemplary implementations of embodiments of this invention are described herein, various modifications and alternate embodiments will occur to those of ordinary skill in the art. Accordingly, this invention is intended to include those other variations, modifications, and alternate embodiments that adhere to the spirit and scope of this invention.