IP Library Granted Patent US 10,404,759
Granted Patent B1
US 10,404,759 · App. 15/240,391 · Granted Sep 3, 2019

Client-specific control of shared telecommunications services

Inventor: Zhishen Liu (San Jose, CA)
Assignee: 8×8, Inc.
H04L65/102H04L65/1059
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,404,759
App. No.
15/240,391
Granted
Sep 3, 2019
Kind
B1
Abstract

Aspects of the present disclosure are directed toward apparatuses, systems, and methods for providing remote services for endpoint devices of a plurality disparate client entities. In an example embodiment, an apparatus includes a computing server configured to provide VoIP communications for a plurality of endpoint devices respectively associated with a plurality of disparate client entities according to and responsive to client-specific sets of control data. The apparatus also includes a processing circuit configured to adjust routing of the VoIP communications by the computing server, in response to call event data generated by the computing server, by generating the client-specific sets of control data for each client entity according to a respective set of directives.

Claims (51)

1. An apparatus, comprising:

a data server programmed to provide Voice over Internet Protocol (VoIP) communication, or other data communication service, and configured and arranged to provide data communications by setting up data communications service relationships with a plurality of disparate client entities, by controlling call routing or data processing decisions for communications between each of different sets of endpoint devices respectively associated with each of the plurality of disparate client entities, and by providing data communications based on the data communications service relationships;

a processing circuit configured and arranged to, for each of the plurality of disparate client entities, communicate with the data server by generating client-specific sets of data indicative of client-specific communications routing and/or client-specific communications data by executing a set of instructions specified in a respective set of control directives that facilitates the data communications provided by the data server exclusively for the respective client entity relative to another client entity among the plurality of disparate client entities, wherein the set of instructions are written in a first instruction language and specified for the client entity and used to control adjustment of one or more services for the respective client entity, and by conveying the generated client-specific sets of data over an interface protocol platform; and

wherein the data server and each of the plurality of disparate client entities are configured and arranged with the interface protocol platform to facilitate permissible types of communications by characterizing a manner in which the client-specific sets of data are provided from each of the plurality of disparate client entities to the data server, and by prompting the data server to interpret the client-specific sets of data and use the interpreted client-specific sets of data to modify call routing or data processing decisions performed by the data server on behalf of the plurality of disparate client entities respectively associated with the client-specific sets of data.

2. The apparatus of claim 1 , wherein for each of the plurality of disparate client entities, the processing circuit generates the client-specific sets of data according to a respective set of control directives specified of the client entity.

3. The apparatus of claim 1 , wherein for each of the plurality of disparate client entities, the processing circuit generates the client-specific sets of data by executing a set of instructions specified in a respective set of control directives specified for the client entity.

4. The apparatus of claim 3 , wherein for at least one of the plurality of disparate client entities, execution of the respective set of control directives causes the processing circuit to generate a database query to a service provider database and generate the client-specific sets of data based on a data result of the database query.

5. The apparatus of claim 3 , wherein for at least one of the plurality of disparate client entities, execution of the respective set of control directives causes the processing circuit to generate a database query to a database maintained by the client entity and generate the client-specific sets of data based on a data result of the database query.

6. The apparatus of claim 1 , wherein for a first one of the plurality of disparate client entities,

the client-specific sets of data specify client-specific communications routing commands in a second instruction language different from the first instruction language by providing less instructional control as compared to the first instruction language.

7. The apparatus of claim 6 , wherein the second instruction language is an extensible meta-data language.

8. The apparatus of claim 6 , wherein for a second one of the plurality of disparate client entities,

the set of instructions are specified in a third instruction language different from the first and second instruction languages; and

the client-specific sets of data specify client-specific communications routing commands in the second instruction language.

9. The apparatus of claim 1 , wherein, for each of the plurality of disparate client entities,

the providing voice and data communications by the data server further includes providing call event data to the processing circuit for VoIP calls provided for the endpoint devices associated with the client entity; and

the generating of the client-specific sets of data by the processing circuit is performed in response to the call event data.

10. The apparatus of claim 9 , wherein the generating of the client-specific sets of data by the processing circuit includes,

in response to one of the call event data indicating a new VoIP call, determining one of the plurality of disparate client entities for which the VoIP call is provided by the data server; and

