IP Library Granted Patent US 11,044,365
Granted Patent B1
US 11,044,365 · App. 15/443,859 · Granted Jun 22, 2021

Multi-level programming/data sets with decoupling VoIP communications interface

Inventor: Zhishen Liu (San Jose, CA)
Assignee: 8x8, Inc.
H04M3/5141G06F8/311G06F16/951H04M3/5183H04M7/006
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,044,365
App. No.
15/443,859
Granted
Jun 22, 2021
Kind
B1
Abstract

Certain aspects of the disclosure are directed to multi-level programming of a VoIP communications system. According to a specific example, a VoIP server is configured and arranged to identify, in response to received VoIP telephone calls from VoIP endpoint devices, a set of multi-level scripts written in a programming language that includes call flow commands and a message exchange protocol between the call control server and data sources. The VoIP server is further configured to execute the set of multi-level scripts to retrieve data from the data sources and control, in response to the data, call flow for the VoIP calls.

Claims (21)

1. A VoIP call control server operable by a VoIP provider using a VoIP provider database to provide respective data communications services associated with respective client-computer circuitry, the VoIP call control server comprising:

call flow circuitry to receive respective first sets of multi-level scripts having call flow instructions written in a programming language using one level of the first sets of multi-level scripts and being provided from each respective client-computer circuitry over a broadband network and on behalf of a respective client entity, the call flow instructions being indicative of a flow of VoIP calls associated with the respective client-computer circuitry and according to the respective data communications services as associated with the respective client entity;

the VoIP provider database;

computer processor circuitry coupled to call flow circuitry and configured to:

identify, in response to received VoIP calls from VoIP endpoint devices, at least a second set of multi-level scripts having instructions written in a related programming language and using another level of the first set of multi-level scripts, wherein the at least second set of multi-level scripts includes call routing commands for designating a specific set of the respective data communications services for which the received VoIP calls are associated and provided by the VoIP provider; and

execute the first and second sets of multi-level scripts to control, in response to the data, call flow and call routing for the received VoIP calls according to the respective data communications services associated with the received VoIP calls, the call routing commands and the call flow instructions.

2. The VoIP call control server of claim 1 , wherein the VoIP provider database includes client-specific sets of control data specified by the call flow instructions.

3. The VoIP call control server of claim 1 , wherein the VoIP server is configured to provide an interface for updating the respective first sets of multi-level scripts including the call flow instructions provided on behalf of the client entity and without allowing the client entity with access to the call routing commands.

4. The VoIP call control server of claim 1 , wherein the VoIP server is configured to in response to instructions specified in one of the first sets of multi-level scripts, generate database queries to a database of the respective client entity of the VoIP provider.

5. The VoIP call control server of claim 1 , wherein the VoIP server is configured to in response to instructions specified in one of the first sets of multi-level scripts, generate database queries to a database associated with the respective client entity of the VoIP provider, and wherein the queries are conditional queries and the VoIP server is configured to provide call control functionality in response to received conditional responses to the queries and without direct access to data stored in the database of the client entity.

6. The VoIP call control server of claim 1 , wherein the programming languages are related to one another in that one of the programming languages is a subset of the other of the programming languages which provides additional levels of call routing and processing.

7. The system including the VoIP call control server of claim 1 and further including logic circuitry having an interface for updating, while the VoIP call control server continues to receive the VoIP calls, another of the first set of multi-level scripts with call flow instructions or with call routing commands.

8. The system of claim 7 , wherein the logic circuitry is configured to, in response to the VoIP calls, access a website, and wherein the logic circuitry is further configured to allow the respective client entity to update the first set of multi-level scripts by uploading files to the VoIP provider database.

9. The system including the VoIP call control server of claim 1 , wherein the programming languages are related to one another in that one of the programming languages is a subset of the other of the programming languages which provides additional levels of call routing and processing.

10. The system including the VoIP call control server of claim 1 , wherein the call routing for the received VoIP calls is associated with a routing decision to identify an account of the client entity and a level of the first set of multi-level scripts based upon the account.

11. The system including the VoIP call control server of claim 1 , wherein the call routing for the received VoIP calls is associated with a routing decision to identify a particular store of a customer of the VoIP provider.

12. The system including the VoIP call control server of claim 1 , wherein each of the programming languages is an extensible markup language.

13. The system including the VoIP call control server of claim 1 , wherein one of the languages includes commands that override routing decisions corresponding to execution of the call routing commands.

14. The system including the VoIP call control server of claim 1 , further including the client-computer circuitry wherein each of the client-computer circuitry is configured to communicate with the VoIP call routing server via a message exchange protocol and the broadband network.

15. A method operated by a client computer engine for use with a VoIP server, the VoIP server being a provider VoIP communications services to a plurality of different and disparately-situated client computer engines respectively operable on behalf of different and disparately-situated client subscribers of the VoIP service provider associated with the VoIP server, each of the VoIP server and each of the disparately-situated client computer engines including computer processor circuitry coupled to memory circuits and configured to provide a call control information for communicating data on behalf of VoIP endpoint devices associated with the client computer engine, the method comprising: configuring the client computer engine with routing-decision information and call-processing data, wherein the routing-decision information and call-processing data are specific to needs of the client, whereby the client computer engine is configured specifically for the needs of the client; in response to the VoIP calls, generating data/call-routing commands from a programming language for communicating from the client computer engine, in accordance with a message exchange protocol for communications over a broadband network, to the VoIP server, wherein the data/call-routing commands and the programming language are defined by a VoIP communication platform for the VoIP server to interpret and to effect routing decisions and communicate data for the VoIP calls, the routing decisions and the communicated data being specific to the client as configured within the client computer engine; and using the data/call-routing commands in communications to the VoIP server, in accordance with the message exchange protocol, to convey changes or updates of the routing-decision information and call-processing data, wherein the changes or updates of 5 the routing-decision information and call-processing data are also specific to needs of the client.

16. The method of claim 15 , wherein in response to the changes or updates of the routing-decision information and call-processing data being conveyed to the VoIP server, monitoring communications from the VoIP endpoint devices and validating the changes or updates.

Assignments (5)
SECURITY INTEREST Recorded Aug 5, 2024
From: 8X8, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
Reel/Frame 068327/0819 →
RELEASE OF SECURITY INTEREST Recorded Aug 5, 2024
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: 8X8, INC.; FUZE, INC.
Reel/Frame 068328/0569 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 27, 2017
From: LIU, ZHISHEN
To: 8X8, INC.
Reel/Frame 041387/0060 →
Continuity (4)
Continuation In Part 15240391 · Aug 18, 2016
Continuation In Part 15240457 · Aug 18, 2016
Provisional Application 62353971 · Jun 23, 2016
Provisional Application 62353977 · Jun 23, 2016