IP Library Granted Patent US 10,218,588
Granted Patent B1
US 10,218,588 · App. 14/875,120 · Granted Feb 26, 2019

Systems and methods for multi-stream performance patternization and optimization of virtual meetings

Inventors: Michel Albert Brisebois (Renfrew, CA); Curtis T. Johnstone (Ottawa, CA); Sawan Goyal (Kanata, CA)
Assignee: Quest Software Inc.
H04L43/045G06Q10/1095H04L43/04H04L65/403H04L67/18
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,218,588
App. No.
14/875,120
Granted
Feb 26, 2019
Kind
B1
Abstract

In one embodiment, a method includes identifying virtual meetings previously mediated by one or more communications platforms. The method further includes determining attributes of the virtual meetings. In addition, the method includes collecting time-indexed performance data of individual media streams of the virtual meetings. The method also includes individually correlating the time-indexed performance data to at least a portion of the attributes of the virtual meetings on a per virtual-meeting basis. Further, the method includes selecting one or more virtual-meeting attributes. Also, the method includes extracting multi-stream performance data of those of the individual media streams that have the one or more virtual-meeting attributes. Additionally, the method includes correlating the multi-stream performance data to a time map. The method further includes determining aggregate multi-stream performance. Moreover, the method includes generating a time-based performance pattern.

Claims (102)

1. A method comprising, by a computer system:

receiving a virtual meeting request in relation to a set of input parameters, the input parameters identifying at least one user and one or more communications platforms;

identifying virtual meetings previously mediated by the one or more communications platforms;

determining attributes of the virtual meetings;

collecting time-indexed performance data of individual media streams of the virtual meetings;

individually correlating the time-indexed performance data to at least a portion of the attributes of the virtual meetings on a per virtual-meeting basis;

selecting one or more virtual-meeting attributes in correspondence to at least a portion of the set of input parameters;

extracting, from the collected time-indexed performance data, multi-stream performance data of those of the individual media streams that have the one or more virtual-meeting attributes;

correlating the multi-stream performance data to a time map comprising a plurality of recurring time intervals;

determining aggregate multi-stream performance, in relation to the time map, of those of the individual media streams that have the one or more virtual-meeting attributes;

generating a time-based performance pattern of those of the individual media streams that have the selected one or more virtual-meeting attributes based, at least in part, on the aggregate multi-stream performance;

identifying based, at least in part, on the time-based performance pattern, a suggested meeting time interval, wherein the suggested meeting time interval corresponds to a recurring time interval of the time map that has a comparatively high stream quality;

facilitating scheduling of a virtual meeting on the one or more communications platforms at the suggested meeting time interval; and

executing a virtual meeting on the one or more communications platforms during the suggested meeting time interval.

2. The method of claim 1 , comprising, responsive to the individually correlating, performance profiling at least a portion of the time-indexed performance data.

3. The method of claim 1 , wherein the determining comprises:

determining client devices utilized by meeting participants during the virtual meetings on a per virtual-meeting basis;

identifying live media sessions handled by the client devices during the virtual meetings on a per virtual-meeting basis; and

determining live media streams facilitated by the live media sessions during the virtual meetings on a per virtual-meeting basis.

4. The method of claim 1 , wherein the at least one user comprises a plurality of users.

5. The method of claim 1 , comprising:

receiving a request to generate comparative media-stream quality information of a user;

retrieving a time-based performance pattern of the user;

determining media-stream quality of at least selected recurring time intervals of the time map based, at least in part, on the time-based performance pattern; and

publishing, as the comparative media-stream quality information, information related to the determined media-stream quality of each of the at least selected recurring time intervals.

6. The method of claim 1 , comprising:

receiving a request to evaluate a proposed meeting time interval in relation to a user;

correlating the proposed meeting time interval to at least one recurring time interval of the time map;

retrieving a time-based performance pattern of the user;

computing a media-stream quality of the user for the proposed meeting time interval; and

publishing information related to the media-stream quality to a requestor.

7. The method of claim 1 , comprising:

receiving a request to identify a suggested meeting location in relation to a user;

retrieving a time-based performance pattern of the user;

identifying, from the time-based performance pattern, one or more locations of comparatively high stream quality relative to other locations; and

publishing information related to the one or more locations to a requestor.

8. The method of claim 1 , comprising:

receiving a request to generate comparative location information for a user;

