IP Library Granted Patent US 9,397,861
Granted Patent B1
US 9,397,861 · App. 12/985,326 · Granted Jul 19, 2016

Unified communication

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 9,397,861
App. No.
12/985,326
Granted
Jul 19, 2016
Kind
B1
Abstract

A system for unified communication, according to one embodiment of the present invention, comprises a CAS communicatively coupled to a client. The CAS comprises a server communicatively coupled to a CAS application and a number of service providers. The server receives from the client a CAS message encoded in a CAS format and including a request for a unified communication service. The server communicates with the CAS application to determine a service type for the request. The server sends the request to one of the number of service providers. The server sends a reply message to the client.

Claims (58)

1. A method for unified communication, the method comprising:

receiving, from a client, a Client Application Server (CAS) message encoded in a CAS format having a standardized header and including a request for a unified communication service, the request including a request for a subscription service, wherein the standardized header is one of a plurality of predetermined headers used by a plurality of client types, the subscription service registering the client to receive notifications for changes to a service provided by the unified communication service;

subscribing the client to the subscription service;

sending the request to the service provider;

determining a service type for the request based on information in the CAS message;

configuring one or more permissions based on the request to: (1) determine one or more features of the service type to be provided to the client and (2) prevent the client from offering a user an option that exceeds the scope of features of the service type based on the one or more permissions;

determining that the CAS communicates asynchronously with a service provider via an intermediary;

notifying the client of an asynchronous communication status between the CAS and the service provider; and

sending a reply message in response to the request for the unified communication service to the client, the reply message including data comprising notifications in changes in services provided by the CAS in accordance with the subscription service and permission data describing the one or more permissions.

2. The method of claim 1 , wherein sending the request to the service provider is based on the determined service type of the request.

3. The method of claim 1 , wherein the CAS message is encoded in one of JavaScript Objection Notation (“JSON”) and Extensible Markup Language (“XML”).

4. The method of claim 1 , wherein the service type is one or more of: a telephony service; a directory service; a configuration service; a voicemail service; a call history service; a presence service; an instant messenger service; and a plug-in service.

5. The method of claim 1 , wherein the service type is a plug-in service that is provided by a CAS plug-in.

6. The method of claim 1 , wherein the permission data specifies what actions the client can take with the unified communication service.

7. The method of claim 1 , wherein the request is a bulk request comprising two or more requests.

8. The method of claim 7 further comprising:

determining different services and response types for the requests in the bulk request; and

processing the requests.

9. A computer program product comprising a non-transitory computer readable medium storing a computer readable program, wherein the computer readable program when executed on a computer causes the computer to perform steps comprising:

receiving, from a client, a Client Application Server (CAS) message encoded in a CAS format having a standardized header and including a request for a unified communication service, the request including a request for a subscription service, wherein the standardized header is one of a plurality of predetermined headers used by a plurality of client types, the subscription service registering the client to receive notifications for changes to a service provided by the unified communication service;

subscribing the client to the subscription service;

sending the request to the service provider;

determining a service type for the request based on information in the CAS message;

configuring one or more permissions based on the request to: (1) determine one or more features of the service type to be provided to the client and (2) prevent the client from offering a user an option that exceeds the scope of features of the service type based on the one or more permissions;

determining that the CAS communicates asynchronously with a service provider via an intermediary;

notifying the client of an asynchronous communication status between the CAS and the service provider; and

sending a reply message in response to the request for the unified communication service to the client, the reply message including data comprising notifications in changes in services provided in accordance with the subscription service and permission data describing the one or more permissions.

10. The computer program product of claim 9 , wherein the executed computer readable program causes the computer to perform further steps comprising sending the request to a service provider.

11. The computer program product of claim 10 , wherein sending the request to the service provider is based on the determined service type of the request.

12. The computer program product of claim 9 , wherein the CAS message is encoded in one of JavaScript Objection Notation (“JSON”) and Extensible Markup Language (“XML”).

13. The computer program product of claim 9 , wherein the service type is one or more of: a telephony service; a directory service; a configuration service; a voicemail service; a call history service; a presence service; an instant messenger service; and a plug-in service.

14. The computer program product of claim 9 , wherein the service type is a plug-in service that is provided by a CAS plug-in.

15. The computer program product of claim 9 , wherein the reply message includes data describing a change related to the subscription service.

16. The computer program product of claim 9 , wherein the permission data specifies what actions the client can take with the unified communication service.

17. The computer program product of claim 9 , wherein the request is a bulk request comprising two or more requests.

18. The computer program product of claim 17 , wherein the executed computer readable program causes the computer to perform further steps comprising:

determining different services and response types for the requests in the bulk request; and

processing the requests.

19. A system for unified communication, the system comprising:

a client; and

