Real time information analysis for a teleconference

Methods, systems, and storage media for real time information analysis for a teleconference are disclosed. Exemplary implementations may: receive, at a subscriber server, a voice stream from a first participant in a teleconference; convert at least a portion of the voice stream into a string of characters; select a keyword from a subset of the string of characters; access a network search engine and presenting the keyword as a query for the network search engine; receive a search result returned by the network search engine based on the query; analyze the search result for ancillary content based on the semantic context of the voice stream; and provide the ancillary content for display in a device used by a second participant in the teleconference.

BACKGROUND

Field

The present disclosure generally relates to teleconference and related communications. More specifically, the present disclosure relates to systems, methods, and storage media for real time information analysis for a teleconference.

Description of Related Art

Current platforms can provide a voice communication channel between two or more participants to enable participation in a conference call. The conference call may be established as a traditional teleconference (e.g., speaker and microphone), a video conference, and/or may include screen sharing by one or more of the participants. Regardless of whether the calling service is provided via traditional phone service (e.g., a landline), mobile phone service, Voice over Internet Protocol (VoIP), and/or other online services, the participants typically only receive limited identifying information about the other participant(s). Little, if any, ancillary information (e.g., about a topic of discussion) is provided to the participants.

By way of illustration, current communication platforms may include features such as “caller ID” to provide a name and contact information of one or more participants to the other participant(s). However, the conferencing service is typically limited in the type of information that may be retrieved from the participants. For example, the caller ID feature uses a telephone number, login name, e-mail address and/or other specific ID to identify participants. Thus, the information that can be provided to the conference participants is limited to the specific IDs used by the caller ID feature.

SUMMARY

One aspect of the present disclosure relates to a method to collect information analysis for a teleconference. The method includes receiving, at a subscriber server, a voice stream from a first participant in a teleconference. The method includes converting at least a portion of the voice stream into a string of characters. The method includes selecting a keyword from a subset of the string of characters. The keyword is indicative of a semantic context of the voice stream. The method includes accessing a network search engine and presenting the keyword as a query for the network search engine. The method includes receiving a search result returned by the network search engine based on the query. The method includes analyzing the search result for ancillary content based on the semantic context of the voice stream. The method includes providing the ancillary content for display in a device used by a second participant in the teleconference.

Another aspect of the present disclosure relates to a system configured for collecting information analysis for a teleconference. The system includes one or more hardware processors configured by machine-readable instructions. The processor(s) is configured to receive, at a subscriber server, a voice stream from a first participant in a teleconference. The processor(s) is configured to convert at least a portion of the voice stream into a string of characters. The processor(s) is configured to select a keyword from a subset of the string of characters. The keyword is indicative of a semantic context of the voice stream. The processor(s) is configured to access a network search engine and present the keyword as a query for the network search engine. The processor(s) is configured to receive a search result returned by the network search engine based on the query. The processor(s) is configured to analyze the search result for ancillary content based on the semantic context of the voice stream. The processor(s) is configured to provide the ancillary content for display in a device used by a second participant in the teleconference.

Yet another aspect of the present disclosure relates to a non-transitory, computer-readable storage medium having instructions embodied thereon, the instructions being executable by one or more processors to perform a method for collecting information analysis for a teleconference. The method includes receiving, at a subscriber server, a voice stream from a first participant in a teleconference. The method includes converting at least a portion of the voice stream into a string of characters. The method includes selecting a keyword from a subset of the string of characters. The keyword are indicative of a semantic context of the voice stream. The method includes accessing a network search engine and presenting the keyword as a query for the network search engine. The method includes receiving a search result returned by the network search engine based on the query. The method includes analyzing the search result for ancillary content based on the semantic context of the voice stream. The method includes providing the ancillary content for display in a device used by a second participant in the teleconference.

Still another aspect of the present disclosure relates to a system configured for collecting information analysis for a teleconference. The system includes means for receiving, at a subscriber server, a voice stream from a first participant in a teleconference. The system includes means for converting at least a portion of the voice stream into a string of characters. The system includes means for selecting a keyword from a subset of the string of characters. The keyword is indicative of a semantic context of the voice stream. The system includes means for accessing a network search engine and presenting the keyword as a query for the network search engine. The system includes means for receiving a search result returned by the network search engine based on the query. The system includes means for analyzing the search result for ancillary content based on the semantic context of the voice stream. The system includes means for providing the ancillary content for display in a device used by a second participant in the teleconference.