retrieving a time-based performance pattern of the user;

determining, from the time-based performance pattern, a stream quality at a plurality of locations; and

publishing information related to the determined stream quality at each of the plurality of locations as the comparative location information.

9. The method of claim 1 , comprising:

receiving a request to provide a suggested communication platform for a virtual meeting with a user;

determining a communications platform for the virtual meeting based, at least in part, on an analysis of the time-based performance pattern of the user; and

publishing a result of the determining to a requestor.

10. The method of claim 1 , wherein the individually correlating comprises transforming the time-indexed performance data into a data model that makes the time-indexed performance data accessible by virtual meeting and virtual-meeting attributes.

11. An information handling system comprising a processor and memory, wherein the processor and memory in combination are operable to implement a method comprising:

receiving a virtual meeting request in relation to a set of input parameters, the input parameters identifying at least one user and one or more communications platforms;

identifying virtual meetings previously mediated by the one or more communications platforms;

determining attributes of the virtual meetings;

collecting time-indexed performance data of individual media streams of the virtual meetings;

individually correlating the time-indexed performance data to at least a portion of the attributes of the virtual meetings on a per virtual-meeting basis;

selecting one or more virtual-meeting attributes in correspondence to at least a portion of the set of input parameters;

extracting, from the collected time-indexed performance data, multi-stream performance data of those of the individual media streams that have the one or more virtual-meeting attributes;

correlating the multi-stream performance data to a time map comprising a plurality of recurring time intervals;

determining aggregate multi-stream performance, in relation to the time map, of those of the individual media streams that have the one or more virtual-meeting attributes;

generating a time-based performance pattern of those of the individual media streams that have the selected one or more virtual-meeting attributes based, at least in part, on the aggregate multi-stream performance;

identifying based, at least in part, on the time-based performance pattern, a suggested meeting time interval, wherein the suggested meeting time interval corresponds to a recurring time interval of the time map that has a comparatively high stream quality;

facilitating scheduling of a virtual meeting on the one or more communications platforms at the suggested meeting time interval; and

executing a virtual meeting on the one or more communications platforms during the suggested meeting time interval.

12. The information handling system of claim 11 , the method comprising, responsive to the individually correlating, performance profiling at least a portion of the time-indexed performance data.

13. The information handling system of claim 11 , wherein the determining comprises:

determining client devices utilized by meeting participants during the virtual meetings on a per virtual-meeting basis;

identifying live media sessions handled by the client devices during the virtual meetings on a per virtual-meeting basis; and

determining live media streams facilitated by the live media sessions during the virtual meetings on a per virtual-meeting basis.

14. The information handling system of claim 11 , wherein the at least one user comprises a plurality of users.

15. The information handling system of claim 11 , the method comprising:

receiving a request to generate comparative media-stream quality information of a user;

retrieving a time-based performance pattern of the user;

determining media-stream quality of at least selected recurring time intervals of the time map based, at least in part, on the time-based performance pattern; and

publishing, as the comparative media-stream quality information, information related to the determined media-stream quality of each of the at least selected recurring time intervals.

16. The information handling system of claim 11 , the method comprising:

receiving a request to evaluate a proposed meeting time interval in relation to a user;

correlating the proposed meeting time interval to at least one recurring time interval of the time map;

retrieving a time-based performance pattern of the user;

computing a media-stream quality of the user for the proposed meeting time interval; and

publishing information related to the media-stream quality to a requestor.

17. The information handling system of claim 11 , the method comprising:

receiving a request to identify a suggested meeting location in relation to a user;

retrieving a time-based performance pattern of the user;

identifying, from the time-based performance pattern, one or more locations of comparatively high stream quality relative to other locations; and

publishing information related to the one or more locations to a requestor.

18. The information handling system of claim 11 , the method comprising:

receiving a request to generate comparative location information for a user;

retrieving a time-based performance pattern of the user;

determining, from the time-based performance pattern, a stream quality at a plurality of locations; and

publishing information related to the determined stream quality at each of the plurality of locations as the comparative location information.

19. The information handling system of claim 11 , wherein the individually correlating comprises transforming the time-indexed performance data into a data model that makes the time-indexed performance data accessible by virtual meeting and virtual-meeting attributes.

20. A computer-program product comprising a non-transitory computer-usable medium having computer-readable program code embodied therein, the computer-readable program code adapted to be executed to implement a method comprising:

