AI robot-based in-meeting instant query assistant for meetings

By using AI robots to automatically receive and process queries in web conferences, contacting external subject matter experts to provide instant responses, solving the problem of reduced efficiency caused by postponing query in meetings, and improving meeting efficiency and experience.

CN113806502BActive Publication Date: 2025-05-09AVAYA MANAGEMENT LP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202110659234.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-06-15
Filing Date
2021-06-15
Publication Date
2025-05-09
Estimated Expiration
2041-06-15

AI Technical Summary

Technical Problem

In online meetings, queries proposed by participants often fail to get answers instantly, resulting in reduced meeting efficiency and postponing queries will increase subsequent workload.

Method used

Introduce artificial intelligence (AI) robots to automatically receive queries in meetings, identify and contact external subject experts, collect and present responses to queries, and avoid inclusion of subject experts in meetings.

Benefits of technology

It realizes instant resolution of inquiries during the meeting, improves meeting efficiency, reduces follow-up workload, and improves the meeting experience of participants.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113806502B_ABST
    Figure CN113806502B_ABST
Patent Text Reader

Abstract

The present disclosure relates to an AI robot-based in-meeting instant query assistant for meetings. Methods and systems are provided for automatically receiving queries made by participants in a meeting via an artificial intelligence robot, determining one or more subject matter experts to contact outside of the meeting, receiving responses to the queries from at least one of the subject matter experts, and presenting the responses to the queries to the participants of the meeting. The artificial intelligence robot presents the responses to the queries while the meeting is ongoing, without requiring any participant of the meeting to communicate with the subject matter expert, without requiring the subject matter expert's client device to be connected to the meeting, and without requiring the subject matter expert to be included in the meeting.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure is generally directed to multi-party communications and, more particularly, to conferencing established between communication devices of participants. Background Art

[0002] Conferencing, especially web conferencing, includes a range of communication services. These communication services may include conferences, collaborative communication sessions and / or other communications established between communication devices over a communication network. The information shared during a typical collaborative communication session may include video, audio, chat and / or other digital content.

[0003] During a meeting, participants may raise queries that require answers or resolution by subject matter experts who are not part of the meeting. When particular queries cannot be answered by participants, these queries may be deferred for follow-up actions after the meeting, such as emails, additional meetings, chat conversations, and / or other communications with subject matter experts. Deferring queries is inconvenient and can result in a decrease in the overall efficiency of the meeting. BRIEF DESCRIPTION OF THE DRAWINGS

[0004] Figure 1 depicts a block diagram of a communication system in accordance with at least some embodiments of the present disclosure;

[0005] Figure 2A is a block diagram depicting components of a conference server used in a communication system according to at least some embodiments of the present disclosure;

[0006] Figure 2B is a block diagram depicting interactions between components of a conference server according to at least some embodiments of the present disclosure;

[0007] Figure 3 is a block diagram depicting a conference user interface according to at least some embodiments of the present disclosure;

[0008] Figure 4 is a diagram depicting a set of communication flows according to at least some embodiments of the present disclosure;

[0009] Figure 5 is a block diagram depicting a subject matter expert data structure used in accordance with an embodiment of the present disclosure;

[0010] Figure 6 is a block diagram depicting an in-conference query data structure used in accordance with an embodiment of the present disclosure;

[0011] Fig. 7A is a flow chart depicting a method of determining a subject matter expert to serve as a query advisor in accordance with at least some embodiments of the present disclosure;

[0012] Figure 7Bis a flow chart depicting a method of automatically determining and communicating with a subject matter expert in accordance with at least some embodiments of the present disclosure;

[0013] Figure 8 is a flow chart depicting a method of automatically communicating with a subject matter expert on behalf of a participant in a meeting without including the subject matter expert in the meeting, in accordance with at least some embodiments of the present disclosure;

[0014] Fig. 9 is a flow chart depicting a method of automatically determining suggested responses to a query for presentation to a subject matter expert outside of a meeting according to an embodiment of the present disclosure; and

[0015] Fig.10 is a flow chart depicting a method for automatically training a recommendation and machine learning engine using feedback on previously provided query responses, in accordance with at least some embodiments of the present disclosure. DETAILED DESCRIPTION

[0016] In the following description, for illustrative purposes, many specific details are recorded in order to provide a thorough understanding of the various embodiments disclosed herein. However, it will be clear to those skilled in the art that the various embodiments of the present disclosure may be implemented without some of these specific details. The following description provides only exemplary embodiments and is not intended to limit the scope or applicability of the present disclosure. In addition, in order to avoid unnecessarily obscuring the present disclosure, several known structures and devices are omitted from the previous description. This omission should not be interpreted as a limitation on the scope of the claims. More specifically, the following description of the exemplary embodiments will provide a description that enables the implementation of the exemplary embodiments to those skilled in the art. However, it should be understood that the present disclosure can be implemented in a variety of ways beyond the specific details recorded herein.

[0017] Embodiments of the present disclosure will be described in connection with the execution of a communication system. The communication system may include a conference server configured to manage communications between one or more communication client devices. In some cases, the conference server may establish a collaborative communication session, a multi-party conference, or a meeting between multiple communication client devices across a communication network. The meeting may include an audio / video web conference between a host and one or more other participants. Additionally or alternatively, the meeting may provide instant messaging, text, and / or chat communications between participants of the meeting and the communication session.

[0018] In meetings, participants often raise queries that require consultation with subject matter experts. The term "query" and its variants as used herein may refer to any question or problem raised or asked by a participant in text and / or audio format during a meeting that requires input or answers from a subject matter expert outside the meeting. The term subject matter expert ("SME") as used herein may refer to a resource that has extensive knowledge of a particular topic, and in some cases, a topic associated with the query. In some cases, the SME may not be part of the meeting, and therefore, the query may need to be postponed. Participants, such as presenters or moderators, typically assign follow-up actions to these postponed queries, such as requiring one or more participants to contact the SME via email, schedule additional meetings, and / or hold additional chat conversations to answer the postponed queries.

[0019] The deferral of queries can lead to a number of problems, including, but by no means limited to, failure to fulfill all items that are part of the meeting agenda, failure to reach an agreed-upon conclusion to the meeting, and / or delays in decision making as part of the meeting. As can be appreciated, these problems can lead to a poor meeting experience for participants, particularly when multiple "showstopper" queries are deferred. "Showstopper" queries can correspond to queries that need to be answered or resolved before the meeting can continue and / or before other agenda items can be resolved. Overall, deferring queries reduces meeting efficiency for all involved.

[0020] The embodiments presented herein are conceived with respect to the above-mentioned problems and other problems. Among other things, the present disclosure solves these and other problems by providing an artificial-intelligence ("AI"), non-human robot that can automatically receive queries made in a meeting, determine one or more SMEs to contact outside of the meeting, receive responses to the queries from the SMEs, and present the responses to the queries to the participants of the meeting. In some embodiments, the AI ​​robot can present responses to the queries while the meeting is still in progress, without requiring any participant of the meeting to communicate with the SME, without connecting the SME's client device to the meeting, and without including the SME in the meeting.

[0021] When a query requires consultation with (one or more) SMEs, meeting participants can delegate the query to the AI ​​robot via voice, chat, or instant messaging, rather than deferring the in-meeting query to a subsequent action. The AI ​​robot instantly contacts (one or more) relevant SMEs through the best accessible communication channel, collects responses from (one or more) SMEs, and communicates the response to the query back to the participants of the meeting. In some embodiments, communication between the AI ​​robot and (one or more) SMEs is conducted without adding or bringing (one or more) SMEs into the meeting. In one embodiment, the AI ​​robot provides responses to queries on behalf of the SMEs without allowing direct communication from the SME to any participant in the meeting, and vice versa.

[0022] In some embodiments, the response to the query may be presented by one or more user interfaces or displays of a conference client device of at least one participant.The interfaces and / or displays described herein may be provided to a host, presenter, and / or other participant in a conference.

[0023] In addition to providing instant query assistance during a meeting, the AI ​​robot can also learn and recommend the best SME(s) to consult by analyzing the historical data of the SME(s), including the accuracy of responses, the speed of responding to queries, and the availability of the SME(s) during the duration of the meeting. Based on the learning, the AI ​​robot can also provide suggestions to the SME(s) to quickly handle the query. For example, the AI ​​robot can determine a suggested response to a query based on historical responses made, meeting information, participation information, confidence level of the response, and / or other machine learning data.

[0024] In one embodiment, the conference server can provide in-meeting instant query assistance from (one or more) SMEs through an AI robot that learns, recommends the best (one or more) SMEs, and transparently contacts the (one or more) SMEs with the learned response suggestions.

[0025] Typically, when scheduling an audio or video conference, the host uses their respective conferencing solution and then shares the meeting details with the intended participants. These meeting details may include, but are by no means limited to, the set meeting time, the conference network link, and / or the conference bridge dial-in number. In some embodiments, these details may include one or more of an extension number, a personal identification number (PIN), and / or a password to access the conference. Participants may join the conference using a conference client device capable of communicating via audio, video, and / or instant messaging.

[0026] The AI ​​robot can use the information obtained from the meeting details as the initial source of information to determine and identify (one or more) candidate SMEs to be consulted. These (one or more) candidate SMEs may correspond to those (one or more) SMEs that may be consulted by the AI ​​robot during the meeting. In one embodiment, the initial source of SME information for the AI ​​robot may be an organizational data source. The information of the SME may include at least one communication address and a professional field. The AI ​​robot can be trained using information from past meetings, follow-up queries, and responses / answers from (one or more) SMEs.

[0027] Additionally or alternatively, the meeting host or other privileged participant of the meeting may be allowed to configure SME details while scheduling the meeting. Such configuration options may include, but are by no means limited to, the name of the subject for which the SME consultation is expected, the group of SME(s) for the subject, the agenda, and / or the like.

[0028] In some embodiments, when the meeting reminder time is triggered, the conference server may instantiate an AI robot instance.

[0029] In one embodiment, for example, where the SME details are configured by the host or other privileged participant of the meeting, the AI ​​robot may check the availability of (one or more) SMEs. In some embodiments, the AI ​​robot may check the availability of (one or more) SMEs when determining (one or more) appropriate SMEs for potential consultation. In any case, the AI ​​robot may check the availability of (one or more) SMEs through any possible communication channel, for example, through instant messaging ("IM") presence, calendar availability, interactive ping instant messaging, and / or other availability status indicators. After confirming the availability confirmation, the AI ​​robot reminds (one or more) SMEs about the meeting with the details, agenda, and at least a portion of the specified topic. However, in some embodiments, (one or more) SMEs may be restricted from participating in the meeting.

[0030] When a meeting starts, the conference server creates the resources required to run the meeting, such as an audio or video bridge and group chat. The conference server associates the AI ​​robot instance with both the conference bridge and the group chat. From this point on, the AI ​​robot waits for query requests from conference participants via chat or voice. It can be understood that when participants join the meeting through a conference client device, the participants are added to the audio / video conference bridge and group chat.

[0031] During the meeting, any participant can ask a query via chat or voice. The raised query can be answered by other participants including the presenter or host. In some embodiments, in the event that a participant is unable to answer a query, one or more of the participants may request to consult with the SME.

[0032] When requesting a consultation, the participant may associate a query with a "topic" and / or address the AI ​​robot with an "identifier" (e.g., a keyword or phrase) that automatically delegates the query to the AI ​​robot. In the case of a voice query, the participant may need to address the AI ​​robot to delegate the query. For example, the participant may say "Hey, AI robot" followed by the phrase followed by the query that the AI ​​robot will handle.

[0033] Upon receiving the query, the AI ​​robot may then determine which SME(s) are associated with the "topic" and then forward the query to the associated SME(s) through any possible communication channels. The AI ​​robot may determine the best SME(s) by analyzing the historical data of the SME(s), such as the accuracy and promptness of the query responses and the availability of the SME(s) during the meeting. If the AI ​​robot lacks sufficient historical data required to learn or determine the best SME(s) for the query, the query may be forwarded to all relevant SME(s).

[0034] After identifying (one or more) SMEs, the AI ​​robot analyzes past queries and can determine a set of relevant response recommendations, or suggested responses, and then forwards the query together with the suggested responses to the identified (one or more) SMEs to help the (one or more) SMEs respond to the query quickly.

[0035] After receiving a query message from the AI ​​robot through an IM, text, or voice channel, the SME may answer the query (e.g., by providing a response to the query, etc.). When the AI ​​robot receives a response from (one or more) SMEs, the AI ​​robot may present the response back to the participants of the meeting. In one embodiment, the response to the query may be provided by artificial voice output through an audio channel (e.g., via a speaker or other audio output of a conference client device, etc.). In another embodiment, the response to the query may be provided by artificial video output through a video channel (e.g., via a display or other video output of a conference client device, etc.). In another embodiment, the AI ​​robot may post the response back to the conference group chat and associate the query. The AI ​​robot may cache the query until an SME is available or the meeting is completed.

[0036] When the meeting is completed, the AI ​​bot may consolidate and share with the host the pending queries that were not forwarded to the SME(s) due to unavailability or no response received from the SME(s) for further action.

[0037] In some embodiments, the AI ​​bot learns, recommends (one or more) best SMEs, and transparently contacts (one or more) SMEs with the learned response suggestions. As described above, (one or more) SMEs are not part of the meeting. In one embodiment, the method described herein may include: 1) identifying and recommending (one or more) best SMEs; 2) contacting (one or more) SMEs in available or possible communication channels; and 3) determining or creating a set of relevant response recommendations based on machine learning.

[0038] The phrase "AI robot service" as used herein may refer to a backend (e.g., server-side) service that includes an AI / machine learning engine (e.g., a processor, etc.) for identifying / recommending (one or more) SMEs and / or responding to suggestions. The phrase "AI robot" may refer to a robot that interacts with the participants of the meeting and (one or more) SMEs through different communication channels, respectively, and is driven by the AI ​​robot service. The terms "AI robot", "robot", "automated robot" and their variations as used herein may be used interchangeably. In some embodiments, the terms "topic", "context" and their variations as used herein may be used interchangeably.

[0039] In some embodiments, identifying and recommending the best SME(s) may be accomplished by the SME discovery engine component in the AI ​​robot service.

[0040] The AI ​​robot service can learn (one or more) SMEs and related details based on one or more learning and input sources. For example, the initial learning of the AI ​​robot service can be completed through an organization-level data source. For example, a data source may contain the communication address of (one or more) SMEs, their expertise topics / topics associated with skill sets, areas of expertise, and / or currently active projects of (one or more) SMEs. The AI ​​robot service can also be trained using any number of previous meeting details, follow-up queries, and responses from (one or more) SMEs.

[0041] After the initial learning solution deployment, the AI ​​bot service can begin an instant learning process from each meeting. The AI ​​bot service can learn factors about identifying the best SME(s), including but not limited to accuracy of query responses, promptness of query responses, response feedback from participants, response turnaround time, additional skills, expertise on new topics, preferred communication channels, etc.