In the figures, elements and steps denoted by the same or similar reference numerals are associated with the same or similar elements and steps, unless indicated otherwise.

DETAILED DESCRIPTION

General Overview

Current communication platforms providing conference call services are typically limited in the type of information that is provided to the participants. Information that is provided to participants is typically dependent on static sources, such as a telephone number and/or conference login information of the other participant(s). Ancillary information, such as a participant's background and information about a topic of discussion, is typically not available to the other participant(s) unless it is explicitly shared with the other participant(s). This lack of information during a conference call limits participants from actively engaging with the other participants.

Implementations described herein address these and other problems by listening for keywords and topics in a conversation between a subscriber and at least a second participant. The platform is configured to deliver back to the subscriber highlighted news, facts, or statistics regarding the topic being discussed in the conversation, thus equipping the subscriber with critical information and talking points that enhance the conversation.

In some embodiments, a network server that provides a communication platform as disclosed herein may retrieve textual data from a voice channel in a conversation between two or more participants. The platform parses the textual data and provides search queries to network search engines to retrieve the relevant topical information. According to aspects, the string of characters is parsed with a neural network algorithm to select a salient feature as the keyword. The keyword may be from a subject of the string of characters. The keyword is then used to decide how to formulate a path to the information source on the internet.

In some embodiments, the information presented by the platform to the subscriber is already public and would scan sources such as Wikipedia, Wolfram Alpha, Weather Channel, LinkedIn, Facebook, IMDB, Yelp, Answers.com, Bloomberg, and the like.

According to aspects, ancillary content from the search result is downloaded from a content server for display in the device used by the second participant in the teleconference. For example, the ancillary content can include a downloaded document, a downloaded image, a hyperlink to an online server, and/or a link to news, weather, and/or other current events related to the semantic context of the voice stream.

According to aspects, data from the search result is used to form a graphic display that is provided to the device used by the second participant in the teleconference. Forming the graphic display may include combining data from multiple sources in the search result.

Example System Architecture

FIG. 1illustrates an example architecture100suitable to provide a platform for real time information analysis for a teleconference, according to some embodiments. Architecture100includes servers130and client devices110connected over a network150. One of the many servers130is configured to host a memory including instructions which, when executed by a processor, cause server130to perform at least some of the steps in methods as disclosed herein. In some embodiments, the processor in server130is configured to host a teleconference information analysis event that a participant may access through client device110. Further, in some embodiments, the processor in server130is configured to provide documents including images, video, and text messaging services to a participant in a teleconference information analysis event through client device110. In some embodiments, the documents provided by server130to one or more participants may include an application-based document (e.g., a text-rich document such as a Word document, a PDF document, or any other document accessible through a text editing application, including a computer code sequence, and the like), a spreadsheet document (e.g., Excel and the like), a presentation document (e.g., Power Point and the like), an XML file, an HTML file, a multi-media file such as a video, audio, image file, or any combination of the above. Information related to, and instructions to handle the teleconference information analysis event may be stored in a teleconference information analysis event engine242accessible by a participant through a client device110(e.g., accessible through a web page or an application222running on client device110). Servers130can return images, documents, rich-text documents, and the like intended for a shared use and modification by multiple participants in a teleconference information analysis event. For purposes of load balancing, multiple servers130can host memories including instructions to one or more processors and multiple servers130for hosting one or more teleconference information analysis events as disclosed herein.

Servers130may include any device having an appropriate processor, memory, and communications capability for hosting the documents and applications associated with teleconference information analysis event engine242. Teleconference information analysis event engine242may be accessible by multiple participants through various client devices110over the network150. Client devices110can be, for example, desktop computers, mobile computers, tablet computers (e.g., including e-book readers), mobile devices (e.g., a smartphone or PDA), or any other devices having appropriate processor, memory, and communications capabilities for accessing teleconference information analysis event engine242on one of servers130. Network150can include, for example, any one or more of a local area network (LAN), a wide area network (WAN), the Internet, and the like. Further, network150can include, but is not limited to, any one or more of the following network topologies, including a bus network, a star network, a ring network, a mesh network, a star-bus network, tree or hierarchical network, and the like.