receiving a virtual meeting request in relation to a set of input parameters, the input parameters identifying at least one user and one or more communications platforms;

identifying virtual meetings previously mediated by the one or more communications platforms;

determining attributes of the virtual meetings;

collecting time-indexed performance data of individual media streams of the virtual meetings;

individually correlating the time-indexed performance data to at least a portion of the attributes of the virtual meetings on a per virtual-meeting basis;

selecting one or more virtual-meeting attributes in correspondence to at least a portion of the set of input parameters;

extracting, from the collected time-indexed performance data, multi-stream performance data of those of the individual media streams that have the one or more virtual-meeting attributes;

correlating the multi-stream performance data to a time map comprising a plurality of recurring time intervals;

determining aggregate multi-stream performance, in relation to the time map, of those of the individual media streams that have the one or more virtual-meeting attributes;

generating a time-based performance pattern of those of the individual media streams that have the selected one or more virtual-meeting attributes based, at least in part, on the aggregate multi-stream performance;

identifying based, at least in part, on the time-based performance pattern, a suggested meeting time interval, wherein the suggested meeting time interval corresponds to a recurring time interval of the time map that has a comparatively high stream quality;

facilitating scheduling of a virtual meeting on the one or more communications platforms at the suggested meeting time interval; and

executing a virtual meeting on the one or more communications platforms during the suggested meeting time interval.

Assignments (26)
RELEASE OF SECURITY INTEREST Recorded Nov 19, 2025
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.
Reel/Frame 073606/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 18, 2025
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.
Reel/Frame 073613/0326 →
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0649 →
SECURITY INTEREST Recorded Jun 8, 2025
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; ERWIN, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 071527/0001 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059105/0479 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 2, 2022
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.; ONE IDENTITY LLC; ONELOGIN, INC.; ONE IDENTITY SOFTWARE INTERNATIONAL DESIGNATED ACTIVITY COMPANY
To: GOLDMAN SACHS BANK USA
Reel/Frame 058945/0778 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 2, 2022
From: QUEST SOFTWARE INC.; ANALYTIX DATA SERVICES INC.; BINARYTREE.COM LLC; ERWIN, INC.; ONE IDENTITY LLC; ONELOGIN, INC.; ONE IDENTITY SOFTWARE INTERNATIONAL DESIGNATED ACTIVITY COMPANY
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058952/0279 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS Recorded Feb 2, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC.
Reel/Frame 059096/0683 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0347 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jun 7, 2018
From: QUEST SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 046327/0486 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS RECORDED AT R/F 040581/0850 Recorded May 22, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 046211/0735 →
CHANGE OF NAME Recorded Dec 6, 2017
From: DELL SOFTWARE INC.
To: QUEST SOFTWARE INC.
Reel/Frame 044719/0565 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED AT REEL: 040587 FRAME: 0624. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 28, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: QUEST SOFTWARE INC. (F/K/A DELL SOFTWARE INC.); AVENTAIL LLC
Reel/Frame 044811/0598 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 10, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040587/0624 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 9, 2016
From: DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040581/0850 →
RELEASE OF SECURITY INTEREST Recorded Oct 31, 2016
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0467 →
RELEASE OF SECURITY INTEREST IN CERTAIN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040039/0642) Recorded Oct 31, 2016
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
Reel/Frame 040521/0016 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS, L.P.; DELL SOFTWARE INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040030/0187 →
RELEASE OF REEL 037160 FRAME 0142 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040027/0812 →
RELEASE OF REEL 037160 FRAME 0239 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040028/0115 →
SECURITY AGREEMENT Recorded Sep 14, 2016
From: AVENTAIL LLC; DELL PRODUCTS L.P.; DELL SOFTWARE INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040039/0642 →
RELEASE OF REEL 037160 FRAME 0171 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040017/0253 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT - TERM LOAN Recorded Nov 25, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; BOOMI, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037160/0239 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT - ABL Recorded Nov 25, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; BOOMI, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 037160/0171 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT - NOTES Recorded Nov 25, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; BOOMI, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 037160/0142 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2015
From: BRISEBOIS, MICHEL ALBERT; JOHNSTONE, CURTIS T.; GOYAL, SAWAN
To: DELL SOFTWARE INC.
Reel/Frame 036864/0041 →
Cited By (2)
US 12,437,267 US 12,556,507