MEETING EXPERIENCE MANAGEMENT

Provided is a method that includes receiving one or more current network parameters associated with at least one participant of a plurality of participants in a meeting. The method further includes predicting one or more features of the meeting to be enabled and/or disabled for the at least one participant based on the one or more current network parameters and a machine learning (ML) model associated with the at least one participant, wherein the ML model is trained based on the one or more previous network parameters, associated with the at least one participant, received during a previous meeting attended by the at least one participant. The method further includes modifying a user interface of the meeting being presented to the at least one participant based on the one or more predicted features of the meeting, wherein the UI enables participation of the at least one participant in the meeting.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
CROSS-REFERENCE TO RELATED APPLICATIONS/INCORPORATION BY REFERENCE

This Application makes reference to, claims priority to, and claims benefit from U.S. Provisional Application Ser. No. 63/028,123, which was filed on May 21, 2020.

The above referenced Application is hereby incorporated herein by reference in its entirety.

TECHNICAL FIELD

The presently disclosed embodiments are related, in general, to a meeting. More particularly, the presently disclosed embodiments are related to meeting experience management during the meeting.

BACKGROUND

Meetings, conducted over a communication network, involve a plurality of participants joining the meeting through computing devices connected to the communication network. In some examples, the plurality of participants of the meeting may generate meeting data during a course of the meeting. Some examples of the meeting data may include, but not limited to, audio content which may include a participant's voice/audio, video content which may include participant's video and/or other videos, meeting notes input by the plurality of participants, presentation content, and/or the like. In some examples, the plurality of participants may access the meeting data through the respective computing devices. Further, for seamless reception of the meeting data on a computing device is dependent on one or more network parameters associated with the communication network to which the computing device is connected. The one or more network parameters may include, but are not limited to, a network bandwidth, a platform through which the computing device is connected to the communication network, an audio bitrate, an audio opinion score, a video bitrate, a video opinion score, a location of the computing device, a time of the call, and/or the like.

Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of described systems with some aspects of the present disclosure, as set forth in the remainder of the present application and with reference to the drawings.

SUMMARY

A recommendation unit for generating meeting recommendations is provided substantially as shown in, and/or described in connection with, at least one of the figures, as set forth more completely in the claims.

These and other features and advantages of the present disclosure may be appreciated from a review of the following detailed description of the present disclosure, along with the accompanying figures in which like reference numerals refer to like parts throughout.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram that illustrates a system environment for training a ML model, in accordance with an embodiment of the disclosure;

FIG. 2 is a block diagram of a central server, in accordance with an embodiment of the disclosure;

FIG. 3 is a diagram that illustrates an exemplary scenario of predicting the one or more features of the meeting, in accordance with an embodiment of the disclosure;

FIG. 4 is a flowchart illustrating a method for training the ML model, in accordance with an embodiment of the disclosure; and

FIG. 5 is a flowchart illustrating a method for predicting one or more features of the meeting to be enabled/disabled, in accordance with an embodiment of the disclosure.

DETAILED DESCRIPTION

The illustrated embodiments describe a method that includes receiving one or more current network parameters associated with at least one participant of a plurality of participants in a meeting. The method further includes predicting one or more features of the meeting to be enabled and/or disabled for the at least one participant based on the one or more current network parameters and a machine learning (ML) model associated with the at least one participant. The ML model is trained based on the one or more previous network parameters, associated with the at least one participant, received during a previous meeting attended by the at least one participant. The method further includes modifying a user interface of the meeting being presented to the at least one participant based on the one or more predicted features of the meeting. The UI enables participation of the at least one participant in the meeting.

The various embodiments illustrate a central server comprising a memory device comprising a set of instructions. The central server further includes a processor communicatively coupled to the memory device. The processor is configured to receive one or more current network parameters associated with at least one participant of a plurality of participants in a meeting. The processor is further configured to predict one or more features of the meeting to be enabled and/or disabled for the at least one participant based on the one or more current network parameters and a machine learning (ML) model associated with the at least one participant. The ML model is trained based on the one or more previous network parameters, associated with the at least one participant, received during a previous meeting attended by the at least one participant. The processor is further configured to modify a user interface (UI) of the meeting being presented to the at least one participant based on the one or more predicted features of the meeting. The UI enables participation of the at least one participant in the meeting.

The various embodiments describe a non-transitory computer-readable medium having stored thereon, computer-readable instructions, which when executed by a computer, causes a processor in the computer to execute operations. The operations comprise receiving, by a processor, one or more current network parameters associated with at least one participant of a plurality of participants in a meeting. The operations comprise predicting, by the processor, one or more features of the meeting to be enabled and/or disabled for the at least one participant based on the one or more current network parameters and a machine learning (ML) model associated with the at least one participant. The ML model is trained based on the one or more previous network parameters, associated with the at least one participant, received during a previous meeting attended by the at least one participant. The operations comprise modifying, by the processor, a user interface (UI) of the meeting being presented to the at least one participant based on the one or more predicted features of the meeting. The UI enables participation of the at least one participant in the meeting.

FIG. 1 is a block diagram that illustrates a system environment for generating one or more meeting recommendations, in accordance with an embodiment of the disclosure. Referring to FIG. 1, there is shown a system environment 100, which includes a central server 102, one or more computing devices 104a, 104b, and 104c collectively referenced as computing devices 104, and a communication network 106. The central server 102 and the computing devices 104 may be communicatively coupled with each other through the communication network 106.