FIG. 2is a block diagram200illustrating an example server130and client device110in the architecture100ofFIG. 1, according to certain aspects of the disclosure. Client device110and server130are communicatively coupled over network150via respective communications modules218and238. Communications modules218and238are configured to interface with network150to send and receive information, such as data, requests, responses, and commands to other devices on the network. Communications modules218and238can be, for example, modems or Ethernet cards.

Client device110may be any one of a desktop computer, a laptop, or a mobile computing device. Client device110may include a processor212and a memory220. An input device214and an output device216enable the user to interact with client device110. Examples of input device214and output device216may include a mouse, a keyboard, a display, a touch-interactive display, and the like.

Server130includes a memory232, a processor236, and communications module238. The user interface is displayed for the user in an output device216of client device110. Memory232includes a teleconference information analysis event engine242and a database252. Teleconference information analysis event engine242includes instructions which, when executed by processor236, cause server130to perform at least partially steps as disclosed herein. For example, teleconference information analysis event engine242includes instructions to communicate with application222to incorporate the user of client device110into a teleconference information analysis event as disclosed herein. Teleconference information analysis event engine242may also include instructions to store information and other data related to a teleconference information analysis event as disclosed herein into database252. Furthermore, in some embodiments, teleconference information analysis event engine242may include instructions to retrieve at least some of the data in database252and provide the data to one or more participants in a teleconference information analysis event as disclosed herein.

In some embodiments, teleconference information analysis event engine242stores data in and maintains for a selected period of time, database252. Further, teleconference information analysis event engine242updates different changes and modifications on a document or file discussed during the teleconference information analysis event, as part of a chat/topic history, as stored in database252. In some embodiments, the activity, notes, and other actions taken by different participants over a document or any other topic item are displayed around the item, showing the specific participant that has participated in the activity. As mentioned above, the document stored by server130in database252may include an application-based document (e.g., a text-rich document such as a Word document, a PDF document, or any other document accessible through a text editing application, including a computer code sequence, and the like), a spreadsheet document (e.g., Excel and the like), a presentation document (e.g., Power Point and the like), an XML file, an HTML file, or a multi-media file such as a video, audio, image file, or any combination of the above.

The user may access teleconference information analysis event engine242through application222installed in memory220of client device110. The user may also access teleconference information analysis event engine242via a web browser installed in client device110. Execution of application222may be controlled by a processor212in client device110. In some embodiments, application222is downloaded and installed by the user into client device110, from server130.

Processor236is configured to execute instructions, such as instructions physically coded into processor236, instructions received from software in memory232, or a combination of both.

FIG. 3is a block diagram300illustrating forming a graphic display of the ancillary content using data from a search result and providing the graphic display to a device used by a participant during a teleconference, according to some embodiments. According to aspects, a subscriber server310analyzes information analysis for a teleconference in real time, based on a voice stream from a first participant in the teleconference. At least a portion of the voice stream is converted into a string of characters, and a keyword is selected from a subset of the string of characters. The keyword is indicative of a semantic context of the voice stream and is presented as a query to a network search engine. According to aspects, the string of characters is parsed with a neural network algorithm to select a salient feature as the keyword. The keyword may be from a subject of the string of characters.

The network search engine provides a search result320based on the query. The subscriber server310analyzes the search result320for ancillary content based on the semantic context of the voice stream and provides the ancillary content for display in a device330used by a second participant in the teleconference.

According to aspects, the subscriber server310downloads the ancillary content from one or more content servers340a-cbased on the search result320and pointed to by the network search engine. Ancillary content may be retrieved from any number of content servers340a-cand may be configured for display in the device330used by the second participant in the teleconference.

According to aspects, the subscriber server310forms a graphic display350using data from the search result320. The graphic display350is provided to the device330used by the second participant in the teleconference. The graphic display350includes formatting for the ancillary data360aand360b. Forming the graphic display350may include combining data from multiple servers340a-cbased on the search result320and pointed to by the network search engine.

FIG. 4illustrates a screenshot400of various types of example ancillary content for display in a device used by a participant in a system to facilitate providing ancillary content during a teleconference, according to some embodiments. In an implementation, the ancillary content includes any sort of information relevant to the conversation that is the subject of the teleconference. Example ancillary content may include, but is not limited to, a social media profile410, a weather report420, a current event430, and a news article440. Other types of ancillary content may include at least one downloaded document450related to the semantic context of the voice stream, and/or at least one downloaded image460related to the semantic context of the voice stream.

