Service oriented architecture-based SCIM platform
First Claim
1. A system for processing requests, the system comprising:
- one or more processors; and
a memory coupled with the processors and having stored therein a sequence of instructions executed by the processors to execute;
a first layer comprising a plurality of applications that provide telephony control features, the plurality of applications comprising an application dispatcher;
a second layer comprising a plurality of abstract call control enablers comprising;
one or more call control enabler interfaces;
one or more Application Program Interfaces (APIs) providing an abstract interface for invoking a plurality of call control functions,a third layer comprising a plurality of call control enabler instances that provide adapters to network resources to provide the plurality of call control functions, wherein one or more of the call control enabler instances are instantiated in response to one of the plurality of applications invoking one or more of the plurality of call control functions through the APIs; and
a fourth layer comprising a network layer of a plurality of network resources that are each coupled to corresponding ones of the call control enabler instances;
wherein the system is configured to perform operations comprising;
receiving, by the application dispatcher, a Session Initiation Protocol (SIP) request;
analyzing, by the application dispatcher, the request to extract a plurality of Uniform Resource Identifiers (URIs) to process the request from a header field of the request;
dynamically determining, by the application dispatcher, a first application to process the request based on a first URI in the plurality of URIs in the header field, subscriber profile information, and one or more policies, wherein the determination is made in the first layer;
routing the request to the first application to process the request;
receiving a response from the first application after processing the request;
dynamically determining, by the application dispatcher, a second application to process the request based on a second URI in the plurality of URIs in the header field, the response from the first application, the subscriber profile information, and the one or more policies; and
routing the request to the second application to process the request.
1 Assignment
0 Petitions
Accused Products
Abstract
Service Capability Interaction Manager (SCIM)-type functionality is provided at a horizontal service layer in an Service Oriented Architecture (SOA)-based approach. SCIM composition is provided at multiple levels, including the level of composition where servlets have full access to the context information of the service layer. SCIM composition also occurs at the level of an application dispatching messages to multiple applications/services for processing the messages. The functionality at the service layer also can be programmed using policies, such that routing decisions can be made dynamically as the result of processing conditions and actions. An incoming message can result in a Web service being triggered that in turn triggers a BPEL or SOA workflow, the workflow calling multiple operations to process the message as a result of a routing table or header, environmental and contextual information at the service level, and other information such as user preference or presence information.
-
Citations
24 Claims
-
1. A system for processing requests, the system comprising:
-
one or more processors; and a memory coupled with the processors and having stored therein a sequence of instructions executed by the processors to execute; a first layer comprising a plurality of applications that provide telephony control features, the plurality of applications comprising an application dispatcher; a second layer comprising a plurality of abstract call control enablers comprising; one or more call control enabler interfaces; one or more Application Program Interfaces (APIs) providing an abstract interface for invoking a plurality of call control functions, a third layer comprising a plurality of call control enabler instances that provide adapters to network resources to provide the plurality of call control functions, wherein one or more of the call control enabler instances are instantiated in response to one of the plurality of applications invoking one or more of the plurality of call control functions through the APIs; and a fourth layer comprising a network layer of a plurality of network resources that are each coupled to corresponding ones of the call control enabler instances; wherein the system is configured to perform operations comprising; receiving, by the application dispatcher, a Session Initiation Protocol (SIP) request; analyzing, by the application dispatcher, the request to extract a plurality of Uniform Resource Identifiers (URIs) to process the request from a header field of the request; dynamically determining, by the application dispatcher, a first application to process the request based on a first URI in the plurality of URIs in the header field, subscriber profile information, and one or more policies, wherein the determination is made in the first layer; routing the request to the first application to process the request; receiving a response from the first application after processing the request; dynamically determining, by the application dispatcher, a second application to process the request based on a second URI in the plurality of URIs in the header field, the response from the first application, the subscriber profile information, and the one or more policies; and routing the request to the second application to process the request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory, computer-readable medium comprising instructions for processing requests, the instructions executed by one or more processors to perform operations comprising:
-
generating a first layer comprising a plurality of applications that provide telephony control features, the plurality of applications comprising an application dispatcher; generating a second layer comprising a plurality of abstract call control enablers comprising; one or more call control enabler interfaces; one or more Application Program Interfaces (APIs) providing an abstract interface for invoking a plurality of call control functions, generating a third layer comprising a plurality of call control enabler instances that provide adapters to network resources to provide the plurality of call control functions, wherein one or more of the call control enabler instances are instantiated in response to one of the plurality of applications invoking one or more of the plurality of call control functions through the APIs; generating a fourth layer comprising a network layer of a plurality of network resources that are each coupled to corresponding ones of the call control enabler instances; receiving, by the application dispatcher, a Session Initiation Protocol (SIP) request; analyzing, by the application dispatcher, the request to extract a plurality of Uniform Resource Identifiers (URIs) to process the request from a header field of the request; dynamically determining, by the application dispatcher, a first application to process the request based on a first URI in the plurality of URIs in the header field, subscriber profile information, and one or more policies, wherein the determination is made in the first layer; routing the request to the first application to process the request; receiving a response from the first application after processing the request; dynamically determining, by the application dispatcher, a second application to process the request based on a second URI in the plurality of URIs in the header field, the response from the first application, the subscriber profile information, and the one or more policies; and routing the request to the second application to process the request. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for processing requests, the method comprising:
-
generating a first layer comprising a plurality of applications that provide telephony control features, the plurality of applications comprising an application dispatcher; generating a second layer comprising a plurality of abstract call control enablers comprising; one or more call control enabler interfaces; one or more Application Program Interfaces (APIs) providing an abstract interface for invoking a plurality of call control functions, generating a third layer comprising a plurality of call control enabler instances that provide adapters to network resources to provide the plurality of call control functions, wherein one or more of the call control enabler instances are instantiated in response to one of the plurality of applications invoking one or more of the plurality of call control functions through the APIs; generating a fourth layer comprising a network layer of a plurality of network resources that are each coupled to corresponding ones of the call control enabler instances; receiving, by the application dispatcher, a Session Initiation Protocol (SIP) request; analyzing, by the application dispatcher, the request to extract a plurality of Uniform Resource Identifiers (URIs) to process the request from a header field of the request; dynamically determining, by the application dispatcher, a first application to process the request based on a first URI in the plurality of URIs in the header field, subscriber profile information, and one or more policies, wherein the determination is made in the first layer; routing the request to the first application to process the request; receiving a response from the first application after processing the request; dynamically determining, by the application dispatcher, a second application to process the request based on a second URI in the plurality of URIs in the header field, the response from the first application, the subscriber profile information, and the one or more policies; and routing the request to the second application to process the request. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification