Possible BLF Bug in 2.9 and Custom contexts


I think I may have found a bug with 2.9 and custom contexts. I’m running asterisk 1.8.5 and FreePBX 2.9 and using aastra handsets. I want to use BLF between two handsets.

If I setup a custom context with “Allow” for ext-local. BLF works as expected.

If I choose “Allow rules” for ext-local and have a rule of 90XX to only allow dialling of 9000-9099 extensions it does not work. 9000 is not able to see the state of 9001.

Looking at the ext-local context in extensions_additional I can’t understand why it won’t work as the hint line is there and the pattern would match the rule.

Anyone got any ideas?

OK… I’ve done some more digging…

It seems in Asterisk 1.8 there is subscribecontext= which is used to tell Asterisk where to find the hints.

This doesn’t seem to be set per extension in FreePBX. Maybe I could suggest that this is set when custom contexts are used and it should be set to the context used when rules are in use.

I did find a few related bugs, 5144 and 4373. 4373 contains a patch which I’m going to look further into.

Anyone from FreePBX comment?

Ok… more progress…

Reading further and as the setting isn’t available per extension in FreePBX I thought I’d look into setting it at a global level in sip.conf.

By adding it through the FreePBX GUI via “Asterisk SIP Settings” under tools at the bottom I added: subscribecontext=ext-local.

This forces Asterisk to use ext-local as location of hints for all the BLF functions which allows extensions to use BLF even if they are in a custom context with rules defined.

Hope this is of help to someone.

1 Like

I use Cisco SPA phones and when using freepbx 2.8 and asterisk 1.4 I was able to setup a BLF button to monitor the status of follow me. With the new versions I have not been able to perform this. Going thru the posts I see that hints seems to act differently. Can one of the higher level coders please explain how to be able to perform this again without having to recompile the software with an old verison of devhints?


Hijacking a post on an unrelated subject is the least likely way to get help.

I’m not a high level coder, but I suspect that this may fix your problem:

Tools, Advanced Settings, Enable Custom Device States, change to True, click check box, click orange bar.

AdHominem, Thanks for the help. That did fix it. I did not intend to hijack this post. I guess I just miss read it. Thank you for the help.

So I did this, and BLF worked perfectly… if I have to reboot the freepbx box I have to go back into the “Asterisk SIP Settings” module and re-save the setting to get it working again. Any ideas?


I just wanted to thank you, your solution still works, and saved me from BLF problem with exact scenario like yours.

Thank you.