Thursday, October 16, 2008

Configuring a VoIP Device / Softphone

GENERAL INFORMATION
Asterisk (and Asterisk@Home) is an extremely powerful piece of open source software which allows you to run a full-featured software based PBX on your computer. Typically Asterisk is run on Linux, but it has been known to run on Mac OSX and in some cases even Microsoft Windows.

Asterisk is extremely powerful and versatile, but requires dedication to get it up and running. Asterisk is NOT plug and play software; and because of its extremely versatile nature is typically difficult for first-time users to setup.

Below we have listed resources to help you in configuring Asterisk (or Asterisk@Home); as well as a basic setup guide for Asterisk. Because of the complexity of Asterisk we cannot provide detailed support in helping you get Asterisk running; but you can find help from many Asterisk experts in the resource list below.

DID based routing with Asterisk and trixbox / freePBX


RESOURCES
Main Project Pages:
Asterisk - http://www.asterisk.org
Asterisk@Home - http://asteriskathome.sourceforge.net

Help / Support:
Asterisk Support Page
Asterisk Forum
Asterisk Wiki
Voxilla Asterisk Forum
Broadband Reports VoIP Forum

Setup Guides:
Nerd Vittles Asterisk@Home Newbie Guide
Nerd Vittles Asterisk Tutorials
Toms Networking Asterisk@Home Setup Guide
VoIP-info.org Asterisk Installation Tips


BASIC Asterisk CONFIGURATION FOR CALLCENTRIC

1Edit file sip.conf:
  • Add/change [general] section to indicate the following parameters:
    [general]
    dtmfmode = rfc2833
    context=from-callcentric
    srvlookup=yes
    register => 1777MYCCID:SUPERSECRET@callcentric.com/1777MYCCID

  • Add the following section to handle calls to/from callcentric:
    [callcentric]
    type=peer
    context=from-callcentric
    host=callcentric.com
    username=1777MYCCID
    secret=SUPERSECRET
    fromuser=1777MYCCID
    fromdomain=callcentric.com
    insecure=very

  • Add a section to handle calls to/from your SIP phone. This is just a sample. Refer to Asterisk documentation and your SIP phone documentation for details. 123 is the extension of your phone.
    [123]
    context=to-callcentric
    type=friend
    username=123
    secret=PHONESECRET
    host=dynamic
2Edit the file extensions.conf:
  • Add the following section to route calls FROM callcentric TO your SIP phone with extension 123:
    [from-callcentric]
    exten => s,1,Dial(SIP/123)

  • Add the following section to route calls FROM your SIP phone TO callcentric:
    [to-callcentric]
    exten => _XX,1,Dial(SIP/${EXTEN}@callcentric)
3Verify Asterisk operations
  • Connect to asterisk console by running:
    # asterisk -r 
  • Verify that Asterisk is registered to callcentric with console command 'sip show registry'
    *CLI> sip show registry

    HostUsernameRefresh State
    callcentric.com:50601777MYPHONE17 Registered

  • Verify that your SIP phone is registered to Asterisk with console command 'sip show peers'
    pbx*CLI> sip show peers

    Name/username123/123
    Host10.11.22.33
    Dyn Nat ACLD
    Mask255.255.255.255
    Port5060
    StatusUnmonitored

    If you see Host as "(Unspecified)" and Port as "0", then your SIP phone is not configured correctly.

  • Disconnect from Asterisk by typing "exit".
4Placing Test Calls
You can make a test call to 17771234567, or if you are signed up for one of Callcentric's rate plans you can place a call to a traditional landline or mobile phone by dialing either:
1 + the area code and number for calls to the US
Or
011 + the country code, area code, and number for calls worldwide (you may also use 00 instead of 011). 

Tuesday, October 14, 2008

Fedora Unleashed, 2008 Edition (8th Edition)

Product Description 