According to aspects, the ancillary content may include a hyperlink470to an online server including information related to the semantic context of the voice stream. According to further aspects, the ancillary content may be displayed, e.g., as a text, graphic, or multimedia image. The ancillary content is linked to the search result and pointed to by the network search engine for display in the device used by the second participant in the teleconference.

FIG. 5illustrates screenshots500showing expiring the ancillary content displayed over time and refreshing the display to receive new ancillary content during an ongoing teleconference, according to some embodiments. According to aspects, a subscriber server conducts real time information analysis for a teleconference. In addition, the topic of a discussion may change or evolve over time. For example, a meeting may have one or more topics of discussion, both pre-planned topics and topics which arise as a result of discussing a different topic. As such, the ancillary content510displayed in the device of the second participant may be expired over time, e.g., as illustrated by reference520. The display may be refreshed to receive new ancillary content530associated with an updated semantic context of the teleconference over time.

FIGS. 6A-Cillustrate portions of a screenshot600of example ancillary content for display in a workspace601displayed by a device used by a participant during a teleconference, according to some embodiments. The application experience provides rich content retrieval and display to the subscribing user. When a user is logged into the teleconference application, and a call is placed or received, the display is dynamic, providing a tiled space for media to be presented.

FIG. 6Aillustrates screenshot600displaying, for a participant in a teleconference, ancillary content about a contact (e.g., ‘John Smith’), as an array of tiles610,620,630,640, and650. For example, a tile610may include financial information about a company associated with the contact (e.g., stock value, market capitalization, and other trading information about the company). A tile620may include weather information of the current location of the contact (placed in workspace601based on the content of the conversation or the exchanges in the teleconference). A tile630may include a radar screen indicating the movement of a weather system through the area where the contact resides. A tile640may include a picture of the contact, and a tile650may include a display of a personal account of the contact in a third party social network.

As the conversation progresses, tiles610,620,630,640, and650may flow in and out of the display in the participant workspace. Accordingly, in some embodiments, workspace601includes pin features615-1and615-2(hereinafter, collectively referred to as “pin features615”) to allow locking a tile in place to prevent refreshing with new information. In some embodiments, each one of tiles610,620,630,640, and650may act as a hyperlink. Accordingly, the user may click anywhere within the tile to open a link in a web browser where further content can be explored, related to the topic illustrated in the tile.

Since the product scans publicly available sources, tile650may include social media information pulled into the display and available for the user or participant to browse. Accordingly, some content sources for placing in workspace601include third party social networks that can be displayed when a positive match is found on the contact (e.g., ‘John Smith,’ in tile650).

FIG. 6Billustrates tile610including financial information of an enterprise associated with the contact in the teleconference. In some embodiments, tile610may include a link to a multimedia downstream that the user can play simply by clicking on the area of the screen. The multimedia downstream may include a snapshot or a snippet612of an audio file or a video file of interest or relevance to the topics of discussion in the teleconference. Further, tile610may also include advertisement banners and links617-1,617-2,617-3, and617-4(hereinafter, collectively referred to as “advertisement links617”). Advertising links617may be provided by the browser accessed by the hyperlink in tile610, or may be provided by the teleconference information analysis event engine (e.g., teleconference information analysis event engine242).

FIG. 6Cillustrates in more detail an aspect of tiles630and650, including pin feature615-2, locking tile630in the workspace601of the participant. Pin features615may have an icon resembling a physical pin, so that the participant may easily identify which tile has been pinned. The participant may de-activate pin features615simply by double-clicking, or right-clicking a pointer hovering over the pin icon.

FIG. 7illustrates an example system700for real time information analysis for a teleconference, according to some embodiments. In some implementations, system700may include one or more computing platforms702. Computing platform(s)702may be configured to communicate with one or more remote platforms704according to a client/server architecture, a peer-to-peer architecture, and/or other architectures. Remote platform(s)704may be configured to communicate with other remote platforms via computing platform(s)702and/or according to a client/server architecture, a peer-to-peer architecture, and/or other architectures. Users may access system700via remote platform(s)704.

