VOIP, Linux, and Asterisk Making Beautiful Voice Together



Similar documents
Ryan Brown October 9, 2004 The Burgh Live, LLC. Voice over IP using Asterisk (*)

Asterisk. Michael Kershaw

Mediatrix 3000 with Asterisk June 22, 2011

VOIP with Asterisk & Perl

Asterisk & ENUM. Extending the Open Source PBX. Michael Haberler, IPA Otmar Lendl, nic.at

Software: Sjphone and X-Lite softphones, Redhat Linux 9, Asterisk (downloaded current version mid June 03)

Micronet VoIP Solution with Asterisk

Asterisk By Example...doing useful VoIP things. Jonny Martin

Overview of Asterisk (*) Jeff Gunther

Setup the Asterisk server with the Internet Gate

Guideline for SIP Trunk Setup

IP Telephony with Asterisk. Sunday A. Folayan

ATA: An Analogue Telephone Adapter is used to connect a standard telephone to a high-speed modem to facilitate VoIP and/or calls over the Internet.

Applications between Asotel VoIP and Asterisk

Connecting Your Enterprise With Asterisk: IAX to Carriers. Dayton Turner Voxter Communications

Configuring the Cisco SPA8800 IP Telephony Gateway in an Asterisk Environment

Basic configuration of the GXW410x with Asterisk

Asterisk: The Open Source PBX Solution Adam Olson Systems and network administrators typically deal with

Configuration Notes 290

IP- PBX. Functionality Options

Telephony with an Asterisk phone system

SIP Trunking and Voice over IP

VoIP from A to Z. NAEO 2009 Conference Cancun, Mexico

Network Connection Considerations for Microsoft Response Point 1.0 Service Pack 2

VoIP Workshop PacNOG3

NodePhone Business Trunks User Manual

Internet Telephony Terminology

Skype connect and Asterisk

EarthLink Business SIP Trunking. Asterisk 11.2 IP PBX Customer Configuration Guide

ACD: Average Call Duration is the average duration of the calls routed bya a VoIP provider. It is a quality parameter given by the VoIP providers.

CVOICE Exam Topics Cisco Voice over IP Exam # /14/2005

Voice over IP Basics for IT Technicians

Internet telephony Asterisk system.

Voice Rate Plans. A Call Path + Inbound Phone Number combination is commonly referred to as a Phone Line.

- Basic Voice over IP -

Gateways and Their Roles

Operation Manual Voice Overview (Voice Volume) Table of Contents

Asterisk - The Basics

Voice over IP (VoIP) Basics for IT Technicians

You da M.A.N. Voice, over IP, over stuff

IPChitChat VoIP Service User Manual

Contents. Specialty Answering Service. All rights reserved.

Using the GS8 Modular Gateway with Asterisk

AT&T SIP Trunk Compatibility Testing for Asterisk

IP PBX using SIP. Voice over Internet Protocol

Open Source Telephony Projects as an Application Development Platform. Frederic Dickey Director Product Management

Using Asterisk with Odin s OTX Boards

Dramatically simplifying voice and data networking HOW-TO GUIDE. Setup VoIP & IP-PBX. edgebox version Document revision 1.1

intelligence at the edge of the network EdgeBOX V 4.5 VoIP How To

IP PBX. SD Card Slot. FXO Ports. PBX WAN port. FXO Ports LED, RED means online

The Telecom Terminal Solution

IP PBX SH-500N

Fig. Setting up of a VoIP call. Fig. Experimental setup

Connect your Control Desk to the SIP world

Unicorn60x0 IP ANALOG GATEWAY ASTERISK CONFIGURATION

Configuration Guide for connecting the Eircom Advantage 4800/1500/1200 PBXs to the Eircom SIP Voice platform.

LocaPhone VoIP PBX System

Compatible devices. Analog Telephone Adaptors. Linksys PAP2. Cisco ATA 186/188. Sipura SPA Sipura SPA Sipura SPA-3000

ICE 008 IP PBX. 1. Product Information New Mini PBX Features System Features