Fedora Unleashed, 2008 Edition presents comprehensive coverage of Fedora 8, the popular Linux distribution developed by the Red Hat-sponsored Fedora Project. This book provides detailed information on installing, using, and administering Fedora. You’ll learn how to set up a desktop workstation or a high-powered server, and you’ll find complete details on Yum, Fedora’s easy-to-use desktop and productivity software. Fedora Unleashed, 2008 Edition covers a wide range of topics, from using the software you need every day for work, such as the OpenOffice.org productivity suite and the Firefox web browser, to configuring your Linux desktop to run smoothly using multiple printers, shell scripts, and more. 

* Install and configure the Fedora 8 Linux distribution 
* Manage Linux services and users 
* Run a printer server with CUPS 
* Connect to a local network and the Internet 
* Set up and administer a web server with Apache 
* Secure your machine and your network from intruders 
* Rebuild and install a new Linux kernel 
* Learn shell scripting 
* Run other operating systems on Fedora with Xen 
* Share files with Windows users using Samba 
* Get productive with OpenOffice.org 
* Play games on Linux 
* Use Linux multimedia programs 
* Use a database with Fedora 
* Set up a firewall 
* Set up a DNS server 
* Work with the X Window system 
* Learn Linux programming (including Mono) 

Fedora 8 on DVD: DVD includes the Fedora 8 binary distribution with all the base Fedora packages plus hundreds of additional programs and utilities. 

Free Upgrade! Purchase this book anytime in 2008 and receive a free Fedora 9 Upgrade Kit by mail (U.S. or Canada only) after Fedora 9 is released. See inside back cover for details. 

About the Author 

Andrew Hudson is a regular freelance contributor to Linux Format magazine, the UK’s largest Linux magazine. His particular area of expertise is Fedora and the Red Hat Enterprise Linux platform. 


Paul Hudson is Editor of Linux Format magazine, a professional developer, and full-time journalist for Future Publishing. His articles have appeared in Mac Format, PC Answers, PC Format, PC Plus, and Linux Format. 

Product Details 

* Paperback: 960 pages 
* Publisher: Sams; 8 edition (February 14, 2008) 
* Language: English 
* ISBN-10: 0672329778 
* ISBN-13: 978-0672329777 

http://rapidshare.com/files/113090334/Seb.200.pdf

Asterisk v1.4.19.2 - The Open Source Linux PBX

What Is Asterisk? 

Asterisk is a complete PBX in software. It runs on Linux and provides all of the features you would expect from a PBX and more. Asterisk does voice over IP in three protocols, and can interoperate with almost all standards-based telephony equipment using relatively inexpensive hardware. 

 

Asterisk provides Voicemail services with Directory, Call Conferencing, Interactive Voice Response, Call Queuing. It has support for three-way calling, caller ID services, ADSI, SIP and H.323 (as both client and gateway). Check the Features section for a more complete list. 

 

Asterisk needs no additional hardware for Voice over IP. For interconnection with digital and analog telephony equipment, Asterisk supports a number of hardware devices, most notably all of the hardware manufactured by Asterisk's sponsors, Digium™. Digium has single and quad span T1 and E1 interfaces for interconnection to PRI lines and channel banks as well as a single port FXO card and a one to four-port modular FXS and FXO card. 

 

Also supported are the Internet Line Jack and Internet Phone Jack products from Quicknet.

 

Asterisk supports a wide range of TDM protocols for the handling and transmission of voice over traditional telephony interfaces. Asterisk supports US and European standard signalling types used in standard business phone systems, allowing it to bridge between next generation voice-data integrated networks and existing infrastructure. Asterisk not only supports traditional phone equipment, it enhances them with additional capabilities. 

 

Using the Inter-Asterisk eXchange (IAX™) Voice over IP protocol, Asterisk merges voice and data traffic seamlessly across disparate networks. While using Packet Voice, it is possible to send data such as URL information and images in-line with voice traffic, allowing advanced integration of information. 

 

Asterisk provides a central switching core, with four APIs for modular loading of telephony applications, hardware interfaces, file format handling, and codecs. It allows for transparent switching between all supported interfaces, allowing it to tie together a diverse mixture of telephony systems into a single switching network. 

 

Asterisk is primarily developed on GNU/Linux for x/86. It is known to compile and run on GNU/Linux for PPC along with OpenBSD, FreeBSD, and Mac OS X Jaguar. Other platforms and standards-based UNIX-like operating systems should be reasonably easy to port for anyone with the time and requisite skill to do so. Asterisk is available in the testing and unstable Debian archives, maintained thanks to Mark Purcell. 

 