Computing platform(s)702may be configured by machine-readable instructions706. Machine-readable instructions706may include one or more instruction modules. The instruction modules may include computer program modules. The instruction modules may include one or more of voice stream receiving module708, voice stream converting module710, keyword selection module712, network search engine accessing module714, search result receiving module716, search result analysis module718, content providing module720, content downloading module722, and/or other instruction modules.

Voice stream receiving module708may be configured to receive, at a subscriber server, a voice stream from a first participant in a teleconference. A “subscriber,” as the term is used herein, may refer to any participant(s) in the teleconference who have enabled the service disclosed herein. More than one participant may be a subscriber. Different levels of subscribers may participate in the teleconference, including both free and paid options. Not all participants need to be subscribers. It is noted that the participant need not be the one responsible for paying for the service. For example, a participant's employer may be responsible for paying for the service.

An identifier may be selected from the first participant in the teleconference. The term “identifier,” as used herein, may refer to any information that can be used to identify a participant. Typically, identifiers include a phone number, an e-mail address, a call handle, a login, or username, but can also include other information provided by the user (e.g., a screen name) or automatically (e.g., an IP address and/or a device ID).

By way of non-limiting example, the first participant may be a subscriber of a platform configured to deliver back to the subscriber highlighted news, facts, or statistics regarding a topic being discussed in a conversation during the teleconference, thus equipping the subscriber with information and talking points that enhance the conversation.

The term “statistics,” as the term is used herein, may refer to a fact or other data that is generally considered reliable (e.g., can be fact-checked against a reliable body of information). The term “topic,” as the term is used herein, may refer to a subject or matter of a discussion. A discussion may include more than one topic. In addition, the topic of a discussion may change or evolve over time. For example, a meeting may have one or more topics of discussion, both pre-planned topics and topics which arise as a result of discussing a different topic. The term “conversation,” as the term is used herein, may refer to a talk or discussion between two or more people during which information and ideas may be exchanged. A conversation may be informal, or may be formal (e.g., based on an agenda). A conversation may change or evolve over time. Additional participants may join and/or leave the conversation at various times.

Voice stream converting module710may be configured to convert at least a portion of the voice stream or multiple streams from other subscribers into strings of characters.

Keyword selection module712may be configured to select a keyword from a subset of the string of characters. The string of characters may be parsed with a neural network algorithm to select a salient feature as the keyword. The keyword may be from a subject of the string of characters. The keyword may be indicative of a semantic context of the voice stream. The semantic context of the voice stream may include a name for a location.

The term “neural network algorithm,” as the term is used herein, may refer to the manipulation of data according to a structure or rules to recognize underlying relationships in data through a process that mimics the human involvement. A neural network algorithm may include more than one algorithm, and several of the algorithms may be interdependent on one another (e.g., the output of one algorithm may feed the input of a separate algorithm). The algorithms may execute simultaneously, independently, or interdependently one another.

The term “salient information,” as the term is used herein, may refer to key pieces of distinct information or defining elements that are analyzed or used to understand or decipher a topic of discussion.

The term “semantic context,” as the term is used herein, may refer to the concept or topic from one or more sequences of natural language. Semantic context may be inferred from individual words and simple phrases, to more complex phrases, such as but not limited to, statements, queries, answers, and commands.