configuring the client-specific sets of data to prompt the data server to route the VoIP call according to a respective set of directives for the determined one of the plurality of disparate client entities.

11. The apparatus of claim 1 , wherein

the processing circuit includes first and second disparate processing sub-circuits;

the first processing sub-circuit communicates client-specific sets of data for a first one of the plurality of disparate client entities according to a first set of directives; and

the second processing communicates client-specific sets of data for a second one of the plurality of disparate client entities according to a second set of directives.

12. The apparatus of claim 1 , wherein

for each of the plurality of disparate client entities, the generated client-specific sets of control data include control instructions specified in a first instruction language;

for a first one of the plurality of disparate client entities, the instructions included in the respective set of directives are specified in a second instruction language different from the first instruction language; and

for a second one of the plurality of disparate client entities, the instructions included in the respective set of directives are specified in a third instruction language different from the first and second instruction languages.

13. An apparatus, comprising:

a computing server configured and arranged to provide Voice over Internet Protocol (VoIP) communications for a plurality of endpoint devices, each respectively associated with an account of a respective one of a plurality of disparate client entities, by routing VoIP calls for the endpoint of each of the plurality of disparate client entities according to and responsive to client-specific sets of control data and generating call event data for the routed VoIP calls; and

a processing circuit communicatively coupled to the computing server and configured and arranged to adjust routing of the VoIP calls by the computing server by,

receiving the call event data from the computing server; and

for each of the plurality of disparate client entities, generating the client-specific sets of control data, in response to the call event data, according to a respective set of directives for the client entity, wherein the client-specific sets of control data are applicable and used to control adjustment of one or more services for the respective client entity.

14. The apparatus of claim 13 , wherein the controlling routing of the VoIP calls further includes:

in response to one of the call event data indicating a new VoIP call, determining one of the plurality of disparate entities associated with one of the endpoint devices that is a participant of the VoIP call;

selecting a route for the VoIP call according to the respective set of directives for the account one of the plurality of disparate entities; and

configuring the client-specific sets of control data for the one of the plurality of disparate entities to prompt the computing server to route the VoIP call using the selected route.

15. The apparatus of claim 14 , wherein the selecting of the route for the VoIP call is performed by executing instructions included in the respective set of directives for the account one of the plurality of disparate entities.

16. The apparatus of claim 13 , wherein

the client-specific sets of control data include VoIP control instructions specified in a first instruction language; and

for each of the plurality of disparate client entities, the controlling routing of the VoIP calls further includes executing instructions included in a respective set of directives specified for the client entity, wherein the instructions included in the respective set of directives are specified in a second instruction language different from the first instruction language.

17. The apparatus of claim 16 , wherein the first instruction language is an extensible meta-data language.

18. The apparatus of claim 17 , wherein the computing server includes

a first processing sub-circuit configured and arranged to provide the VoIP communications for the plurality of endpoint devices by execution of a set of instructions specified in a third instruction language that is different from the first instruction language; and

a second processing sub-circuit configured and arranged to facilitate adjustment of the VoIP communications by prompting a first processing sub-circuit to perform one or more operations indicated in the VoIP control instructions via execution of the set of instructions specified in a third instruction language.

19. The apparatus of claim 13 , wherein for at least one of the plurality of disparate client entities, the respective set of directives causes the processing circuit to provide a query to a database and generate the client-specific sets of control data for the client entity based on a data result of the query.

20. An apparatus, comprising

a computing server configured and arranged to provide one or more remote services for a plurality of endpoint devices, each respectively associated with an account of a respective one of a plurality of disparate client entities, by generating and routing data for the endpoint devices; and

a processing circuit communicatively coupled to the computing server and configured and arranged to adjust the remote services provided for the plurality of endpoint devices by

monitoring one or more operations of the computing server, and

for each of the plurality of disparate client entities, generating client-specific sets of control data, in response to the monitoring of operations, by executing instructions included in a respective set of directives for the client entity, wherein the client-specific sets of control data are applicable and used to control adjustment of one or more services for the respective client entity.

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 Jan 12, 2017
From: LIU, ZHISHEN
To: 8X8, INC.
Reel/Frame 040954/0175 →
Continuity (1)
Provisional Application 62353971 · Jun 23, 2016
Cited By (2)
US 12,271,503 US 12,273,313