[0042] Additionally or alternatively, if the host or privileged participant is anticipating certain inquiries and one or more SMEs are known prior to the meeting, there may be an option available to the host or other privileged participant of the meeting to configure the "Instant SME Consult" details when scheduling the meeting, or using available configuration at the organizational level. In some embodiments, this option may be provided at the time of scheduling the meeting or at any time prior to the meeting reminder time.

[0043] The AI ​​robot service may identify the best SME(s) in one or more identification phases. For example, in response to receiving a query, the AI ​​robot may determine / identify the best SME(s) associated with the topic by analyzing the historical data of the SME(s), such as the accuracy and promptness of the query responses, and the availability of the SME(s) during the meeting.

[0044] In one embodiment, where the "Instant SME Consultation" details are configured by a moderator or privileged participant, then when the AI ​​robot service associates a query with a topic for which the "Instant SME Consultation" details are available, the AI ​​robot service prioritizes the configured SME(s) and selects the configured SME(s). The AI ​​robot service may then identify the best SME(s) from its learning. In the event that the AI ​​robot service determines that the configured SME(s) are not suitable for answering the query (e.g., the topic associated with the query is different from the topic for which the SME(s) were initially configured, etc.), then it may be determined that the SME(s) are not suitable.

[0045] If the AI ​​Robot lacks sufficient historical data to learn or determine the best SME(s) for the query, the query will be forwarded to all relevant (e.g., available, active, highly rated, etc.) SME(s).

[0046] The AI ​​robot service may communicate with (one or more) SMEs via possible communication channels. In one embodiment, the AI ​​robot service may issue queries to (one or more) SMEs via one or more communication channels. In some embodiments, where the "live SME consultation" details are configured by the host or privileged participant, the AI ​​robot service may check the availability of (one or more) SMEs through any possible communication channels before the meeting. For example, presence via instant messaging ("IM") or interactive pinging IM. After confirming the availability of (one or more) SMEs, the AI ​​robot may remind (one or more) SMEs about the meeting details, agenda, and even designated topics of the meeting. Additionally or alternatively, where (one or more) SMEs are identified by the AI ​​robot service based on learning after receiving the query, the AI ​​robot service selects the preferred / best accessible communication channels of (one or more) SMEs from the learning and contacts the (one or more) SMEs via these communication channels.

[0047] One aspect of the present disclosure is that the AI / machine learning engine may enable the AI ​​robot to discover (one or more) SMEs and determine response suggestions. For example, the AI / machine learning engine may enable the AI ​​robot to discover (one or more) best SMEs that can provide quick and more accurate responses to queries posted by conference participants compared to other (one or more) SMEs. The AI / machine learning engine may enable the AI ​​robot to provide contextual or topic-related response suggestions to the discovered (one or more) SMEs.

[0048] The AI / machine learning engine may analyze several factors of (one or more) SMEs when discovering (one or more) SMEs and / or determining response suggestions. One factor may include the accuracy of the response provided by the SME (e.g., past responses to queries, etc.). This may correspond to an ordinal value and may be measured by the participant who posted the query. In some embodiments, the accuracy measurement value may be passed to the AI ​​robot through a feedback action performed by the conference participant. Another factor may include the speed with which the SME provides responses to the queries posted by the participant. This speed may correspond to an ordinal value and may be measured by the AI ​​robot using a timer associated with the time when the query is posted to the SME and the time when the SME responds. Another factor may include the availability of the SME to receive consulting queries during the duration of the meeting. The availability may be a nominal value and may be measured by the AI ​​robot. In some embodiments, one or more of these factors may be used by the AI ​​robot to train a machine learning model and predict the best (one or more) SMEs that can provide more accurate responses to queries posted by conference participants.

[0049] When training and / or learning topic or context-related query responses, the AI / machine learning engine may analyze: 1) each query response received from (one or more) SMEs; and 2) feedback received from conference participants for that query. Learned relevant or more appropriate context- or topic-related query responses may be provided to (one or more) SMEs as similar or suggested responses.

[0050] Reference now Figure 1 , a block diagram of a communication system 100 is shown in accordance with at least some embodiments of the present disclosure. Figure 1 The communication system 100 of the embodiment of the present invention may be a distributed system and, in some embodiments, includes a communication network 104 connecting the communication devices 108, 112 with a conference server 116. The communication system 100 may include, but is not limited to, a plurality of conference client devices 108A-N, a plurality of SME client devices 112A-N, and a conference server 116. In one embodiment, the conference client devices 108A-N may be communicatively connected to an audio / video bridge service 124 and / or an instant messaging service 128 of the conference server 116. The conference server 116 may provide collaborative communication sessions, conferences, multi-party calls, web-based conferences, web-based seminars ("webinars"), and / or other audio / video communication services. In any case, a conference may include two, three, four, or more conference client devices 108A-N, which access the conference server 116 via the communication network 104.

[0051] SME client devices 112A-N may each be associated with an SME 114 that is not a participant in the conference between conference client devices 108A-N. Communication between SME client devices 112A-N and conference client devices 108A-N is restricted. For example, the AI ​​robot service 120 may utilize the audio / video bridge service 124 and / or the instant messaging service 128 to communicate with the conference client devices 108A-N via a first communication session. The AI ​​robot service 120 may communicate with the SME client devices 112A-N via a separate and distinct communication session. In this manner, two-way communication between the participants of the conference and the SME 114 is prohibited.

[0052] According to at least some embodiments of the present disclosure, the communication network 104 may include any type of known communication medium or collection of communication media and may use any type of protocol to transmit messages between endpoints. The communication network 104 may include wired and / or wireless communication technology. The Internet is an example of a communication network 104, which constitutes an Internet Protocol (IP) network consisting of many computers, computing networks, and other communication devices located all over the world and connected by many telephone systems and other means. Other examples of the communication network 104 include, but are not limited to, a standard Plain Old Telephone System (POTS), an Integrated Services Digital Network (ISDN), a Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Voice over Internet Protocol (VoIP) network, a Session Initiation Protocol (SIP) network, a cellular network, and any other type of packet switching or circuit switching network known in the art. In addition, it can be appreciated that the communication network 104 need not be limited to any one network type, but may include several different networks and / or network types. The communication network 104 may include several different communication media, such as coaxial cables, copper cables / copper wires, optical cables, antennas for sending / receiving wireless messages, and combinations of these.

[0053] The conference client devices 108A-N and / or the SME client devices 112A-N may correspond to computing devices, personal communication devices, portable communication devices, laptops, smart phones, tablet devices, personal computers, and / or any other devices capable of running an operating system (“OS”), at least one communication application, a web browser, etc. The communication application may be configured to exchange communications between the various client devices 108A-N, 112A-N and the conference server 116. For example, the client devices 108A-N, 112A-N may be configured to operate various versions of Microsoft Corporation's and / or Apple's Operating systems, various commercially available Any of (such as LINUX or other UNIX-like operating systems), iOS, Etc. These client devices 108A-N, 112A-N may also have any of a variety of applications, including, for example, database client and / or server applications, web browser applications, chat applications, video applications, social media applications, call applications, etc. The client devices 108A-N, 112A-N may alternatively or additionally be any other electronic devices, such as thin client computers, Internet-enabled mobile phones, and / or personal digital assistants, capable of communicating via the communication network 104 and / or displaying and browsing web pages or other types of electronic documents.

[0054] Additionally or alternatively, communications may be sent and / or received via the respective client devices 108A-N, 112A-N as a phone call, a packet or collection of packets (e.g., IP packets transmitted over an IP network), an email message, an IM, a short message service ("SMS") message, a multimedia messaging service ("MMS") message, a chat, and / or a combination thereof. Figure 1 As shown, conference client devices 108A-N may communicate via audio / video channels (eg, communications shown as solid lines) and / or via IM channels (eg, communications shown as dashed lines).

[0055] As described herein, conference client devices 108A-N may each be associated with a participant (e.g., host, presenter, attendee, etc.) of a conference. On the other hand, SME client devices 112A-N may each be associated with a specific SME in a set of SMEs 114. As described herein, SME client devices 112A-N are not connected to, included in, or part of a conference between a participant and conference client devices 108A-N. SME client devices 112A-N may communicate with the AI ​​bot service 120 separately from the conference between the participants via audio / video channels (e.g., communications shown as solid lines) and / or via IM channels (e.g., communications shown as dashed lines).

[0056] Conference server 116 may include hardware and / or software resources that, among other things, provide the ability to hold multi-party calls, conference calls, and / or other collaborative communications. Conference server 116 may include conference scheduling service 118, AI robot service 120, audio / video bridge service 124, instant messaging service 128, and storage device 132, to name a few.

[0057] In some embodiments, the conference scheduling service 118 may be included in the conference server 116 and / or as a separate service or component system in the communication system 100 that is separate from the conference server 116. In any case, the conference scheduling service 118 provides conference scheduling resources that allow a conference organizer, or host, to schedule and invite participants to a conference. The conference scheduling service 118 may correspond to a built-in conference scheduling service, such as a built-in Microsoft Windows 100. Or the meeting and appointment scheduler in Apple's Calendar application, etc. In some embodiments, a meeting organizer (e.g., a host) can set up a meeting by communicating with a meeting scheduling service 118 over the communication network 104 via the first meeting client device 108A. The meeting scheduling service 118 may include email instructions 136 and scheduler instructions 138, which, when executed by the processor, allow the meeting organizer to schedule a date and time for the meeting (e.g., scheduler 138) and invite attendees (e.g., other participants) via email (e.g., email 136). Once the meeting is set up, the host and / or the meeting scheduling service 118 can communicate with other participants (e.g., participant B to participant N, etc.) via email and / or through the calendar application to inform other participants of meeting details, obtain responses, and update attendance status, etc. In some embodiments, the meeting scheduling service 118 can determine the availability of one or more participants before scheduling the meeting.

[0058] The conference server 116 may include conference resources, such as an audio / video bridge service 124 and / or an instant messaging service 128, which may allow two or more conference client devices 108A-N to participate in a conference. An example of a conference includes, but is not limited to, a web conference communication session, a webinar, a meeting, and the like established between two or more users / parties. Although some embodiments of the present disclosure are discussed in conjunction with meetings, the embodiments of the present disclosure are not so limited. Specifically, the embodiments disclosed herein may be applied to one or more of audio, video, multimedia, conference calls, web conferences, combinations of these, other collaborative communication sessions, and the like.

[0059] In some embodiments, the conference server 116 may include one or more resources, such as a conference mixer and other conference infrastructure. It will be appreciated that the resources of the conference server 116 may depend on the type of conference or communication provided by the conference server 116. Among other things, the conference server 116 may also be configured to provide a conference of at least one media type between any number of participants. The conference mixer of the conference server 116 may be assigned to a specific communication session for a predetermined amount of time. In one embodiment, the conference mixer may be configured to negotiate a codec with each conference client device 108A-N participating in the conference. Additionally or alternatively, the conference mixer may be configured to receive input (including at least audio input) from each participating conference client device 108A-N and mix the received input into a combined signal that can be monitored and / or analyzed by the conference server 116.

[0060] The AI ​​bot service 120 may include one or more components that are capable of instantiating an AI bot in a meeting, determining when a participant in the meeting raises a query that may require SME consultation, sending a query to one or more SME client devices 112A-N, and publishing responses to the queries to the participants in the meeting (e.g., responses received from at least one of the SME client devices 112A-N). All actions of the AI ​​bot service 120 may be performed automatically, without human interaction, and without requiring the SME and participants to communicate with each other. Among other things, the AI ​​bot service 120 allows participants in the meeting to continue the meeting while the AI ​​bot retrieves a response to the query, without interrupting the meeting, and without requiring the SME to be part of the meeting. The term "AI bot" as used herein may correspond to software and / or instructions characterized as a virtual non-human entity that performs functions and methods associated with one or more components of the AI ​​bot service 120 and in-meeting query assistance.

[0061] In some embodiments, the AI ​​robot service 120 may include an AI / machine learning ("ML") engine 140, a natural language processing unit 144, and a speech recognition engine 148. Figure 2A The AI / ML engine 140 is described in more detail.

[0062] The natural language processing unit 144 may include software and instructions that, when executed by a processor, are configured to automatically interpret speech or text received from participants in a conference and / or from SME 114 in a separate communication session, determine a weighted meaning of the interpreted speech or text, and take action based on the determined weighted meaning (e.g., communicate with one or more conference client devices 108A-N as part of a conference, communicate with one or more SME client devices 112A-N outside of a conference, update historical responses, update SME candidate selections, etc.). The natural language processing unit 144 may work in conjunction with the AI / ML engine 140 of the AI ​​bot service 120.

[0063] The speech recognition engine 148 may include software and instructions that, when executed by a processor, are configured to automatically convert audio data received from at least one conference client device 108A-N in a conference and / or from at least one SME client device 112A-N in a separate communication session separate from the conference into recognized speech. The recognized speech may be stored as text or digital data, which is provided by the speech recognition engine 148 to the natural language processing unit 144 and / or other components of the AI ​​robot service 120. In one embodiment, a participant in a conference may address the AI ​​robot by saying "Hi, AI robot" and then by providing a query after the address, such as "What is the status of the technical support hotline" or "What are the statistics for the customer service group", etc. In this embodiment, the speech recognition engine 148 may convert the audio speech information into recognized text, which is provided to the natural language processing unit 144 and / or the AI / ML engine 140 for further processing.

[0064] The storage device 132 may correspond to any type of non-transitory computer-readable medium. In some embodiments, the storage device 132 may include volatile or non-volatile memory and a controller therefor. Non-limiting examples of storage devices 132 that may be utilized in the conference server 116 may include RAM, ROM, buffer memory, flash memory, solid-state memory, or variants thereof. Any of these memory types may be considered a non-transitory computer memory device, even if the data stored therein may be changed once or multiple times. The storage device 132 may be used to store information about the meeting, past queries, past responses to queries, past suggested responses to queries, participants in the meeting, SME 114, and / or similar information. In some embodiments, the storage device 132 may be used to store rules and / or instructions for one or more components of the AI ​​robot service 120. For example, the storage device 132 may include training data for the AI / ML engine 140 for training the AI ​​robot service 120.

[0065] Figure 2A 1 is a block diagram depicting components of a conference server 116 used in a communication system 100 according to at least some embodiments of the present disclosure. The conference server 116 is shown as including a computer memory 212 storing one or more instruction sets, applications, or modules (possibly in the form of an AI / ML engine 140). The conference server 116 may be configured to include Figure 1 1. The conference server 116 may be a server or a portion of a server that may include any or all of the components of the conference server 116 depicted in FIG. The conference server 116 is also shown to include one or more processors 204 and a network communication interface 208 connected to each other via a bus 210. The bus 210 may correspond to a power and / or communication bus.

