Dynamic Queues – Advanced Part 2

In this lesson the dialplan extensions will be modified to add and remove the user that is calling the extension. We will use the CHANNEL variable. The CHANNEL(channeltype) value displays the protocol the user is connecting with, for example SIP. The CHANNEL(peername) value holds the name of the user context. We can replace “SIP/chaz” from […]

Dynamic Queues – Advanced Part 1

When a persistent queue member is dynamically added to the queue, an entry is added to the database within Asterisk. To view a list database entries use the following command in the CLI: database showdatabase show For a member that has been dynamically added to the techteam queue, there should be a database key that […]

Dynamic Queues – Easy

There are four applications within Asterisk that can be used to control the relationship between a queue and a member. They are AddQueueMember(), PauseQueueMember(), UnPauseQueueMember(), and RemoveQueueMember(). In this lesson we will look at adding and removing a user from a queue dynamically. In the previous lessons we added a static member to the techteam […]

The queue() application

To view detailed information about the Queue() application in the Asterisk CLI use the following command: core show application Queue Open the dialplan and add the following new extension within the [phones] context: exten => 300,1,NoOp(Tech Team) same => n, Queue(techteam,,,,120) #120 is application timeout same => n, Hangup

The queues.conf file

Move the original queues.conf file sudo mv /etc/asterisk/queues.conf /etc/asterisk/queues.conf.sample Create and edit the queues.conf file sudo nano /etc/asterisk/queues.conf Add the following information to your queues.conf file [general] persistentmembers = yes monitor-type = MixMonitor [techteam] member => SIP/matthew member => SIP/eva strategy=random timeout=9 Below is a list of optional strategies that can be used to direct […]

Configuring the dialplan

Assume we have a work schedule below Sunday: Off Work Monday: 13:00 – 13:50 Tuesday: 11:00 – 13:50 Wednesday: Off Work Thursday: 11:00 – 13:50 Friday: Off Work Saturday: Off Work We could then create conditions to send the phone system to the after hours voicemail when we are not at working using the following […]

The GoToIfTime() application

If you are looking to control the routing of the phone system based on the time, then you will most likely want to use the GotoIfTime() application. To view detailed information about the application and it’s parameters while on an Asterisk server use the following command in from the Asterisk CLI: core show application GotoIfTime […]

Caller ID

If the CALLERID variable is not set, outside phone calls will most likely see “Private Caller” or “Unknown” on their phone screens. In this lesson we will set the phone number as the caller ID. The SIP provider may have specific documentation on what can be included with the CALLERID variable. Some allow names to […]

Outgoing calls

With many phone systems, a number such as “9” will need to be pressed in order to dial out and reach a phone number outside the Asterisk dialplan. In this lesson we will use the first digit 9 to indicate to Asterisk that the call will need to route through the SIP provider rather than […]

Incoming Calls

In this lesson we will redirect the incoming calls to an extension in the dialplan. In the previous lesson a SIP account was created for [LectureSnippets]. The context for this account was set to provider. We will need to create this context to put instructions in for incoming calls. By placing this account in a […]