The central server 102 may comprise suitable logic, circuitry, interfaces, and/or code that may be configured to create a meeting session through which the computing devices 104 may communicate with each other. For example, the computing devices 104, may share content (referred to as meeting data) amongst each other via the meeting session. For example, the central server 102 may receive the meeting data from each of the computing devices 104. During the meeting, the central server 102 may be configured to monitor one or more network parameters associated with the communication link of each of the computing devices 104. The one or more network parameters may include, but are not limited to, a network bandwidth, a platform through which the computing device is connected to the communication network, an audio bitrate, an audio opinion score, a video bitrate, a video opinion score, a location of the computing device, a time of the call, and/or the like. Further, the central server 102 may be configured to monitor input received from each of the computing devices 104 pertaining to enabling/disabling of one or more features of the meeting. Based on the one or more features of the meeting enabled/disabled and the one or more network parameters, the central server 102 may be configured to train ML model for each of the computing devices 104. The central server 102 may be configured to utilize the ML model for each of the computing devices 104 to predict one or more features of the meeting that are to be enabled/disabled during a future meeting. Examples of the central server 102 may include, but are not limited to, a personal computer, a laptop, a personal digital assistant (PDA), a mobile device, a tablet, a computing device coupled to the computing devices 104 over a local network, an edge computing device, a cloud server, or any other computing device. Notwithstanding, the disclosure may not be so limited and other embodiments may be included without limiting the scope of the disclosure.

The computing devices 104 may comprise suitable logic, circuitry, interfaces, and/or code that may be configured to connect to the meeting session, created by the central server 102. In an exemplary embodiment, the computing devices 104 may be associated with the plurality of participants of the meeting. The plurality of participants may provide one or more inputs during the meeting that may cause the computing devices 104 to generate the meeting data during the meeting. In an exemplary embodiment, the meeting data may correspond to the content shared amongst the computing devices 104 during the meeting. In some examples, the meeting data may comprise, but are not limited to, audio content that is generated by the plurality of participants as the plurality of participants speak during the meeting, video content that may include video feed of the plurality of participants, meeting notes input by the plurality of participants during the meeting, presentation content, screen sharing content, file sharing content and/or any other content shared during the meeting. In some examples, the computing devices 104 may be configured to transmit the meeting data to the central server 102. Examples of the computing devices 104 may include, but are not limited to, a personal computer, a laptop, a personal digital assistant (PDA), a mobile device, a tablet, or any other computing device.

In an embodiment, the communication network 106 may include a communication medium through which each of the computing devices 104 associated with the plurality of participants may communicate with each other and/or with the central server 102. Such a communication may be performed, in accordance with various wired and wireless communication protocols. Examples of such wired and wireless communication protocols include, but are not limited to, Transmission Control Protocol and Internet Protocol (TCP/IP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), ZigBee, EDGE, infrared (IR), IEEE 802.11, 802.16, 2G, 3G, 4G, 5G, 6G cellular communication protocols, and/or Bluetooth (BT) communication protocols. The communication network 106 may include, but is not limited to, the Internet, a cloud network, a Wireless Fidelity (Wi-Fi) network, a Wireless Local Area Network (WLAN), a Local Area Network (LAN), a telephone line (POTS), and/or a Metropolitan Area Network (MAN).

In operation, the central server 102 may receive a request, from a computing device 104a, to generate the meeting session for a meeting. In an exemplary embodiment, the request may include meeting metadata associated with the meeting that is to be scheduled. In an exemplary embodiment, the meeting metadata may include, but not limited to, an agenda of the meeting, one or more topics to be discussed during the meeting, a time duration of the meeting, a schedule of the meeting, meeting notes carried forward from previous meetings, a plurality of participants to attend the meeting, and/or the like. Upon receiving the request, the central server 102 may create the meeting session. In an exemplary embodiment, the meeting session may correspond to a communication session that allows the computing devices 104 to communicate with each other. The meeting session may share unique keys (public and private keys) with the computing devices 104, which allows the computing devices 104 to communicate with each other. In some examples, the unique keys corresponding to the meeting session may ensure that any other computing devices (other than the computing devices 104) are not allowed to join the meeting session. Additionally, or alternatively, the central server 102 may send a notification to the computing devices 104 pertaining to the scheduled meeting. The notification may include the details of the meeting session. For example, the central server 102 may transmit the unique keys and/or the meeting metadata to the computing devices 104.

The computing devices 104 may join the meeting through the meeting session. In an exemplary embodiment, the plurality of participants associated with the computing devices 104 may cause the computing devices 104 to join the meeting session. In an exemplary embodiment, joining the meeting session has been interchangeably referred to as joining the meeting. Thereafter, the plurality of participants associated with the computing devices 104 may cause the computing devices 104 to share content amongst each other. For instance, the plurality of participants may provide the one or more inputs to the computing devices 104 to cause the computing devices 104 to share the content amongst each other. For example, the plurality of participants may speak during the meeting. The computing devices 104 may capture voice of the plurality of participants through one or more microphones to generate audio content. Further, the computing devices 104 may transmit the audio content over the communication network 106 (i.e., meeting session). Additionally, or alternatively, the plurality of participants may share respective video feeds amongst each other by utilizing image capturing device (e.g., camera) associated with the computing devices 104. Additionally, or alternatively, a participant-1 of the plurality of participants may present content saved on the computing device (for example, the computing device 104a) through screen sharing capability. For example, the participant-1 may present content to other participants (of the plurality of participants) through the power point presentation application installed on the computing device 104a. In some examples, the participant-1 may share content through other applications installed on the computing device 104a. For example, the participant-1 may share content through the word processor application installed on the computing device 104a. Additionally, or alternatively, the participant-1 may take meeting notes during the meeting. In an exemplary embodiment, the audio content, the video content, the meeting notes, and/or the screen sharing content (e.g., through applications installed on the computing device 104a) may constitute the meeting data. Therefore, in some examples, the computing device 104a may generate the meeting data during the meeting. Similarly, other computing devices 104b and 104c may also generate the meeting data during the meeting. Additionally, or alternatively, the computing devices 104 may transmit the meeting data to the central server 102 over the meeting session. In an exemplary embodiment, the computing devices 104 may transmit the meeting data in near real time of respective generation of the meeting data. To this end, the computing devices 104 may be configured to transmit the meeting data as and when the computing devices 104 generate the meeting data.

