150 likes | 236 Views
Real-time multimedia and communication in packet networks. iLanga. The Big Idea. The flexibility of Asterisk what we have learnt Working in the software domain bridge between software and hardware closing open environment; more flexible to change
E N D
Real-time multimedia and communication in packet networks iLanga
The Big Idea • The flexibility of Asterisk • what we have learnt • Working in the software domain • bridge between software and hardware closing • open environment; more flexible to change • Allows us to create something very functional yet simple - iLanga
SIP Express Router • Focuses only on SIP messaging • Performs forking properly • Is able to handle high volumes of SIP traffic • Has forked into two separate open source projects: • OpenSER • Kamailio
Registration with SER REGISTER 401 UNAUTHORISED (nonce,realm) REGISTER (with MD5Hash(user+nonce+pwd)) 200 OK
Example Call Set-up INVITE:3000@sip.ict.ru.ac.za INVITE:7521@sip.ict.ru.ac.za Asterisk INVITE:1013000@sip.ict.ru.ac.za INVITE:1013021@sip.ict.ru.ac.za INVITE:0786346926@sip.ict.ru.ac.za 3001 Hangup OK Hangup 3000 3021 0786346926
Asterisk • The core of iLanga • Speaks • RTP • IAX2 • Zap (1 QUADBRI) • 4 channels to markreader premium line • 2 to Telkom and 2 to Rhodes PBX
Asterisk • Uses AGI • Prepaid application • Mark reader application • Extensive use of the Dialplan • Routing to Telkom and Rhodes • Routing to applications • Conferencing • Directory • Voicemail etc;
MySQL Database • We have been configuring asterisk via files in /etc/asterisk • You can also provide configuration via a Database using /etc/asterisk/extconfig.conf • IAX registrations • SIP registrations (SER talks to the database) • Voicemail • Extensions still configured in extensions.conf! • We added “usercontext.conf”
Web Frontend • Provides a second way of accessing iLanga • Accessing your PBX from anything other than a telephone is a new concept – Made easy by soft switches. • Update your details • Edit ring-able devices • Listen to and control voice mail • Add prepaid credit • View call log • View the directory – click to dial • Everything you can do on the site – you should be able to do on a phone
Web Frontend • Hosted by an Apache web server • Written in Flash • Also allows us to make the web site dynamic! • Talks to • Perl (CGI) • PHP • Java Proxy (used to be Python)
iLanga Proxy • Many entities talking to the manager interface caused problems • A Proxy was built • First in Python, now in Java • Passes messages from the web interface to Asterisk • Passes messages from Asterisk to the MySQL DB • Some actions • Icon information • Extension state information • Dynamic content on the front end
Short tutorial on Services Develop (in your head / on paper) a brief action plan for how you would develop one of the following services: • SPIT (Spam over Internet Telephony) generator • Application to curb SPIT in telephony applications • Asterisk-based markreader that integrates with ROSS to deliver marks to calling students over a phone • Audio database for storing and replaying all the telephone conversations that you make • Meeting scheduler for setting up meetings with other iLanga users • A ‘Hangman’ game that is played over the phone between two players Present your ideas to the rest of the class