This is just a table of contents of the various Asterisk dialplan modules I have created over the last couple of years and am releasing to the general public as open-source in hopes that somebody finds them as useful as I do.
In my days as a Network Administrator managing six interconnected, fully-meshed branch office PBX’s at a telemarketing firm, maintaining six separate dialplans became a tiresome effort which ultimately led to my creation of the dialplan modules.
The goals of the entire project were as follows:
- Modularize all of the routine tasks that are performed in the dialplan.
- Substantially reduce the overall amount of and repetition of code in the dialplan.
- Reduce the management overhead of the dialplan.
- Make debugging of the dialplan easy to follow and legible.
- Optimize the use of global and channel variables to reduce the amount and locations of future dialplan changes.
- Update the dialplan from Asterisk v1.4 to v11 syntax. ie – Convert all macros to subroutines.
- Incorporate the use of subroutines with the ability to pass variables via the “Gosub” command.