Custom Destinations

From MiRTA PBX documentation
Jump to navigation Jump to search

Custom Destination is one of the most powerful object in MiRTA PBX. It is the magic object able to perform all the disparate tasks you may need. The list of capability is increasing at every version.


Alter CallerID Name


Permit to change the caller ID name of a call. You can use variables like ${CALLERID(name)} or ${CALLERID(num)} so you can just add something to the received caller ID name

Alter CallerID Num

Almost identical to "Alter CallerID Name", but acting on the number

Play Voicemail Message

This feature allows playing directly a voicemail message. The voicemail message is not marked as read. This feature is usually used to build "Visual Voicemail" for phones supporting it. It can be used in a feature code like *88[NUM] and then splitting the voicemail box and voicemail message number using CUT function


So for listening to the 6th message from voicemail 104, you can dial *88104*6

Route the call by looking up the value from the database

Using this feature you can use a Phone Book as a Database to lookup a value contained in a variable and then perform a specific routing for a call. Let's make an example. You have a list of customer ID and you want to route the call in a different way (different Queue, different Escalation, Voicemail...) based on the Customer ID. So you may ask the caller to enter the customer ID and then route the call based on the value entered.

So in the DID destination you may enter something like:

Route by looking up value.png

The Custom destination can be configured this way:

Route by looking up value from database.png

The Phone book needs to contain the data to lookup in the "Lookup value" column

Lookup value phonebook.png

Run Local Macro

This feature allows executing a custom macro defined in the system. You can define a local macro by uploading a .conf file in /etc/asterisk/extensions.d


Search and update/insert in a phone book

You can search one of your phone book/database and insert or update the value inserted in any of the fields.

For example, you can ask to the caller his account number and save in the database for later retrieval together based on his callerID.

Mind to have the following Phone Book defined


Mind you have already read the account number from your caller and saved in the variable "USR-accountnumber", you can define the custom destination as following:


In this way you search/update or create the entry with the callerid name, then you can do the same with the account number