210 likes | 227 Views
Kommunikatsiooniteenuste arendus IRT0080. Loeng 10, “telefonisõlmed” Avo Ots telekommunikatsiooni õppetool, TTÜ raadio- ja sidetehnika inst. avo.ots@ttu.ee. Voice Telephony & Voice Mail Unified Messaging Conferencing Find-Me-Follow-Me Call Center. Presence. Video Messaging/Mail
E N D
Kommunikatsiooniteenuste arendusIRT0080 Loeng 10, “telefonisõlmed”Avo Otstelekommunikatsiooni õppetool, TTÜ raadio- ja sidetehnika inst.avo.ots@ttu.ee
Voice Telephony & Voice Mail Unified Messaging Conferencing Find-Me-Follow-Me Call Center Presence Video Messaging/Mail Conferencing Surveillance Integration WEB-Portal, Desktop, Devices and Server-Business Process Collaboration Instant Messaging eMeetings Web Conferencing Business Apps CRM, Supply Chain, Call Center
What is Asterisk… • Asterisk is a PBX replacement system, designed to reproduce the features of standard office phone systems. Asterisk is also a Voice over IP toolkit which allows interaction between these PBX features and IP-based networks (local and remote.) Asterisk is hardware independent, and is designed to run on OSS operating systems.
Goals of Asterisk • Provide Open-Source implementations of basic PBX functionality • Be vendor neutral (despite last point here) • Be as all-encompassing as possible for features • Be flexible and provide hooks for advanced features • Move proprietary hardware features into open source software • Sell TDM hardware cards for Digium
Channel types: VoIP • SIP - Session Initiation Protocol • H.323 • MGCP - Media Gateway Control Protocol • SCCP - Skinny Client Control Protocol (Cisco) All of these use UDP for setup/transport except for SCCP, which uses a mix of UDP/TCP
Channel types - non-VoIP • TDM POTS cards (Digium, Zapata, Voicetronix, etc.) • TDM Digital (AdTran VoFR, Digium E1/T1, etc.) • All TDM cards require install of Zaptel driver suite • CAPI (ISDN card support for Linux ISDN driver) • USB dongle for FXS • Modem drivers for certain modems (yuck) • Speaker/headphones (don’t try this at home, kids)
Some Applications • Dial - connects an inbound call with some other channel. One specifies the technology (SIP, Zap, H323, etc.) the number to be dialed, the Ring-No-Answer delay, and options (if desired) exten => 1234,1,Dial(SIP/1234,25) exten => 1234,2,Voicemail2(u1234)
Some Applications (cont’d) • Playback(filename) • Plays a sound file in .gsm format • Background(filename) • Plays a sound file while listening for DTMF (touch tone) input [test] exten => 123,1,Background(press-a-number) exten => 123,2,Goto(1) exten => _X,1,SayDigits(${EXTEN})
Some Applications (cont’d) • MeetMe(conf#) • Adds the caller to a conference room (optionally muted or unmuted) • Monitor • Records channel (in and out) to .wav or .gsm files • PrivacyManager • Forces anonymous calls to enter valid ANI
Some Applications (cont’d) • DISA • Lets callers from one channel get dialtone on another channel • SetMusicOnHold • You can specify .mp3 files as music on hold selections (random or sequential) • MP3Player • Fairly useless, but fun. You can specify files or streams of .mp3 to be played to callers.
Some Applications (cont’d) • There are over 80 different applications in the system - no time to talk about them all • Applications are easily created and added if you’re a decent C coder • Channels are generic, so you don’t have to know about any of the ugly VoIP or TDM stuff
Voicemail • Voicemail can be sent as email as well as stored on disk (1 minute = 100kb) • Short pages can be sent to email addresses when VM received • Customizable timezones and time readouts per user - supports multiple languages • .wav, .gsm file storage or email • Dial by name directory hinges on VM data
Practical Uses (home) • Ditch your long distance company! SIP long distance (domestic and int) providers starting to crop up at low rates. Use Asterisk to gateway to them. • Prevent phone spam! Callers with no CID get ditched. • Filter your phone lines. Allow or forward callers who are on “priority” lists based on ANI.
Practical Uses (office) • Ditch your LD company (see prior slide) • Interconnect office PBXs at zero network cost • Get “Unified Messaging” • Give ubiquitous access to the PBX for home/travelling employees • Disaster recovery scenarios • Move phones into your IT department and away from your expensive PBX consulting firm • Eliminate adds/moves/changes as physical chores
Advanced Topics • Call queues - you can build a call center with Asterisk, with various call weightings and agent logins/hot seating • Multi-ring, cascading ring with different technologies (inbound calls forward to your desk line and your cell phone - first answer gets it) • Multi-language support with same dialplan • Festival integration for voice synthesis
Really Advanced Topics • Manager interface: TCP socket based interface for controlling and monitoring the system; meant for automated manager tools (see: gastman) • AGI scripts: built-in scriptable hooks to allow passing of data back and forth between Asterisk and external programs. • Asterisk.pm - Perl module that works with AGI to handle gruntwork of call handling
Really Advanced Topics(cont’d) • Sybase and MySQL modules • CDR (call detail record) output can be customized or put into database instead of flat file • Use IAX2 trunk mode to get up to 200% more calls in the same bandwidth as other VoIP systems • Route your calls to least-cost providers
Crazy Extra Stuff That Didn’t Fit • Can run PPP or HDLC over channels - Asterisk can be a RAS server or a router (masochism) • Can use speaker/microphone as a “phone line” • Can do video calls or conferencing • ENUM e.164 DNS-based call routing • E.G. 2.1.2.1.2.5.4.3.0.5.1.e164.arpa. • TDM over ethernet for front-end processing
SIP Specifications Supported RFC 2617 - HTTP Authentication: Basic and Digest Access Authentication RFC 3261 - Session Initiation Protocol RFC 2705 – Media Gateway Control Protocol (used for Digit Map implementation) RFC 2833 - RTP Payload for DTMF Digits RFC 3265 - SIP-Specific Event Notification draft-ietf-sip-refer-07-Refer-To Header RFC 1321 - MD5 Message-Digest Algorithm RFC 3264 - An Offer/Answer Model with SDP RFC 783 - TFTP Protocol (used for transferal of configuration files to the gateway) draft-ietf-sipping-mwi-01 - Message Waiting Indication draft-burger-sipping-netann-05 draft-ietf-sipping-cc-transfer-01 RFC 2327 - SDP: Session Description Protocol draft-ietf-sipping-dialog-package-01 draft-ietf-sipping-service-examples-04 RFC 1889 - RTP: Transport Protocol for Real-Time Applications
Lingid http://nerdvittles.com/ http://www.trixbox.org/ http://www.counterpath.com/ http://www.loligo.com/asterisk/ http://www.onlamp.com http://www.voip911.gov/ http://www.e164.org/
Presentatsioonid http://ws.edu.isoc.org/data/2006/12675549354482287a4f488/telephony.ppt http://www.educause.edu/upload/presentations/E06/SESS072/Production%20Quality%20Open%20Source%20VoIP.ppt