System information
While most devices will have a web-based interface for defining parameters, if you’re
putting more than one or two phones into production we recommend using a server-
based configuration process, wherein the set is only told the location of a file server.
The set will identify itself and download customized files that define the required pa-
rameters for that telephone. As an example, these could be XML files on an FTP server.
The exact download process and syntax of these files will differ from manufacturer to
manufacturer. In this chapter we will only talk about the configuration of sets from the
perspective of Asterisk.
Telephone Naming Concepts
Before we get started with configuring Asterisk for our telephones, we are going to
recommend some best practices regarding telephone naming, abstracting the concepts
of users, extension numbers, and telephones from each other.
In Asterisk, all the system cares about is the channel name. There is really no concept
of a user at all,
†
and extensions are simply ways of directing call flow through the system.
For example, your dialplan might inform Asterisk that when extension number 100 is
requested it should call the phone on my desk, but extension 100 could just as easily
call a company voicemail box, play back a prompt, or join a conference room. We can
even specify that extension 100 should ring the device on my desk from Monday to
Friday between 9 A.M. and 5 P.M., but ring a device on someone else’s desk the rest
of the time. Inversely, when a call is made from a device during business hours, the
callerID could show a daytime number, and the rest of the time could show an after-
hours number (many reception desks become security desks at night).
Asterisk Extensions
The concept of an extension in Asterisk is crucial. In most PBXs, an extension is a
number that you dial to cause a phone or service to ring. In Asterisk, an extension is
the name of a grouping of instructions in the dialplan. Think of an Asterisk extension
as a script name, and you’re on the right track. Yes, an Asterisk extension could be a
number (such as 100) that rings a phone, but it could just as easily be a name (such as
voicemail) that runs a sequence of dialplan applications.
We’ll be going into Asterisk extensions in far more detail throughout this book, but
before we do that we want to get some phones set up.
The abstraction between the name of an extension and what that extension does is a
powerful concept in Asterisk, as extension 100 could do a number of things depending
† Actually, Asterisk does try to implement and abstract the concepts of users and devices internally by using
the users.conf file; however, it is typically only used by the Asterisk GUI. Abstracting the concepts logically
using the dialplan is easier to understand and far more flexible.
84 | Chapter 5: User Device Configuration