DSRG home Home Projects People Search
DSRG navigation bar

CT Hardware
CT Projects
CT - integration with computer networks and distributed systems

Computer Telephony

Computer Telephony (CT) is a new technology providing common users with a wide spectrum of computer-based or computer-aided services through public telephones. Computers equipped with special hardware play roles of intelligent telephone exchanges (PBXs), which can switch incoming calls as well as interact with the user. CT applications can play messages or other audio files - previously recorded or synthesized on the fly. A person on the other end can press buttons or even speak if the application is able to analyze human speech. Simple as it is, this model of communication can be quite efficient.

The technology is a perfect solution wherever one needs to answer a lot of calls every day, and the disliked Please leave a message is not enough. On the other hand, computer programs in CT can be completely invisible to users. They just switch calls and let people talk. The essential issue here is that the software takes care of the switching so that no human help is necessary in general.

The advantages of CT are the ease of use and high availability of telephones together with the flexibility of computers. While Internet gives a better and more universal access to information and services, it is still easier to grab your cellular phone and call the airport to make a reservation than to find a computer and do the same with a browser, especially if you are just driving your car. CT allowes people do more - and often quicker - with the same phones as they have known and used for years.

Although quite innovative, Computer Telephony has already been tested in various commercial applications, e.g. call centers, call switching systems, answering machines.

CT Hardware

Computer Telephony requires special hardware to connect a computer to the public telephone network. This can be achieved in various ways: one can insert a CT board into a computer slot or connect an external telephone exchange to a computer port. The former solution is usually cheaper. However, the latter is better for a large institution with many telephone lines. Our laboratory is equipped with a PC with two CT boards from Dialogic. One of them, D/41 ESC, has four ports which can be connected to the public telephone network. Its main functions are: answering incoming calls, the analysis of digits entered on the phone, playing and recording audio files. It can also be used to dial a given number or just switch a call to some other line. The other board, MSC/240 R, has 24 ports to which one can connect phones directly. Although its functionality is limited, the board is necessary to build a call center, an intelligent telephone exchange or a conference system.

Among other CT vendors are Pika Technologies Inc. and Ericsson. Pika produces CT boards, while Ericsson offers a variety of products, ranging from telephone exchanges to complete hardware and software applications.

CT Projects Developed by DSRG

We are currently developing a few projects concerning Computer Telephony. Special stress is put on combining CT with computer networks and distributed systems. One of potential applications of the technology is providing common Internet services, such as e-mail. For example, students of our university have created programs that allow a user to check his/her Internet mailbox and to listen to the messages - all that with a phone.

Another interesting idea is IP-Telephony. This application uses existing IP networks to transmit voice data from and to the public telephone network. This gives us a possibility to talk to somebody if we have a computer capable of playing and recording sound, and networked, of course. It can also be more economical than the public telephone network, especially if we have a long-distance Internet connection.

Being aware of the variety of hardware solutions present at the CT market, we decided to design a programming library that provides an abstract, object-oriented and hardware-independent API. By using it, programmers can be sure that their code will work with different CT boards or even a PBX.

We are also trying to integrate computer telephony with our ABng system. Generally, the aim is to use ABng to find the phone to which the incoming call should be switched. In most cases it will be the phone nearest to the person who should answer the call.

Last but not least, we want to build a call center. This is a very popular application and very interesting from the designer's point of view. This system can be used in places where one needs to answer a lot of calls. The task of the software is to assign an incoming call to a proper person (called agent) and to switch it there.

CT - Integration with Computer Networks and Distributed Systems

As written above, our projects are often integrated with computer networks. IP-Telephony uses Internet to transmit voice data. E-mail applications use network services (POP3). Some systems (e.g. Call Center) utilize network at a higher level. They are in fact distributed systems, built with CORBA. This allows to run various modules of the system on multiple machines, which is a more scalable and universal solution. This is particularly important because those systems are developed with different technologies, on different platforms (Windows NT/x86, Solaris/Sun, Linux/x86, Linux/Sun in near future). Heterogeneity brings us the possibility to select the best available software and hardware for the given application, while the whole system still remains well-integrated. What's more, the distribution of software components is necessary to obtain load-balancing. In large systems, with a great number of calls, with many concurrent services, performance is an essential issue.


Copyright © Distributed Systems Research Group. All rights reserved. -