Using a Dialogic D41H card installed in an IRT lab PC, implement a gateway between the Internet and analog telephone lines. This allows Internet telephones or sipc PC-basec Internet telephony clients to make calls to the legacy phone system, and receive calls. Audio from the gateway is packetized using RTP and then send to the network device.
Additional hints can be found in the ITX project page.
The gateway uses the IRT SIP library (contact: Kundan Singh) or MGCP. MGCP source code is available from Vovida, for example.
Contact Jonathan Lennox to obtain the RTP library.
Requires lower-layer C/C++ programming; familiarity with socket programming.
Using dx_rec() and other functions, program the card to generate and receive audio RTP packets.
All calls from the gateway should be directed to a pre-configured SIP server. You may use the SIP library for setting up calls and the RTP library for sending and receiving audio data.
For advanced group projects, this gateway can be extended so that a phone caller can "dial up" an Internet address. The phone answers Welcome to the Internet telephony gateway service. Please enter the email address or extension, using * for the "at" sign. The user then "types" in the beginning of a name or email address using the phone's numeric keys (447 for hgs, for example), with the text-to-speech facility offering the list of ambiguous choices. You should be able to resolve both ambiguous user names (e.g., from the /etc/passwd file) and ambiguous host names (e.g., by acquiring a zone dump of the .com entries).
As a low-priority item, consider also the restriction of outgoing phone calls.
Your system must handle the case when no outgoing phone line is available.
Documentation, and an index of documentation for the card are available.