V101 SIP VoIP Telephone Adaptor User Manual V1.1m

Management Summary for Unified Communications IP PBX

IP Telephony Deployment Models

NEWT Managed PBX A Secure VoIP Architecture Providing Carrier Grade Service

Implementation of a Fully Functional VoIP Server Inside of a Campus Network

Asterisk Primer. Presented at Apricot, Bali, Feb 26 th Marc Blanchet Viagénie.

Test on IX130 Performance

Asterisk SIP Settings User Guide. Schmooze Com Inc.

Running Asterisk in a Corporate Environment: a Beginner s Tale

Prestige 2302R Series

VoIP-PSTN Interoperability by Asterisk and SS7 Signalling

VoIP and IP IT Tralee

Telco Depot IP-PBX Software Features

GSM VOIP GATEWAY LEVEL. User Guide. GB with GSM module Two-way converter between VoIP and GSM

VoIP Telephone Adapter User s Manual

spiderstar VoIP Interface Version 4.0 User manual

BLACK BOX. The Changing Communications Market. PBX Systems for Voice over IP (VoIP)

Introduction to Asterisk

Introduction to VoIP Technology

Crash Course in Asterisk

Analog Telephone Adapter Network settings via Keypad commands:

VoIP Bandwidth Considerations - design decisions

Configuration of Applied VoIP Sip Trunks with the Toshiba CIX40, 100, 200 and 670

Practical Guide. How to setup VoIP Infrastructure using AsteriskNOW

With 360 Cloud VoIP, your company will benefit from more advanced features:

Linksys Voice over IP Products Guide: SIP CPE for Massive Scale Deployment

Voice over IP Probe! for Network Operators and! Internet Service Providers

Xorcom IP-PBX Software Features

Configuration Notes 0217

Voice over IP (VoIP) for Telephony. Advantages of VoIP Migration for SMBs BLACK BOX blackbox.com

4. H.323 Components. VOIP, Version 1.6e T.O.P. BusinessInteractive GmbH Page 1 of 19

Quick Start Guide v1.0

General Guidelines for SIP Trunking Installations

H.323 / SIP VoIP Gateway VIP GW. Quick Installation Guide

VOICE OVER IP AND NETWORK CONVERGENCE

Transcription:

VOIP, Linux, and Asterisk Making Beautiful Voice Together Daryll Strauss President Digital Ordnance SCALE 3x Feb 13th, 2005

POTS World Ma Bell Telephone Company Wire Central Office Public Switched Telephone Network Central Office Telephone Company Wire Network Interface Device Home Wiring Point of Demarcation Network Interface Device Home Wiring

POTS World - Today ILEC Telephone Company Wire Central Office CLEC IXC *LEC Central Office Network Interface Device Home Wiring Incumbent Local Exchange Carrier Competitive Local Exchange Carrier Inter-exchange Carrier (Long Distance)

Connections to the Telephone Company Analog phone lines ISDN Digital phone lines. Two B Channels for voice and one D Channel for control Primary Rate Interface Digital phone lines. 23 B Channels and one D Channel.

Networked World Central Office ISP Internet Sever NID Home Wiring ADSL Router Cable Head End Coaxial Cable Cable Modem Ethernet Ethernet

Crossover Into Voice Over Internet Protocol VOIP crosses over between the Internet and the PSTN at several possible locations Intraoffice VOIP phones on the desktop Direct Inward Dial A phone number people can call Termination Calling local or long distance numbers.

VOIP Gear Foreign exchange Station analog telephone Foreign exchange Office Device that to phones Analog Telephone Adapter An interface with ethernet and an FXS port. Examples include Motorola VT1000 or Sipura 1000

VOIP Gear Portable Branch exchange A local telephone switch Interactive Voice Response A voice menu Key System A type of PBX that tightly tracks phone lines in and out of the system.

VOIP Protocols Session Initiation Protocol Manages a phone connection Realtime Transport Protocol Carries the voice data Inter Asterisk exchange Voice and control information between two PBXs. H323 An older voice/video teleconferencing protocol

