Skip to main content

Config files in 7.5.1.0?? Can't add trunk options-- help!

Posted by ottcomputing on Mon, 03/21/2016

Hi there,

The final bug we can't seem to solve is the fact that our trunk cannot be configured with canreinvite=no option as set. The issue is that transfers to specific extensions audio fail because this can't be set. I've looked in /etc/asterisk/sip.conf and sip_peers.include but they seem empty. This is very strange.. where are the actual config files? I've attempted to grep through the entire hard drive for the IP that I've set for the trunk we created and I can't find it. Is it possible that all configuration is done in the MySQL database? I'm really at a loss because canreinvite is not part of the trunk options that can be set when configuring a SIP trunk.

I'm using PBX Manager 7.5.1.0

Thanks!

Chris


Submitted by ottcomputing on Mon, 03/21/2016 Permalink

Okay, after doing an strace on asterisk I can see that it does in fact create a temporary file, load it into sip.conf and reload asterisk:

[pid 5419] open("/tmp/ast-ami-RXFWu1", O_RDWR|O_CREAT|O_EXCL, 0600) = 35
[pid 2118] open("/etc/asterisk/sip.conf", O_RDONLY
[pid 2118] <... open resumed> ) = 41
[pid 2118] open("/etc/asterisk/sip_peers.include", O_RDONLY
[pid 2118] <... open resumed> ) = 35

That being said, if the GUI does not allow canreinvite to be added as an option on the trunk, how am I ever supposed to add it?

Submitted by thirdlane on Tue, 03/22/2016 Permalink

Thirdlane has an option "Use Asterisk realtime for SIP" which controls whether a database (realtime) or text config files will be used for SIP configuration. The option is available in Cluster Management -> System Settings -> Preferences

I assume you have it set to database (default), that is why you did not see any data in sip_peers.include You can switch to text any time, in fact I would recommend that since realtime while needed for some configurations also presents a set of problems.

Unrelated to this - "canreinvite" option was simply missing - we added it and it will be available with a few other bug fixes and enhancements in the next release, most likely next week.

Submitted by thirdlane on Wed, 03/23/2016 Permalink

Oops, have to correct myself, "canreinvite" was renamed to directmedia so directmedia should be used instead. Our global default does not enable direct media and reinvites but you can change the value for the trunk. See if directmedia=nonat,update works for you..

Here is from the Asterisk documentation:

* The 'canreinvite' option support by the SIP, MGCP and Skinny channel drivers has been renamed to 'directmedia', to better reflect what it actually does.
In the case of SIP, there are still re-INVITEs issued for T.38 negotiation, starting and stopping music-on-hold, and other reasons, and the 'canreinvite' option never had any effect on these cases, it only affected the re-INVITEs used for direct media path setup. For MGCP and Skinny, the option was poorly named because those protocols don't even use INVITE messages at all. For backwards compatibility, the old option is still supported in both normal and Realtime configuration files, but all of the sample configuration files, Realtime/LDAP schemas, and other documentation refer to it using the new name.