1/17
Asterisk @ CMU
Everything you needed to know to connect your dialog system to the world (but were afraid to ask)
2/17
Dialog Systems
You’ve got it up and running – it works great! On your PC
Now you decide to let anyone call it up Current approach: Gentner boxes
Dialog server connected directly to phone line Old technology, many issues with audio quality Huge inertia in setting up new systems Many, many experience people will tell you:
THIS IS A BAD SOLUTION!
5/17
Asterisk
Fully open source Fully compliant with open standards
H.263 / RFCxyz / ulaw / … [Ignore most of this] SIP
Allows a variety of setups
6/17
Asterisk Setup
It’s been done Asterisk@Home
Self-contained Linux + Asterisk installation FX100P phone interface with Zaptel drivers
Aka Voicemodem Pretty sucky quality Luckily, Asterisk does some echo cancellation
Virtual digital assistant “Press 1 for email, 2 for schedule, 3 for …”
7/17
Asterisk with Olympus
What you need to do Read up on SIP
Tell me about it Implement a SIP-compliant interface for Olympus Manages session stuff
New call Hang up Transfer call?
Manages Audio I/O
8/17
Asterisk Lingo
Extensions For us, these are all SIP These are equivalent to phone lines in the real
world One SIP extension per dialog system
200 – Roomline 300 – Let’s Go! 400 – Sublime …
10/17
Asterisk Lingo
Trunks Regular phone lines Right now we only have one Zaptel drivers make it work
12/17
Asterisk Lingo
Wiring it all together Asterisk knows about
SIP extensions (Sublime, RoomLine, etc.) Physical phone lines (1 so far)
We need to tell it how to connect these up Fixed rules
Time dependent Digital receptionist
User choice dependent Could make an Olympus-based Digital receptionist
You’d need to implement SIP Transfer
16/17
Asterisk
Things you should know Asterisk server is speeg2.speech.cs.cmu.edu SIP works only on UDP, port 5060 Ask me (jsherwan at andrew) to create extensions
for your dialog systems Things we need to figure out
Voice codecs (preferably use raw audio) 16-bit linear codec (128kbps)
Echo cancellation Alex / Alan, 24-port T1 Digium board, perhaps?