[0066] The memory 212 may correspond to any type of non-transitory computer-readable medium. In some embodiments, the memory 212 may include volatile or non-volatile memory and a controller therefor. Non-limiting examples of memory 212 that may be utilized in the conference server 116 may include RAM, ROM, buffer memory, flash memory, solid-state memory, or variations thereof. Any of these memory types may be considered a non-transitory computer memory device, even though the data stored therein may be changed one or more times.

[0067] The processor 204 may correspond to one or more computer processor devices. Non-limiting examples of processors include microprocessors, integrated circuit (IC) chips, general purpose processing units (GPUs), central processing units (CPUs), and the like. Examples of the processor 204 described herein may include, but are not limited to, at least one of the following: 800 and 801, with 4G LTE integration and 64-bit computing 620 and 615, with 64-bit architecture A7 processor, M7 motion coprocessor, series, Core TM Series processors, Series processors, Atom TM Series processors, Series processors, i5-4670K and i7-4770K 22nm Haswell, i5-3570K 22nm Ivy Bridge, FX TM Series processors, FX-4300, FX-6300 and FX-8350 32nm Vishera, Kaveri processor, Texas Jacinto C6000 TM Automotive Infotainment Processors, Texas OMAP TM Automotive-grade mobile processors, Cortex TM -M processor, Cortex-A and ARM926EJ-S TM processor, other industrial equivalent processors; and may utilize any known or future developed standard, instruction set, library and / or architecture to perform computing functions. Processor 204 may be a multi-purpose, programmable device that accepts digital data as input, processes the digital data according to instructions stored in its internal memory, and provides results as output. Processor 204 may implement sequential digital logic because it has internal memory. Like most microprocessors, processor 204 may operate on numbers and symbols represented in the binary number system.

[0068] The network communication interface 208 may include hardware that facilitates communication with other communication devices (e.g., conference client devices 108A-N, and / or SME client devices 112A-N, etc.) over the communication network 104. In some embodiments, the network communication interface 208 may include an Ethernet port, a Wi-Fi card, a Network Interface Card (NIC), a cellular interface (e.g., an antenna, filters, and associated circuitry), etc. The network communication interface 208 may be configured to facilitate connection between the conference server 116 and the communication network 104, and may further be configured to encode and decode communications (e.g., packets) according to a protocol utilized by the communication network 104.

[0069] The AI / ML engine 140 may be configured to operate using a set of criteria (e.g., as a set of static instructions) or by using machine learning. In some embodiments, the AI / ML engine 140 using machine learning may be able to access training data stored in the storage device 132 to initially train the behavior of the AI / ML engine 140. The AI / ML engine 140 may also be configured to learn from further interactions (e.g., query / response instances, candidate SME selections, etc.) based on feedback, which may be provided in an automated manner (e.g., via a recursive learning neural network) and / or in a human-provided manner (e.g., by a participant and / or SME of the meeting confirming or denying that a particular selection or suggested response prepared by the AI / ML engine 140 is appropriate for a particular query received from a participant).

[0070] The learning / training module 214 of the AI / ML engine 140 may be able to access and use one or more dialogue models. The dialogue models may be built and updated by the training / learning module 214 based on training data and feedback. The learning / training module 214 may also be configured to access information from the response database 220 in order to build an AI robot query response database 224, which effectively stores AI robot responses that were previously provided by the AI / ML engine 140 and identified as valid or appropriate in this case (e.g., based on affirmative responses from participants, SMEs, and / or based on administrative user input). As the AI / ML engine 140 interacts more with the participants of the meeting and / or interacts with queries and responses to queries, the responses within the AI ​​robot query response database 224 may be continuously updated, revised, edited, or deleted by the learning / training module 214.

[0071] In some embodiments, the AI / ML engine 140 may include a recommendation engine 216 that is capable of accessing an AI robot query response database 224 and selecting appropriate suggested response recommendations from the AI ​​robot query response database 224 based on query input 232 received from the natural language processing unit 144 and / or the voice recognition engine 148. In one embodiment, the query engine 228 may provide the query input 232 to the recommendation engine 216 in the form of real-time chat data and / or in the form of conversation state information. The real-time chat data may correspond to the content of a message received on a chat or IM communication channel from one or more conference client devices 108A-N in the conference. In other words, the query engine 228 may be configured to retrieve the query message content from the digital communication channel and provide such content to the AI / ML engine 140 in the form of query input 232. Using the query input 232 and the AI ​​robot query response database 224, the recommendation engine 216 may be configured to recommend one or more responses to the query to the response generator 236. The response generator 236 may be configured to provide the selected suggested response to the query engine 228 for transmission to the appropriate SME or group 114 of SMEs via the appropriate communication channel (e.g., outside the conference communication session). In other words, the query engine 228 may be responsible for managing the state of the query / response interaction and may provide a mechanism for the AI / ML engine 140 to interact with a particular communication channel and participants of the conference or SMEs outside the conference. For example, the query engine 228 may generate a message including a suggested response to the query for a chat or audio channel between the AI / ML engine 140 and the SME. As another example, the query engine 228 may publish a message including a response to the query from the SME to the chat channel of the conference. Similarly, the query engine 228 may present a response to the query in the form of an audio signal output (e.g., simulated voice, etc.) to the audio channel of the conference to which the participant's conference client device 108A-N is connected.

[0072] The interactions between the AI / ML engine 140 and the participants of the meeting and the interactions between the AI / ML engine 140 and the SME 114 may be determined by the query engine 228, which updates the AI ​​robot query response database 224. In some embodiments, the AI / ML engine 140 may be configured to interact with the participants of the meeting in a seamless and uninterrupted manner. For example, the response to the query may be provided to the conference client devices 108A-N of the participants in the meeting via chat or IM (when the participant is speaking). In some embodiments, the AI / ML engine 140 may not have enough historical information (e.g., in the response database 220 and / or the AI ​​robot query response database 224) to form a suggested response to the query, and the query may be sent to one or more of the SME client devices 112A-N to provide a response without a recommendation. In this case, once the SME provides a response to the query, the response may be stored in the response database 220, and the AI / ML engine 140 may update the AI ​​robot query response database 224 for future similar or similar queries. In one embodiment, the AI / ML engine 140 may be continuously provided with training data from various query / response interactions. In some embodiments, the conference server 116 and / or the memory 212 may include multiple AI / ML engines 140 without departing from the scope of the present disclosure.

[0073] refer to Figure 2B , a block diagram depicting the interactions between components of conference server 116 is shown in accordance with at least some embodiments of the present disclosure. Figure 2B As shown, the AI ​​robot 240 is a robot that can receive queries in text Qt or voice Qv format from conference participants. When a conference participant posts a query in the IM chat window of the conference, the AI ​​robot 240 receives the query Qt in text format. When a conference participant posts a query in the form of a voice command to call the AI ​​robot 240, the voice query is fed into the speech recognition engine 148 to convert the voice query Qv into a text query Qt. The AI ​​robot 240 contacts (one or more) SMEs with the query and recommends a response. The AI ​​robot 240 then receives a response from (one or more) SMEs via a preferred communication channel. The AI ​​robot 240 can publish responses from one or more SMEs to the participants of the conference. In some embodiments, the AI ​​robot 240 may request and / or receive response feedback from the participants of the conference.

[0074] The natural language processing unit 144 may be responsible for processing queries and identifying the intent of the query, the entities of the query, and the context or topic Qi of the query. For example, a participant in a meeting may issue the following query: "What is the average wait time ("AWT") for the technical support team?" As described above, this voice query Qv may be converted by the speech recognition engine 148 into a text query Qt and then forwarded to the AI ​​robot 240. In some embodiments, the AI ​​robot 240 may convert the text query Qt into a "natural language" query, Qn. In this case, the natural language processing unit 144 may process the above query Qn and identify: 1) "Technical support team" is identified as a "context / topic", AWT is identified as an "entity", and AWT may be considered an "intent". These query identifiers Qi may then be provided to the AI ​​robot 240 and / or the AI / ML engine 140 (e.g., for SME discovery and context-related query response determination, training, etc.).

[0075] The AI ​​robot service 120 may utilize one or more memory devices, databases, or enterprise storage locations as a repository for data of AI robots, machine learning, (one or more) SMEs, performance, meetings, and / or other information in the AI ​​robot-assisted methods and systems described herein. In one embodiment, the storage device 132 may correspond to an enterprise storage and may include different databases storing enterprise meeting information (e.g., including meeting participants, meeting dates and times, SME details preferred to be consulted by meeting schedulers, etc.) and employee profile information (e.g., including the communication addresses of SMEs and / or other employees and their skill sets and professional fields). (One or more) SMEs may be identified based on their (one or more) professional skill fields stored in the employee profile information. In any case, such meeting and / or employee information may be stored in the enterprise skills and meeting database 252 of the storage device 132. The data stored in the various databases 220, 252 of the storage device 132 may be used by the AI / ML engine 140 to train and derive the best possible SME discovery ML model 244 for discovering (one or more) best SMEs, and determine the context-related query discovery ML model 248 for context-related queries and responses. In some embodiments, the enterprise store may be fed with the data Ds of (one or more) SMEs and historical meeting information and queries Dq raised in past meetings. This data Ds, Dq may be used to train and derive the machine learning model of the AI / ML engine 140, among other things.

[0076] The AI / ML engine 140 may be responsible for discovering the best SME(s) who are mostly available for consultation and will provide more accurate and expeditious responses to queries posted by one or more participants of the meeting. Additionally or alternatively, the AI / ML engine 140 may be responsible for finding historical query responses that are relevant to the context or topic, which will be provided to the SME(s) as suggested responses, thereby helping the SME(s) to answer the query quickly. In some embodiments, the AI / ML engine 140 may include a query engine 228, an SME discovery ML model 244, and a context-related query discovery ML model 248.

[0077] The query engine 228 may correspond to a query and feedback data processor. The query engine 228 may be a recipient of meeting, query, and feedback data from the AI ​​robot 240. Meeting identifiers, intents, entities, and contexts may correspond to meeting input parameters Mi, while SME identifiers, SME feedback metrics, query responses, and feedback may correspond to SME-related input parameters Si. The query engine 228 may further divide these input parameters Mi, Si, and feed various combinations of the divided input parameters to the SME discovery ML model 244 and the context-related query discovery ML model 248 as needed.

[0078] When a participant in a meeting issues a query to the AI ​​robot 240 , the query engine 228 may receive from the AI ​​robot 240 the meeting identifier of the current meeting, the context or topic associated with the query, the intent of the query, and the entities present in the query.

[0079] When responses to a query are received from an SME and presented to participants of the meeting, the query engine 228 may receive from the AI ​​bot 240 the meeting identifier of the current meeting, the context or topic associated with the query, the responses to the query, participant feedback on the accuracy or usefulness of the responses to the query, and / or SME feedback metrics, such as the expediency of the SME's response to the posted query, the SME's availability during the meeting, and / or the accuracy or usefulness of the responses provided by the SME.

[0080] The SME discovery ML model 244 can discover (one or more) best SMEs that can provide prompt and more accurate responses to queries issued to them (e.g., compared to other (one or more) SMEs that may be selected and / or available, etc.). The SME discovery ML model 244 can be trained using real historical or synthetic SME data. In some embodiments, the training data can be fed into the storage device 132 or enterprise storage. Among other things, the SME discovery ML model 244 also analyzes the data of (one or more) SMEs, discovers (one or more) best SMEs based on the analysis, and recommends the discovered (one or more) best SMEs to the AI ​​robot 240. These recommended (one or more) SMEs can be used by the AI ​​robot 240 to issue queries (e.g., request responses to queries).

[0081] The context-relevant query discovery ML model 248 may correspond to a model that finds past queries that may be relevant to the topic or context of currently posted queries (e.g., queries posted in a current meeting, etc.). Historical queries and their associated responses may be used to train and design the context-relevant query discovery ML model 248. This historical data may be actual historical data or synthetic data. In some embodiments, the context-relevant query discovery ML model 248 analyzes the query responses of (one or more) SMEs and their accuracy feedback provided by participants of the meeting. Based on this analysis, the context-relevant query discovery ML model 248 learns query response suggestions that can be recommended to (one or more) SMEs when participants of the meeting post relevant queries.

[0082] In some embodiments, the learning / training module 214 may include a SME discovery ML model 244 and / or a context-related query discovery ML model 248 .

[0083] Figure 3 300 is a block diagram depicting a conference user interface 300 according to at least some embodiments of the present disclosure. The conference user interface 300 may include a window 304 that may be presented to a display of at least one conference client device 108A-N. The window 304 may include identification information, application controls, and at least one viewing area. The viewing area of ​​the window 304 may be separated into a number of different areas 308, 312, 316, 320. Specifically, the window 304 may include a video conference display area 308, a messaging display area 312, a meeting details display area 316, and / or a conference recording window 320.

