IP Library Granted Patent US 10,873,668
Granted Patent B1
US 10,873,668 · App. 16/919,784 · Granted Dec 22, 2020

Direct inward dialing pool lease for originating and terminating services in a unified communication platform

Inventors: Aaron Evans (Ottawa, CA); Luis Teixeira (Aveiro, PT); Andres Sanchez Pascual (Murcia, ES)
Assignee: Fuze, Inc.
H04M7/009H04M3/42042H04M3/42059H04M3/42331H04M11/06H04M15/755
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,873,668
App. No.
16/919,784
Granted
Dec 22, 2020
Kind
B1
Abstract

A method for originating and terminating services in a unified communication platform is provided. The method includes receiving, from a local market intermediate carrier, a request for a communication between a subscriber of a public network and an end-user endpoint in a local network, associated with an end-user phone number. The method includes creating a lease for an address anchor in a pool of addresses, receiving, in a proxy server from a carrier gateway server, a communication request from the end-user phone number to the address anchor, and establishing a communication channel to the address anchor. The method includes replacing, in the communication channel, a “from” header with a phone number of the subscriber of the public network, and a “to” header with the end-user phone number. A system and a non-transitory, computer-readable medium storing instructions to perform the above method are also provided.

Claims (30)

1. A computer-implemented method comprising:

receiving, in a proxy server, a request for a communication between an end-user endpoint in a local network and a subscriber of a public network, wherein the end-user endpoint is associated with an end-user phone number;

transmitting, from a proxy server to an anchor service, a request to lease an address anchor from a pool of multiple addresses;

transmitting, from the proxy server to a carrier gateway server, a communication request from the address anchor to the end-user phone number;

requesting, to a local market intermediate carrier, a communication channel between the address anchor and the end-user phone number through the carrier gateway server; and

establishing the communication between the end-user phone number in the local network and the subscriber of the public network, wherein transmitting, from the proxy server to an anchor service, a request to lease an address anchor from a pool of multiple addresses, comprises creating a lease record in a database, the lease record including a date and time of lease, the anchor address, a destination phone number of the subscriber of the public network, the end-user phone number, and a direction of the communication.

2. The computer-implemented method of claim 1 , wherein receiving, in the proxy server, a request for a communication between an end-user phone number in a local network and a subscriber of a public network comprises determining that the local market intermediate carrier is not a client of the proxy server.

3. The computer-implemented method of claim 1 , wherein transmitting, from the proxy server to a carrier gateway server, a communication request from the address anchor to the end-user endpoint, comprises transmitting, from the anchor service to the proxy server, the address anchor as an originating address and the end-user phone number as a terminating address.

4. The computer-implemented method of claim 1 , further comprising releasing the lease for the address anchor when the communication channel is established.

5. The computer-implemented method of claim 1 , further comprising identifying whether the request for a communication is a request for an outbound call when the end-user phone number is a phone number in the pool of multiple addresses.

6. The computer-implemented method of claim 1 , further comprising verifying, with a cleanup service, that a lease that is created is released after a configurable threshold.

7. The computer-implemented method of claim 1 , further comprising monitoring for a fault when a lease is not released after a configurable threshold; and issuing an alert when a number of faults exceeds a pre-selected value.

8. The computer-implemented method of claim 1 , further comprising identifying whether the request for communication is for an inbound communication channel or an outbound communication channel.

9. The computer-implemented method of claim 1 , further comprising selecting the address anchor from the pool of multiple addresses from a nearby market based on a latency and a reliability of the address anchor.

10. A system, comprising:

one or more processors; and

a memory coupled to the one or more processors, the memory including instructions that, when executed by the one or more processors, cause the one or more processors to:

receive, in a proxy server, a request for a communication between an end-user endpoint in a local network and a subscriber of a public network, wherein the end-user endpoint is associated with an end-user phone number;

transmit, from a proxy server to an anchor service, a request to lease an address anchor from a pool of multiple addresses;

transmit, from the proxy server to a carrier gateway server, a communication request from the address anchor to the end-user phone number;

request, to a local market intermediate carrier, a communication channel between the address anchor and the end-user phone number through the carrier gateway server; and

establish the communication between the end-user phone number in the local network and the subscriber of the public network, wherein to transmit, from the proxy server to an anchor service, a request to lease an address anchor from a pool of multiple addresses, the one or more processors execute instructions to create a lease record in a database, the lease record including a date and time of lease, the anchor address, a destination phone number of the subscriber of the public network, the end-user phone number, and a direction of the communication.

11. The system of claim 10 , wherein to receive, in the proxy server, a request for a communication between an end-user phone number in a local network and a subscriber of a public network, the one or more processors execute instructions to determine that the local market intermediate carrier is not a client of the proxy server.

12. The system of claim 10 , wherein to transmit, from the proxy server to a carrier gateway server, a communication request from the address anchor to the end-user endpoint, the one or more processors transmitting, from the anchor service to the proxy server, the address anchor as an originating address and the end-user phone number as a terminating address.

13. The system of claim 10 , wherein the one or more processors further execute instructions to release the lease for the address anchor when the communication channel is established.

14. The system of claim 10 , wherein the one or more processors further execute instructions to identify whether the request for a communication is a request for an outbound call when the end-user phone number is a phone number in the pool of multiple addresses.

15. The system of claim 10 , further comprising a cleanup daemon storing instructions, which cause the one or more processors to verify, with a cleanup service, that a lease that is created is released after a configurable threshold.

16. The system of claim 10 , wherein the one or more processors further execute instructions to monitor for a fault when a lease is not released after a configurable threshold; and to issue an alert when a number of faults exceeds a pre-selected value.

17. The system of claim 10 , wherein the one or more processors further execute instructions to identify whether the request for communication is for an inbound communication channel or an outbound communication channel.

18. The system of claim 10 , wherein the one or more processors further execute instructions to select the address anchor from the pool of multiple addresses from a nearby market based on a latency and a reliability of the address anchor.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2026
From: FUZE, INC.
To: 8X8, INC.
Reel/Frame 073821/0888 →
RELEASE OF SECURITY INTEREST Recorded Aug 5, 2024
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: 8X8, INC.; FUZE, INC.
Reel/Frame 068328/0569 →
SECURITY INTEREST Recorded Aug 5, 2024
From: 8X8, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 068327/0819 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBERS SECTION TO REMOVE APPLICATION NUMBERS 11265423, 11252205, 11240370, 11252276, AND 11297182 PREVIOUSLY RECORDED ON REEL 061085 FRAME 0861. ASSIGNOR(S) HEREBY CONFIRMS THE INTELLECTUAL PROPERTY SECURITY AGREEMENT. Recorded Jan 26, 2024
From: 8X8, INC.; FUZE, INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 066383/0936 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 5, 2022
From: 8X8, INC.; FUZE, INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 061085/0861 →
RELEASE OF SECURITY INTEREST Recorded Jan 19, 2022
From: AB PRIVATE CREDIT INVESTORS LLC
To: FUZE, INC.
Reel/Frame 058768/0103 →
SECURITY INTEREST Recorded Sep 4, 2020
From: FUZE, INC.
To: AB PRIVATE CREDIT INVESTORS LLC, AS COLLATERAL AGENT
Reel/Frame 053694/0861 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2020
From: EVANS, AARON; TEIXEIRA, LUIS; SANCHEZ PASCUAL, ANDRES
To: FUZE, INC.
Reel/Frame 053179/0775 →