a Client Application Server (CAS), including a memory and a computer processor, communicatively coupled to the client and comprising a server communicatively coupled to a number of service providers and a CAS application, the CAS configured to receive from the client a CAS message encoded in a CAS format having a standardized header and including a request for a unified communication service, the request including a request for a subscription service, wherein the standardized header is one of a plurality of predetermined headers used by a plurality of client types, the subscription service registering the client to receive notifications for changes to a service provided by the unified communication service, the CAS configured to:

send the request to the service provider;

determine a service type for the request based on information in the CAS message;

configure one or more permissions based on the request to: (1) determine one or more features of the service type to be provided to the client and (2) prevent the client from offering a user an option that exceeds the scope of features of the service type based on the one or more permissions;

determine that the CAS communicates asynchronously with a service provider via an intermediary;

notify the client of an asynchronous communication status between the CAS and the service provider; and

send a reply message to the client in response to the request for the unified communication service, the reply message including data comprising notifications in changes in services provided by the CAS in accordance with the subscription service and permission data describing the one or more permissions.

20. The system of claim 19 , wherein the server receives the CAS message and sends the CAS message to one of the number of service providers.

21. The system of claim 20 , wherein the server communicates with the CAS application to determine a service type of the request, and wherein the server sends the CAS message to the one service provider based on the determined service type.

22. The system of claim 19 , wherein the CAS message is encoded in one of JavaScript Objection Notation (“JSON”) and Extensible Markup Language (“XML”).

23. The system of claim 19 , wherein the service type is one or more of: a telephony service; a directory service; a configuration service; a voicemail service; a call history service; a presence service; an instant messenger service; and a plug-in service.

24. The system of claim 19 , wherein the CAS further comprises a CAS plug-in communicatively coupled to the server, and wherein the service type is a plug-in service that is provided by the CAS plug-in.

25. The system of claim 19 , wherein the Client Application Server includes a thread pool including a plurality of threads, wherein a thread in the thread pool is not assigned to a particular client and may handle a request from any client, the thread chosen to process the request from the client.

26. The system of claim 19 , wherein the permission data

specifies what actions the client can take with the unified communication service.

27. The system of claim 19 , wherein the request is a bulk request

comprising two or more requests.

28. The system of claim 27 , wherein the server communicates with the CAS application to determine different services and response types for the requests in the bulk request and processes the requests.

Assignments (15)
RELEASE OF SECURITY INTEREST Recorded Jun 24, 2025
From: ANKURA TRUST COMPANY, LLC
To: MITEL (DELAWARE), INC.; MITEL COMMUNICATIONS, INC.; MITEL CLOUD SERVICES, INC.; MITEL NETWORKS, INC.; MITEL NETWORKS CORPORATION
Reel/Frame 071722/0721 →
RELEASE OF SECURITY INTEREST Recorded Oct 16, 2024
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: RINGCENTRAL, INC.
Reel/Frame 068917/0024 →
SECURITY INTEREST Recorded Feb 14, 2023
From: RINGCENTRAL, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062973/0194 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2022
From: MITEL NETWORKS, INC.
To: RINGCENTRAL, INC.
Reel/Frame 058900/0554 →
RELEASE OF SECURITY INTEREST Recorded Jan 19, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: MITEL NETWORKS, INC.
Reel/Frame 058697/0751 →
RELEASE OF SECURITY INTEREST Recorded Jan 19, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: MITEL NETWORKS, INC.
Reel/Frame 058697/0693 →
SECURITY INTEREST Recorded Dec 13, 2018
From: MITEL NETWORKS, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047988/0478 →
SECURITY INTEREST Recorded Dec 13, 2018
From: MITEL NETWORKS, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047909/0814 →
RELEASE OF SECURITY INTEREST Recorded Dec 3, 2018
From: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
To: SHORETEL, INC.
Reel/Frame 047713/0843 →
CHANGE OF NAME Recorded Oct 29, 2018
From: SHORETEL, INC.
To: MITEL NETWORKS, INC.
Reel/Frame 047339/0408 →
MERGER AND CHANGE OF NAME Recorded Oct 29, 2018
From: SHORETEL, INC.; MITEL NETWORKS, INC.
To: SHORETEL, INC.
Reel/Frame 047339/0346 →
RELEASE OF SECURITY INTEREST Recorded Sep 25, 2017
From: SILICON VALLEY BANK
To: SHORETEL, INC.
Reel/Frame 043993/0430 →
SECURITY INTEREST Recorded Sep 25, 2017
From: SHORETEL, INC.
To: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 043829/0711 →
SECURITY INTEREST Recorded Oct 23, 2014
From: SHORETEL, INC.
To: SILICON VALLEY BANK
Reel/Frame 034038/0741 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2011
From: TOVINO, MICHAEL S.W.; OKITA, GLEN K.; OKINO, LOIS; PATEL, ASHVINKUMAR H.; ACHMANOV, IOURI; TSAI, MEIGY
To: SHORETEL, INC.
Reel/Frame 025596/0701 →