VOIP Encoding Voice is digitized and compressed for transmission. Each voice channel requires some bandwidth. Converting between encodings is called transcoding ulaw and alaw (aka g711) are highest quality lowest compression. Essentially equivalent to analog voice. g729a is very good, but proprietary. Other formats include gsm, ilbc, adpcm (aka g726) 56kbps down to about 10kbps, but you lose quality as you drop.

Network Protocols Network Adress Translation Allow multiple machines to share on network address Quality of Service A protocol for prioritizing network traffic

Starting to VOIP VOIP Provider ISP Headset is highly recommended for better voice quality VOIP Providers Free World Dialup, Sipphone, Earthlink, or Skype(non standard) Free calls to other VOIP users ISP Soft phone Soft phone Peering numbers to call from one VOIP provider to another Uses SIP/RTP between your computer and VOIP provider Soft phone is a software phone that allows one to make VOIP calls SIP Address Resembles an email address for SIP calls

Making a SIP Call VOIP Provider ISP Register your SIP device. Let a proxy server know you're there so that it can ring you. Dial a SIP URL (or a number) ISP Soft phone Soft phone SIP connects to the destination and tells them what RTP ports to use and what encodings are supported RTP stream starts sending voice packets. If the call is forwarded to another SIP device, the client may be told to reinvite and reconnect directly to that host. Call completes SIP says goodbye

PSTN to VOIP VOIP Provider Internet Internet PSTN Interface Provider PSTN Some providers will route PSTN calls to your SIP phone number for free No choice of phone numbers. Usually a long distance call. ipkall.com is one such service ISP They make money from settlements People with standard phones can call you, but you can't call out Soft phone Good for testing incoming setup before attaching it to a live number.

Replace a Phone VOIP Provider Internet ISP Internet POP PSTN There are many residential VOIP providers. (Vonage, Broadvoice, packet8, VoicePulse, Sipphone, etc) You connect a standard phone via an ATA. Some let you bring your own device Ethernet Ethernet They provide a DID (phone number) people can call ATA FXS Port Many choices of services such as voice mail, many calling features, 800 numbers, etc. Many give unlimited calling locally, nationally, or even to some international destinations. Analog Phone SIP Phone

Replace a Phone (cont) VOIP Provider Internet POP Internet ISP PSTN If possible calls are sent entirely via the internet. Ethernet ATA FXS Port Ethernet If not, then they are routed via the Internet to the closest Point Of Presence before going to the PSTN Analog Phone SIP Phone

Connecting Your PSTN and VOIP VOIP Provider Internet POP Internet ISP PSTN *LEC Ethernet FXO Port ATA FXS port PSTN Add a device that supports an FXO port and it can be connected to the local exchange carrier. Sipura 3000 is an example of this that supports a single line. Calls can be routed out either port A dial plan is used specify which calls are sent out which port.

Asterisk Asterisk can speak SIP, IAX, and H323 over an ethernet port Asterisk supports cards that talk to analog lines via FXO or FXS Asterisk allows multiple lines to be shared by multiple devices Asterisk can play prerecorded sounds Asterisk can detect Dual Tone Modulation Frequency (touch tones) Asterisk can run programs to control various actions

First Tests With Asterisk FWD Internet Configure Asterisk to register with FWD using IAX Internet Softphone IPKall Asterisk Configure Asterisk to play a sound when it receives a call Use a soft phone with FWD to call Asterisk --- Configure IPKall to point at your FWD SIP address Call your IPKall number

Config Files IAX.conf extensions.conf [general] bandwidth=low disallow=lpc10 ; Icky sound quality... Mr. Roboto. allow=ulaw allow=gsm allow=alaw allow=ilbc allow=adpcm jitterbuffer=no register=>123456:password@iax2.fwdnet.net tos=lowdelay ;mailboxdetail=yes ; Guest must exist to avoid unauthorized users from connecting [guest] type=user context=default callerid="guest IAX User" [from-fwd] exten => 123456,1,Answer exten => 123456,2,Playback(monkeys) ; ; Trust Caller*ID Coming from iax.fwdnet.net ; [iaxfwd] type=user context=from-fwd auth=rsa inkeys=freeworlddialup

