Methods and apparatus for providing external access to executable call flows of a network application
First Claim
1. A computer system that has an interface to a telephone network and that is capable of executing network applications that provide telephony services to callers who access the computer system via the telephone network, said network applications each comprising one or more executable call flows, said computer system comprising:
- a call flow library to which client applications, including client applications that do not comprise any call flows, and said network applications can be programmatically linked to enable any such client application to call and initiate execution of a selected call flow of any such network application, the call flow library comprising;
a data structure containing information describing the links between said call flow library and each of said network applications that is linked thereto; and
program code callable by a client application that, based at least in part on the information contained in said data structure, enables said client application to initiate execution of a selected call flow of a selected network application linked to the call flow library.
12 Assignments
0 Petitions
Accused Products
Abstract
In a computer system that has an interface to a telephone network and that executes network applications comprising one or more call flows that provide telephony services to callers who access the computer system via the telephone network, a call flow library provides an interface between the network applications and a client application to enable the client application to externally call and initiate execution of a selected call flow of one of the network applications.
24 Citations
16 Claims
-
1. A computer system that has an interface to a telephone network and that is capable of executing network applications that provide telephony services to callers who access the computer system via the telephone network, said network applications each comprising one or more executable call flows, said computer system comprising:
-
a call flow library to which client applications, including client applications that do not comprise any call flows, and said network applications can be programmatically linked to enable any such client application to call and initiate execution of a selected call flow of any such network application, the call flow library comprising;
a data structure containing information describing the links between said call flow library and each of said network applications that is linked thereto; and
program code callable by a client application that, based at least in part on the information contained in said data structure, enables said client application to initiate execution of a selected call flow of a selected network application linked to the call flow library. - View Dependent Claims (2, 3, 4, 5, 6)
first program code callable by a client application and containing instructions that cause the computer system to access the routing table and to return to the client application an indication of the connection index associated with the link between the call flow library and a selected network application; and
second program code callable by the client application and containing instructions for causing the computer system to initiate, via the link identified by the connection index indicated by said first program code, execution of a selected call flow of the selected network application.
-
-
3. The computer system recited in claim 2, wherein said second program code further causes said computer system to pass to the selected network application, an identifier of the selected call flow and initialization parameter needed for execution of the selected call flow.
-
4. The computer system recited in claim 2, wherein said call flow library further comprises third program code callable by a network application upon installation of that network application on the computer system, the third program code containing instructions that cause the computer system to establish the link between the network application and the call flow library and to store in the routing table the connection index associated with that link and at least one name that identifies the network application.
-
5. The computer system recited in claim 2 wherein each network application has a name associated therewith, and wherein the application name of each linked network application is also stored in the routing table entry for that network application, and further wherein the first program code accesses the routing table using the application name to obtain said indication of the connection index.
-
6. The computer system recited in claim 2 wherein said indication of the connection index comprises a SLOT # that serves as an index into the routing table for the entry of a given network application.
-
7. A computer-readable medium having program code stored thereon for use in a computer system that has an interface to a telephone network and that executes network applications that provide telephony services to callers who access the computer system via the telephone network, each network application comprising one or more call flows, said program code implementing a call flow library to which client applications, including client applications that do not comprise any call flows, and said network applications can be programmatically linked to enable any such client application to externally call and initiate execution of a selected call flow of any such network application, the call flow library comprising:
-
a data structure containing information describing the links between said call flow library and each of said network applications that is linked thereto; and
program code callable by a client application that, based at least in part on the information contained in said data structure, enables said client application to initiate execution of a selected call flow of a selected network application linked to the call flow library.
-
-
8. The computer-readable medium recited in claim 8 wherein said data structure comprises a routing table containing an entry for each network application linked to said call flow library that specifies a connection index associated with the link between said call flow library and that network application, and wherein said program code comprises:
-
first program code callable by a client application and containing instructions that cause the computer system to access the routing table and to return to the client application an indication of the connection index associated with the link between the call flow library and a selected network application; and
second program code callable by the client application and containing instructions for causing the computer system to initiate, via the link identified by the connection index indicated by said first program code, execution of a selected call flow of the selected network application. - View Dependent Claims (9, 10, 11, 12)
-
-
13. In a computer system that has an interface to a telephone network and that executes network applications that provide telephony services to callers who access the computer system via the telephone network, each network application comprising one or more call flows, a call flow library to which client applications, including client applications that do not comprise any call flows, and said network applications can be programmatically linked to enable any such client application to externally call and initiate execution of a selected call flow of any such network application, said call flow library comprising:
-
a routing table containing an entry for each network application programmatically linked to said call flow library that specifies a connection index associated with the link between that network application and said call flow library;
first program code callable by a client application and containing instructions that cause the computer system to access the routing table and to return to the client application an indication of the connection index associated with the link between the call flow library and a selected network application; and
second program code callable by the client application and containing instructions for causing the computer system to initiate, via the link identified by the connection index indicated by said first, execution of the selected call flow of the selected network application. - View Dependent Claims (14, 15, 16)
-
Specification