Network search engine accessing module714may be configured to access a network search engine and present the keyword as a query for the network search engine. A “network search engine,” as the term is used herein, may refer to a service that searches for content on a network. The network is typically the Internet, but may also include private networks (e.g., a corporate network). The network may include a network of networks (e.g., both private and public networks). The network search engine operates by receiving keywords or key phrases and/or other information (e.g., a user's location), and returns a search result. A “search result,” as the term is used herein, may include content results in the form of websites (e.g., hyperlinks), images, videos, or other online data.

Search result receiving module716may be configured to receive a search result returned by the network search engine based on the query. A graphic display may be formed using data from the search result. The term “graphic display,” as used herein, may refer to the output of hyperlinks, information, files, documents, graphics, media (e.g., photos, videos, or audio), and other content according to any suitable organized format for presentation to the participant.

Forming the graphic display may further include combining data from multiple sources in the search result and pointed to by the network search engine. Accessing the network search engine may include accessing multiple search engines and selecting the search result from at least one of the multiple search engines based on the semantic context of the voice stream.

Search result analysis module718may be configured to analyze the search result for ancillary content based on the semantic context of the voice stream. The term “ancillary content,” as the term is used herein, may refer to supporting content or information as it relates to the conversation or discussion of the teleconference. The ancillary content may include at least one downloaded document related to the semantic context of the voice stream. The ancillary content may include at least one downloaded image related to the semantic context of the voice stream. The ancillary content may include at least one hyperlink to an online server including information related to the semantic context of the voice stream. The term “online server,” as the term is used herein, may refer to a server computer having content available via a public and/or private network address that is pointed to by the hyperlink. A selected piece of the ancillary content may be stored in a recording of the teleconference. The term “selected piece,” as the term is used herein, may refer to a portion (some or all) of the ancillary content which is selected by a participant or other user, or automatically by the service (e.g., in response to detecting certain keyword(s) such as “record this”).

Content providing module720may be configured to provide the ancillary content for display in a device used by a second participant in the teleconference. By way of non-limiting example, at least one news, weather, and/or other current event may be linked to in the search result and pointed to by the network search engine for display in the device used by the second participant in the teleconference. The term “current event,” as the term is used herein, may refer to events and issues of general public interest, such as those currently found in the news or other source reporting the event or information.

The graphic display may be provided to the device used by the second participant in the teleconference. The publicly available data from the social network account may be provided for display in the device used by the second participant in the teleconference. The term “social network account,” as the term is used herein, may refer to any computer-based social media site(s) providing an online connection with friends, family, colleagues, customers, or clients. Social networking accounts can provide a platform for social and/or business interaction. The ancillary content may be provided for display in a device used by the first participant upon request by the second participant.

The ancillary content displayed in the device of the second participant may be expired over time. The ancillary content displayed in the device of the second participant may be pinned to a clipboard before expiring the ancillary content. The term “clipboard,” as the term is used herein, may refer to computer memory configured to temporarily store data (e.g., text or graphics) to facilitate its movement, storage, or duplication. Keywords and topics may be listened for in a conversation between the first participant and the second participant.

Content downloading module722may be configured to download, from a content server, the ancillary content from the search result and pointed to by the network search engine, for display in the device used by the second participant in the teleconference. The display may be refreshed to receive new ancillary content associated with an updated semantic context of the teleconference over time.

In some implementations, by way of non-limiting example, a social network account, associated with the identifier, may be accessed. In some implementations, a publicly available data may be downloaded from the social network account. In some implementations, by way of non-limiting example, the topic may include a weather information, a news information, or a graphic information. The term “weather information,” as the term is used herein, may refer to past, current, and predicted weather forecasts for an area or region, and may include temperature, precipitation, wind, and other data related to the weather. The term “news information,” as the term is used herein, may refer to recent or current information that is generally considered to be important to the community as a whole, as opposed to any particular individual. The term “graphic information,” as the term is used herein, may refer to the visual representation of information or data that is output by a computer to be viewed by a user. Other types of information may also be provided, both public and private.

A given remote platform704may include one or more processors configured to execute computer program modules. The computer program modules may be configured to enable an expert or user associated with the given remote platform704to interface with system700and/or external resources724, and/or provide other functionality attributed herein to remote platform(s)704. By way of non-limiting example, a given remote platform704and/or a given computing platform702may include one or more of a server, a desktop computer, a laptop computer, a handheld computer, a tablet computing platform, a NetBook, a Smartphone, a gaming console, and/or other computing platforms.

External resources724may include sources of information outside of system700, external entities participating with system700, and/or other resources. In some implementations, some or all of the functionality attributed herein to external resources724may be provided by resources included in system700.

Computing platform(s)702may include electronic storage726, one or more processors728, and/or other components. Computing platform(s)702may include communication lines, or ports to enable the exchange of information with a network and/or other computing platforms. Illustration of computing platform(s)702is not intended to be limiting. Computing platform(s)702may include a plurality of hardware, software, and/or firmware components operating together to provide the functionality attributed herein to computing platform(s)702. For example, computing platform(s)702may be implemented by a cloud of computing platforms operating together as computing platform(s)702.

Electronic storage726may comprise non-transitory storage media that electronically stores information. The electronic storage media of electronic storage726may include one or both of system storage that is provided integrally (i.e., substantially non-removable) with computing platform(s)702and/or removable storage that is removably connectable to computing platform(s)702via, for example, a port (e.g., a USB port, a firewire port, etc.) or a drive (e.g., a disk drive, etc.). Electronic storage726may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media. Electronic storage726may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources). Electronic storage726may store software algorithms, information determined by processor(s)728, information received from computing platform(s)702, information received from remote platform(s)704, and/or other information that enables computing platform(s)702to function as described herein.

Processor(s)728may be configured to provide information processing capabilities in computing platform(s)702. As such, processor(s)728may include one or more of a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information. Although processor(s)728is shown as a single entity, this is for illustrative purposes only. In some implementations, processor(s)728may include a plurality of processing units. These processing units may be physically located within the same device, or processor(s)728may represent processing functionality of a plurality of devices operating in coordination. Processor(s)728may be configured to execute modules708,710,712,714,716,718,720, and/or722, and/or other modules. Processor(s)728may be configured to execute modules708,710,712,714,716,718,720, and/or722, and/or other modules by software, hardware, firmware, some combination of software, hardware, and/or firmware, and/or other mechanisms for configuring processing capabilities on processor(s)728. As used herein, the term “module” may refer to any component or set of components that perform the functionality attributed to the module. This may include one or more physical processors during execution of processor readable instructions, the processor readable instructions, circuitry, hardware, storage media, or any other components.

It should be appreciated that although modules708,710,712,714,716,718,720, and/or722are illustrated as being implemented within a single processing unit, in implementations in which processor(s)728includes multiple processing units, one or more of modules708,710,712,714,716,718,720, and/or722may be implemented remotely from the other modules. The description of the functionality provided by the different modules708,710,712,714,716,718,720, and/or722described below is for illustrative purposes, and is not intended to be limiting, as any of modules708,710,712,714,716,718,720, and/or722may provide more or less functionality than is described. For example, one or more of modules708,710,712,714,716,718,720, and/or722may be eliminated, and some or all of its functionality may be provided by other ones of modules708,710,712,714,716,718,720, and/or722. As another example, processor(s)728may be configured to execute one or more additional modules that may perform some or all of the functionality attributed below to one of modules708,710,712,714,716,718,720, and/or722.

FIG. 8is a flowchart illustrating steps of a method800for real time information analysis for a teleconference, according to some embodiments. For explanatory purposes, the steps of the example method800are described herein as occurring in serial, or linearly. However, multiple instances of the example method800may occur in parallel. For purposes of explanation of the subject technology, the method800will be discussed in reference toFIG. 7.

At step802, the method800may include receiving, at a subscriber server, a voice stream from a first participant in a teleconference. Step802may be performed by one or more hardware processors configured by machine-readable instructions including a module that is the same as or similar to voice stream receiving module708, according to certain aspects of the disclosure.

At step804, the method800may include converting at least a portion of the voice stream into a string of characters. Step804may be performed by one or more hardware processors configured by machine-readable instructions including a module that is the same as or similar to voice stream converting module710, according to certain aspects of the disclosure.

At step806, the method800may include selecting a keyword from a subset of the string of characters. The keyword may be indicative of a semantic context of the voice stream. Step806may be performed by one or more hardware processors configured by machine-readable instructions including a module that is the same as or similar to keyword selection module712, according to certain aspects of the disclosure.

At step808, the method800may include accessing a network search engine and presenting the keyword as a query for the network search engine. Step808may be performed by one or more hardware processors configured by machine-readable instructions including a module that is the same as or similar to network search engine accessing module714, according to certain aspects of the disclosure.

At step810, the method800may include receiving a search result returned by the network search engine based on the query. Step810may be performed by one or more hardware processors configured by machine-readable instructions including a module that is the same as or similar to search result receiving module716, according to certain aspects of the disclosure.

At step812, the method800may include analyzing the search result for ancillary content based on the semantic context of the voice stream. Step812may be performed by one or more hardware processors configured by machine-readable instructions including a module that is the same as or similar to search result analysis module718, according to certain aspects of the disclosure.

At step814, the method800may include providing the ancillary content for display in a device used by a second participant in the teleconference. Step814may be performed by one or more hardware processors configured by machine-readable instructions including a module that is the same as or similar to content providing module720, according to certain aspects of the disclosure.

