Method and system for allowing switched voice and data communication among multiple application programs
First Claim
1. A method for enabling plural application programs running on a first computer to communicate with plural application programs running on a second computer during a switched voice and data communication, wherein the first and second computer each has an application programming interface to the application programs, a router module and a communication device interface coupled to a communication device for communication over a telephone line, the method comprising:
- transferring voice data over the telephone line during a telephone call using the communication device;
temporarily blocking the transfer of voice data over the telephone line during the telephone call;
transferring data from first and second application programs running on the first computer to the router module in the first computer using the application programming interface;
assigning first and second universally unique protocol identification numbers to the first and second application programs in each computer to identify data associated with the first and second application programs, respectively;
from the first and second applications in the first computer, specifying to the router module in the first computer that the first and second applications in the first computer are associated with the first and second universally unique protocol identification numbers, respectively;
from the first and second applications in the second computer, specifying to the router module in the second computer that the first and second applications in the second computer are associated with the first and second universally unique protocol identification numbers respectively;
routing the identified data from the router module of the first computer to the router module of the second computer, wherein the routing step includes constructing one or more blocks of data, each block of data having at least one header with either the first or the second universally unique protocol identification number or both the first and second universally unique protocol identification numbers to identify data from the first and second application programs; and
transferring the identified data from the router module of the second computer to corresponding first and second application programs running in the second computer, using the first and second universally unique protocol identification numbers to direct the identified data to the corresponding programs.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system for allowing multiple application programs to communicate in the context of a switched voice and data communication. The method includes providing a communication interface between multiple application programs and a router module in a sending and receiving system, and then using the router module to format data from one or more application programs into a single data block. During a brief interruption of the voice portion of the call, the sending system transfers the data block to the receiving system where the data block is interpreted and then routed to corresponding application programs. The system includes a router module to format data, a communication interface to couple applications to the router module, a communication port to transfer data over a phone line, through a communication device and a call manager module for performing line control.
145 Citations
16 Claims
-
1. A method for enabling plural application programs running on a first computer to communicate with plural application programs running on a second computer during a switched voice and data communication, wherein the first and second computer each has an application programming interface to the application programs, a router module and a communication device interface coupled to a communication device for communication over a telephone line, the method comprising:
-
transferring voice data over the telephone line during a telephone call using the communication device; temporarily blocking the transfer of voice data over the telephone line during the telephone call; transferring data from first and second application programs running on the first computer to the router module in the first computer using the application programming interface; assigning first and second universally unique protocol identification numbers to the first and second application programs in each computer to identify data associated with the first and second application programs, respectively; from the first and second applications in the first computer, specifying to the router module in the first computer that the first and second applications in the first computer are associated with the first and second universally unique protocol identification numbers, respectively; from the first and second applications in the second computer, specifying to the router module in the second computer that the first and second applications in the second computer are associated with the first and second universally unique protocol identification numbers respectively; routing the identified data from the router module of the first computer to the router module of the second computer, wherein the routing step includes constructing one or more blocks of data, each block of data having at least one header with either the first or the second universally unique protocol identification number or both the first and second universally unique protocol identification numbers to identify data from the first and second application programs; and transferring the identified data from the router module of the second computer to corresponding first and second application programs running in the second computer, using the first and second universally unique protocol identification numbers to direct the identified data to the corresponding programs. - View Dependent Claims (2, 3, 4)
-
-
5. A system for allowing plural application programs executing in a first computer to communicate with corresponding plural application programs executing in a remote computer in a switched voice and data communication comprising:
-
a communication device interface for communicating with a telephone communication device; an application programming interface for allowing the plural application programs to share access to a telephone connection, the application programming interface including functions which enable the plural application programs to transfer data to the corresponding plural application programs executing in a remote computer by specifying unique protocol identification numbers that uniquely identify the plural application programs and data associated with the plural application programs; a telephone line device driver in communication with the communication device interface for controlling the telephone communication device; a call manager module in communication with the telephone line device driver for issuing commands to switch the telephone communication device between voice and data transfer modes; and a router module in communication with the application programming interface for receiving the data from the plural application programs and formatting the data and the unique protocol identification numbers into one or more data blocks for transfer through the communication device interface, the router module in communication with the call manager module to switch the telephone communication device to data transfer mode;
wherein the router module is operable to transfer the one or more data blocks to the communication device interface when the telephone communication device is switched to data transfer mode during the switched voice and data communication. - View Dependent Claims (6, 7)
-
-
8. A method for switched voice and data communication among corresponding application programs executing in first and second computers interconnected through a phone line, each of the first and second computers including a router module and a communication device interface coupled to a modem for communication over the phone line, the method comprising:
-
establishing communication between the router modules in the first and second computers; blocking a voice communication over the phone line; from a first application program, passing a first unique protocol identification number and data associated with the first application program to the router module; from a second application program, passing a second unique protocol identification number and data associated with the second application program to the router module; communicating the first and second unique protocol identification numbers associated with the first and second application programs from the router module in the first computer to the router module in the second computer; and routing the data associated with the first and second application programs in the first computer to the corresponding first and second application programs in the second computer by constructing one or more blocks of data including the first and second unique protocol identification numbers to identify the data associated with the first and second application programs, sending the one or blocks of data to the second computer and using the first and second unique protocol identification numbers to route the data to the corresponding first and second application programs; and for subsequent communication between the application programs in the first and second computers, selecting a random identifier to identify data transfers between corresponding application programs, and routing data using the selected random identifier to route data between the corresponding application programs. - View Dependent Claims (9, 10)
-
-
11. A computer implemented method for enabling plural application programs executing in a first computer to communicate with corresponding versions of the plural application programs executing in a second computer during a switched voice and data communication over a telephone line, the method comprising:
-
issuing a first command to a modem supporting switched voice and data communication to switch the modem into a voice mode so that voice data is transferred over the telephone line during a telephone call; issuing a second command to the modem supporting switched voice and data communication to switch the modem into a data mode such that the transfer of voice data over the telephone line during the telephone call is temporarily blocked; while the modem is in data mode, performing the following steps; sending a first unique protocol ID assigned to a first application program executing in the first computer and a corresponding first application program executing in the second computer to the modem for transfer to the second computer; sending a first block of data associated with the first application program to the modem for transfer to the second computer, wherein the first block of data is identified with the first unique protocol ID; sending a second unique protocol ID assigned to a second application program executing in the first computer and a corresponding second application program executing in the second computer; and sending a second block of data associated with the second application program to the modem for transfer to the second computer, wherein the second block of data is identified with the second unique protocol ID. - View Dependent Claims (12, 13, 14, 15, 16)
-
Specification