In an exemplary embodiment, the central server 102 may be configured to monitor the one or more network parameters associated with the communication link of each of the computing devices 104. Additionally, or alternatively, the central server 102 may be configured to record the inputs corresponding to enabling/disabling of the one or more features of the meeting. In an exemplary embodiment, the one or more features of the meeting may include, but not limited to, transmission/reception of audio content, transmission/reception of the video content, and/or the like. Additionally or alternatively, the one or more features may include, but are not limited to, modifying a layout of User interface (UI) presented on each of the computing devices 104. In an exemplary embodiment, the central server 102 may be configured to generate training data based on the one or more features of the meeting, and the one or more network parameters.

In an exemplary embodiment, the central server 102 may be further configured to train ML model for each of the computing devices 104 based on the training data. During a future meeting, the central server 102 may be configured to utilize the ML model to predict the one or more features of the meeting that are to be enabled/disabled based on the one or more network parameters recorded during the future meeting. Additionally or alternately, the central server 102 may be configured to transmit a notification to the computing devices 104 pertaining to the one or more features of the meeting to be enabled/disabled.

FIG. 2 is a block diagram of the central server, in accordance with an embodiment of the disclosure. Referring to FIG. 2, there is shown a central server 102 comprises a processor 202, a non-transitory computer readable medium 203, a memory device 204, a transceiver 206, a network monitoring unit 208, a training unit 210, and a meeting experience management unit 212.

The processor 202 may be embodied as one or more microprocessors with accompanying digital signal processor(s), one or more processor(s) without an accompanying digital signal processor, one or more coprocessors, one or more multi-core processors, one or more controllers, processing circuitry, one or more computers, various other processing elements including integrated circuits such as, for example, an application specific integrated circuit (ASIC) or field programmable gate array (FPGA), or some combination thereof.

Accordingly, although illustrated in FIG. 2 as a single controller, in an exemplary embodiment, the processor 202 may include a plurality of processors and signal processing modules. The plurality of processors may be embodied on a single electronic device or may be distributed across a plurality of electronic devices collectively configured to function as the circuitry of the central server 102. The plurality of processors may be in communication with each other and may be collectively configured to perform one or more functionalities of the circuitry of the central server 102, as described herein. In an exemplary embodiment, the processor 202 may be configured to execute instructions stored in the memory device 204 or otherwise accessible to the processor 202. These instructions, when executed by the processor 202, may cause the circuitry of the central server 102 to perform one or more of the functionalities, as described herein.

Whether configured by hardware, firmware/software methods, or by a combination thereof, the processor 202 may include an entity capable of performing operations according to embodiments of the present disclosure while configured accordingly. Thus, for example, when the processor 202 is embodied as an ASIC, FPGA or the like, the processor 202 may include specifically configured hardware for conducting one or more operations described herein. Alternatively, as another example, when the processor 202 is embodied as an executor of instructions, such as may be stored in the memory device 204, the instructions may specifically configure the processor 202 to perform one or more algorithms and operations described herein.

The processor 202 used herein may refer to a programmable microprocessor, microcomputer or multiple processor chip or chips that may be configured by software instructions (applications) to perform a variety of functions, including the functions of the various embodiments described above. In some devices, multiple processors may be provided that may be dedicated to wireless communication functions and one processor may be dedicated to running other applications. Software applications may be stored in the internal memory before they are accessed and loaded into the processors. The processors may include internal memory sufficient to store the application software instructions. In many devices, the internal memory may be a volatile or non-volatile memory, such as flash memory, or a mixture of both. The memory can also be located internal to another computing resource (e.g., enabling computer readable instructions to be downloaded over the Internet or another wired or wireless connection).

The non-transitory computer readable medium 203 may include any tangible or non-transitory storage media or memory media such as electronic, magnetic, or optical media e.g., disk or CD/DVD-ROM coupled to processor 202.

The memory device 204 may include suitable logic, circuitry, and/or interfaces that are adapted to store a set of instructions that is executable by the processor 202 to perform predetermined operations. Some of the commonly known memory implementations include, but are not limited to, a hard disk, random access memory, cache memory, read only memory (ROM), erasable programmable read-only memory (EPROM) and electrically erasable programmable read-only memory (EEPROM), flash memory, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, a compact disc read only memory (CD-ROM), digital versatile disc read only memory (DVD-ROM), an optical disc, circuitry configured to store information, or some combination thereof. In an exemplary embodiment, the memory device 204 may be integrated with the processor 202 on a single chip, without departing from the scope of the disclosure.

The transceiver 206 may correspond to a communication interface that may facilitate transmission and reception of messages and data to and from various devices (e.g., computing devices 104). Examples of the transceiver 206 may include, but are not limited to, an antenna, an Ethernet port, a USB port, a serial port, or any other port that can be adapted to receive and transmit data. The transceiver 206 transmits and receives data and/or messages in accordance with the various communication protocols, such as, Bluetooth®, Infra-Red, I2C, TCP/IP, UDP, and 2G, 3G, 4G or 5G communication protocols.