FIG. 9is a flowchart illustrating steps of a method900accessing and providing information relevant to a teleconference, according to some embodiments. For explanatory purposes, the steps of the example method900are described herein as occurring in serial, or linearly. However, multiple instances of the example method900may occur in parallel. For purposes of explanation of the subject technology, the method900will be discussed in reference to a computing platform including client devices, servers and databases interconnected via network, as disclosed above (e.g., client deices110, servers130, database252, network150, and computing platform702).

Step902includes logging into a communication platform.

Step904includes starting a teleconference with a remote participant using a menu list in the communication platform.

Step906includes receiving, in a display, an information associated with a semantic context of the teleconference. In some embodiments, step906includes downloading the information associated with the semantic context of the teleconference. In some embodiments, the information comprises a link to a network address, further comprising following the link to the network address.

Step908includes storing the information associated with the semantic context of the teleconference. In some embodiments, step908includes storing a graphic display included in the information, and providing the graphic display to the device used by the remote participant in the teleconference.

Step910includes providing the information for display in a device used by the remote participant in the teleconference. In some embodiments, step910includes refreshing the display to receive a new information associated with the semantic context of the teleconference.

Hardware Overview

FIG. 10is a block diagram illustrating an example computer system1000with which the computing platforms (e.g., client and server) ofFIGS. 1, 2, and 7, and the method ofFIGS. 8-9can be implemented, according to some embodiments. In certain aspects, the computer system1000may be implemented using hardware or a combination of software and hardware, either in a dedicated server, or integrated into another entity, or distributed across multiple entities.

Computer system1000(e.g., client device110, server130, computing platform(s)702, and remote platform(s)704) includes a bus1008or other communication mechanism for communicating information, and a processor1002(e.g., processor(s)212,236, and728) coupled with bus1008for processing information. By way of example, the computer system1000may be implemented with one or more processors1002. Processor1002may be a general-purpose microprocessor, a microcontroller, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), a controller, a state machine, gated logic, discrete hardware components, or any other suitable entity that can perform calculations or other manipulations of information.

Computer system1000can include, in addition to hardware, a code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them stored in an included memory1004(e.g., memories220and232and electronic storage726), such as a Random Access Memory (RAM), a flash memory, a Read-Only Memory (ROM), a Programmable Read-Only Memory (PROM), an Erasable PROM (EPROM), registers, a hard disk, a removable disk, a CD-ROM, a DVD, or any other suitable storage device, coupled to bus1008for storing information and instructions to be executed by processor1002. The processor1002and the memory1004can be supplemented by, or incorporated in, a special purpose logic circuitry.

Computer system1000further includes a data storage device1006such as a magnetic disk or optical disk, coupled to bus1008for storing information and instructions. Computer system1000may be coupled via input/output module1010to various devices. Input/output module1010can be any input/output module. Exemplary input/output modules1010include data ports such as USB ports. The input/output module1010is configured to connect to a communications module1012. Exemplary communications modules1012(e.g., communications modules218and238) include networking interface cards, such as Ethernet cards and modems. In certain aspects, input/output module1010is configured to connect to a plurality of devices, such as an input device1014(e.g., input device214) and/or an output device1016(e.g., output device216). Exemplary input devices1014include a keyboard and a pointing device, e.g., a mouse or a trackball, by which a user can provide input to the computer system1000. Other kinds of input devices1014can be used to provide for interaction with a user as well, such as a tactile input device, visual input device, audio input device, or brain-computer interface device. For example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, tactile, or brain wave input. Exemplary output devices1016include display devices, such as an LCD (liquid crystal display) monitor, for displaying information to the user.

According to one aspect of the present disclosure, the client device110and server130can be implemented using a computer system1000in response to processor1002executing one or more sequences of one or more instructions contained in memory1004. Such instructions may be read into memory1004from another machine-readable medium, such as data storage device1006. Execution of the sequences of instructions contained in main memory1004causes processor1002to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the sequences of instructions contained in memory1004. In alternative aspects, hard-wired circuitry may be used in place of or in combination with software instructions to implement various aspects of the present disclosure. Thus, aspects of the present disclosure are not limited to any specific combination of hardware circuitry and software.