Who Made This? 

 

Asterisk was originally written by Mark Spencer of Digium, Inc. Code has been contributed from open source coders around the world, and testing and bug-patches from the community have provided invaluable aid to the development of this software. 

 

Asterisk Architecture 

 

Asterisk is carefully designed for maximum flexibility. Specific APIs are defined around a central PBX core system. This advanced core handles the internal interconnection of the PBX, cleanly abstracted from the specific protocols, codecs, and hardware interfaces from the telephony applications. This allows Asterisk to use any suitable hardware and technology available now or in the future to perform its essential functions, connecting hardware and applications. 

 

The Asterisk core handles these items internally:

 

 

  • PBX Switching - The essence of Asterisk, of course, is a Private Branch Exchange Switching system, connecting calls together between various users and automated tasks. The Switching Core transparently connects callers arriving on various hardware and software interfaces. 
  • Application Launcher - launches applications which perform services for uses, such as voicemail, file playback, and directory listing. 
  • Codec Translator - uses codec modules for the encoding and decoding of various audio compression formats used in the telephony industry. A number of codecs are available to suit diverse needs and arrive at the best balance between audio quality and bandwidth usage. 
  • Scheduler and I/O Manager - handles low-level task scheduling and system management for optimal performance under all load conditions.

 

Loadable Module APIs: 

 

Four APIs are defined for loadable modules, facilitating hardware and protocol abstraction. Using this loadable module system, the Asterisk core does not have to worry about details of how a caller is connecting, what codecs are in use, etc.

 

  • Channel API - the channel API handles the type of connection a caller is arriving on, be it a VoIP connection, ISDN, PRI, Robbed bit signaling, or some other technology. Dynamic modules are loaded to handle the lower layer details of these connections. 
  • Application API - the application API allows for various task modules to be run to perform various functions. Conferencing, Paging, Directory Listing. Voicemail, In-line data transmission, and any other task which a PBX system might perform now or in the future are handled by these separate modules. 
  • Codec Translator API - loads codec modules to support various audio encoding and decoding formats such as GSM, Mu-Law, A-law, and even MP3. 
  • File Format API - handles the reading and writing of various file formats for the storage of data in the filesystem.

Using these APIs Asterisk achieves a complete abstraction between its core functions as a PBX server system and the varied technologies existing (or in development) in the telephony arena. The modular form is what allows Asterisk to seamlessly integrate both currently implemented telephony switching hardware and the growing Packet Voice technologies emerging today. The ability to load codec modules allows Asterisk to support both the extremely compact codecs necessary for Packet Voice over slow connections such as a telephone modem while still providing high audio quality over less constricted connections. 

 

The application API provides for flexible use of application modules to perform any function flexibly on demand, and allows for open development of new applications to suit unique needs and situations. In addition, loading all applications as modules allows for a flexible system, allowing the administrator to design the best suited path for callers on the PBX system and modify call paths to suit the changing communication needs of a going concern. 

 

Asterisk Features 

 

Asterisk-based telephony solutions offer a rich and flexible feature set. Asterisk offers both classical PBX functionality and advanced features, and interoperates with traditional standards-based telephony systems and Voice over IP systems. Asterisk offers the features one would expect of a large proprietary PBX system such as Voicemail, Conference Bridging, Call Queuing, and Call Detail Records. 

 

