O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Asterisk 1.4

Book Description

Implementing, Administering, and Consulting on Commercial IP Telephony Solutions

  • Written by four Asterisk Professionals, this book brings their years of experience together in an easy-to-understand guide to working with Asterisk in small, medium and larger Commercial environments

  • Packed with hints, tips, and best practice – learn to avoid the pitfalls that can hinder an Asterisk implementation

  • Focused chapters provide thorough, comprehensive, and self-contained instructions on how to deploy Asterisk across different commercial scenarios

  • Read the book's foreword by Mark Spencer, Chairman and CTO of Digium

  • In Detail

    Asterisk is the leading Open Source Telephony application and PBX software solution. It represents an effective, easy-to-administer, and accessible platform for running enterprise telephony requirements. The real world, however, offers numerous hurdles when running Asterisk in the commercial environment including call routing, resilience, or integrating Asterisk with other systems. This book will show you some of the ways to overcome these problems.

    As the follow-up to Packt's highly successful 2005 title Building Telephony Systems with Asterisk, this book presents the collected wisdom of Asterisk Professionals in the commercial environment.

    Aimed at Administrators and Asterisk Consultants who are comfortable with the basics of Asterisk operation and installation, this book covers numerous hands-on topics such as Call Routing, Network Considerations, Scalability, and Resilience – all the while providing practical solutions and suggestions. It also covers more business-related areas like Billing Solutions and a Winning Sales Technique. Even if your interest or experience with Asterisk is lower level, this book will provide a deeper understanding of how Asterisk operates in the real world.

    Asterisk is deployed across countless enterprises globally. Running on Linux, it has constantly demonstrated its resilience, stability, and scalability and is now the advanced communication solution of choice to many organizations and consultants.

    With a foreword from Mark Spencer, the man behind Asterisk, this book presents the accumulated wisdom of three leading Asterisk Consultants and shows the reader how to get the most out of Asterisk in the commercial environment. Over the course of eleven chapters, this book introduces the reader to topics as diverse as Advanced Dial Plans, Network Considerations, and Call Routing, through to Localization, DAHDI, Speech Technology, and Working with a GUI. The book also covers the more nebulous aspects of being an Asterisk professional such as evaluating customer requirements and pitching for contracts.

    This book represents the wisdom and thoughts of front line consultants. The knowledge they impart will prove informative, thought provoking and be of lasting interest to Asterisk professionals.

    Table of Contents

    1. Asterisk 1.4
    2. Credits
    3. Foreword
    4. About the Authors
    5. About the Reviewers
    6. Preface
      1. Reviewing the basics
      2. No compromise
      3. What this book covers
      4. Onwards
      5. Conventions
      6. Reader feedback
      7. Customer support
        1. Downloading the example code for the book
        2. Errata
        3. Piracy
        4. Questions
    7. 1. The Dialplan
      1. Dialplan location
      2. Extensions and contexts
        1. Pattern matching
        2. Why use contexts?
        3. Call barring made simple
        4. Time and day call routing
      3. Variables
        1. Inheritance of channel variables through the dialplan
          1. Using the AstDB
      4. Dialplan features and additions
        1. func_devstate
          1. What can we use the DEVSTATE() function for?
            1. Outgoing trunk selection
            2. Calling extensions
            3. Setting lights
            4. Boosting outgoing call capacity
        2. Using multiple broadband lines
          1. Configuration overview
            1. Setting up the routing in Linux
            2. Configuring Asterisk
            3. Explanation of the macro
            4. Downsides
        3. System() application
      5. Summary
    8. 2. Network Considerations when Implementing Asterisk
      1. Centralized and distributed installations
        1. Centralized installations
        2. Distributed solutions
        3. Latency and jitter
        4. Jitterbuffer
        5. Echo
      2. Do your homework
        1. SLAs are for everyone
        2. Achieving the goal
        3. Backups
        4. To share or not to share
        5. Ensuring quality
        6. When things go wrong
          1. Red
          2. Amber
          3. Green
        7. Increasing resilience
      3. Summary
    9. 3. Call Routing with Asterisk
      1. Routing methods
      2. Where to start
      3. Internal calls
      4. Local calls
      5. National calls
      6. International calls
      7. Alternative options
        1. ENUM
        2. DUNDi
      8. Types of routing
      9. Routing techniques
      10. Summary
    10. 4. Call Centers—Queues and Recording
      1. Asterisk queues
        1. Queue gotchas
          1. A practical queue
          2. Using queues to cascade calls
      2. Call recording—the issues
        1. Show-stoppers
      3. VoIP recording approaches
      4. Impact of VoIP on recording systems
        1. Hardware convergence
      5. Distributed call centers
        1. Home working
      6. VoIP recording challenges
        1. Routing
        2. Bandwidth
        3. Encryption
        4. Solutions
      7. Asterisk call center solutions
        1. How VICIDIAL works
          1. Handling inbound calls
          2. Installation
          3. Timing sources
          4. Scalability
      8. Summary
    11. 5. Asterisk and Speech Technology
      1. Why speech-enable?
      2. Types of speech technologies
        1. Automatic Speech Recognition (ASR)
          1. Isolated Word Recognition
          2. Connected Word Recognition
          3. Natural Language Recognition
        2. Text-to-Speech (TTS)
        3. Speaker Verification and Identification (SVI)
          1. MRCP
      3. Implementation considerations
        1. ASR and Asterisk
          1. Installing LumenVox speech recognition with Asterisk
          2. Checking that things are working
            1. SpeechCreate()
            2. SpeechLoadGrammar (yesno,/etc/lumenvox/Lang/BuiltinGrammars/ABNFBoolean.gram)
            3. SpeechActivateGrammar(yesno)
            4. SpeechBackground(beep)
            5. Verbose(1,Result was ${SPEECH_TEXT(0)})
            6. Verbose(1,Confidence was ${SPEECH_SCORE(0)})
            7. SpeechStart()
            8. SpeechDeactivateGrammar(label)
            9. SpeechUnloadGrammar(label)
            10. SpeechDestroy()
            11. ${SPEECH(results)}
          3. Grammar files
          4. Implementation advice for ASR
        2. TTS with Asterisk
          1. Implementation advice for TTS
      4. Summary
    12. 6. Call Accounting and Billing
      1. Call Data Records (CDRs)
        1. CDR frontends
      2. Call accounting
      3. Providing termination billing
        1. Every little helps
        2. Selecting a billing platform
        3. Introducing A2Billing
          1. Reasons to consider A2Billing
          2. A2Billing requirements
          3. Monitoring usage
          4. Coding for A2Billing
        4. Billing gotcha!
        5. High call volumes
          1. Other high-call-volume solutions
            1. SER/OpenSER
            2. FreeSWITCH
      4. Summary
    13. 7. Resilience and Stability
      1. Increasing availability
      2. Stability
        1. Network
          1. Cables
          2. Switches and routers
        2. Endpoints
        3. Telephony switches and gateways
        4. Server
        5. Environment
      3. Dealing with failure
        1. Network resilience
        2. Server
          1. High availability
            1. Ultra Monkey
        3. Telephony switches/gateways
          1. Redfone foneBRIDGE2
          2. Junghanns ISDNguard
          3. Endpoints
        4. Round robin DNS
        5. Say hello to Rsync
          1. Limiting the number of calls per server
      4. Summary
    14. 8. Localization and Practical Security
      1. Tones
      2. Time and date and localization
      3. Changing the language of system prompts
      4. Local telephony interfaces
        1. Analog
        2. Digital
      5. Localizing caller ID signaling on Digium analog interfaces
      6. Checklist
      7. Practical security
        1. Out of hours
      8. Summary
    15. 9. Interfacing with Traditional Analog and Digital Telephony
      1. Analog
      2. Digital
        1. ISDN BRI (Basic Rate Interface)
        2. ISDN PRI (Primary Rate Interface)
      3. Choices, choices
        1. Using external adaptors
        2. Using cards
          1. Installing a Digium card
            1. Card installation—physical
            2. Installing the DAHDI software
            3. Configuring the DAHDI files to enable the card
            4. What about the other cards?
              1. framing
              2. coding
          2. Troubleshooting with Digium cards
      4. Summary
    16. 10. Integrating Asterisk with Wireless Technologies
      1. Why integrate Asterisk with wireless technologies?
      2. Wireless technology overview
        1. Wi-Fi (only) phones
        2. SIP desk phones with a wireless link
        3. Dual-mode (GSM and SIP) phones and PDA/smart phones
        4. SIP/DECT phones
      3. Connecting Asterisk to mobile networks
        1. Why connect to mobile networks?
        2. The GSM gateway (box)
        3. The GSM card
      4. Configuring wireless devices
      5. Configuring Asterisk to work with wireless technologies
      6. Deployment choices
      7. Neat money saving tricks
        1. Calling a mobile phone
        2. Avoiding those nasty roaming charges that arise from receiving calls
      8. Summary
    17. 11. Graphical User Interfaces
      1. Reasons for going GUI
      2. Good to GUI
        1. Ease of administration
        2. Access to enhanced features
        3. Easier upgrade process
        4. Standardized code
      3. GUI, phooey!
        1. Performance
        2. Stability
        3. Restricted functions
      4. FreePBX
        1. How it works
        2. Installation
        3. Configuration
          1. Extensions
          2. Inbound routes
          3. Outbound routes
          4. Trunks
          5. Other records
      5. Summary
    18. A. Selling Your Solution
      1. In the beginning ...
        1. Drivers for changing phone systems
        2. A word on cost
      2. Generating interest
        1. Alliances
        2. Advertising
          1. Search engines
          2. Become an expert
        3. Relationship marketing
          1. Email as a marketing tool
      3. Tracking prospects
      4. Converting the prospect into a sale
        1. Determining your customer's hardware requirements
          1. Choosing the right phones
            1. Tales of woe
            2. Aastra
            3. Linksys
            4. Siemens Gigaset IP DECT phones
            5. Snom M3
      5. Remote support
        1. Make it secure
      6. Do's and don'ts
        1. The do's
          1. First impressions
          2. Get brochures printed
          3. Take notes
          4. Send the quote in a timely manner
          5. Follow up the quote
          6. Target the decision makers, but don't ignore IT
        2. The don'ts
          1. You don't need a fancy office
          2. Don't cut corners on the solution
          3. Don't under price
          4. Don't have a huge margin on handsets
          5. Don't supply a PC as the phone server
      7. Summary
    19. B. Sample Email Content
      1. What is VoIP?
      2. Why should I consider VoIP?
        1. Cost savings
          1. Call costs
          2. Line rental costs
          3. Wiring costs
          4. Reduced infrastructure costs
        2. Centralized management
          1. System integration
          2. Unified messaging
        3. Reliability
          1. Closed and open systems
          2. Superior sound
          3. Fallback solutions
          4. Broadcasting calls
          5. A number for life
          6. Number porting
          7. Local numbers
      3. About XYZ
        1. Our philosophy
        2. Our passion
    20. C. Sample Appointment Sheet