Dialplan customization

Hi all,

What I want to do it’s (or at least…it should be) easy. I want to customize the dialplan so that when certain extension, say 111 calls, call isn’t recorded even having the option enabled via GUI.

What I tried is the following. I went into extensions_additional.conf and found the subroutine [sub-record-check]. This appears to do the trick (recording the call) when calling. I created a new context in extensions_custom.conf called [sub-record-check-custom] just as it is named the included context in [sub-record-check]. In this custom context this is what I wrote:


I’m just starting in Asterisk and I’m little lost here. What is happening? How should I do this “trick”? What am I missing?

Thank you in advance!!

You can configure this per extension. Did you look at the plethora of options you can configure for each extension? What version of FreePBX are you using?

Please do not post the same question multiple times. I have deleted the duplicate.

It does seem on the surface to be nebulous and ineffective. My role here is not a management consultant however I have rarely seen these type of draconian measures be effective.

Ok SkykingOH, sorry about it (I didn’t know where to post it, that’s why).

Alan, that is precisely what I don’t want to do. As I explained, I want to let the “recording” option in FreePBX enabled so that someone that looks at this options thinks all calls are being recorded for this extension but, by customizing the dialplan, “cancel” this option and not recording any call for the extension. I hope this makes thing clearer.


It would not be easy and would have to be hand coded for that extension.

This hint may help:

{net core]# grep  "Recording Options" *.*
functions.inc.php:              $section = _("Recording Options");
[net core]# pwd
[net core]#

I don’t know php. How this suppose to help?


If you don’t know PHP I am not sure how anyone can be of help.

The value is stored in a database and parsed every time the page loads. The code has to be modified.

I can’t imagine what this would be useful for so it would never pass as a feature candidate.

That means it has to be hacked. You could offer a bounty in the forums and see if someone would do it for a nominal fee. My opinion is $300 would do the trick.

If the object is to fool people into thinking they are getting recorded why not just lie to them in the first place and say all calls are recorded? How many people will be logging into the GUI to look at this option? There are external device that can record calls, just tell people that you use external hardware to record calls.

Thanks guys but that is not my intention (fool poeple around). I just want to test new things on my platform and this is one of them.

Testing new things is great, but what possible purpose is there in obfuscating the setting on a system?

Maybe I am missing something, it just doesn’t make sense to me.