IP Library Granted Patent US 8,612,932
Granted Patent B2
US 8,612,932 · App. 13/088,396 · Granted Dec 17, 2013

Unified framework and method for call control and media control

Inventors: Wei Chen (Saratoga, CA); Zhiyu Liu (Beijing, CN); Xiaopu Zhu (Beijing, CN); Jose Maria de Castro, Jr. (Orlando, FL)
Assignee: Voxeo Corporation
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 8,612,932
App. No.
13/088,396
Granted
Dec 17, 2013
Kind
B2
Abstract

A communication system and method include a server hosting an interactive voice response or self-help application in a Java virtual machine. The communication application is programmed with a unified communication API, which is provided by a unified application framework. The API provides a set of unified class objects for call control and media control. The unified class objects are constructed from class object primitives of individual standards-based Java call control API and media control API. The constructs are a structured and restricted set conforming to the object model of the application and its states. The API has a unified event handler for both call and media controls and dispatches events to the application based on the type of event and the application state of the object model.

Claims (41)

1. A server including a processor, the server comprising:

a communication application being executed on a Java virtual machine on said server;

a unified application framework for call control and media control for building application components of the communication application

a call control API for providing a standardized Java interface for call control, said call control API defining a set of class object primitives for call control;

a media control API for providing a standardized Java interface for media server control, said media control API defining a set of class object primitives for media control;

a unified call control and media control API defining a set of unified class objects constructed from the class object primitives of the call control API and the media control API; and

wherein the application components are built from the unified class objects including:

a Call object for connecting a leg of communication between an endpoint and the communication application;

a Participant object representing an abstract party involved in a conversation;

a Join object for effecting an asynchronous join operation on the Participant object;

a MediaService object for media control available to a call;

an Eventsource object for representing an event source that serializes events from call control and events from media control such that the application component listening said event source only has to deal with one event at a time; and

an Observer object for a listener that listen to events from the event source.

2. The server as in claim 1 , wherein the application components are built from the unified class objects as well as from the class object primitives of the call control API.

3. The server as in claim 1 , wherein the application components are built from the unified class objects as well as from the class object primitives of the media control API.

4. The server as in claim 1 , wherein said unified class objects are based on a specific object model that dictates certain predefined constructs of the class object primitives of the call control API and the media control API.

5. The server as in claim 1 , wherein said unified class objects include the Observer object as a unified event handler that respond on predefined application state conforming to the specific object model.

6. The server as in claim 1 , wherein said unified class objects include the Observer object as a unified event handler that ignores events inappropriate to a context of the specific object model.

7. The server as in claim 1 , wherein said observer object specifies a type of event and a state of the application.

8. The server as in claim 1 , wherein the application components are part of an interactive voice response application.

9. The server as in claim 1 , wherein the application components are part of a self-help application.

10. A method of operating a server, comprising:

providing a call control API for providing a standardized Java interface for call control under SIP and defining a set of class object primitives for call control;

providing a media control API, the media control API providing a standardized Java interface for media server control and defining a set of class object primitives for media control;

constructing a unified call control and media control API defining a set of unified class objects from the class object primitives of the call control API and the media control API;

deploying an application having components built from the set of unified class objects including:

a Call object for connecting a leg of communication between an endpoint and the communication application;

a Participant object representing an abstract party involved in a conversation;

a Join object for effecting an asynchronous join operation on the Participant object;

a MediaService object for media control available to a call;

an Eventsource object for representing an event source that serializes events from call control and events from media control such that the application component listening said event source only has to deal with one event at a time; and

an Observer object for a listener that listen to events from the event source; and

executing the application on a Java virtual machine on said server.

11. The method as in claim 10 , wherein the application components are built from the unified class objects as well as from the class object primitives of the call control API.

12. The method as in claim 10 , wherein the application components are built from the unified class objects as well as from the class object primitives of the media control API.

13. The method as in claim 10 , wherein said unified class objects are based on a specific object model that dictates certain predefined constructs of the class object primitives of the call control API and the media control API.

14. The method as in claim 10 , wherein said unified class objects include the Observer object as a unified event handler that respond on predefined application state conforming to the specific object model.

15. The method as in claim 10 , wherein said unified class objects include the Observer object as a unified event handler that ignores events inappropriate to a context of the specific object model.

16. The method as in claim 10 , wherein said observer object specifies a type of event and a state of the application.

17. The method as in claim 10 , wherein the application components are part of an interactive voice response application.

18. The method as in claim 10 , wherein the application components are part of a self-help application.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE DATE SIGNED AND DOC DATE PREVIOUSLY RECORDED ON REEL 037770 FRAME 0147. ASSIGNOR(S) HEREBY CONFIRMS THE THE DOCUMENT DATE OF 02/19/2016. Recorded Apr 13, 2016
From: TROPO LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 038427/0667 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2016
From: TROPO LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 037770/0147 →
CHANGE OF NAME Recorded Feb 18, 2016
From: TROPO, INC.
To: TROPO LLC
Reel/Frame 037856/0768 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2013
From: ASPECT SOFTWARE, INC.
To: TROPO, INC.
Reel/Frame 031813/0428 →
MERGER Recorded Dec 14, 2013
From: VOXEO CORPORATION
To: ASPECT SOFTWARE, INC.
Reel/Frame 031783/0617 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2011
From: CHEN, WEI; LIU, ZHIYU; ZHU, XIAOPU; DE CASTRO, JR., JOSE MARIA
To: VOXEO CORPORATION
Reel/Frame 026507/0667 →
Continuity (2)
Provisional Application 61325355 · Apr 18, 2010
Related Publication 20110258597A1 · Oct 20, 2011