The network monitoring unit 208 may comprise suitable logic, circuitry, interfaces, and/or code that may configure the central server 102 to determine one or more network parameters associated with each of the computing devices 104. In some examples, the one or more network parameters associated with a computing device (e.g., computing device 104a) may be deterministic of a quality of the communication link through which the computing device (e.g., computing device 104a) is connected to the central server 102. In an example embodiment, the one or more network parameters may include, but are not limited to, a network bandwidth of the communication link, a platform through which the computing device is connected to the communication network, an availability of audio bandwidth, an audio opinion score, an availability of video bandwidth, a video opinion score, a location of the computing device (e.g., the computing device 104a) and/or a time of the call. The network monitoring unit 208 may be implemented using Field Programmable Gate array (FPGA) and/or Application Specific Integrated Circuit (ASIC).

The training unit 210 may comprise suitable logic, circuitry, interfaces, and/or code that may configure the central server 102 to train a machine learning (ML) model for each of the computing devices 104. In an example embodiment, the ML model associated with each of the computing devices 104 may correspond to historical data that comprises the one or more network parameters associated with historical communication links through which the computing device (e.g., computing device 104a) connected to the central server 102 during previous meetings. Additionally or alternatively, the historical data may include information pertaining to one or more features of the UI that were enabled during the previous meetings. As discussed, the one or more features of the UI may include, but are not limited to, enabling/disabling video sharing, enabling/disabling audio, enabling/disabling screen sharing capability, and/or the like. The training unit 210 may be implemented using Field Programmable Gate array (FPGA) and/or Application Specific Integrated Circuit (ASIC).

The meeting experience management unit 212 may comprise suitable logic, circuitry, interfaces, and/or code that may configure the central server 102 to utilize the ML model associated with the computing device (e.g., the computing device 104a) of the computing devices 104 to predict one or more UI features that are to be enabled and/or disabled based on the one or more network parameters associated with the communication link through which the computing device 104a is connected to the central server 102. In one embodiment, the meeting experience management unit 212 may be configured to generate and transmit one or more recommendations, pertaining to enabling/disabling the one or more UI features, to each of the computing devices 104. In another embodiment, the meeting experience management unit 212 may be configured to automatically enable/disable the one or more UI features on each of the computing devices 104. The meeting experience management unit 212 may be implemented using Field Programmable Gate array (FPGA) and/or Application Specific Integrated Circuit (ASIC).

In operation, the processor 202 may receive the request to schedule the meeting from at least one computing device 104a of the computing devices 104. In an exemplary embodiment, the request to schedule the meeting includes meeting metadata. As discussed, the meeting metadata includes the agenda of the meeting, the one or more topics to be discussed during the meeting, the time duration of the meeting, the schedule of the meeting, the meeting notes carried from previous meetings, the plurality of participants to attend the meeting, and/or the like. The following table, Table 1, illustrates an example meeting metadata:

TABLE 1 Example meeting metadata Meeting notes One or more Time Schedule of from previous Agenda topics duration the meeting meetings To discuss 1. Layout 1 hour 15th Nov. 1. UI to design of the 2. Fields to 2020; 9 include feature 1, User be displayed PM to 10 PM feature 2 interface in UI 2. Feature 1 (UI) 3. Current defined as a status of portion depicting project participants 3. Feature 2 depicting chat box

In an exemplary embodiment, based on reception of the request to schedule the meeting, the processor 202 may be configured to create the meeting session. As discussed, the meeting session corresponds to a communication session that allows the computing devices 104 to connect to the central server 102 through the communication link. Further, the meeting session allows the computing devices 104 to communicate amongst each other. For example, over the meeting session, the computing devices 104 may share content (e.g., audio content and/or video content) amongst each other. In an exemplary embodiment, the processor 202 may be configured to transmit a message to each of the computing devices 104 comprising the details of the meeting session. For example, the message may include a link to connect to the meeting session.

At the scheduled time, the plurality of participants may cause the respective computing devices 104 to join the meeting session. For example, the participant may click on the link (received in the message from the central server 102) to cause the computing devices 104 to join the meeting session. Based on the computing devices 104 joining the meeting session, the central server 102 may transmit a User Interface (UI) to each of the computing devices 104. In an exemplary embodiment, the UI may allow the plurality of participants to access one or more features of the meeting. For example, the UI may allow the plurality of participants to share audio content and/or video content. To this end, the UI may provide control to the plurality of participants to enable/disable one or more peripherals coupled to the computing device 104a. For example, UI may allow the plurality of participants to enable/disable an image capturing device and/or an audio capturing device (examples of the one or more peripherals) in the computing devices 104. Additionally, or alternatively, the UI may enable the plurality of participants to share other content. For example, the UI may provide a feature to the plurality of participants that would allow to the plurality of participants to cause the computing devices 104 to share content/applications being displayed on a display device associated with the computing devices 104. For instance, through the UI, the plurality of participants may cause the computing devices 104 to share a power point presentation being displayed on the computing devices 104. Additionally, or alternatively, the UI may present a note feature to the plurality of participants on respective computing devices 104. The notes feature may enable the plurality of participants to input meeting notes or keep track of important points discussed during the meeting. For example, the notes feature of the UI may correspond to a space on the UI in which the plurality of participants may input text for his/her reference. Further, the text input by the plurality of participants may correspond to the meeting notes taken by the plurality of participants during the meeting. Additionally, or alternatively, the computing devices 104 may be configured to transmit the meeting notes to the central server 102. Further, in one embodiment, the central server 102 may be configured to share the meeting notes input by the plurality of participants amongst each of the computing devices 104. In an alternative embodiment, the central server 102 may not share the meeting notes input by the plurality of participants amongst each of the computing devices 104. In such an embodiment, the meeting notes are available locally to a participant who inputs the text corresponding to the meeting notes.