[0084] The video conference display area 308 may include a display area that presents video information of participants in the conference. In some embodiments, the video conference display area 308 may be used to share files, documents, presentations, slides, images, and / or live images of video streams. These images may be provided by the audio / video bridge service 124, such as in conjunction with Figure 1 As stated. Figure 3 As shown, the video conference display area 308 includes an image of each participant in the meeting. Although the AI ​​robot 240 is a non-human virtualization as part of the meeting, the AI ​​robot 240 can be represented in the video conference display area 308 by a static image, a moving image, or an avatar. In one embodiment, the display of the information shown in the video conference display area 308 can be selectively controlled by the host (e.g., via the host's first conference client device 108A, etc.), the AI ​​robot 240 (e.g., enabled by the AI ​​robot service 120, etc.), the conference server 116, or some other participants of the meeting (e.g., via conference client devices 108B-108N, etc.). In the case of certain presentations and / or meetings (e.g., interactive communications, webinars, demonstrations, etc.), the video conference display area 308 may include playback controls, audio controls, video controls, and / or other content controls.

[0085] The messaging display area 312 may include a display area that presents text chat information for the conference. The messaging display area 312 may be configured to display text messages sent on a chat channel as part of the instant messaging service 128. In one embodiment, the chat messages may be provided by one or more participants and / or the AI ​​bot 240 in the conference. The chat messages may be identified by a participant identifier. Figure 3 As shown, the first chat communication 332A is a question from participant B (e.g., provided on a chat channel of the meeting via the second conference client device 108B), identified by the letter "B." The second chat communication 332B is from the host (e.g., provided on a chat channel of the meeting via the first conference client device 108A), identified by the letter "M." The third chat communication 332C identifies that a query has been made in the messaging display area 312. This identification of the query can be made by the AI / ML engine 140 determining that a query has been asked in the meeting. Once the AI / ML engine 140 determines a response to the query (e.g., by obtaining a response to the query from the SME, etc.), the AI ​​bot 240 can provide a fourth chat communication 332D, posting the response to the messaging display area 312. The fourth chat communication 332D is from the AI ​​bot 240 (e.g., via the AI / ML engine 140, etc.) and is identified by the letter "A." Although in Figure 3The communications are identified by letters, but it should be understood that any identifier (e.g., color coding, name, style, typeface, font, size, combinations thereof, etc.) may be used to distinguish one communication from another in the messaging display area 312.

[0086] As shown in the messaging display area 312, the host (e.g., a participant of a meeting including the AI ​​robot 240) addresses the AI ​​robot 240 and poses a query (e.g., a second chat communication 332B). The address is the phrase "AI robot", and the query is related to the AWT of the technical support team. The AI / ML engine 140 may determine that a query has been raised based at least in part on the address and the nature of the query content. In some embodiments, the AI / ML engine 140 may determine that a query has been raised based on any combination of training, past raised queries, and / or information disclosed herein. In any case, the AI / ML engine 140 shows that the query has been received by presenting an acknowledgement of the query in the third chat communication 332C. In response to receiving the query, the AI / ML engine 140 may communicate with the SME and request a response to the query while the meeting is ongoing. In some embodiments, the AI / ML engine 140 may determine a suggested response to the query, which is communicated to (e.g., sent to) the SME via the communication network 104. The SME may choose to accept the suggested response or decline to use the suggested response. If the SME declines to use the suggested response, the SME may type, text, or speak a response to the query via the SME's respective client device 112A-N. Once the AI / ML engine 140 receives the response to the query, the AI / ML engine 140 may publish the response to the query in the messaging display area 312 for the participants of the conference to read. This published response may correspond to the fourth chat communication 332D provided above.

[0087] In some embodiments, window 304 may include a meeting details display area 316 that identifies at least one of the meeting subject, name, agenda, participant list, expected discussion topics, combinations of these, and the like. Figure 3 , but the meeting details and / or associated content may be stored with the meeting in metadata (e.g., stored at the meeting scheduling service 118, the meeting server 116, and / or in the storage device 132, etc.). The content of the meeting details may be used by the AI / ML engine 140 to determine the appropriate SME or group of SMEs 114 to select for a particular query or meeting. Additionally or alternatively, the content of the meeting details may be used by the AI / ML engine 140 to determine a suggested response to the query, which the AI ​​robot 240 may provide to the selected SME or group of SMEs 114 to allow a faster response to the query from the SME or group of SMEs 114.

[0088] Window 304 may include a meeting record window 320 that tracks or records events in the meeting. The meeting record window 320 may record audio, video, and / or chat communications that are part of the meeting. The meeting record window 320 may include a meeting communication time record 324 that runs from the start time Ts of the meeting and continues until the end or completion time Tf of the meeting. The meeting communication time record 324 may record audio (e.g., amplitude and frequency, words or phrases spoken, etc.) and may even distinguish between conversations that are part of the meeting and queries made in the meeting. For example, the meeting communication time record 324 is shown as indicating different points in time when queries were raised (e.g., between the start time Ts and the end time Tf). As shown in FIG. Figure 3 As shown, at the first voice query time Tvq, a voice query is raised (e.g., by a participant through the conference's audio channel). The conference communication time record 324 shows that the AI ​​robot 240 presents a response at the first response voice query time Tvqr. Later in the conference, a chat query is raised (e.g., by a participant through the conference's chat channel) at the first chat query time Tcq. The conference communication time record 324 shows that the AI ​​robot 240 presents a response to the first chat query at the first response chat query time Tcqr. Although Figure 3, but the conference communication time record 324 and / or associated content may be stored in metadata with the conference (e.g., stored at the conference scheduling service 118, the conference server 116, and / or the storage device 132, etc.). The content of the conference communication time record 324 may be used by the AI / ML engine 140 to determine the appropriate SME or group of SMEs 114 to select for a particular query or conference in a future query / response interaction. For example, the time between asking a query and obtaining a response to the query may be used by the AI / ML engine 140 to improve SME selection, query response suggestions / recommendations, and / or update the AI ​​robot query response database 224. As another example, the number of queries raised in a particular conference with a particular combination of participants may be used to determine the appropriate SME or group of SMEs 114 to select for a particular query or conference in a future query / response interaction including the particular combination of participants. In this example, the AI / ML engine 140 may determine or learn that a particular combination of participants, when attending a conference together, raises more queries than other combinations of participants in the conference. Therefore, when a particular combination of participants is scheduled for a meeting, the AI / ML engine 140 may determine to send a query to an SME group 114 that includes a greater number of SMEs than when the combination of participants in the meeting does not include the particular combination of participants. Conversely, when it is determined that fewer queries are raised when a particular combination of participants attends a meeting together, the AI / ML engine 140 may determine to send a query to an SME group 114 that includes a smaller number of SMEs than when the combination of participants in the meeting does not include the particular combination of participants.

[0089] The conference record window 320 and / or any other display area 308, 312, 316 may include various navigation, scrolling and / or modification controls. Figure 3 As shown, the conference record window 320 includes conference record controls 328A-B that allow participants to select icons via the user interface of the conference client device 108A-N and move between conference communication time records 324 or navigate other parts of the conference record window 320. In one embodiment, selection of the first conference record control 328A may display an earlier time portion of the conference communication time record 324 in the conference record window 320. Additionally or alternatively, selection of the second conference record control 328B may display a later time portion of the conference communication time record 324 in the conference record window 320.

[0090] Reference now Figure 4, a set of communication flows will be described according to at least some embodiments of the present disclosure. When a conference client device 108 of a participant in a meeting raises a query, the communication flow begins (step S401). In some embodiments, the query may be automatically detected by the conference server 116 in response to monitoring audio and text communications between participants in the meeting. For example, the AI / ML engine 140, in conjunction with the natural language processing unit 144 and / or the speech recognition engine 148, may determine that a phrase, a set of keywords, silence (e.g., no words), and / or a combination of these in the meeting are associated with the query. Such monitoring of the voice (e.g., through an audio channel of an audio / video bridge service 124) and / or text (e.g., through a chat channel of an instant messaging service 128, etc.) in the meeting may be referred to herein as "listening" by the AI ​​robot 240 (e.g., via the AI ​​robot service 120, etc.). In one embodiment, when the conference client device 108 identifies a question raised as a query (e.g., by addressing the AI ​​robot 240 and / or by providing a query phrase), the communication flow begins. In any event, the conference server 116, and more specifically, the AI ​​robot service 120 of the conference server 116, receives the query.

[0091] After receiving the query, the conference server 116 may process the query to determine or extract appropriate SME consultation information and potential recommended or suggested responses to the query (step S402). Specifically, the natural language processing unit 144 and / or the speech recognition engine 148 may determine a combination of words used in the query, determine the initiator of the query (e.g., which participant asked the query, etc.), and provide the determined information to the AI / ML engine 140 for further processing. The AI / ML engine 140 may further determine a combination of words associated with the query (e.g., provided before or as part of the query, etc.), the initiator of the query (e.g., the identification of the participant who asked the query, etc.), including decision information, such as a specific topic, phrase, or other keyword associated with the SME consultation selection. This decision information may be analyzed by the AI / ML engine 140 to select a specific SME or group 114 of SMEs for consultation. In some embodiments, the selection may include determining which SMEs 114 have technical expertise (e.g., skills, attributes, etc.) and are available to provide responses to the query. The decision information may be used to determine a suggested response to the query (e.g., provided to the SME to quickly process the query) based on historical responses (e.g., responses in the response database 220 and / or the AI ​​robot query response database 224, etc.), such as in combination with Figure 2A described.

[0092] In step S403, the conference server 116 may determine the availability of SMEs that are considered candidate SMEs for selection by the AI / ML engine 140. Although this step may be performed before the meeting or at the beginning of the meeting, it should be understood that the AI / ML engine 140 may determine the availability at any time during the meeting. In one embodiment, the AI / ML engine 140 determines the availability in response to determining that a query has been raised, before sending a message to a particular SME in response to the query. The availability may be based on sending IM presence, indicated calendar availability (e.g., via a status request message sent to the meeting scheduling service 118, etc.), interactive ping IM (e.g., sent from the conference server 116 to the SME's client device 112, etc.), and / or other availability status indicators. As Figure 4 As shown, the conference server 116 sends an interactive ping IM to the SME client devices 112 of one or more SMEs 114 .

[0093] After receiving the interactive ping IM, each SME client device 112 may provide an availability status response (step S404). The availability status response may be automatically sent by the SME client device 112 in response to receiving the interactive ping IM. In some embodiments, the SME may be required to provide availability in response to receiving the interactive ping IM. For example, the interactive ping IM may include a plurality of preset availability options from which the SME may select, such as "available", "unavailable", "available at a certain time", "unavailable before a certain time" and / or other interactive options or variations thereof. When the SME provides a selection via the user interface of the SME client device 112, the selection is sent to the conference server 116, and the AI / ML engine 140 may determine to include the responding SME as a candidate for consultation, or to remove the responding SME as a candidate for consultation. When the SME fails to respond to the interactive ping IM, the AI / ML engine 140 may determine that the SME is unavailable after a predetermined time, and remove the unresponsive SME from consideration as a candidate for consultation.

[0094] In some embodiments, the conference server 116 sends a message to the SME client device 112 associated with the available SME, including a request for the SME to provide a response to the posed query (step S405). The message may be sent as an audio message via an audio communication channel between the conference server 116 and the SME client device 112. In some embodiments, the message may be sent as a text or chat message via a chat communication channel between the conference server 116 and the SME client device 112. The message may be sent to one or more of a group of SMEs 114 (e.g., via their respective SME client devices 112A-N, etc.). The message may include a suggested response determined by the AI / ML engine 140 (e.g., at step S402).

[0095] When the message is sent as an audio message, the suggested response may be spoken to the SME via the conference server 116 as a selectable option (e.g., via an audio channel separate from the conference). For example, the message may state, using a speech synthesizer or other text-to-speech system, "The question being asked is what the AWT of the technical support team is," and "The AI ​​bot has found that the most recently recorded AWT of the technical support team is less than one minute. If you would like to accept this suggested response as the official response to the query, please press or say "1" now, otherwise, press or say "2" and record your different response to the query." In this case, the SME may determine that the suggested response is correct and then press or say "1" via the SME client device 112. However, if the SME determines that the suggested response is incorrect, the SME may press or say "2" via the SME client device 112 and record a different response in reply for processing by the conference server 116.

[0096] When the message is sent as a text-based message (e.g., via chat, IM, email, or other text-based communication), the query and suggested responses may be provided in text format to a display device of the SME client device 112. The message may allow the SME to accept the suggested responses by selection, text response, or the like via the SME client device 112. Additionally or alternatively, the message may allow the SME to provide a different response to the query by entering a text response to the query via the SME client device 112.

[0097] Whether the response to the query is provided by the SME via text or audio, the response to the query (eg, reply to a message sent from conference server 116) is sent to conference server 116 over communication network 104 via network communication interface 208 (step S406).

[0098] After receiving a response to the query from the SME client device 112, the AI ​​robot service 120 of the conference server 116 may process the response for presentation to the conference (step S407). In some embodiments, the query may be raised as part of the conference via a first communication channel (e.g., audio or chat). The conference server 116 may send a message including the query to the SME client device 112 as an audio message, a text-based message, and / or as different messages (e.g., audio, chat, IM, text, email, etc.) to multiple SME client devices 112. Although the conference server 116 may receive responses to the query in different formats (e.g., audio or text), the conference server 116 may determine to provide the response to the query in the same format as it was raised. When the query is raised in voice form (e.g., via an audio channel of an audio / video bridge service 124), the AI / ML engine 140 may process the received response to the query to provide the response to the conference via the audio channel of the audio / video bridge service 124 as a synthesized voice response. Additionally or alternatively, when the query is posed as text input (e.g., via a chat channel of the instant messaging service 128), the AI / ML engine 140 may process the received response to the query to provide the response to the conference via the chat channel of the instant messaging service 128 as text input (e.g., fourth chat communication 332D, etc.). In some embodiments, regardless of the format of the query in the conference and / or the format of the response to the query received by the conference server 116, the conference server 116 may provide the response to the query in a text format.

[0099] In some embodiments, the AI / ML engine 140 may update the responses in the response database 220 and / or the AI ​​robot query response database 224, and / or train one or more of the recommendation engine 216, the query engine 228, and the response generator 236, based on the received responses to the query, at step S407. Such updating and / or training may be performed at least in part by the learning / training module 214 of the AI / ML engine 140. The training of the AI / ML engine 140 (based on the received responses to the query, etc.) may allow the recommendation engine 216 to provide better (e.g., more accurate) suggested responses to the query to the SME 114 in future messages.

[0100] like Figure 4 As shown, in step S408, the response to the query is provided to the conference by the conference server 116. Providing the response to the query may include causing the AI ​​robot 240 to present the response to the query to multiple connected conference client devices 108 on behalf of (one or more) subject matter experts 114 without requiring the subject matter experts to be included in the conference. Figure 4In the embodiment of the present invention, there is no communication between the conference client device 108 and the SME client device 112, and vice versa, without processing and analysis by the conference server 116. Among other things, these restricted communication flows allow conference participants to continue the conference while the conference server 116 receives queries, obtains responses, and presents the responses to the conference without ever including the SME in the conference. The benefits of separating the SME 114 from the conference include, but are by no means limited to: enhanced security associated with the conference (e.g., by ensuring that only necessary and / or appropriately privileged participants are able to connect to the conference, etc.), efficient use of the SME 114 (e.g., by only using the SME 114 when necessary by requesting a response from the SME when a query is raised), and efficient use of time in the conference (e.g., by allowing queries to be automatically raised and answered without delays associated with participants attempting to obtain responses during the conference).

[0101] In some embodiments, after providing a response to the query, conference server 116 may request feedback from one or more participants of the conference about the accuracy of the response to the query. The feedback request may be sent as a message from conference server 116 and / or some other component in communication system 100 (step S409).

[0102] Participants may provide feedback in the form of messages sent from respective conference client devices 108 to conference server 116 (step S410). Upon receiving the messages, based on the feedback, AI / ML engine 140 may update responses in response database 220 and / or AI robot query response database 224, and / or train one or more of recommendation engine 216, query engine 228, and response generator 236 (step S411). Such updating and / or training may be performed at least in part by analyzing the feedback to determine whether a response to a previously provided query was accurate, inaccurate, off-topic, provided promptly, provided with a significant delay, acceptable, unacceptable, resulting in fewer subsequent queries, resulting in a greater number of subsequent queries, and the like. Training of AI / ML engine 140 based on feedback may allow future SME selections (e.g., consideration as consultation candidates) to provide better and / or more rapid responses. Additionally or alternatively, training of AI / ML engine 140 (based on feedback, etc.) may allow recommendation engine 216 to provide better (e.g., more accurate) suggested responses to queries to SME 114.

[0103] Figure 4 The communication process may be repeated each time a query is made by at least one participant in the conference.

[0104] refer to Figure 5, a block diagram depicting an SME data structure 500 will be described according to at least some embodiments of the present disclosure. The SME data structure 500 may include several fields that can be used in the various communication processes, methods, and processes outlined herein. For example, it is expected that the SME data structure 500 shown may be associated with determining candidate SMEs for consideration when consulting for an instant query assistance method in a meeting performed by a conference server 116. Specifically, the depicted SME data structure 500 includes a plurality of data fields that at least partially assist in the process of determining candidate SMEs for selection when requesting a response to a query raised in a meeting. Examples of such data fields include, but are not limited to, an SME identifier field 504, an availability status field 508, a skill information field 512, a rating information field 516, a communication channel field 520, a consultation history field 524, and more 528.

[0105] The SME identifier field 504 may include data for identifying or describing a particular SME and / or SME client device 112 that is or was part of the communication system 100. This identification may be a name, a phrase, a word, a symbol, a number, a character, and / or a combination of these. In some embodiments, the identification in the SME identifier field 504 may correspond to a particular device identification, a media access control ("MAC") address, an IP address, a hardware identification, etc., and / or a combination of these associated with the SME client device 112 of the SME. In some embodiments, the SME identifier field 504 may be used to sort, rank, distinguish, or one or more of the SME client devices 112A-N of the SME 114.

[0106] The availability status field 508 may include data for identifying the availability of the SME for a given time period. The availability status field 508 may include current availability and / or availability at one or more times. The information stored in the availability status field 508 may indicate that the SME is available, unavailable, busy, or away from the SME client device 112, and / or a combination of these. The AI / ML engine 140 may determine to include or exclude the SME as a candidate for consultation consideration based on the information in the availability status field 508. In some embodiments, the information in the availability status field 508 may be based on IM presence, communication session presence, calendar availability, user (e.g., SME) settings, and the like. In one embodiment, the availability information in the availability status field 508 may be determined in response to the conference server 116 requesting the availability status of the SME client device 112.

[0107] The skill information field 512 may include one or more bits or bit values ​​that identify any skills and / or attributes associated with the SMEs in the SME group 114. In some embodiments, the conference server 116 or various components thereof (e.g., the AI ​​robot service 120, etc.) may utilize the information contained in the skill information field 512 to match the SME with the request for a response to the query. For example, at least one of the skills stored in the skill information field 512 may be used by the AI ​​robot service 120 to determine a candidate SME that should receive a message requesting a response to the query. The skill information field 512 may include information defining the type of skills and / or the type of attributes associated with a particular SME. The type of attribute may include, but is by no means limited to, a language attribute (e.g., English, Spanish, etc.), a group / team assignment attribute (e.g., one or more teams or groups in which, with, or for which the SME works, such as a technical support team, etc.), an area of ​​expertise (e.g., performance metrics, statistics, quality, etc.), and an SME rating (e.g., expert, expert-mentor, expert-group-leader, etc.). The AI / ML engine 140 may, for example, determine to select one or more candidate SMEs that may be selected for consultation while the meeting is ongoing based on at least one of the subject of the meeting, the attendees in the meeting, and / or the content of the queries raised in the meeting. For example, the AI / ML engine 140 may determine, based on this information, that the SMEs selected or considered for consultation have the following required skills or attributes: "Technical Support Team", and "Performance Statistics". The AI / ML engine 140 may also prefer SMEs that also have the following attributes: "Spanish" and "Expert Group Leader". In any case, in response to determining a matching SME having the required and / or preferred attributes, the conference server 116 may send a message to the matching SMEs indicating that they may be consulted by the AI ​​robot 240 during the meeting.

[0108] The rating information field 516 can be used to store data about the rating of a specific SME. For example, the rating information field 516 may include, but is not limited to, previous query response performance, response speed to past queries, response accuracy to past queries, peer ratings, supervisor ratings, feedback ratings, overall rating values, combinations of these, and the like. The overall rating value can combine one or more of the other ratings to define the status of the SME in the query / response interaction. For example, a highly rated SME may have a "gold" or "platinum" rating value, while a lower rated SME may have a "silver" or "bronze" rating value. In one embodiment, a "platinum" rated SME may provide a prompt response (e.g., in less than 2 minutes, etc.), and the average accuracy of the response quality is greater than a predetermined accuracy threshold (e.g., the accuracy of the response based on participant feedback, etc. is greater than 95%). In one embodiment, a "platinum" rated SME may provide a prompt response (e.g., in less than 1 minute, etc.), and the average accuracy of the response quality is greater than a predetermined accuracy threshold (e.g., the accuracy of the response based on participant feedback, etc. is greater than 95%). A "gold" rated SME may provide relatively quick responses (e.g., responding in less than 2 minutes, etc.), and the average accuracy of the response quality is greater than a different predetermined accuracy threshold (e.g., the accuracy of the response based on participant feedback, etc. is greater than 85%). A "silver" rated SME may provide slow responses (e.g., responding in more than 5 minutes, etc.), and the average accuracy of the response quality is very high (e.g., the accuracy of the response is greater than 98%). However, in this case, the SME may be rated lower than other SMEs because of the slow time to respond to queries compared to other SMEs. It will be appreciated that an SME with a "platinum" or "gold" rating value may be selected and / or considered for consultation by the AI / ML engine 140 before other lower rated SMEs.

[0109] Depending on the importance of the response to the query, the rating of the SME may be given different weight. For example, when the query requires a highly accurate response, and the timeliness of the response is not important, the AI / ML engine 140 may select an SME with higher accuracy in the response, regardless of the response time. This need for accuracy may be expressed in the content of the query. For example, a participant may provide "We need this number to be as close to correct as possible" and / or "It doesn't matter how long it takes, we just need to get it right." In this case, the AI / ML engine 140 may determine to select an SME with a higher accuracy rating. In some embodiments, an SME may have a rating value of "Platinum" for response quality and accuracy, but may have a rating value of "Bronze" for timeliness of response, or vice versa. Depending on the content of the query, the AI / ML engine 140 may select an SME as a candidate for responding to the query that has the highest rating for a specific requirement, and / or selects the highest average rating for several requirements.

[0110] The communication channel field 520 may be used to store data about available communication channels associated with a particular SME. This data may include whether the SME identified in the SME identifier field 504 can receive audio communications (e.g., via an audio channel, etc.), text communications (e.g., via a chat channel, etc.), and / or combinations thereof. In some embodiments, the information in the communication channel field 520 may define the best accessible, or most reliable, communication channel for the SME. For example, an SME may not always be available via an audio communication channel, but may reliably respond to text communications sent via a chat communication channel. In this case, the chat communication channel will be identified in the communication channel field 520 as the most reliable communication channel. The communication channel field 520 may indicate one or more of a preferred communication channel, a most reliable communication channel, a restricted or unavailable communication channel, and the like.

[0111] The consultation history field 524 may be used to store data about past query / response interactions and other consultation history between the SME and the AI / ML engine 140. This information may include, but is in no way limited to, the accuracy of past responses to queries submitted by the SME (e.g., based on feedback, evaluations, number of follow-up or clarification queries, etc.), the promptness of responses to past queries (e.g., the time between the time the AI / ML engine 140 sent a message to the SME requesting a response to the query and the time the SME provided the response to the query, etc.), and the availability of the SME during the duration of the meeting (e.g., whether the SME agreed to be available but then failed to respond to the query, delayed responding to the query, and / or changed availability from "free" to "busy" during the duration of the session, etc.). In some embodiments, the consultation history field 524 may include identification of past meetings in which the AI / ML engine 140 has consulted the SME, the number of past meetings in which the AI / ML engine 140 has consulted the SME, the agenda and / or topic of meetings in which the AI / ML engine 140 has consulted the SME, and / or the like. The information stored in the consultation history field 524 , like the information stored in any and / or all fields of the SME data structure 500 , may be used by the AI / ML engine 140 in considering and / or selecting SMEs or SME groups 114 to consult with inquiries made during a particular meeting.

[0112] Figure 6 A block diagram depicting a query data structure 600 according to at least some embodiments of the present disclosure is shown. The query data structure 600 may include several fields that may be used in various communication flows, methods, and processes outlined herein. The query data structure 600 may be used by the AI / ML engine 140 to determine suggested responses to queries raised in a meeting. Additionally or alternatively, the query data structure 600 may be used in conjunction with the SME data structure 500 to determine candidate SMEs for consideration in consultation of an in-meeting instant query assistance method performed by the conference server 116. Figure 6 The query data structure 600 depicted in FIG. 6 includes a plurality of data fields that allow the AI / ML engine 140 to analyze the query, determine a suggested response to the query (e.g., for forwarding or sending to an SME), and / or select an SME or group of SMEs 114 to consult with regarding the query made during a particular meeting. Examples of these data fields include, but are not limited to, a query identifier field 604, a communication channel field 608, an initiator identification field 612, a keyword field 616, and more 620.

[0113] The query identifier field 604 may be used to store data identifying queries raised by participants in the meeting. The identifier may be a query name, a phrase, a word, a symbol, a number, a character, and / or a combination of these. In some embodiments, the identifier in the query identifier field 604 may correspond to the time (e.g., a timestamp, etc.) when the query was raised in the meeting. In one embodiment, the information in the query identifier field 604 may define the time when the query was made based on a sequence identifier. For example, the information may identify the first query made in the meeting as "Q1", and the second query made in the meeting as "Q2", and so on and so forth. In some embodiments, the query identifier field 604 may be used to sort, organize, and / or distinguish one or more of queries made by participants during the meeting.

[0114] The communication channel field 608 may be used to store data about the particular communication channel used to ask the query. This data may include whether the query originated by voice (e.g., as part of an audio communication channel of an audio / video bridge service 124, etc.), text (e.g., as part of a chat communication channel of an instant messaging service 128, etc.), and / or a combination of these. As described herein, the AI / ML engine 140 may determine to provide a response to the query in the form in which the query was originally asked (e.g., voice or text). Additionally or alternatively, identifying the communication channel used to ask the query may help the conference server 116 route the query through the various components of the AI ​​bot service 120.

[0115] The initiator identification field 612 may be used to store data identifying participants and / or conference client devices 108A-N that have raised queries during a meeting. The initiator identification field 612 may include a participant name, a conference client device 108 name, or a unique identifier thereof. This identifier may be a name, a phrase, a word, a symbol, a number, a character, and / or a combination of these. In some embodiments, the identifier in the initiator identification field 612 may correspond to a MAC address, an IP address, a hardware identifier, and / or a combination of these associated with the conference client device 108 of the participant in the meeting. The information in the initiator identification field 612 may be used by the AI / ML engine 140 to determine the frequency with which participants raise queries relative to each other, the types of queries raised by participants, the patterns of queries raised by participants, and the like.

[0116] The keyword field 616 may be used to store data about keywords used in queries raised in the meeting. The keywords stored in the keyword field 616 may be extracted by one or more of the natural language processing unit 144 and / or the speech recognition engine 148. The extracted keywords may include any spoken or written content in a voice query or a chat query, respectively. This content may be used by the AI / ML engine 140 to identify the query subject, determine the candidate SME to be consulted, and / or determine other details of the query. In some embodiments, the AI / ML engine 140 may determine whether past queries were made with the same, similar, or substantially the same keywords and / or content based on the information in the keyword field 616. In one embodiment, the AI / ML engine 140 may use this information to determine the suggested response to the query that the AI / ML engine 140 provides to the selected SME for consideration.

[0117] Reference now Fig. 7A , a flowchart depicting a method 700A for determining an SME to serve as a query advisor is shown according to at least some embodiments of the present disclosure. The method 700A may be executed as a set of computer executable instructions executed by a computer system (e.g., conference server 116, etc.) and encoded or stored on a computer readable medium (e.g., memory 212, etc.). Figure 1-Figure 6 The described systems, components, modules, applications, software, data structures, user interfaces, etc. are used to illustrate method 700A.

[0118] In some embodiments, method 700A may be performed by the AI / ML engine 140 before the start time of the meeting and / or during the meeting. Method 700A begins at step 704 and then identifies the participants of the meeting (step 708). In some embodiments, the participants of the meeting may be determined by referring to the meeting scheduling service 118 to determine the identification of a specific conference client device 108 connected to the meeting via the audio / video bridge service 124 and / or the instant messaging service 128. Each participant may be associated with a unique identifier, such as a name, a device identification, and / or a combination of these. In some embodiments, the identification of the participants in the meeting may correspond to the information stored in the initiator identification field 612 of the query data structure 600.

[0119] The method 700A may continue by identifying potential topics for the SME consultation (step 712). These potential topics may be determined based on the agenda, the identified topic(s), the meeting title, the meeting theme, the content of the meeting invitation, the titles and / or roles of the participants involved in the meeting, and the like. In one embodiment, the method 700A may determine that when a group of participants are part of a meeting, the group of participants (based on historical meeting information stored in the storage device 132, etc.) typically discusses one or more topics. For example, when group leaders of a company participate in meetings, they may routinely discuss topics such as group performance, profitability, personnel issues, and / or marketing efforts. These routine discussion topics may be recorded or stored in a memory (e.g., storage device 132, etc.) as meeting notes, topics associated with past queries, past agendas, and the like. Continuing with this example, the AI / ML engine 140 may not only identify these topics as potential discussion topics, but may also identify these topics as being associated with the group of participants identified in step 708.

[0120] In some embodiments, method 700A may receive a specific SME consultant request submitted from a participant of the meeting (step 716). One aspect of the present disclosure is that the host or other privileged participant of the meeting may, as part of scheduling the meeting, specify the intended SME that the AI ​​machine 240 may need to consult during the meeting. In one embodiment, the participant may enter the SME information and / or select the intended SME from several options presented when scheduling the meeting.

[0121] Next, method 700A continues to determine candidate SMEs for use as consultants during the meeting based at least in part on the information obtained in steps 708, 712, and / or 716 (step 720). As described above, this determination may be based on machine learning, using training examples from past query / response interactions, past use of the SME in other meetings, and / or other information. In one embodiment, the AI / ML engine 140 may use the identified information about the participants and / or potential topics and compare this information to information associated with the SME stored in one or more SME data structures 500. When the potential topic is determined to match the skills and / or attributes of a particular SME (e.g., stored in the skills information field 512, etc.), the particular SME may be considered a candidate for SME consultation.

[0122] When one or more SMEs are determined to be candidates for consultation, the method 700A then determines the availability of the SME for a period of time during the meeting (step 724). In one embodiment, this determination may be based on IM presence, the listed availability status of the SME, and / or based on interactive pinging the IM. In some embodiments, the AI / ML engine 140 may determine that the candidate SME is not available as a consultant during the time period associated with the meeting. In this case, the AI / ML engine 140 may expand the SME pool to select any group or all of the SMEs.

[0123] Method 700A then sends a notification to the selected available SME, for example, by conference server 116, with information about the meeting (step 728). Although the notification is not a meeting invitation for the SME to participate in the meeting, the notification can inform the SME to remain available during the time of the scheduled meeting. In some embodiments, the notification can inform the SME of potential topics for consultation (e.g., identified in step 712). In one embodiment, the notification sent from conference server 116 may include the identification of some or all conference participants. The notification may include the SME replying and accepting the option of being used as a consultant. In some embodiments, when new queries are raised and / or other meetings are arranged, method 700A can be repeated. Method 700A ends in step 732.

[0124] Figure 7B 1 is a flow chart depicting a method 700B for automatically determining and communicating with (one or more) SMEs according to at least some embodiments of the present disclosure. The method 700B may be executed as a set of computer executable instructions executed by a computer system (e.g., conference server 116, etc.) and encoded or stored on a computer readable medium (e.g., memory 212, etc.). Figure 1-7A The described systems, components, modules, applications, software, data structures, user interfaces, etc. are used to illustrate method 700B.

[0125] In some embodiments, method 700B may be performed by the AI ​​robot service 120 before the start time of the meeting and / or during the meeting. Method 700B begins at step 740 and proceeds by learning (one or more) SMEs and related data (step 744). The AI ​​robot service 120 may learn (one or more) SMEs and related details based on one or more learning and input sources. The learning may be based on initial learning by the AI ​​robot service 120, real-time learning, and / or via an "instant SME consultation" option selected by a host or other privileged participant associated with the meeting.

[0126] The initial learning performed by the AI ​​robot service 120 may be based on data sources at the organization level. For example, a data source may contain the communication address of (one or more) SMEs, their expertise topics / topics associated with skill sets, areas of expertise, and / or current active projects of (one or more) SMEs. The AI ​​robot service 120 may also be trained using any number of previous meeting details, follow-up queries, and responses from (one or more) SMEs.

[0127] Once the initial learning is performed, the AI ​​robot service 120 can begin real-time learning based on information associated with various meetings. In some embodiments, the AI ​​robot service 120 can learn factors about identifying the best SME(s), including but not limited to accuracy of query responses, promptness of query responses, response feedback from participants, response turnaround time, additional skills, expertise on new topics, preferred communication channels, and the like.

[0128] In some embodiments, the host or other privileged participant of a meeting may be provided an option to configure the details of an "Instant SME Consultation" while scheduling the meeting. This option may allow configuration at the organizational level if the host or privileged participant is anticipating certain inquiries and one or more SMEs are known prior to the meeting. In some embodiments, this option may be provided at the time of scheduling the meeting or at any time prior to the meeting reminder time.

[0129] Next, the method 700B proceeds by receiving a query made by a participant in the conference (step 748). The query may be received when the participant provides audio content (e.g., speech, etc.) through an audio communication channel and / or when the participant provides text content (e.g., chat, etc.) through a chat communication channel, as described herein. In one embodiment, the participant may address the AI ​​bot 240 that is part of the conference before asking the query. In one embodiment, the AI ​​bot 240 and / or the AI / ML engine 140 may, in conjunction with the natural language processing unit 144 and / or the speech recognition engine 148, determine that a query has been asked based on historical queries asked and training provided to the learning / training module 214.

[0130] Method 700B may continue by analyzing the information of the received query by the AI ​​robot service 120 (step 752). In some embodiments, this analysis may include extracting keywords from the query in conjunction with the natural language processing unit 144 and / or the speech recognition engine 148, and comparing the extracted keywords with past queries, previous responses to the query, and / or a combination of these. In some embodiments, the analysis may determine the subject or context of the query and / or other information, such as the time of the query, the initiator of the query, and / or other information stored in the query data structure 600. Based on the information from the analysis, the AI ​​robot service 120 may identify or discover the best SME(s) to handle the query. This discovery may be performed by the AI ​​robot service 120 in one or more recognition stages. For example, in response to receiving a query, the AI ​​robot service 120 may determine / identify the best SME(s) associated with the topic by analyzing the historical data of the SME(s), such as the accuracy and promptness of the query response, and the availability of the SME(s) during the meeting.

[0131] In some embodiments, the method 700B may further determine by the AI ​​robot 240 whether there is sufficient historical data to determine the best SME(s) for the received query (step 756). When the AI ​​robot 240 determines that there is insufficient historical data available to learn or determine the best SME(s) for the received query, the method 700B further forwards the query to all relevant (e.g., available, active, highly rated, etc.) SME(s) (step 760).

[0132] On the other hand, when the AI ​​robot 240 determines that there is sufficient historical data available to learn or determine the best SME(s) for the received query, method 700B proceeds to determine whether the “Instant SME Consultation” option has been configured or selected (step 764). In one embodiment, the “Instant SME Consultation” details are configured by the host or privileged participant, which specifies one or more SMEs for the intended topic of the meeting. When the “Instant SME Consultation” option has been configured, the AI ​​robot service 120 may proceed to determine whether the selected or identified SME is available and applicable to the query posed (step 772). In the event that the AI ​​robot service 120 determines that the configured SME(s) are not suitable for answering the query (e.g., the topic associated with the instant query is different from the topic for which the SME(s) were initially configured or configured, etc.), then it may be determined that the SME(s) are not suitable, and method 700B proceeds to step 768. However, if the configured SME(s) are suitable for answering the query (e.g., the immediate query is associated with a topic for which the configured SME(s) are selected, etc.), the configured SME(s) may be given a higher priority than other SME(s) (e.g., other discovered SME(s), etc.) to provide a response to the query. In this case, method 700B proceeds by forwarding the query to the identified configured SME(s).

[0133] As described above, when there is no appropriate identified (one or more) SME in the "live SME consultation" option, or when the "live SME consultation" option is not selected, method 700B can then forward the query to the discovered (one or more) SME via the selected communication channel (e.g., preferred communication channel, available communication channel and / or other non-meeting related communication channel) (step 768). Method 700B can end at step 780, or repeat when a new query is received in the meeting at step 748.

[0134] Figure 8 8 is a flowchart depicting a method 800 for automatically communicating with a SME on behalf of a participant in a meeting without including the SME in the meeting according to at least some embodiments of the present disclosure. The method 800 may be executed as a set of computer executable instructions executed by a computer system (e.g., conference server 116, etc.) and encoded or stored on a computer readable medium (e.g., memory 212, etc.). Figure 1-7B Methods, systems, components, modules, applications, software, data structures, user interfaces, etc. are described to illustrate method 800.

[0135] The method 800 begins at step 804 and proceeds to receive a query from a participant in the meeting (step 808). The query may be received when the participant provides audio content (e.g., speech, etc.) through an audio communication channel and / or when the participant provides text content (e.g., chat, etc.) through a chat communication channel, as described herein. In one embodiment, the participant may be required to address the AI ​​robot 240 instantiated as part of the meeting before asking a query. For example, the participant may be required to prefix any query with the phrase "AI robot, query". In some embodiments, this prefix may alert the AI ​​robot service 120, which is automatically monitoring communications for the meeting, that a query is about to follow the phrase. In one embodiment, the AI / ML engine 140 may, in conjunction with the natural language processing unit 144 and / or the speech recognition engine 148, determine that a query has been asked based on historical queries asked and training provided to the learning / training module 214.

[0136] Next, the method 800 proceeds to analyze the received query using the AI / ML engine 140 (step 812). In some embodiments, this analysis may include extracting keywords from the query in conjunction with the natural language processing unit 144 and / or the speech recognition engine 148, and comparing the extracted keywords with past queries (e.g., stored in a memory of the conference server 116, etc.). In some embodiments, the analysis may determine the subject matter of the query and / or other information, such as the time of the query, the initiator of the query, and / or other information stored in the query data structure 600. The AI / ML engine 140 may construct the query data structure 600 for the particular query in response to the analysis of step 812.

[0137] Method 800 may continue by determining at least one SME associated with the subject matter of the query (step 816). The determination of the SME may be based on a combination of Figure 7A-7B One or more of the described methods 700A, 700B and / or based on an SME selected or designated as part of organizing a meeting. The AI / ML engine 140 may determine candidate SMEs based on query topics that match the attributes or skills of the SME, the combination of participants in the meeting, and / or the availability of the SME during the time period in which the meeting will be held.

[0138] The AI / ML engine 140, and more specifically, the recommendation engine 216, may refer to information stored in one or more of the response database 220 and the AI ​​robot query response database 224 to determine whether a suggested response to the query based on historical data and machine learning is available (step 820). In some embodiments, determining whether a suggested response is available may depend on a determined confidence level associated with a potential response to a past query. For example, the structure and content of a query made as part of a meeting may be compared with the structure and content of queries made in the past and stored in one or more of the databases 220, 224. In some embodiments, this comparison may determine the similarity of one query to another. When the AI / ML engine 140 is unable to determine a suggested response to a query, the data stored in the databases 220, 224 may be insufficient and / or the data may be outdated (e.g., data related to time-sensitive queries or questions). Time-sensitive queries may request group status, measured performance, statistics, and / or similar data associated with a specific point in time. In these cases, the method 800 may proceed to request a response to the query without providing a suggested response to the selected SME (step 830).

[0139] When at least one suggested response is determined to be available, method 800 may proceed to determine a suggested response to the query based on a determination of a confidence level associated with the suggested response and the query (step 824). The AI / ML engine 140 may determine that, given the content of the query, past responses to the query include responses that are applicable or potentially applicable to the query raised in the instant meeting. The confidence level may assign a score to one or more responses in the response database 220 and / or the AI ​​bot query response database 224. For example, when considered relative to the instant query, a score between "0" and "100" may be assigned a confidence level to a past query, where "0" is a "no confidence" score and "100" is a "full confidence" score. Continuing with this example, a confidence level of 1 may be excluded from consideration when provided to the SME, while a confidence level of 80 may be included in consideration of whether a suggested response to the query should be sent to the SME. More details regarding the determination of confidence levels will be provided in conjunction with the description of the confidence level. Fig. 9 to describe.

[0140] Method 800 continues to send a message to the determined (one or more) SME, requesting a response to the query (step 828). This message may be sent in a communication between the AI ​​robot service 120 and (one or more) SME, which is outside the meeting or outside the meeting. In other words, (one or more) SME may never be connected to the meeting, or even never be a party in the meeting. In this way, the AI ​​robot service 120 (e.g., via the instantiated AI robot 240) can automatically take action on behalf of the participants in the meeting and / or on behalf of (one or more) SME when publishing a response to the meeting. The message may include some or all of the query raised in the meeting. In some embodiments, the query may include a suggested response to the query. In one embodiment, the suggested response can be sent to the SME only when the confidence level of the suggested response is higher than a predetermined confidence level threshold, and also higher than the confidence level of any other response in the historical response to the query stored in the database related to the query. When a suggested response to a query is sent as part of a message to the SME(s), the message may include one or more selectable options for the SME(s) to accept the suggested response to the query as their response to the query, and / or to decline to accept the suggested response to the query and provide their own response to the query. In any case, once provided (e.g., by accepting the suggested response to the query or by providing a different response to the query), the response becomes the response to the query from the SME(s). In some embodiments, the SME may be restricted from providing any information other than the response to the query.

[0141] When a response to the query is received from one or more SMEs, the method 800 may continue (step 832). In response to receiving the response to the query, the method 800 may further process the response via the AI ​​robot service 120 by converting the response from one format to another format (e.g., audio to text, text to audio, etc.) and / or restating the response to the query in terms different from that received. In one embodiment, this processing may correspond to combining Figure 4 In some embodiments, the AI ​​robot service 120 may receive responses to the query from multiple SMEs. In this example, the AI ​​robot service 120 may determine a common response to the query, select the first response to the query received, and / or select the response to the query from the SME with the highest rating. The rating of the SME may be stored in the rating information field 516 of the SME data structure 500 associated with one or more SMEs, such as in conjunction with Figure 5In one embodiment, the AI ​​robot service 120 may compile a response to a query based on multiple responses received from SMEs. For example, a response to a query may include a first portion from a first SME and a second portion from a second SME, and so on.

[0142] The method 800 then presents the response to the query to the participants of the conference (step 836). In some embodiments, the response to the query may be presented as part of the conference, for example, through an audio channel of the audio / video bridge service 124 and / or through a chat channel of the instant messaging service 128. The presentation of the response to the query may include providing the response in the form of synthesized speech by the conference server 116. In one embodiment, the presentation of the response may take the form of a communication, text message, IM, or other text-based output rendered to a display of at least one of the conference client devices 108A-N.

[0143] Based on the response to the query, the method 800 may then update the responses stored in the response database 220 and / or the AI ​​robot query response database 224 (step 840). Updating the stored response may include adding the response to either or both of the databases 220, 224 along with an identification of the query (e.g., query content, keywords extracted from the query, etc.). In some embodiments, the response to the query may be added to the response database 220 and then used to update the AI ​​robot query response database 224 through further training (e.g., using the response to the query, etc.) via the learning / training module 214. The method 800 may be repeated by receiving another query (at step 808), or end at step 844.

[0144] Fig. 9 1 is a flowchart depicting a method 900 for automatically determining a suggested response to a query for presentation to an SME outside of a meeting according to an embodiment of the present disclosure. The method 900 may be executed as a set of computer executable instructions executed by a computer system (e.g., conference server 116, etc.) and encoded or stored on a computer readable medium (e.g., memory 212, etc.). Figure 1-Figure 8 Methods, systems, components, modules, applications, software, data structures, user interfaces, etc. are described to illustrate method 900.

[0145] Method 900 begins at step 904 and proceeds to determine a confidence level for each of the historical responses to the query relative to the query posed in the meeting (step 908). In some embodiments, this step may be performed in conjunction with Figure 8 Prior to step 824 of method 800 described above. In one embodiment, this step may be combined with Figure 8As described above, based on the content of the query, method 900 may determine a confidence level associated with a set of past responses in response database 220 and / or AI robot query response database 224. These historical responses may include all or a portion of the responses in each database 220, 224. Determining the confidence level may include using machine learning (e.g., via AI / ML engine 140, etc.) and a developed neural network to evaluate and identify matching criteria between the query and historical responses stored in each database 220, 224. More matching criteria between the query and the historical responses represent a higher confidence level and a corresponding value. Additionally or alternatively, fewer matching criteria between the query and the historical responses represent a lower confidence level and a corresponding value.

[0146] Once the confidence level is determined for the set of past responses in the response, the method 900 may proceed to determine the suggested response having the highest confidence level among all historical responses evaluated (step 912). In one embodiment, this determination may include comparing the confidence level values ​​associated with each historical response to each other and sorting the confidence level values ​​from highest to lowest, or vice versa.

[0147] Next, the method 900 proceeds to determine by the AI / ML engine 140 whether the confidence level is above a predetermined confidence level value threshold (step 916). In some embodiments, when the confidence level value of the suggested response determined in step 912 fails to exceed the predetermined confidence level value threshold, the AI / ML engine 140 may not determine that the suggested response exists. For example, the AI / ML engine 140 may determine that any suggested response to the query with a confidence level value below "60" should not be forwarded to the SME as part of the message sent to the SME requesting a response to the query. In this case, the AI / ML engine 140 and the conference server 116 may only send the suggested response to the query when the confidence level value of the suggested response exceeds or is above a predetermined confidence level value threshold (e.g., greater than "60" in the above example). Therefore, when the confidence level value of the suggested response is not above the predetermined confidence level value threshold, the method 900 may proceed to step 830 of the method 800. Conversely, when the confidence level value of the suggested response is above the predetermined confidence level value threshold, the method 900 may proceed to step 824 of the method 800.

[0148] Fig.101 is a flowchart depicting a method 1000 for automatically training the recommendation engine 216 and / or the AI / ML engine 140 using feedback on previously provided query responses according to at least some embodiments of the present disclosure. The method 1000 may be executed as a set of computer executable instructions executed by a computer system (e.g., conference server 116, etc.) and encoded or stored on a computer readable medium (e.g., memory 212, etc.). Figure 1-Figure 9 Methods, systems, components, modules, applications, software, data structures, user interfaces, etc. are described to illustrate method 1000.

[0149] Method 1000 begins at step 1004 and proceeds when a response feedback request is sent to the conference participant regarding a response to a query provided by the AI ​​robot service 120 (step 1008). The conference server 116 may send the response feedback request as part of a message at the end of the conference. For example, the message may correspond to a response request in conjunction with Figure 4 In some embodiments, the participants of the conference may provide feedback independently of receiving a response feedback request. Method 1000 may be combined with Figure 8 800 as described herein. For example, method 100 may precede and / or be a part of step 840 of method 800. In any case, the message including the request for responsive feedback may request feedback regarding the accuracy of the response to the query, the timeliness of the response to the query, whether the response to the query met expectations, exceeded expectations, or fell short of expectations, and / or other issues that the AI / ML engine 140 may use to determine the SME's rating and / or the quality / accuracy of the response to the query provided by the SME.

[0150] Next, method 1000 continues by receiving feedback regarding the response to the query (step 1012). As described above, the feedback may be part of a message, an interactive text-based messaging communication session, an audio call, and / or a bit sequence answering a specific ordered question as part of a response to the feedback request.

[0151] After receiving the feedback, the method 1000 may then analyze the feedback, for example, via the AI / ML engine 140, taking into account the response to the query and other meeting information (step 1016). For example, based on the feedback, the AI / ML engine 140 may update the response in the response database 220, the AI ​​robot query response database 224, and / or train one or more of the recommendation engine 216, the query engine 228, and the response generator 236. When the feedback is positive, for example, identifying that the response to the query is accurate, the AI / ML engine 140 may include the response to the query in the response database 220 and / or the AI ​​robot query response database 224 with a high or positive (e.g., a number greater than zero, etc.) confidence level weighting value. The weighting value may be used to increase the confidence value of the stored response to the query (relative to the query). In other words, when a future query is posed and it substantially or completely matches the query associated with the stored response to the query, the AI / ML engine 140 may determine that the confidence level is higher than the stored response without the weighting value. Additionally or alternatively, when the feedback is negative, e.g., identifying that a response to a query is inaccurate, the AI / ML engine 140 may include the response to the query in the response database 220 and / or the AI ​​bot query response database 224 with a low or negative (e.g., a number less than zero, etc.) confidence level weighting value. The low weighting value may be used to lower the confidence value of the stored response to the query (relative to the query). In this case, when a future query is posed and it substantially or completely matches the query associated with the stored reduced confidence level response to the query, the AI / ML engine 140 may determine that the confidence level is lower than the stored response without the weighting value.

[0152] In some embodiments, the feedback may be used by the AI / ML engine 140 to provide better future SME selections (e.g., for consideration as consulting candidates) and / or to provide better and / or faster responses to queries raised in the meeting. In some embodiments, the timeliness of the response may be used to influence the rating of the SME (e.g., stored in the rating information field 516 of the SME data structure 500). A faster response may correspond to an increased or higher rating for the SME. A slower response may correspond to a decreased or lower rating for the SME. In some embodiments, the method 1000 may end or proceed to Figure 8 Step 840 of method 800 described in .

[0153] Any steps, functions and operations discussed herein may be performed continuously and automatically.

[0154] Exemplary systems and methods of the present disclosure have been described in connection with conferences and communication systems. However, in order to avoid unnecessarily obscuring the present disclosure, several known structures and devices have been omitted from the previous description. This omission should not be interpreted as a limitation on the scope of the disclosure claimed for protection. Specific details are set forth to provide an understanding of the present disclosure. However, it should be understood that the present disclosure can be implemented in a variety of ways beyond the specific details set forth herein. For example, although described in conjunction with a client-server network (e.g., a conference server, a client device, etc.), it should be understood that the components, systems and / or methods described herein can be adopted as part of a peer-to-peer network or other network. It will be understood that in a peer-to-peer network, the various components or systems described in conjunction with the communication system 100 can be part of one or more endpoints or computers participating in the peer-to-peer network.

[0155] In addition, although the exemplary embodiments described herein show various components of the system located in the same location, certain components of the system may be located remotely, in a remote part of a distributed network (e.g., a LAN and / or the Internet), or in a dedicated system. Thus, it should be understood that the components of the system may be combined in one or more devices, such as a server, a communication device, or co-located on a specific node of a distributed network (e.g., an analog and / or digital telecommunications network, a packet switching network, or a circuit switching network). It will be understood from the previous description that for reasons of computing efficiency, the components of the system may be arranged anywhere within the distributed component network of components without affecting the operation of the system. For example, various components may be located in switches such as PBXs and media servers, in gateways, in one or more communication devices, at one or more user premises, or some combination of these. Similarly, one or more functional parts of the system may be distributed between (one or more) telecommunications devices and associated computing devices.

[0156] In addition, it should be understood that the various links connecting the elements can be wired or wireless links, or any combination thereof, or any other known or later developed (one or more) elements capable of providing and / or transmitting data to and from the connected elements. These wired or wireless links can also be secure links and can transmit encrypted information. The transmission medium used as the link can be, for example, any suitable carrier of an electrical signal, including coaxial cable, copper wire and optical fiber, and can take the form of sound waves or light waves, such as those generated during radio wave and infrared data communications.

[0157] While the flow diagrams have been discussed and illustrated in connection with a particular sequence of events, it should be appreciated that changes, additions, and omissions to this sequence may occur without materially affecting the operation of the disclosed embodiments, configurations, and aspects.

[0158] Several variations and modifications of the present disclosure may be used. Some features of the present disclosure may be provided without providing others.

[0159] In another embodiment, the system and method of the present disclosure may be implemented in combination with a special-purpose computer, a programmed microprocessor or microcontroller and (one or more) peripheral integrated circuit components, an ASIC or other integrated circuit, a digital signal processor, a hard-wired electronic or logic circuit such as a discrete component circuit, a programmable logic device or a gate array (such as a PLD, PLA, FPGA, PAL), a special-purpose computer, any equivalent means, etc. Generally, any (one or more) devices or means capable of implementing the methods described herein can be used to implement various aspects of the present disclosure. Exemplary hardware that can be used for the present disclosure includes computers, handheld devices, phones (e.g., cellular, Internet-enabled, digital, analog, hybrid, and others) and other hardware known in the art. Some of these devices include processors (e.g., single or multiple microprocessors), memory, non-volatile storage devices, input devices, and output devices. In addition, alternative software implementations may also be constructed to implement the methods described herein, including but not limited to distributed processing or component / object distributed processing, parallel processing, or virtual machine processing.

[0160] In another embodiment, the disclosed method can be easily implemented in conjunction with software using an object or object-oriented software development environment that provides portable source code that can be used on a variety of computer or workstation platforms. Alternatively, the disclosed system can be implemented in part or in whole in hardware using standard logic circuits or VLSI designs. Whether software or hardware is used to implement a system according to the present disclosure depends on the speed and / or efficiency requirements of the system, the specific functionality, and the specific software or hardware system or microprocessor or microcomputer system utilized.

[0161] In another embodiment, the disclosed method may be partially implemented in software, which may be stored on a storage medium and executed on a programmed general-purpose computer, a special-purpose computer, a microprocessor, etc., which cooperates with a controller and a memory. In these examples, the systems and methods of the present disclosure may be implemented as a program embedded in a personal computer, such as an applet, or CGI scripts, implemented as resources resident on a server or computer workstation, implemented as routines embedded in a dedicated measurement system, system components, etc. The system may also be implemented by physically incorporating the system and / or method into a software and / or hardware system.

[0162] Although the present disclosure describes the components and functions implemented in the embodiments with reference to specific standards and protocols, the present disclosure is not limited to such standards and protocols. Other similar standards and protocols not mentioned herein exist and are considered to be included in the present disclosure. In addition, the standards and protocols mentioned herein and other similar standards and protocols not mentioned herein are periodically replaced by faster or more effective equivalents with substantially the same functions. Such replacement standards and protocols with the same functions are considered to be equivalents included in the present disclosure.

[0163] The present disclosure includes, in various embodiments, configurations and aspects, components, methods, processes, systems and / or devices substantially as depicted and described herein, including various embodiments, subcombinations and subsets thereof. Those skilled in the art will understand how to make and use the systems and methods disclosed herein after understanding the present disclosure. The present disclosure includes, in various embodiments, configurations and aspects, providing devices and processes in the absence of articles not depicted and / or described herein or in its various embodiments, configurations or aspects, including providing in the absence of such articles that may be used in previous devices or processes, for example, to improve performance, achieve ease and / or reduce the cost of implementation.

[0164] The above discussion of the present disclosure is given for the purpose of illustration and description. The foregoing is not intended to limit the present disclosure to one or more forms disclosed herein. For example, in the above "Specific embodiments" section, in order to make the disclosure fluent, various features of the present disclosure are grouped together in one or more embodiments, configurations or aspects. The features of the embodiments, configurations or aspects of the present disclosure may be combined in alternative embodiments, configurations or aspects that are different from those described above. This method of disclosure should not be interpreted as reflecting the intention that the disclosure claimed for protection requires more features than those explicitly stated in each claim. More precisely, as reflected in the attached claims, aspects of the invention exist in non-all features of a single aforementioned disclosed embodiment, configuration or aspect. Thus, the attached claims are hereby incorporated into this "Specific embodiments" section, with each claim independently serving as a separate preferred embodiment of the present disclosure.

[0165] In addition, although the description of the present disclosure includes descriptions of one or more embodiments, configurations, or aspects and certain variations and modifications, other variations, combinations, and modifications are within the scope of the present disclosure, such as within the skill and knowledge of those skilled in the art after understanding the present disclosure. It is intended to obtain rights to the extent permitted including replacement embodiments, configurations, or aspects, including replacement, interchangeable, and / or equivalent structures, functions, scopes, or steps to those claimed, whether or not such replacement, interchangeable, and / or equivalent structures, functions, scopes, or steps are disclosed herein, and no patentable subject matter is intended to be dedicated to the public.

[0166] An embodiment of the present disclosure includes a communication system, comprising: a server, comprising: a network communication interface; a processor coupled to the network communication interface; and a memory coupled to the processor and readable by the processor, wherein instructions are stored, and the instructions, when executed by the processor, cause the processor to: receive a query from a conference client device participating in a conference including multiple connected conference client devices, each of the multiple conference client devices being associated with a respective participant; analyze the query to determine a subject matter expert who is not in the conference and is associated with the subject matter of the query; send a message to the subject matter expert's client device while the conference is ongoing requesting a response to the query from the subject matter expert; receive a response to the query from the subject matter expert's client device; and cause an automated robot to present a response to the query to the multiple connected conference client devices on behalf of the subject matter expert without requiring the subject matter expert to be included in the conference.

[0167] Some aspects of the above communication system include where the instructions further cause the processor to: automatically determine, based on machine learning, the identities of a set of candidate subject matter experts to be considered for consultation using historical data associated with a plurality of subject matter experts and using historical data from past meetings, and where a subject matter expert not in the meeting and associated with the subject matter of the query is selected from the set of candidate subject matter experts. Some aspects of the above communication system include where the automated robot is caused to present responses to the query to the plurality of connected meeting client devices while the meeting is ongoing, without requiring any participant of the meeting to communicate with the subject matter expert and without requiring the subject matter expert's client device to be connected to the meeting. Some aspects of the above communication system include where the query is at least one of a voice-based query made as part of an audio communication in the meeting and a text-based query made as part of a chat communication in the meeting, and where before sending the message to the subject matter expert's client device, the instructions further cause the processor to: analyze the content of the query using a natural language processing unit to determine a suggested response to the query from a plurality of stored responses. Some aspects of the above-mentioned communication system include wherein in response to analyzing the content of the query, the instructions further cause the processor to: determine that there is no suggested response to the query among the plurality of stored responses, and wherein the message does not include the suggested response to the query. Some aspects of the above-mentioned communication system include wherein the message sent to the client device of the subject matter expert includes the suggested response and an option for the subject matter expert to accept the suggested response as a response to the query through input provided by the subject matter expert via the client device of the subject matter expert. Some aspects of the above-mentioned communication system include wherein before receiving the query, the instructions further cause the processor to: receive, as part of scheduling the meeting, an identification of a set of candidate subject matter experts to be considered for consultation while the meeting is in progress. Some aspects of the above-mentioned communication system include wherein before receiving the query, the instructions further cause the processor to: automatically determine, based on information about the meeting, a set of subject matter experts available for consultation while the meeting is in progress. Some aspects of the above-mentioned communication system include that after determining the group of subject matter experts, the instructions also cause the processor to: when configuring the group of candidate subject matter experts, send a consultation reminder message to the group of subject matter experts, wherein the consultation reminder message includes the agenda of the meeting, the topic of the meeting, and the time during which the group of subject matter experts are expected to remain available for consultation during the meeting.Some aspects of the communication system described above include wherein after causing a response to the query to be presented to the plurality of connected conference client devices, the instructions further cause the processor to: receive feedback from at least one of the plurality of conference client devices regarding the accuracy of the response to the query; and analyze the feedback to improve the accuracy of the plurality of stored responses. Some aspects of the communication system described above include wherein the server further includes a machine learning engine that is executable by the processor and enables the processor to: analyze the query to determine a suggested response to the query; in response to the analysis of the query and based on an identification of each participant in the conference, and historical responses to the query stored in the database, determine a confidence level associated with each response in the historical responses to the query stored in the database relative to the query; and when the confidence level of the suggested response in the historical responses to the query stored in the database relative to the query is higher than the confidence level of any other response in the historical responses to the query stored in the database relative to the query, send the suggested response as part of the message sent to the client device of the subject matter expert.

[0168] An embodiment of the present disclosure includes a method comprising: receiving, by a processor via a network communication interface, a query from a conference client device participating in a conference including multiple connected conference client devices, each of the multiple conference client devices being associated with a respective participant; analyzing, by the processor, the query to determine a subject matter expert who is not in the conference and is associated with the subject matter of the query; sending, by the processor via the network communication interface, a message to the subject matter expert's client device while the conference is ongoing, requesting a response to the query from the subject matter expert; receiving, by the processor, a response to the query from the subject matter expert's client device; and causing, by the processor, an automated robot to present the response to the multiple connected conference client devices on behalf of the subject matter expert without requiring the subject matter expert to be included in the conference.

[0169] Some aspects of the above method include wherein the automated robot is caused to present a response to the query to the plurality of connected conference client devices while the conference is ongoing, without requiring any participant of the conference to communicate with the subject matter expert and without requiring the subject matter expert's client device to be connected to the conference. Some aspects of the above method include wherein the query is at least one of a voice-based query made as part of an audio communication in the conference and a text-based query made as part of a chat communication in the conference, and wherein prior to sending the message to the subject matter expert's client device, the method further includes: analyzing, by the processor, the content of the query using a natural language processing unit to determine a suggested response to the query from a plurality of stored responses. Some aspects of the above method include wherein the message sent to the subject matter expert's client device includes the suggested response and an option for the subject matter expert to accept the suggested response as a response to the query through input provided by the subject matter expert via the subject matter expert's client device. Some aspects of the above method also include: after receiving the query, the processor automatically determines a set of candidate subject matter experts that are available for consultation while the meeting is ongoing based on machine learning using historical data associated with multiple subject matter experts, historical data of past meetings, and information about the meeting; and before receiving the query, the processor sends a consultation reminder message to the set of candidate subject matter experts via the network communication interface when configuring the multiple subject matter experts, the consultation reminder message including the agenda of the meeting, the topic of the meeting, and the time during which the set of candidate subject matter experts are expected to remain available for consultation. Some aspects of the above method include that after causing the response to the query to be presented to the multiple connected conference client devices, the method also includes: receiving feedback from at least one of the multiple conference client devices regarding the accuracy of the response to the query; and the processor analyzing the feedback to improve the accuracy of the multiple stored responses.

[0170] Embodiments of the present disclosure include a server comprising: a processor; and a machine learning engine that can be executed by the processor and enables the processor to: receive a query from a conference client device participating in a conference including multiple connected conference client devices, each of the multiple conference client devices being associated with a respective participant; analyze the query to determine a subject matter expert who is not in the conference and is associated with the subject of the query; analyze the query to determine a suggested response to the query; send a message to the subject matter expert's client device while the conference is ongoing requesting a response to the query from the subject matter expert, the message including a suggested response to the query; receive a response to the query from the subject matter expert's client device, including at least one of accepting the suggested response to the query as a response to the query and rejecting the suggested response to the query and providing an alternative response as a response to the query; and enable an automated robot to present a response to the query to the multiple connected conference client devices on behalf of the subject matter expert without requiring the subject matter expert to be included in the conference.

[0171] Some aspects of the server include wherein the content of the query is analyzed using artificial intelligence enabled by the machine learning engine as part of analyzing the query to determine a suggested response to the query. Some aspects of the server include wherein the server further includes: a speech recognition engine that converts audio communications in the conference including the query made as a voice query into text, and wherein the text is analyzed by a natural language processing unit as part of analyzing the query to determine a suggested response to the query. Some aspects of the server include wherein the machine learning engine further enables the processor to: in response to analyzing the query to determine the suggested response and based on an identification of each participant in the conference and historical responses to the query stored in the database, determine a confidence level associated with each response in the historical responses to the query stored in the database relative to the query; determine whether the confidence level of the suggested response in the historical responses to the query stored in the database relative to the query is above a predetermined confidence level threshold; and send the suggested response as part of the message sent to the client device of the subject matter expert only if the confidence level of the suggested response is above the predetermined confidence level threshold and is higher than the confidence level of any other response in the historical responses to the query stored in the database relative to the query.

[0172] Any one or more of the aspects / embodiments as substantially disclosed herein.

[0173] Any one or more of the aspects / embodiments as substantially disclosed herein may optionally be combined with any one or more other aspects / embodiments as substantially disclosed herein.

[0174] One or more means suitable for carrying out any one or more of the above-mentioned aspects / embodiments as substantially disclosed herein.

[0175] The phrases "at least one", "one or more", "or" and "and / or" are open-ended expressions that are both conjunctive and disjunctive in operation. For example, each of the expressions "at least one of A, B, and C", "at least one of A, B, or C", "one or more of A, B, and C", "one or more of A, B, or C", and "A, B, or C" means A alone, B alone, C alone, A and B together, A and C together, B and C together, or A, B, and C together.

[0176] The term "an" entity refers to one or more of that entity. Therefore, the terms "a", "one or more", and "at least one" are used interchangeably herein. It is also noted that the terms "including", "comprising", and "having" are used interchangeably.

[0177] The term "automatic" and variations thereof as used herein refer to any process or operation that is generally continuous or semi-continuous and is performed without substantial human input when it is performed. However, a process or operation may be automatic even if the performance of the process or operation uses substantial or insubstantial human input if the input is received prior to the performance of the process or operation. Human input is considered substantial if it affects how the process or operation will be performed. Human input that consents to the performance of the process or operation is not considered "substantial."

[0178] Various aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, microcode, etc.), or an embodiment combining software and hardware aspects, all of which may be referred to herein as a "circuit," "module," or "system." Any combination of one or more computer-readable media may be utilized. A computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium.

[0179] The term "computer-readable medium" as used herein refers to any tangible storage and / or transmission medium that participates in providing instructions to a processor for execution. Such a medium can take many forms, including but not limited to non-volatile media, volatile media and transmission media. Non-volatile media, for example, include NVRAM or a magnetic disk or optical disk. Volatile media include dynamic memory, such as main memory. Common forms of computer-readable media, for example, include floppy disks, flexible disks, hard disks, magnetic tapes or any other magnetic media, magneto-optical media, CD-ROMs, any other optical media, punch cards, paper tapes, any other physical media with hole patterns, RAM, PROMs, EPROMs, FLASH-EPROMs, solid-state media like memory cards, any other memory chips or cartridges, carriers as described below, or any other medium that can be read by a computer. The digital file attachments of emails or other independent information archives or archive collections are considered to be distribution media equivalent to tangible storage media. When a computer-readable medium is configured as a database, it is understood that the database can be any type of database, such as relational, hierarchical, object-oriented, etc. Accordingly, the disclosure is considered to include a tangible storage medium or distribution medium and prior art-recognized equivalents and successor media, in which the software implementations of the disclosure are stored.

[0180] A "computer-readable signal" medium may include, for example, a data signal propagated in baseband or as part of a carrier wave, in which a computer-readable program code is embodied. Such propagated signals may take any of a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of these. A computer-readable signal medium may be any computer-readable medium other than a computer-readable storage medium that may convey, propagate, or transmit a program for use by or in conjunction with an instruction execution system, device, or apparatus. The program code contained on the computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.

[0181] The terms "determine," "calculate," "compute," and variations thereof when used herein are used interchangeably and include any type of methodology, process, mathematical operation, or technique.

[0182] It should be understood that the term "means" as used herein should be given the broadest possible interpretation in accordance with 35 U.S.C., Section 112, Paragraph 6. Therefore, claims containing the term "means" should cover all structures, materials, or actions recorded herein and all their equivalents. In addition, the structures, materials, or actions and their equivalents should include all those described in the invention summary, figure descriptions, detailed embodiments, abstract, and claims themselves of the present disclosure.

[0183] Examples of processors described herein may include, but are not limited to, at least one of the following: 800 and 801, with 4G LTE integration and 64-bit computing 610 and 615, with 64-bit architecture A7 processor, M7 motion coprocessor, series, Core TM Series processors, Series processors, Atom TM Series processors, Series processors, i5-4670K and i7-4770K 22nm Haswell, i5-3570K 22nm Ivy Bridge, FX TM Series processors, FX-4300, FX-6300 and FX-8350 32nm Vishera, Kaveri processor, Texas Jacinto C6000 TM Automotive Infotainment Processors, Texas OMAP TM Automotive-grade mobile processors, Cortex TM -M processor, Cortex-A and ARM926EJ-S TM processor, other industry equivalent processor; and may utilize any known or future developed standard, instruction set, library and / or architecture to perform computing functions.

[0184] The methods described or claimed herein may be performed with conventional executable instruction sets that are limited and operate on a fixed set of inputs to provide one or more defined outputs. Alternatively or additionally, the methods described or claimed herein may be performed using AI, machine learning, neural networks, etc. In other words, the system or server is contemplated to include a limited instruction set and / or an artificial intelligence-based model / neural network to perform some or all of the steps described herein.

Claims

1. A communication system, comprising: Servers, including: Network communication interface; a processor coupled to the network communications interface; and A memory coupled to the processor and readable by the processor, wherein instructions are stored, and when the instructions are executed by the processor, the processor: Based on the information about the meeting, identifying a group of subject matter experts available for consultation while the meeting is ongoing; sending a consultation reminder message to the group of subject matter experts, the consultation reminder message including an agenda for the meeting, a subject of the meeting, and a time during which the group of subject matter experts are expected to remain available for consultation; receiving a query from a conference client device participating in the conference including a plurality of connected conference client devices, each conference client device of the plurality of conference client devices being associated with a respective participant; analyzing the query to select a subject matter expert from the set of subject matter experts available for consultation; sending a message to a client device of the subject matter expert requesting a response to the query from the subject matter expert while the conference is ongoing; receiving a response to the query from a client device of the subject matter expert; and The automated robot is caused to present responses to the queries on behalf of the subject matter expert to the multiple connected conference client devices, wherein there is no communication between each conference client device and the subject matter expert's client device without processing and analysis by the automated robot, and these restricted communication processes allow conference participants to continue the meeting while the automated robot receives queries, obtains responses and presents the responses to the conference participants without requiring the subject matter expert to be included in the meeting.

2. The communication system of claim 1, wherein the instructions further cause the processor to: Automatically determine based on machine learning the identities of a set of candidate subject matter experts to be considered for consultation while the meeting is ongoing using historical data associated with a plurality of subject matter experts and using historical data from past meetings, and wherein subject matter experts who are not in the meeting and are associated with the subject of the query are selected from the set of candidate subject matter experts.

3. A communication system as described in claim 1, wherein the automated robot is caused to present responses to the query to the multiple connected conference client devices while the meeting is ongoing, without requiring any participant of the meeting to communicate with the subject matter expert and without connecting the subject matter expert's client device to the meeting.

4. The communication system of claim 3, wherein the query is at least one of a voice-based query made as part of an audio communication in the conference and a text-based query made as part of a chat communication in the conference, and wherein prior to sending the message to the subject matter expert's client device, the instructions further cause the processor to: analyzing the content of the query using a natural language processing unit to determine a suggested response to the query from a plurality of stored responses; and A determination is made that there is no suggested response to the query in the plurality of stored responses, and wherein the message does not include a suggested response to the query.

5. The communication system of claim 3, wherein the query is at least one of a voice-based query made as part of an audio communication in the conference and a text-based query made as part of a chat communication in the conference, and wherein prior to sending the message to the subject matter expert's client device, the instructions further cause the processor to: The content of the query is analyzed using a natural language processing unit to determine a suggested response to the query from a plurality of stored responses, and wherein a message sent to the subject matter expert's client device includes the suggested response and an option for the subject matter expert to accept the suggested response as a response to the query via input provided by the subject matter expert via the subject matter expert's client device.

6. The communication system of claim 5, wherein prior to receiving the query, the instructions further cause the processor to: As part of scheduling the meeting, identification of a set of candidate subject matter experts to be considered for consultation while the meeting is ongoing is received.

7. The communication system of claim 5, wherein prior to receiving the query, the instructions further cause the processor to: automatically determining, based on the information about the meeting, a set of subject matter experts available for consultation while the meeting is ongoing; and When configuring the set of candidate subject matter experts, a consultation reminder message is sent to the set of subject matter experts, the consultation reminder message including the agenda of the meeting, the subject of the meeting, and the time during which the set of subject matter experts are expected to remain available for consultation.

8. The communication system of claim 1, wherein the server further comprises a machine learning engine executable by the processor and enabling the processor to: analyzing the query to determine a suggested response to the query; Responsive to the analysis of the query and based on an identification of each participant in the conference and the historical responses to the query stored in the database, determining a confidence level associated with each of the historical responses to the query stored in the database relative to the query; and The suggested response is sent as part of the message sent to the client device of the subject matter expert when the confidence level of the suggested response among historical responses to queries stored in the database relative to the query is higher than the confidence level of any other response among historical responses to queries stored in the database relative to the query.

9. A method comprising: determining, by the processor, based on information about the meeting, a set of subject matter experts available for consultation while the meeting is ongoing; sending, by the processor via the network communication interface, a consultation reminder message to the group of subject matter experts, the consultation reminder message including an agenda for the meeting, a subject of the meeting, and a time during which the group of subject matter experts are expected to remain available for consultation; receiving, by the processor via the network communication interface, a query from a conference client device participating in the conference comprising a plurality of connected conference client devices, each conference client device of the plurality of conference client devices being associated with a respective participant; analyzing, by the processor, the query to select a subject matter expert from the set of subject matter experts available for consultation; sending, by the processor, via the network communication interface, a message to a client device of the subject matter expert while the conference is ongoing, requesting a response to the query from the subject matter expert; receiving, by the processor, a response to the query from a client device of the subject matter expert; and The processor causes the automated robot to present the responses on behalf of the subject matter expert to the multiple connected conference client devices, wherein there is no communication between each conference client device and the subject matter expert's client device without processing and analysis by the automated robot, and these restricted communication processes allow conference participants to continue the meeting while the automated robot receives queries, obtains responses and presents the responses to the conference participants without requiring the subject matter expert to be included in the meeting.

10. A server, comprising: processor; as well as a machine learning engine executable by the processor and enabling the processor to: Based on the information about the meeting, identifying a group of subject matter experts available for consultation while the meeting is ongoing; sending a consultation reminder message to the group of subject matter experts, the consultation reminder message including an agenda for the meeting, a subject of the meeting, and a time during which the group of subject matter experts are expected to remain available for consultation; receiving a query from a conference client device participating in the conference including a plurality of connected conference client devices, each conference client device of the plurality of conference client devices being associated with a respective participant; analyzing the query to select a subject matter expert from the set of subject matter experts available for consultation; analyzing content of the query using artificial intelligence enabled by the machine learning engine to determine a suggested response to the query; sending, while the conference is ongoing, a message to a client device of the subject matter expert requesting a response to the query from the subject matter expert, the message including a suggested response to the query; receiving a response to the query from a client device of the subject matter expert, including at least one of accepting a suggested response to the query as a response to the query and rejecting the suggested response to the query and providing an alternative response as a response to the query; and The automated robot is caused to present responses to the queries on behalf of the subject matter expert to the multiple connected conference client devices, wherein there is no communication between each conference client device and the subject matter expert's client device without processing and analysis by the automated robot, and these restricted communication processes allow conference participants to continue the meeting while the automated robot receives queries, obtains responses and presents the responses to the conference participants without requiring the subject matter expert to be included in the meeting.

Citation Information

Patent Citations

  • Dynamic problem statement with conflict resolution

    US20170076205A1