IVR and Voicemail With Asterisk extensions.conf voicemail.conf [macro-mainmenu] exten => s,1,answer exten => s,2,digittimeout,5 exten => s,3,responsetimeout,10 exten => s,4,setmusiconhold,random exten => s,5,background(greeting) [incoming] include => extensions ; IVR exten => 1,1,VoiceMail2(u201) exten => 2,1,VoiceMail2(u202) exten => 8,1,VoiceMailMain2 exten => 8,2,Hangup exten => 9,1,Directory(default) ; Invalid exten => i,1,playback(invalid) exten => i,2,background(greeting) ; Timeout default mailbox exten => t,1,voicemail2(u201) [from-fwd] include => incoming exten => ${FWDUSERID},1,Macro(mainmenu) [general] format=wav49 gsm wav servermail=asterisk attach=yes maxsilence=10 silencethreshld=128 maxlogins=3 fromstring=digital Ordnance Voicemail pagerfromstring=do VMail emailsubject=new VM (${VM_MSGNUM}) for ${VM_MAILBOX} from ${VM_CALLERID} emailbody=dear ${VM_NAME}:\n\nYou have a ${VM_DUR} long message (#${VM_MSGNUM}) in mailbox ${VM_MAILBOX} from ${VM_CALLERID} on ${VM_DATE}\nThe Digital Ordnance Voicemail\n tz=pacific [default] ; Each mailbox is listed in the form ;<mailbox>=<password>,<name>,<email>, <pager_email>,<options> 201=>1234,Daryll Strauss,daryll@nospam.com 202=>1234,Daryll Strauss,daryll@nospam.net

Interfacing With Asterisk Soft phones Soft phone ATA Gateway ATA's with analog phones SIP phones VOIP Provider LAN Analog phones into cards VOIP Providers over ethernet PSTN connection via cards PSTN PSTN via gateway Asterisk

Interfacing With Asterisk extensions.conf [global] MYNAME=Digital Ordnance MYPHONE=1234567890 FWDUSERID=12356 FWDPASSWD=PASSWORD FWDSERVER=iax2.fwdnet.net [macro-dialfwd] exten => s,1,setcallerid(${myphone}) exten => s,2,setcidname(${myname}) exten => s,3,dial(iax2/${fwduserid}: ${FWDPASSWD}@${FWDSERVER}/${ARG1}) exten => s,4,congestion [macro-makecall] exten => s,1,dial(${arg1},32,m) [macro-stdexten] exten => s,1,playback(pleasewait) exten => s,2,macro(makecall,sip/{arg1}) exten => s,3,goto(s-${dialstatus},1) exten => s-noanswer,1,macro(vmessage,u${arg1}) exten => s-noanswer,2,goto(incoming,s,1) exten => s-busy,1,macro(vmessage,b{arg1}) exten => s-busy,2,goto(incoming,s,1) exten => s-.,1,goto(s-noanswer,1) exten => a,1,macro(vmessage,${arg1}) [extensions] exten => 201,1,Macro(stdexten,201) exten => 202,1,Macro(stdexten,202) exten => 444,1,Meetme(1234) [fwd-forced] exten => _7.,1,Macro(dialfwd,${EXTEN:1}) [incoming] include => extensions ; IVR exten => 1,1,Macro(stdexten,201) exten => 2,1,Macro(stdexten,202) exten => 8,1,VoiceMailMain2 exten => 8,2,Hangup exten => 9,1,Directory(default) ; Invalid exten => i,1,playback(invalid) exten => i,2,background(greeting) ; Timeout default mailbox exten => t,1,macro(stdexten,201) [from-fwd] include => incoming exten => ${FWDUSERID},1,Macro(mainmenu) [default] include => incoming exten => s,1,macro(mainmenu) [home] include => fwd-forced include => extensions

Interfacing With Asterisk sip.conf [general] disallow=all ; Disallow all codecs allow=gsm allow=ilbc allow=adpcm allow=ulaw allow=alaw dtmfmode=rfc2833 srvlookup=yes register => <NUMBER>:<PASSWORD> @sip.voiprovider.com/<number> [201] ; Sipura ATA Phone line type=friend host=dynamic context=home secret=password callerid=daryll mailbox=201 nat=no [202] ; Soft phone type=friend host=dynamic context=home secret=password callerid=daryll mailbox=201 nat=no [voipprovider] type=friend username=1234567890 fromuser=1234567890 secret=password host=sip.voipprovider.com context=from-voiprovider fromdomain=sip.voipprovider.com nat=yes canreinvite=no dtmfmode=inband qualify=yes

Additional Features Asterisk can monitor and record calls Asterisk can provide features, like putting calls on hold, even if the phone doesn't support it. Asterisk can have dial plans that select among many VOIP providers Pickup groups can be defined Call queues can be created Asterisk can have time sensitive rules.

Going Beyond Your Father's PBX Asterisk can read/write values from/to a database Asterisk can send data to/read data from from an application Asterisk can be controlled by an external manager application Festival can be used for speech generation Speech recognition is harder, but also possible

Credit card/prepaid calling Dating service Live chat Follow me Call center (Asterisk agents) Games (Lost Vault, Taboo) Training Virtual Office Web calling/presence Example Applications

Gotchas SIP behind NAT is hard, because SIP encodes RTP port numbers in packets. Use IAX or a Virtual Private Network to tunnel behind a NAT. Simple Tunneling of UDP through NAT helps a lot with the problem, but isn't perfect. Echo can be a problem when transitioning between digital and analog network Asterisk doesn't support all features (like key system features) It's still very young and a lot of development is still being done. Encryption is not widely support for SIP (Evesdropping on SIP calls)

Gotchas (cont) Asterisk doesn't support SIP URLs well. Learning curve is steep read the docs, take small steps and test changes. Overloading the Asterisk box will degrade call quality. Asterisk should have a dedicated box. Transcoding (converting between formats) takes lots of cycles 911 is problematic. Where are you? With VOIP you can be calling from anywhere. VOIP also requires power unlike analog phones.

Gotchas (cont) Network traffic can cause you to loose quality. QoS can prioritize voice traffic over data. Consider private/vlan voice ethernet. Fax and Data calls can be a problem. Fax works well with some encodings or T.38. Data doesn't work (Tivo/DirecTV calls) Devices from VOIP providers may be locked. VOIP providers may not support IAX, Asterisk, or soft phones.

Asterisk Add Ons ASTMan is manager that lets you manipulate Asterisk while it is running via a network connection. AMP is GUI for configuring Asterisk and some of it's features. Using a GUI makes the setup easier at the cost of some of the scripting flexibility. Flash Operator Panel is a program that allows the user to control Asterisk (monitor, transfer, hangup, etc. calls) Asterisk@Home is a GUI based on AMP and other tools for using Asterisk in a home environment.

Other Open Source VOIP Systems SIP Express Router A SIP processor that does not handle the media stream. Scales to very large numbers of users. SER and Asterisk work well together. SIP Foundry A PBX that focuses on SIP. Has a nice web interface for configuration.

A Brave New World Q: Why do we use phone numbers? A: SIP URLs are easier to remember. SRV records allow you to do that. Q: How do I know if a phone number is VOIP? A: E164 allows users to register phone numbers that redirect to SIP URLs. Q: How do I route my call? A: With the wide variety of VOIP service providers you can select on a call by call basis whichever one best meets your needs (functions, cost, quality).

Conclusions My goal was to introduce you to telephony and VOIP. Teach you the basic terminology. Give you examples you can do yourself for very little cost Get you thinking of Asterisk not only as a PBX but as a voice application platform

Q&A Don't forget the VOIP panel at 3:00 today.

Resources Websites: http://www.voxilla.com http://www.asterisk.org http://www.voip-info.org http://www.asteriskdocs.org Mailing Lists: asterisk-users mailing list (HIGH volume)