The plurality of participants may utilize the UI to access the one or more features of the meeting to interact and/or share content with amongst each other. Accordingly, each of the computing devices 104 may generate meeting data during the meeting. As discussed, the meeting data may include, but is not limited to, the audio content generated by the plurality of participants as the plurality of participants speak during the meeting, the video content include video feed of the plurality of participants, the meeting notes input by the plurality of participants during the meeting, the presentation content, the screen sharing content, the file sharing content and/or any other content shared during the meeting. To this end, in an exemplary embodiment, the processor 202 may receive the meeting data from each of the computing devices 104 in real time. Further, the computing device 104a may be configured to display the meeting data received from the other computing devices 104 through the UI. For example, the UI may be configured to present the video content received from each of the other computing devices 104. In such an embodiment, the video content received from each of the other computing devices 104 may be presented in a grid layout. In some examples, the grid layout may correspond to a matrix layout. To this end, it may be assumed that the video content is received from 9 other computing devices 104. In such an embodiment, the UI may be configured to present the video content in 3×3 matrix layout. Additionally or alternatively, the processor 202 may be configured to transmit the meeting data to the computing devices 104 over the respective communication link.

During the meeting, the network monitoring unit 208 may be configured to determine the one or more network parameters associated with the communication link associated with each of the computing devices 104. As discussed, the one or more network parameters may include, but are not limited to, a network bandwidth, a platform through which the computing device is connected to the communication network, an availability of audio bandwidth, an audio opinion score, an availability of video bandwidth, a video opinion score, a location of the computing device, a time of the call, and/or the like. In some examples, the network monitoring unit 208 may be configured to utilize known technologies to determine the one or more network parameters.

For example, to determine the location of a computing device (e.g., the computing device 104a), the network monitoring unit 208 may be configured to determine an IP address of the computing device 104. Thereafter, based on the IP address, the network monitoring unit 208 may be configured to determine the location of the computing device 104a. It may be understood by a person having ordinary skill in the art that each IP address is assigned to predetermined locations. Accordingly, the network monitoring unit 208 may be configured to determine the location of the computing device 104a based on the IP address associated with the computing device 104a. Additionally or alternatively, the network monitoring unit 208 may be configured to utilize Global positioning system (GPS) and/or triangulation techniques to determine the location of the computing device 104a.

In another example, the network monitoring unit 208 may be configured to determine the network bandwidth. For example, the network monitoring unit 208 may be configured to determine a latency measure associated with the communication link of the computing device 104a. To this end, the network monitoring unit 208 may be configured to transmit an internet control message protocol (ICMP) message to the computing device 104a to determine the latency associated with the communication link (through which the computing device 104a is coupled to the central server 102). The latency measure of the communication link is indicative of the network bandwidth of the communication link. Additionally or alternatively, the network monitoring unit 208 may be configured to download a predetermined file from the computing device 104a to determine an upload bandwidth associated with the communication link through which the computing device 104a is coupled to the central server 102. For example, the network monitoring unit 208 may be configured to monitor a speed (e.g., in bits/second) at which the predetermined file is being downloaded by the central server 102. The speed at which the central server 102 downloads the predetermined file corresponds to the upload bandwidth of the communication link. Additionally or alternatively, the network monitoring unit 208 may be configured to upload the predetermined file to the computing device 104a to determine a download bandwidth associated with the communication link through which the computing device 104a is coupled to the central server 102. For example, the network monitoring unit 208 may be configured to monitor a speed (e.g., in bits/second) at which the central server 102 received the predetermined file. The speed at which the central server 102 receives the predetermined file corresponds to the download bandwidth of the communication link. In an exemplary embodiment, the upload bandwidth and the download bandwidth associated with the communication link corresponds to the network bandwidth associated with the communication link.

Additionally or alternatively, the network monitoring unit 208 may be configured to determine a bitrate at which the audio content and/or the video content are to be transmitted to the computing device 104a. In one example, the network monitoring unit 208 In one example, the bit rate at which the audio content and/or the video content (portion of the meeting data) is to be transmitted to the computing device 104a, is predetermined. In another example, the network monitoring unit 208 may be configured to determine the bitrate based on the network bandwidth associated with the communication link (through which the computing device 104a is connected to the central server 102). More particularly, the network monitoring unit 208 may be configured to determine the audio bitrate and the video bitrate based on the audio bandwidth and the video bandwidth associated with the communication link, respectively. For example, the network monitoring unit 208 may be configured to determine the audio bitrate and the video bitrate based on a look-up table. Following table, Table 2, illustrates an example look-up table to determine the audio bitrate and the video bitrate:

TABLE 2 Look-up table to determine the audio bitrate and the video bitrate Network Audio Video Bandwidth(megabits/second) Bitrate (bits/sec) Bitrate (bits/sec) 10 Mb/s  96 Kbps  4 Mbps 20 Mb/s 120 Kbps 7.5 Mbps  100 Mb/s  320 Kbps 24 Mbps

In yet another example, the network monitoring unit 208 may be configured to automatically determine the audio bitrate and the video bitrate based on known mathematical relation between the network bandwidth, and the audio bitrate and the video bitrate.


bitrate=2*bandwidth*log 2(M)  (1)

Where,

M: Modulation level (e.g., M=4 for QPSK).
The scope of the disclosure is not limited to determining the bitrate based on aforementioned equations. In an exemplary embodiment, the networking monitoring unit 208 may be configured to utilize another mathematical relation to determine the audio bitrate and the video bitrate.

Additionally or alternatively, the network monitoring unit 208 may be configured to the audio opinion score and the video opinion score. In an exemplary embodiment, the audio opinion score and the video opinion score correspond to a mean opinion score (MOS) that is indicative of a quality of audio and/or video being experience by the participant through the computing device 104a. In some examples, the network monitoring unit 208 may be configured to utilize known protocols defined in the International Telecommunication Union (ITU-T).

