Asterisk: The Future of Telephony
|
| List Price: | £28.50 |
| Price: | £25.65 & eligible for FREE Super Saver Delivery on orders over £5. Details |
Availability: Usually dispatched within 11 to 12 days
Dispatched from and sold by Amazon.co.uk
10 new or used available from £4.68
Average customer review:Product Description
It may be a while before Internet telephony with VoIP (Voice over Internet Protocol) reaches critical mass, but there's already tremendous movement in that direction. A lot of organizations are not only attracted to VoIP's promise of cost savings, but its ability to move data, images, and voice traffic over the same connection. Think of it: a single Internet phone call can take information sharing to a whole new level. That's why many IT administrators and developers are actively looking to set up VoIP-based private telephone switching systems within the enterprise. The efficiency that network users can reach with it is almost mind-boggling. And cheap, if the system is built with open source software like Asterisk. There are commercial VoIP options out there, but many are expensive systems running old, complicated code on obsolete hardware. Asterisk runs on Linux and can interoperate with almost all standards-based telephony equipment. And you can program it to your liking. Asterisk's flexibility comes at a price, however: it's not a simple system to learn, and the documentation is lacking. "Asterisk: The Future of Telephony" solves that problem by offering a complete roadmap for installing, configuring, and integrating Asterisk with existing phone systems. Our guide walks you through a basic dial plan step by step, and gives you enough working knowledge to set up a simple but complete system. What you end up with is largely up to you. Asterisk embraces the concept of standards-compliance, but also gives you freedom to choose how to implement your system. "Asterisk: The Future of Telephony" outlines all the options, and shows you how to set up voicemail services, call conferencing, interactive voice response, call waiting, caller ID, and more. You'll also learn how Asterisk merges voice and data traffic seamlessly across disparate networks. And you won't need additional hardware. For interconnection with digital and analog telephone equipment, Asterisk supports a number of hardware devices. Ready for the future of telephony? We'll help you hook it up.
Product Details
- Amazon Sales Rank: #352797 in Books
- Published on: 2005-09-16
- Original language: English
- Number of items: 1
- Binding: Paperback
- 380 pages
Editorial Reviews
From the Publisher
Many organizations are drawn to Internet telephony's promise of cost savings, and its ability to move data, images, and voice traffic over the same connection. Asterisk, an open source system than runs on Linux, offers the best option. This guide covers installing, configuring, and integrating Asterisk with existing phone systems, without the need for additional hardware.
About the Author
Jim Van Meggelen is President and CTO of Core Telecom Innovations, a Canadian-based provider of open-source telephony solutions. He has over fifteen years of enterprise telecom experience, for such companies as Nortel, Williams and Telus, and has has extensive knowledge of both legacy and VoIP equipment from manufacturers such as Nortel, Cisco and Avaya. Jim was the architect of two of the world's largest managed enterprise voice networks; each solution serving roughly twenty-thousand users in more than one-thousand communities across Canada, providing telecommunications in five different languages, through six time zones, administered completely from a central location. These networks pioneered the use of extensive automation and database control in a branch voice network - functionalities not generally available in proprietary telecommunications systems. Jim has now moved on from the world of proprietary telecom, and is commited to open-source telephony. Jim is one of the principal contributors to the Asterisk Documentation Project, and is co-authoring the upcoming O'Reilly book, Asterisk: The Future of Telephony. He enjoys teaching, public speaking, improvisational acting, and writing.
Jared Smith is a long time member of the Asterisk community, and a co-founder of the Asterisk Documentation Project. Jared has over a decade of systems administration and programming experience, along with several years of professional telephony and voice-over-IP experience. As the architect of one of the world's largest Asterisk installations, he has a wealth of hands-on Asterisk knowledge. Jim Van Meggelen is President and CTO of Core Telecom Innovations, a Canadian-based provider of open-source telephony solutions. He has over fifteen years of enterprise telecom experience, for such companies as Nortel, Williams and Telus, and has extensive knowledge of both legacy and VoIP equipment from manufacturers such as Nortel, Cisco and Avaya. Jim is one of the principal contributors to the Asterisk Documentation Project. Leif Madsen first took an interest in Asterisk while attempting to find a voice conferencing solution for him and his friends. After someone suggested trying Asterisk, the obsession began. Wanting to contribute and be involved with the community, and noticing the lack of Asterisk documentation, he co-founded the Asterisk Documentation Project.
Leif Madsen first took an interest in Asterisk while attempting to find a voice conferencing solution for him and his friends. After someone suggested trying Asterisk, the obsession began. Wanting to contribute and be involved with the community, and noticing the lack of Asterisk documentation, he co-founded the Asterisk Documentation Project.
Excerpted from Asterisk the Future of Telephony by Jared Smith, Jim Van Meggelen, Leif Madsen. Copyright © 2005. Reprinted by permission. All rights reserved.
CHAPTER 5 Dialplan Basics
Everything should be made as simple as possible, but not simpler.
—Albert Einstein (1879–1955)
The dialplan is truly the heart of any Asterisk system, as it defines how Asterisk handles inbound and outbound calls. In a nutshell, it consists of a list of instructions or steps that Asterisk will follow. Unlike traditional phone systems, Asterisk’s dialplan is fully customizable. To successfully set up your own Asterisk system, you will need to understand the dialplan.
If writing a dialplan sounds overwhelming, don’t worry. This chapter explains how dialplans work in a step-by-step manner and teaches the skills necessary to create your own. The examples have been designed to build upon one another, so feel free to go back and re-read a section if something doesn’t quite make sense. Please also note that this chapter is by no means an exhaustive survey of all the possible things dialplans can do; our aim is to cover just the fundamentals. We’ll cover more advanced dialplan topics in later chapters.
Dialplan Syntax
The Asterisk dialplan is specified in the configuration file named extensions.conf.
The extensions.conf file usually resides in the /etc/asterisk/ directory, but its location may vary depending on how you installed Asterisk. Other common locations for this file include /usr/local/asterisk/etc/ and /opt/asterisk/etc/.
The dialplan is made up of four main parts: contexts, extensions, priorities, and applications. In the next few sections, we’ll cover each of these parts and explain how they work together to create a dialplan. After explaining the role each of these elements plays in the dialplan, we will step you though the process of creating a basic, functioning dialplan.
Sample Configuration Files
If you installed the sample configuration files when you installed Asterisk, you will most likely have an existing extensions.conf file. Instead of starting with the sample file, we suggest that you build your extensions.conf file from scratch. This will be very beneficial, as it will give you a better understanding of dialplan concepts and fundamentals.
That being said, the sample extensions.conf file remains a fantastic resource, full of examples and ideas that you can use after you’ve learned the basic concepts. We suggest you rename the sample file to something like extensions.conf.sample. That way, you can refer to it in the future. You can also find the sample configuration files in the /configs/ directory of the Asterisk source.
Contexts
Dialplans are broken into sections called contexts. Contexts are named groups of extensions. Simply put, they keep different parts of the dialplan from interacting with one another. An extension that is defined in one context is completely isolated from extensions in any another context, unless interaction is specifically allowed. (We’ll cover how to allow interaction between contexts near the end of the chapter.)
As a simple example, let’s imagine we have two companies sharing an Asterisk server. If we place each company’s voice menu in its own context, they are effectively separated from each other. This allows us to independently define what happens when, say, extension 0 is dialed: people pressing 0 at Company A’s voice menu will get Company A’s receptionist, and callers pressing 0 at Company B’s voice menu will get Company B’s receptionist. (This example assumes, of course, that we’ve told Asterisk to transfer the calls to the receptionists when callers press 0.)
Contexts are denoted by placing the name of the context inside square brackets ([]). The name can be made up of the letters A through Z (upper- and lowercase), the numbers 0 through 9, and the hyphen and underscore.* For example, a context for incoming calls looks like this:
[incoming]
All of the instructions placed after a context definition are part of that context, until the next context is defined. At the beginning of the dialplan, there are two special contexts named [general] and [globals].We will discuss the [globals] context later in this chapter; for now it’s just important to know that these two contexts are special.
* Please note that the space is conspicuously absent from the list of allowed characters. Don’t use spaces in your context names—you won’t like the result!
One of the most important uses of contexts is to enforce security. By using contexts correctly, you can give certain callers access to features (such as long-distance calling) that aren’t made available to others. If you don’t design your dialplan carefully, you may inadvertently allow others to fraudulently use your system. Please keep this in mind as you build your Asterisk system.
The Asterisk source contains a very important file named SECURITY, which outlines several steps you should take to keep your Asterisk system secure. It is vitally important that you read and understand this file. If you ignore the security precautions outlined there, you may end up allowing anyone and everyone to make long-distance or toll calls at your expense!
If you don’t take the security of your Asterisk system seriously, you may end up paying—literally! Please take the time and effort to secure your system from toll fraud.
Customer Reviews
A good introduction to Asterisk, with lots of detail on advanced features
If you're looking for material on 'Asterisk' then this is the book I'd puchase. Having tried 'Building Telephony Systems With Asterisk' (which was subsequently returned), I'd recommend this.
Starting from a nice introduction to Asterisk - installation, file-structure, connection to PSTN, this book goes on to explain lots of interesting detail on traditional telephony systems with some good explanations of signalling. An entire chapter is dedicated to VOIP protocols and codecs, together with details on audio encoding and echo problems.
Something that I was particuarly interested in was the AGI interface; this book does not disappoint and has a nice chapter detailing how the interface is used, with examples given in Perl, PHP and Python. The examples are different for each language - with different features being used.
There's an interesting chapter on the future of Asterisk with some interesting examples of how Asterisk is/could be used in the home & office.
The book finishes with a reference section on the various API functions available in Asterisk, with examples of how each may be used. This is perhaps the most useful section for me, whilst all of this information is available on the web, there is no substitute to being able to thumb through a book straight to the information you require.
If you're a complete Asterisk novice then you may find this book 'jumps in at the deep end' somewhat - though that's not to say that you won't find it useful. If you've got any sort of experience with Asterisk and are looking for more information on certain topics - or a reference to the API then this is the book for you.
O'Reilly books never disappoint, and this one is no exception.
Definitive introduction to Asterisk
Asterisk is perhaps the most sophisticated software PBX (private branch exchange) available, and moreover the software is free (in all senses). Of course, if you want to interact with the PSTN (public switched telephone network) or analogue telephones, you will need to buy hardware to support these. With sophistication comes complexity, and the many ways of interacting with Asterisk (console, dialplan applications, AGI etc) and the many configuration files are initially daunting.
This book is both an introduction and command reference, and in the first few chapters talks you step by step through the basics of installing the software and setting up common hardware. There are chapters reviewing telephony and VoIP in general followed by an introduction to AGI (Asterisk Gateway Interface), which allows scripting of Asterisk by any programming language. Specific examples are given for Perl, PHP and Python. They finish off the tutorial section in chapters mentioning some of the more advanced features of Asterisk and a discussion of the future. The final 150 pages of the book (out of 358, excluding the index) are appendices detailing respectively IAX and SIP VoIP setup, "application" and AGI command references, summary of configuration files and a console command reference.
The authors overall do a good job of helping to get a basic setup working and providing a framework on which to build further knowledge of Asterisk. You will need to get further information from the web, of which much is available (notably at voip-info), but much of the material in the book is not available elsewhere in such an (relatively) easily digestible form. As ever, books are out of date by publication, and the book seems to refer mainly to version 1.0 of Asterisk which has been superseded by v. 1.2 at the time of writing. This is not a problem, as the basics have changed little, and while version 1.2 adds further commands, it is fully backward-compatible.


