during a trip to lloret de mar (in april 2004) i read some stuff about
"pbx4linux" in the german computer magazine c't. they explained how to connect a standard
isdn phone to a linux box (acting as pbx) running pbx4linux. unfortunately pbx4linux supports only h.323 connections
at this time so i decided to use asterisk to connect my isdn phone to a sip (german provider "sipgate") network.
asterisk is a linux pbx software with a nice plugin interface that allow to use a wide spectrum of endpoints.
e.g. you can route between h.323, sipgate, capi (isdn), mISDN (new isdn interface for kernel 2.6) etc..
there are also some application plugins for asterisk:
festival - a linux text2speech engine - makes your pbx speaking english
mp3player - playback of mp3s stored on your harddisk
a cgi-like extensions - called agi (asterisk gateway interface) - allows you to control asterisk
with your favourite scripting language (perl, php, python, ...). i wrote a small phonebook script
to lookup the callerid in a mysql table and display a custom name on my isdn phone.
my configuration routes between mISDN (HFC-S card with attached isdn phone) and sipgate (multiple accounts).
by using different prefixes on the phone i can choose which sipgate account to use, e.g.
prefix 1 for hamburg (040), prefix 2 for berlin etc.
to plug a standard isdn phone in a ISDN card you need a 100ohm resistor, a power source and a crossed isdn
cable (standard crossover ethernet doesn't work). (see
http://isdn.jolly.de).
the easiest solution for this is to use an NT1 (also called NTBA). it contains the needed resistors
and supplies power to your attached isdn phones, additionally you can wire your cable directly to
internal pins - so it's kinda perfect for this job.
you can configure multiple MSNs on your isdn phone for each sip account (i used the sip-id as MSN) and
therefore a ringtone for each id.
Okay - i got a really cheap fritz!pci isdn card (5 eur) to continue this project... The installation was pretty easy - just
plugged that card into my box and connected it to my isdn s0 bus. I configured asterisk to dial-out with prefix 0, see example config
for more details.
festival isn't used so far - but it's easy to extend your configuration with the following command:
http://www.voip-info.org/wiki-Asterisk+cmd+Festival
okay, enough theory, let's get started...