During the meeting, the network bandwidth of the communication link may vary because of one or more other network services, other than the meeting, using the network bandwidth. For example, during the meeting, another network device connected to the communication link is streaming video on a video streaming service. Accordingly, the network bandwidth available for the meeting may get reduced. To this end, the experience of the meeting, for the participant, may worsen. For example, the computing device 104a may not be able to receive video content and/or audio content. To this end, the participant may experience choppy video content and/or audio content. Accordingly, to improve the meeting experience, the participant may provide input through the UI to enable/disable one or more features of the meeting. For example, the participant may disable the reception of the video content. In another example, the participant may disable transmission of the video content. Such disabling of reception/transmission of the video content may allow the network bandwidth to be available for seamless reception of the audio content.

The meeting experience management unit 212 may be configured to record the modifications made to the one or more features of the meeting. Based on the inputs provided by the participant to modify the one or more features of the meeting.

Additionally or alternatively, the processor 202 may be configured to receive information pertaining to one or more peripherals attached to the computing device 104a from the computing device 104a. In some examples, the one or more peripherals may correspond to devices through which the participant may transmit/receive the audio content and/or video content. As discussed, examples of the one or more peripherals include, but are not limited to, an audio capturing device, an audio generating device, an image capturing device, and/or the like. In an exemplary embodiment, the information pertaining to the one or more peripherals may include a make of the one or more peripherals coupled to the computing device 104a. Further, the processor 202 may be configured to determine a quality score of the meeting data generated by the one or more peripherals. For example, the processor 202 may be configured to determine a background noise in the audio content generated by the audio capturing device. Accordingly, based on the background noise, the processor 202 may be configured to determine the quality score associated with the audio content generated by the one or more peripherals. In another example, the processor 202 may be configured to determine pixelation in the video content generated by the image capturing device. Accordingly, based on the pixelation, the processor 202 may be configured to determine the quality score associated with the video content generated by the one or more peripherals. In an exemplary embodiment, the meeting experience management unit 212 may be configured to correlate the quality score associated with the meeting data and the information pertaining to the one or more peripherals coupled to the computing device 104a.

In an exemplary embodiment, the training unit 210 may be configured to generate historical data based on the one or more network parameters recorded by the network monitoring unit 208 and the one or more features of the meeting recorded by the meeting experience management unit 212. Additionally or alternatively, the training unit 210 may be configured to include the correlation between the quality score associated with the meeting data and the information pertaining to the one or more peripherals coupled to the computing device 104a. In some examples, the historical data may correspond to training data. To this end, the one or more network parameters, the information pertaining to the one or more peripherals, and the quality score of the meeting data generated by the computing device 104a, may correspond to one or more features of the training data and the one or more features of the meeting corresponds to the one or more labels of the training data. In an exemplary embodiment, the one or more features of training data may correspond to inputs that may be provided to an ML model (trained using the training data), and the one or more labels may correspond to expected output of the ML model. Following table illustrates an example historical data:

TABLE 3 An example of historical data One or more network parameters One or more features of the meeting Location: Delhi Video disabled Time: 8:00PM Screen sharing disabled Network bandwidth: 10 MB/s Audio bitrate: 24 kbps Audio opinion score: 2.5 Video opinion score: 2.5 Location: Delhi None of the features of the Time: 10:00AM meeting disabled Network bandwidth: 10 MB/s Audio bitrate: 24 kbps Audio opinion score: 4.0 Video opinion score: 4.0

Referring to table 3, it is observed that network bandwidth remains constant, however the meeting time changes. Further, at 8:00 PM, the audio opinion score and the video opinion score are less in comparison to the audio opinion score and the video opinion score at 10:00 AM. Accordingly, the participant may have provided the input to disable the screen sharing option and the video content transmission and/or reception for seamless reception of the audio content.

In an exemplary embodiment, the training unit 210 may be configured to train the ML model based on the training data. In some examples, the training unit 210 may be configured to utilize known technologies such as neural network, multi-dimensional Bayes theorem, Gaussian Copula, and/or the like, to train the ML model. In some examples, the scope of the disclosure is not limited to the training unit 210 training the ML model for only the participant associated with the computing device 104a. In an exemplary embodiment, the training unit 210 may be configured to train the ML model for other participants of the meeting, associated with the other computing devices (e.g., 104b and 104c). To this end, the training unit 210 may be configured to train the ML model associated with the other participants using the one or more network parameters associated with the respective communication link through which the respective computing devices 104 connect to the central server 102.

In some examples, the meeting experience management unit 212 may be configured to utilize the ML model in future meetings to predict the one or more features of the meeting that are to be enabled/disabled for seamless reception of the meeting data. For example, during the future meeting, the network monitoring unit 208 may be configured to determine a one or more current network parameters associated with the communication link through which the computing device 104a is coupled to the central server 102. Thereafter, the meeting experience management unit 212 may be configured to utilize the ML model to predict the one or more features of the meeting that are to be enabled/disabled based on the one or more current network parameters. In some examples, the meeting experience management unit 212 may be configured to transmit a notification to the computing device 104a pertaining to the one or more features of the meeting that are to be enabled/disabled. In another embodiment, the meeting experience management unit 212 may be configured to automatically enable/disable the one or more features of the meeting. For example, the meeting experience management unit 212 may be configured to disable the image capturing device of the computing device 104a for disabling the transmission of the video content on the computing device 104a. To this end, the meeting experience management unit 212 may be configured to halt the transmission of the video content to the computing device 104a.