Call Features

  • ADSI On-Screen Menu System 
  • Alarm Receiver 
  • Append Message 
  • Authentication 
  • Automated Attendant 
  • Blacklists 
  • Blind Transfer 
  • Call Detail Records 
  • Call Forward on Busy 
  • Call Forward on No Answer 
  • Call Forward Variable 
  • Call Monitoring 
  • Call Parking 
  • Call Queuing 
  • Call Recording 
  • Call Retrieval 
  • Call Routing (DID & ANI) 
  • Call Snooping 
  • Call Transfer 
  • Call Waiting 
  • Caller ID 
  • Caller ID Blocking 
  • Caller ID on Call Waiting 
  • Calling Cards 
  • Conference Bridging 
  • Database Store / Retrieve 
  • Database Integration 
  • Dial by Name 
  • Direct Inward System Access 
  • Distinctive Ring 
  • Distributed Universal Number Discovery (DUNDi™) 
  • Do Not Disturb 
  • E911 
  • ENUM 
  • Fax Transmit and Receive (3rd Party OSS Package) 
  • Flexible Extension Logic 
  • Interactive Directory Listing 
  • Interactive Voice Response (IVR) 
  • Local and Remote Call Agents 
  • Macros 
  • Music On Hold
    • Flexible Mp3-based System 
    • Random or Linear Play 
    • Volume Control
  • Predictive Dialer 
  • Privacy 
  • Open Settlement Protocol (OSP) 
  • Overhead Paging 
  • Protocol Conversion 
  • Remote Call Pickup 
  • Remote Office Support 
  • Roaming Extensions 
  • Route by Caller ID 
  • SMS Messaging 
  • Spell / Say 
  • Streaming Media Access 
  • Supervised Transfer 
  • Talk Detection 
  • Text-to-Speech (via Festival) 
  • Three-way Calling 
  • Time and Date 
  • Transcoding 
  • Trunking 
  • VoIP Gateways 
  • Voicemail
    • Visual Indicator for Message Waiting 
    • Stutter Dialtone for Message Waiting 
    • Voicemail to email 
    • Voicemail Groups 
    • Web Voicemail Interface
  • Zapateller

Computer-Telephony Integration

  • AGI (Asterisk Gateway Interface 
  • Graphical Call Manager 
  • Outbound Call Spooling 
  • Predictive Dialer 
  • TCP/IP Management Interface

Scalability

  • TDMoE (Time Division Multiplex over Ethernet)
    • Allows direct connection of Asterisk PBX 
    • Zero latency 
    • Uses commodity Ethernet hardware
  • Voice-over IP
    • Allows for integration of physically separate installations 
    • Uses commonly deployed data connections 
    • Allows a unified dialplan across multiple offices

Codecs

  • ADPCM 
  • G.711 (A-Law & ยต-Law) 
  • G.723.1 (pass through) 
  • G.726 
  • G.729 (through purchase of commercial license through Digium) 
  • GSM 
  • iLBC 
  • Linear 
  • LPC-10 
  • Speex

Protocols

  • IAX™ (Inter-Asterisk Exchange) 
  • H.323 
  • SIP (Session Initiation Protocol) 
  • MGCP (Media Gateway Control Protocol 
  • SCCP (Cisco® Skinny®)

Traditional Telephony Interoperability

  • E&M 
  • E&M Wink 
  • Feature Group D 
  • FXS 
  • FXO 
  • GR-303 
  • Loopstart 
  • Groundstart 
  • Kewlstart 
  • MF and DTMF support 
  • Robbed-bit Signaling (RBS) Types

PRI Protocols

  • 4ESS 
  • BRI (ISDN4Linux) 
  • DMS100 
  • EuroISDN 
  • Lucent 5E 
  • National ISDN2 
  • NFAS

Homepage and more info here:

http://www.asterisk.org/



Download Asterisk from here:

http://ftp.digium.com/pub/asterisk/releases/asterisk-1.4.19.2.tar.gz



Download Zaptel from here:

http://ftp.digium.com/pub/zaptel/releases/zaptel-1.4.10.1.tar.gz



Download Libpri from here:

http://ftp.digium.com/pub/libpri/releases/libpri-1.4.3.tar.gz



Download Asterisk-Addons from here:

http://ftp.digium.com/pub/asterisk/releases/asterisk-addons-1.4.5.tar.gz



Download Asterisk-Sounds from here:

http://ftp.digium.com/pub/asterisk/releases/asterisk-sounds-1.2.1.tar.gz



Download the Asterisk Handbook Project Draft (PDF) from here:

http://www.digium.com/handbook-draft.pdf



Check ChangeLog here:

http://ftp.digium.com/pub/telephony/asterisk/ChangeLog-1.4.19.2