IP Library › Granted Patent US 11,785,145
Granted Patent B2
US 11,785,145 · App. 17/446,552 · Granted Oct 10, 2023

Method and system for a multitenancy telephone network

Inventors: Jeff Lawson (San Francisco, CA); John Wolthuis (San Francisco, CA); Evan Cooke (San Francisco, CA)
Assignee: Twilio Inc.
H04M7/0033G06F9/505G06F9/5077G06F9/5083H04L47/125H04L61/2564H04L65/1016H04L67/10H04L67/1008H04M1/2473H04M3/36H04M3/367H04M3/42323H04M3/51H04M3/5158H04M3/523H04M3/5235H04M7/006H04M15/34H04M2201/39H04M2201/40Y02D10/00
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 11,785,145
App. No.
17/446,552
Granted
Oct 10, 2023
Kind
B2
Abstract

A method and system for operating a multitenancy telephony system including receiving a plurality of call requests associated with an application server; selecting a subset of the received call requests using a load balancer; assigning each selected call request to one of a plurality of resources creating, on the assigned resource, a call session for each selected call request; and coordinating the created call sessions resulting from the selected subset of the received call requests associated with the application server.

Claims (43)

1. A method comprising:

receiving, at a resource cluster, a plurality of call requests from a plurality of telephony endpoints and for an application server, the plurality of call requests comprising a first call request from a first telephony device and a second call request from a second telephony device;

selecting a subset of the received call requests, the selected subset including the first call request and the second call request;

assigning, using a load balancer, the first call request to a first resource and the second call request to a second resource;

creating, for the first call request, a first call session on the first resource, the first call session between the application server and the first telephony device;

creating, for the second call request, a second call session on the second resource, the second call session between the application server and the second telephony device; and

coordinating, by the resource cluster, the created first and second call sessions.

2. The method of claim 1 , wherein the coordinating of the created first and second call sessions resulting from the first call request and the second call request comprises hanging up the created first and second call sessions.

3. The method of claim 1 , wherein:

the coordinating of the created first and second call sessions comprises gathering commands from multiple telephone devices and providing the gathered commands to the application server.

4. The method of claim 3 , wherein the gathered commands comprise dual-tone multi-frequency (DTMF) commands.

5. The method of claim 3 , wherein the gathered commands comprise voice commands.

6. The method of claim 1 , wherein the coordinating of the created first and second call sessions comprises bridging audio of the created first and second call sessions.

7. The method of claim 1 , wherein the first resource and the second resource are hardware resources.

8. A system comprising:

one or more processors; and

a memory that stores instructions that, when executed by the one or more processors of a resource cluster, cause the one or more processors to perform operations comprising:

receiving a plurality of call requests from a plurality of telephony endpoints and for an application server, the plurality of call requests comprising a first call request from a first telephony device and a second call request from a second telephony device;

selecting a subset of the received call requests, the selected subset including the first call request and the second call request;

assigning, using a load balancer, the first call request to a first resource and the second call request to a second resource;

creating, for the first call request, a first call session on the first resource, the first call session between the application server and the first telephony device;

creating, for the second call request, a second call session on the second resource, the second call session between the application server and the second telephony device; and

coordinating the created first and second call sessions.

9. The system of claim 8 , wherein the coordinating of the created first and second call sessions resulting from the first call request and the second call request comprises hanging up the created first and second call sessions.

10. The system of claim 8 , wherein:

the coordinating of the created first and second call sessions comprises gathering commands from multiple telephone devices and providing the gathered commands to the application server.

11. The system of claim 10 , wherein the gathered commands comprise dual-tone multi-frequency (DTMF) commands.

12. The system of claim 10 , wherein the gathered commands comprise voice commands.

13. The system of claim 10 , wherein the coordinating of the created first and second call sessions comprises bridging audio of the created first and second call sessions.

14. The system of claim 8 , wherein the first resource and the second resource are hardware resources.

15. A non-transitory machine-readable medium that stores instructions that, when executed by one or more processors of a resource cluster, cause the processors to perform operations comprising:

receiving a plurality of call requests from a plurality of telephony endpoints and for an application server, the plurality of call requests comprising a first call request from a first telephony device and a second call request from a second telephony device;

selecting a subset of the received call requests, the selected subset including the first call request and the second call request;

assigning, using a load balancer, the first call request to a first resource and the second call request to a second resource;

creating, for the first call request, a first call session on the first resource, the first call session between the application server and the first telephony device;

creating, for the second call request, a second call session on the second resource, the second call session between the application server and the second telephony device; and

coordinating the created first and second call sessions.

16. The non-transitory machine-readable medium of claim 15 , wherein the coordinating of the created first and second call sessions resulting from the first call request and the second call request comprises hanging up the created first and second call sessions.

17. The non-transitory machine-readable medium of claim 15 , wherein:

the coordinating of the created first and second call sessions comprises gathering commands from multiple telephone devices and providing the gathered commands to the application server.

18. The non-transitory machine-readable medium of claim 17 , wherein the gathered commands comprise dual-tone multi-frequency (DTMF) commands.

19. The non-transitory machine-readable medium of claim 17 , wherein the gathered commands comprise voice commands.

20. The non-transitory machine-readable medium of claim 15 , wherein the coordinating of the created first and second call sessions comprises bridging audio of the created first and second call sessions.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2021
From: LAWSON, JEFF; WOLTHUIS, JOHN; COOKE, EVAN
To: TWILIO INC.
Reel/Frame 057390/0048 →
Continuity (13)
Continuation 16852130 · Apr 17, 2020
Continuation 16433093 · Jun 6, 2019
Continuation 15861210 · Jan 3, 2018
Continuation 15445645 · Feb 28, 2017
Continuation 15097206 · Apr 12, 2016
Continuation 14626427 · Feb 19, 2015
Continuation 14158281 · Jan 17, 2014
Continuation 13632872 · Oct 1, 2012
Continuation 12716127 · Mar 2, 2010
Provisional Application 61296270 · Jan 19, 2010
Provisional Application 61249493 · Oct 7, 2009
Provisional Application 61156758 · Mar 2, 2009
Related Publication 20220030114A1 · Jan 27, 2022
Cited By (1)
US 12,301,766