Additionally or alternatively, the meeting experience management unit 212 may be configured to halt transmission of a portion of the video content. For example, the meeting experience management unit 212 may be configured to transmit the video content from the computing device 104b and halt the transmission of the video content from the computing device 104c, to the computing device 104a. Additionally or alternatively, the meeting experience management unit 212 may be configured to modify the UI, itself, based on the one or more features of the meeting predicted using the ML model. For example, the meeting experience management unit 212 may be configured to modify the UI to display video content received from only the computing device 104b. In such an embodiment, the grid layout of the UI is disabled.

In some examples, the scope of the disclosure is not limited to the enabling/disabling the one or more features of the meeting during the meeting. Additionally or alternatively, the meeting experience management unit 212 may be configured to transmit the notification related to the one or more features of the meeting prior to the meeting. For example, the meeting experience management unit 212 may be configured to determine the one or more current network parameters associated with the communication link of the computing device 104a at a predetermined time period prior to a scheduled time of the meeting. Thereafter, the meeting experience management unit 212 may be configured to utilize the ML model to predict the one or more features of the meeting that may have to be enabled/disabled during the meeting for seamless reception of the meeting data (e.g., the audio content). To this end, the meeting experience management unit 212 may be configured to transmit the notification pertaining to enabling/disabling of the one or more features, to the computing device 104a prior to the meeting. For example, the meeting experience management unit 212 may be configured to transmit the notification “Since you are joining from location X, disable the reception of the video content for seamless reception of the audio content.” In another example, the meeting experience management unit 212 may be configured to transmit the notification “Since you are joining from location X at time 8:00 PM, disable the reception of the video content for seamless reception of the audio content.”

FIG. 3 is a diagram illustrating an exemplary scenario of predicting the one or more features of the meeting, in accordance with an embodiment of the disclosure. Referring to FIG. 3, the exemplary scenario 300 include the ML model 302 associated with the participant-1. The participant-1 is using the computing device 104a for joining the meeting. It can be observed that the ML model has been created using historical data 304. The historical data 304 includes the one or more previous network parameters associated with the communication link, previously used to connect to the meeting. For example, the historical data includes the one or more network parameters, are illustrated in table 3.

The exemplary scenario 300 further illustrates that the central server 102 determines the one or more current network parameters 306. The one or more current network parameters 306 may include that the participant-1 is connecting to the meeting from home at 8:00 PM. The meeting experience management unit 212 may be configured to utilize the ML model 302 to predict the one or more features 308 of the meeting based on the one or more current network parameters 306. The one or more features 308 includes disabling the reception of the video content. Accordingly, the meeting experience management unit 212 transmits a notification to the computing device 104a pertaining to disabling the video content (depicted by 310). Alternatively, the meeting experience management unit 212 may modify the UI (depicted by 312) presented to the computing device 104a. For example, the meeting experience management unit 212 may disable grid layout which may cause disabling of the reception of the video content from the other computing devices 104. In yet another embodiment, the meeting experience management unit 212 may enable reception of the video content from a single computing device of the other computing devices 104 (e.g., computing device 104b).

FIG. 4 is a flowchart illustrating a method for training the ML model associated with the participant-1, in accordance with an embodiment of the disclosure. Referring to FIG. 4, at 402, the one or more network parameters are determined. In an exemplary embodiment, the network monitoring unit 208 may be configured to determine the one or more network parameters during the meeting. At 404, inputs to enable/disable the one or more features of the meeting is recorded. In an exemplary embodiment, the processor 202 may be configured to record the input to enable/disable the one or more features of the meeting. At 406, the training data is generated based on the one or more features of the meeting enabled/disabled, and the one or more network parameters associated with the communication link through which the computing device 104a is connected to the central server 102. In an exemplary embodiment, the training unit 210 may be configured to generate the training data. At 408, the ML model associated with the participant-1 is trained. In an exemplary embodiment, the training unit 210 may be configured to train the ML model.

FIG. 5 is a flowchart illustrating a method for predicting the one or more features of the meeting to be enabled/disabled, in accordance with an embodiment of the disclosure. Referring to FIG. 5, at 502, the one or more current network parameters associated with the communication link of the computing device 104a is determined. In an exemplary embodiment, the network monitoring unit 208 may be configured to determine the one or more current network parameters during the meeting. At 504, the one or more features of the meeting are predicted using the ML model, based on the one or more current network parameters. In an exemplary embodiment, the meeting experience management unit 212 may be configured to predict the one or more features of the meeting based on the one or more current network parameters and the ML model. At 506, the notification is generated based on the one or more features of the meeting predicted using the ML model. In an exemplary embodiment, the meeting experience management unit 212 may be configured to generate the notification.

The foregoing method descriptions and the process flow diagrams are provided merely as illustrative examples and are not intended to require or imply that the operations of the various embodiments must be performed in the order presented. As will be appreciated by one of skill in the art, the operations may be performed in one or more different orders without departing from the various embodiments of the disclosure.

The hardware used to implement the various illustrative logics, logical blocks, modules, and circuits described in connection with the aspects disclosed herein may include a general purpose processor, a digital signal processor (DSP), a special-purpose processor such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA), a programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general-purpose processor may be a microprocessor, but, in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. Alternatively, or in addition, some operations or methods may be performed by circuitry that is specific to a given function.

