Call processing system and method for providing a variety of messaging services
First Claim
1. A call processing method for processing subscriber communications in a message handling system to provide a variety of different communications services including messaging application services, comprising the steps of:
- identifying a requested call processing messaging application service in response to a subscriber call;
establishing a set of call processing primitives to perform the requested call processing messaging application service, each primitive performing a single call processing operation;
setting up a service state table that establishes a sequence of logical states for providing the requested call processing messaging application service, each primitive being associated with a state in the service state table in which the primitive is included, and each primitive being associated with one of a variety of different objects or events;
executing the state table to provide the requested call processing messaging application service, wherein execution of each logical state invokes one call processing primitive; and
modifying one or more of the different objects or events to modify the requested call processing messaging application service without modifying the call processing primitives in the one service state table.
1 Assignment
0 Petitions
Accused Products
Abstract
A flexible, object-oriented call processor is employed in a wide range of messaging environments (e.g. voice messaging, facsimile mail, notification and electronic mail) to provide any number and type of messaging service. Call processing procedures can be changed or adapted to provide a new or different messaging service without rewriting large amounts of software or redesigning the messaging system. Various call processing primitives are established to perform various call processing services in a messaging application, with each to primitive performing a single operation. Sets of parameters are also defined for different types of call processing services and different subscribers. A service state table corresponding to a sequence of logical states is set up to provide the requested call processing service. Once a requested call processing service is identified in response to a subscriber call, the call processor executes the service logic in the corresponding service state table. Each primitive is associated with a state in the service state table and is a source of events from that state. Execution of each logical state invokes one primitive for transitioning to the next state in the state table. Using such primitives and parameters, call processing services may be configured and readily adapted without knowledge of specific operating system or application software. A unique layered software architecture called the call processing stack executes call processing services based on corresponding records of configured primitives and parameters. Each layer of the architecture performs dedicated tasks without specific knowledge of the functions of the other layers.
-
Citations
76 Claims
-
1. A call processing method for processing subscriber communications in a message handling system to provide a variety of different communications services including messaging application services, comprising the steps of:
-
identifying a requested call processing messaging application service in response to a subscriber call; establishing a set of call processing primitives to perform the requested call processing messaging application service, each primitive performing a single call processing operation; setting up a service state table that establishes a sequence of logical states for providing the requested call processing messaging application service, each primitive being associated with a state in the service state table in which the primitive is included, and each primitive being associated with one of a variety of different objects or events; executing the state table to provide the requested call processing messaging application service, wherein execution of each logical state invokes one call processing primitive; and modifying one or more of the different objects or events to modify the requested call processing messaging application service without modifying the call processing primitives in the one service state table. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A call processing method for processing subscriber communications in a message handling system to provide a variety of different communications services including messaging application services, comprising:
-
identifying requested call processing messaging application services in response to subscriber calls; dividing each requested call processing messaging application service into a sequence of call processing primitives to perform the call processing messaging application service, each primitive performing a single call processing operation; defining features of the call processing messaging application services using a group of parameters associated with the call processing messaging application services including (1) one or more global service parameters which correspond to one or more communications services but are independent of a specific subscriber and (2) subscriber specific parameters; and executing sequences of call processing primitives using the group of parameters including the one global service parameter and subscriber specific parameters to provide requested call processing messaging application services. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A call processing method for processing subscriber communications in a message handling system to provide a variety of different communications services including messaging application services comprising the steps of:
-
identifying a requested call processing messaging application service in response to a subscriber call; establishing a set of call processing primitives as call processing service development tools to perform the requested call processing messaging application service, each call processing primitive performing a single call processing operation independent of other call processing primitives in the set of call processing primitives involved in performing the requested call processing messaging application service; creating a corresponding call processing messaging application service record including data structures defining the requested call processing messaging application service that are used by the set of call processing primitives; and providing the requested call processing messaging application service using the set of call processing primitives and the data structures from the call processing service record. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32)
-
-
33. A system for processing calls from an external telephony environment employing a hierarchy of software managers, comprising:
-
a telephony front end manager for interfacing call processing messaging application service requests from the external telephony environment and providing call processing messaging application service responses to the external telephony environment and providing call processing messaging application service responses to the external telephony environment; plural telephony channel managers, each telephony channel manager; (a) managing an assigned communication channel in the external telephony environment, (b) transmitting call processing messaging application service requests for the assigned communication channel received from the telephony front end manager, and (c) returning call processing service responses for the assigned communication channel to the telephony front end manager; and a call processing manager for receiving call requests from the telephony channel managers, executing a logical sequence of call processing operations to perform a requested call processing messaging application service, and providing responses to call processing messaging application service requests to the telephony channel managers. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A method of building a call processing system, comprising:
-
defining requested call processing messaging application services in response to subscriber calls; defining sets of parameters for different types of call processing messaging application services and for different subscribers, establishing a set of call processing primitives for performing the call processing messaging application services, each primitive performing a single operation on one of the parameters, and returning a result when the primitive is executed; establishing different types of call processing parameters; and setting up service state tables using the call processing primitives and different types of call processing parameters as building blocks, each call processing primitive having only one of the established call processing parameters as an argument upon which the call processing primitive operates and each service state table corresponding to a sequence of logical states for providing a requested call processing messaging application service, wherein operation of each logical state in each service table executes one or more primitives for transitioning to a next state and wherein each call processing primitive operates on the one established call processing parameter independent of the other established call processing parameters. - View Dependent Claims (44, 45, 46)
-
-
47. A call processing system for processing calls received from an external telecommunications network, comprising:
-
a message handling system; an external telecommunications network interface for receiving a call request for a messaging service from a party connected to the external telecommunications network; and a call processor having plural call processing layers for receiving the call request from the external telecommunications network interface at one call processing layer and executing a logical sequence of call processing operations defined by a state table configured to service the call request for a messaging service in another call processing layer including accessing resources of the message handling system to respond to the call request for a messaging service, wherein the state table is constructed using call processing primitives and different types of call processing parameters, each call processing primitive performing a single call processing operation. - View Dependent Claims (48, 49, 50, 51, 52, 53)
-
-
54. A system for processing calls from an external telecommunications network, comprising:
-
a telephony interface for interfacing with and receiving calls corresponding to associated messaging application service requests from the external telecommunications network; a call processing manager for generating service state tables using call processing primitives and different types of call processing parameters as building blocks, receiving messaging application service requests from the telephony interface, executing one of the service state tables to perform a requested messaging application service, and returning the results of the performed messaging application service to the telephony interface, each call processing primitive performing a single call processing operation, the call processing manager including; a phrase table for storing voice prompts associated with a messaging application request, each voice prompt being defined by phrases stored in the phrase table, wherein the call processing manager retrieves one or more selected phrases from the phrase table and activates a desired voice prompt in response to execution of a call processing primitive. - View Dependent Claims (55, 56, 57, 58, 59, 60, 61, 62, 63)
-
-
64. A call processing method for processing subscriber communications in a messaging system to provide a variety of different communication services including messaging application services, comprising the steps of:
-
(a) establishing a set of call processing primitives for use in performing each messaging application service, each call processing primitive performing a single call processing operation; (b) establishing a call processing record for each messaging application service; (c) defining each messaging application service'"'"'s call processing record based on the set of call processing primitives using different service components including (1) one or more of global service parameters which correspond to a messaging service but are not specific to a particular subscriber of the communications services, (2) subscriber specific parameters corresponding to a specific subscriber accessed by one of the call processing primitives, (3) general purpose, auxiliary variables, (4) message handling topics used by one of the call processing primitives in accessing and retrieving messages in the messaging system, and (5) voice prompts activated by executing a corresponding call processing primitive; and (d) executing the set of call processing primitives which operate on corresponding ones of the different service components. - View Dependent Claims (65, 66)
-
-
67. A call processing method for building a call processor in a message handling system coupled to a telecommunications network, comprising:
-
defining call processing services including messaging application services; defining sets of parameters for different types of call processing services and different subscribers; establishing a set of call processing primitives for performing the call processing services, each primitive performing a single operation on one of the parameters and returning a result when the primitive is executed; establishing different types of call processing parameters, each parameter not being linked with the other parameters; setting up service state tables using the call processing primitives as building blocks, each service state table corresponding to a sequence of logical states for providing a requested one of the call processing services, wherein operation of each logical state in each service table executes one or more primitives for transitioning to a next state; defining plural phrase tables, each phrase table including plural voice prompts associated with a call processing request, wherein each voice prompt is defined by one or more phrases stored in the phrase table and corresponds to one of the call processing primitives; and retrieving one or more selected phrases from the phrase table and activating a desired voice prompt in response to execution of a corresponding one of the call processing primitives. - View Dependent Claims (68, 69, 70, 71, 72, 73, 74, 75, 76)
-
Specification