A method and system for presenting a virtual meeting in a user's preferred language is provided. A meeting organizer first sends an invitation in a particular language to join an online meeting to each potential meeting participant. For example, the meeting organizer may send an invitation in English to three potential meeting participants to have a meeting at 3 p.m. the following Friday. After a participant receives the invitation, the participant may accept or reject the invitation. For example, if a meeting participant cannot attend the meeting at the scheduled time, the participant may reject the invitation. When the scheduled time for the online meeting arrives, the meeting participant uses the invitation to connect to the online meeting. For example, the meeting system may include a meeting server that provides a “meeting place” for the meeting organizer to find each of the meeting participants. The meeting server may provide each participant with the organizer's Internet address, or the meeting server may act as a proxy, sending communications between the organizer and the participants. When each meeting participant connects to the meeting, the meeting system determines the user interface language that the participant will see once connected to the meeting. In some embodiments, the user interface language is determined by identifying the default language that is configured in the participant's web browser. The participant's browser is often a good place to locate the language that the user prefers since the meeting invitation may be in the form of a web link that is activated to join the meeting, such that the user's web browser will already be open and available to the meeting system to determine the user's preferred language. Finally, the meeting system invokes the meeting client application and specifies the determined language. The client application then presents the user interface in the specified language. For example, the menus, toolbar, and prompts within the application may reflect the specified language. In this way, the user is able to interact with the meeting software in a language that is comfortable and easy to use, rather than in the language dictated by the meeting organizer.
In some embodiments, the meeting system uses a script on a web page to determine the participant's preferred language. A common way of sending a meeting invitation is by sending a link containing a Uniform Resource Locator (URL) and parameters relevant to the meeting, such as a meeting identifier. When the participant activates the link to join the meeting, the participant's web browser opens and takes the user to a web page that provides a virtual entrance to the meeting. The web page may display meeting details to the participant and offer to launch client software for connecting to the meeting. Because the user is already in the web browser, and the web browser may launch the meeting client software, a script on the meeting web page can query the browser for the browser's default language and pass this information to the client application when it is invoked.
In some embodiments, the meeting system determines the participant's preferred language based on the language selected when the participant registered with the meeting system. To participate in online meetings, meeting organizers and participants may first register with a meeting server. The meeting server collects information and preferences from the users of the meeting system and stores this information for use when conducting meetings. The meeting server may request that the user specify a preferred meeting language, and when the user is a participant in a meeting, the meeting system may use this language as the language specified to the meeting client software. The meeting server may also provide downloads of the meeting client software in the language specified by the meeting participant.
In some embodiments, the meeting system determines the participant's preferred language based on the language selected when the participant installed the client application. For example, the meeting system may be integrated with the participant's email program, such as Microsoft Outlook, such that the participant receives meeting requests and joins online meetings by interacting with email within the email program. When the participant joins an online meeting, the email program may contain an add-in that acts as the meeting client application, or it may invoke a separate client application. Since the participant's browser is not involved in joining the online meeting, the meeting system may retrieve the participant's preferred language based on the language specified when the participant installed the email program.
In some embodiments, the meeting system selects an alternate language when the meeting client software does not support the participant's preferred language. For example, the participant may have a browser default language of Chinese, but the meeting client application may not be available in Chinese. Therefore, the meeting client software may select an alternate language based on other information. For example, the meeting system may contain a list of languages that are most often known by participants who request a preferred language that is not available. The meeting system may also default to the meeting organizer's requested language, since the meeting is likely to contain some content in that language anyway. The meeting system may also prompt the user to specify the preferred language.
In some embodiments, the meeting system allows the participants to exchange meeting content in languages other than the user interface language. For example, if there are three meeting participants, one may be using a client application with a Japanese user interface, another with an English user interface, and a third with a French user interface. If the meeting organizer wishes to communicate in English, each of the three participants may receive meeting content in English. For example, the meeting organizer may open a chat window visible to each of the participants in which the organizer types text in English. Similarly, each of the meeting participants may send replies to typed text in each of their preferred languages. For example, the Japanese participant may respond to a question using Japanese text. It is up to each of the meeting participants to establish which languages will be accepted during the meeting for meeting content, regardless of the language of the user interface being presented to each of the participants. In some embodiments, the meeting software may translate meeting content from the language provided by the participant who generated the content to the languages of each of the other participants. For example, one participant may type text in Japanese and another participant may receive the text translated into English.
The computing device on which the system is implemented may include a central processing unit, memory, input devices (e.g., keyboard and pointing devices), output devices (e.g., display devices), and storage devices (e.g., disk drives). The memory and storage devices are computer-readable media that may contain instructions that implement the system. In addition, the data structures and message structures may be stored or transmitted via a data transmission medium, such as a signal on a communication link. Various communication links may be used, such as the Internet, a local area network, a wide area network, a point-to-point dial-up connection, a cell phone network, and so on.
Embodiments of the system may be implemented in various operating environments that include personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, programmable consumer electronics, digital cameras, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and so on. The computer systems may be cell phones, personal digital assistants, smart phones, personal computers, programmable consumer electronics, digital cameras, and so on.
The system may be described in the general context of computer-executable instructions, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, and so on that perform particular tasks or implement particular abstract data types. Typically, the functionality of the program modules may be combined or distributed as desired in various embodiments.
From the foregoing, it will be appreciated that specific embodiments of the meeting system have been described herein for purposes of illustration, but that various modifications may be made without deviating from the spirit and scope of the invention. For example, although meetings have been described, similar techniques could be used for other online events such as spectator events (e.g., horse races, football games, etc.), online auctions, and online movies. Accordingly, the invention is not limited except as by the appended claims.