Skip to main content


Showing posts from March, 2013

What is Asterisk?

What is Asterisk? This is a fascinating question: what exactly is Asterisk? There are a number of answers, all of which are accurate. First, Asterisk is a symbol (*). The symbol represents a wildcard in many computer languages. This gives us insight into the developers’ hopes for Asterisk. It is designed to be flexible enough to meet any need in the telephony realm. Second, Asterisk is open source. It implements communications in software instead of hardware. This allows new features to be rapidly added with minimal effort. You can easily make your own changes or additions. With its included support for internationalization, rich set of configuration files, and open source code, every aspect of Asterisk can be customized to meet your needs.New interfaces and technologies are easily added to Asterisk. Finally, and most importantly, Asterisk is a framework that allows selection and removal of particular modules, allowing us to create a custom phone system. Asterisk’s well-thought-

Is Asterisk a Good Fit? (Part 1)

Looking at what Asterisk is and is not, the natural question follows: is Asterisk right for me? This is a vitally important question that should be given serious consideration. Let’s take a moment and look at some of the considerations we must explore before we commit to using Asterisk. Asterisk is a very powerful framework into which we can install almost anything. We can configure each piece of Asterisk to the minutest detail. This gives us an amazing amount of flexibility. This flexibility does not come without a price. Each of these details must be researched, understood, and tried. Each change we make affects other parts of the phone system, whether for good or for bad. Asterisk is not an easy-to-use platform, especially for the beginner. There is a learning curve, but it is one that can be surmounted. Many developers have become experts in telephony; many telephony experts have mastered server administration. But each of us must decide what we expect from our phone syste

Is Asterisk a Good Fit? (Part 2)

…. ( Part 1 ) Asterisk is distributed as free, open-source software. The only costs involved with Asterisk are hardware, right? Well, maybe not. As we have been discussing, Asterisk is very flexible. Determining how best to use the flexibility can quickly become a huge time-sink. Compatible handsets are also not free. The total cost of owning Asterisk can also include downtime.If we choose to support Asterisk on our own, and have to work to try to get Asterisk back up after a failure, there is an opportunity cost involved in the calls we should have received .This is why we should only choose to support our phone system internally if we have the appropriate resources to back that up. Total Cost of Ownership (TCO) is not an easy calculation to make. It involves assumptions of how many times it will break, how long it will take us to get it back up and running, and how much consultants will charge us if we need their services. TCO is only useful when comparing phone systems to e

SIP ( Session Initiation Protocol ) Definitions part 1

The SIP configuration file ( sip.conf ) contains configuration information for SIP channels. The headings for the channel definitions are formed by a word framed in square brackets ([])—again, with the exception of the [general] section, where we define global SIP parameters. Don’t forget to use comments generously in your  sip.conf  file. General SIP Parameters The following options are to be used within the [general] section of  sip.conf : allowexternalinvites=yes|no If set to no, this setting disables INVITE and REFER messages to non-local domains. allowguest=no|yes If set to no, this disallows guest SIP connections. The default is to allow guest connections. SIP normally requires authentication, but you can accept calls from users who do not support authentication (i.e., do not have a secret field defined). Certain SIP appliances (such as the Cisco Call Manager v4.1) do not support authentication, so they will not be able to connect if you set allowguest=no allow