In one or more exemplary embodiments, the functions described herein may be implemented by special-purpose hardware or a combination of hardware programmed by firmware or other software. In implementations relying on firmware or other software, the functions may be performed as a result of execution of one or more instructions stored on one or more non-transitory computer-readable media and/or one or more non-transitory processor-readable media. These instructions may be embodied by one or more processor-executable software modules that reside on the one or more non-transitory computer-readable or processor-readable storage media. Non-transitory computer-readable or processor-readable storage media may in this regard comprise any storage media that may be accessed by a computer or a processor. By way of example but not limitation, such non-transitory computer-readable or processor-readable media may include RAM, ROM, EEPROM, FLASH memory, disk storage, magnetic storage devices, or the like. Disk storage, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray Disc™, or other storage devices that store data magnetically or optically with lasers. Combinations of the above types of media are also included within the scope of the terms non-transitory computer-readable and processor-readable media. Additionally, any combination of instructions stored on the one or more non-transitory processor-readable or computer-readable media may be referred to herein as a computer program product.

Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of teachings presented in the foregoing descriptions and the associated drawings. Although the figures only show certain components of the apparatus and systems described herein, it is understood that various other components may be used in conjunction with the supply management system. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Moreover, the operations in the method described above may not necessarily occur in the order depicted in the accompanying diagrams, and in some cases one or more of the operations depicted may occur substantially simultaneously, or additional operations may be involved. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

Claims

1. A method, comprising:

receiving, by a processor, one or more current network parameters associated with at least one participant of a plurality of participants in a meeting;
predicting, by the processor, one or more features of the meeting to be enabled and/or disabled for the at least one participant based on the one or more current network parameters and a machine learning (ML) model associated with the at least one participant, wherein the ML model is trained based on the one or more previous network parameters, associated with the at least one participant, received during a previous meeting attended by the at least one participant; and
modifying, by the processor, a user interface (UI) of the meeting being presented to the at least one participant based on the one or more predicted features of the meeting, wherein the UI enables participation of the at least one participant in the meeting.

2. The method of claim 1, wherein the one or more current network parameters comprise a network bandwidth, a platform through which the computing device is connected to the communication network, an audio bitrate, an audio opinion score, a video bitrate, a video opinion score, a location of the computing device, and/or a time of the call.

3. The method of claim 1, wherein modifying the user interface comprises enabling or disabling the one or more features of the meeting for the at least one participant.

4. The method of claim 1, further comprising generating, by the processor, a notification based on the one or more current network parameters and the ML model.

5. The method of claim 4, wherein the notification is indicative of enabling or disabling the one or more features of the meeting.

6. The method of claim 1, wherein modifying the user interface comprises modifying a layout of the UI.

7. The method of claim 1, wherein the layout of the UI comprises a grid layout and a single layout.

8. The method of claim 7, wherein the grid layout allows presentation of meeting data from other participants of the meeting.

9. The method of claim 7, wherein the single layout allows presentation of meeting data from one of other participants of the meeting.

10. A central server, comprising:

a memory device comprising a set of instructions; and
a processor communicatively coupled to the memory device, the processor configured to: receive one or more current network parameters associated with at least one participant of a plurality of participants in a meeting; predict one or more features of the meeting to be enabled and/or disabled for the at least one participant based on the one or more current network parameters and a machine learning (ML) model associated with the at least one participant, wherein the ML model is trained based on the one or more previous network parameters, associated with the at least one participant, received during a previous meeting attended by the at least one participant; and modify a user interface (UI) of the meeting being presented to the at least one participant based on the one or more predicted features of the meeting, wherein the UI enables participation of the at least one participant in the meeting.

11. The central server of claim 10, wherein the one or more current network parameters comprise a network bandwidth, a platform through which the computing device is connected to the communication network, an audio bitrate, an audio opinion score, a video bitrate, a video opinion score, a location of the computing device, and/or a time of the call.

12. The central server of claim 10, wherein modifying the user interface comprises enabling or disabling the one or more features of the meeting for the at least one participant.

13. The central server of claim 10, wherein the processor is configured to generate a notification based on the one or more current network parameters and the ML model.

14. The central server of claim 13, wherein the notification is indicative of enabling or disabling the one or more features of the meeting.

15. The central server of claim 10, wherein modifying the user interface comprises modifying a layout of the UI.

16. The central server of claim 10, wherein the layout of the UI comprises a grid layout and a single layout.

17. The central server of claim 16, wherein the grid layout allows presentation of meeting data from other participants of the meeting.

18. The central server of claim 16, wherein the single layout allows presentation of meeting data from one of other participants of the meeting.

19. A non-transitory computer-readable medium having stored thereon, computer-readable instructions, which when executed by a computer, causes a processor in the computer to execute operations, the operations comprising:

receiving, by a processor, one or more current network parameters associated with at least one participant of a plurality of participants in a meeting;
predicting, by the processor, one or more features of the meeting to be enabled and/or disabled for the at least one participant based on the one or more current network parameters and a machine learning (ML) model associated with the at least one participant, wherein the ML model is trained based on the one or more previous network parameters, associated with the at least one participant, received during a previous meeting attended by the at least one participant; and
modifying, by the processor, a user interface (UI) of the meeting being presented to the at least one participant based on the one or more predicted features of the meeting, wherein the UI enables participation of the at least one participant in the meeting.

20. The non-transitory computer-readable medium of claim 19, wherein the one or more current network parameters comprise a network bandwidth, a platform through which the computing device is connected to the communication network, an audio bitrate, an audio opinion score, a video bitrate, a video opinion score, a location of the computing device, and/or a time of the call.

Patent History
Publication number: 20210367984
Type: Application
Filed: May 5, 2021
Publication Date: Nov 25, 2021
Inventors: Harish RAJAMANI (Hyderabad), Nava DAVULURI (Sunnyvale, CA), Krishna YARLAGADDA (Sunnyvale, CA), KiranKumar RAVURI (Hyderabad), Mallikarjuna KAMARTHI (Hyderabad)
Application Number: 17/308,887
Classifications
International Classification: H04L 29/06 (20060101); G06F 3/0484 (20060101);