Is there a way to remove Asterisk from the media path for Ring Group and Follow Me calls?
As a test I tried removing “t” from the DIAL_OPTIONS variable in extensions_additional.conf since I know that option requires Asterisk in the path, but the media is still passing through Asterisk.
If I manually use a dial command to call the numbers, the media passes directly between the endpoints and not through Asterisk, which is exactly what I need to happen. I’d love to have this option in the GUI and be able to configure the media path.
Is this possible today with FreePBX and I’m missing it? Has anyone been successful in using the GUI to configure Ring Groups and get the media to travel directly between endpoints?
Well the point of asterisk is be in the media path.
if you take asterisk out of the path, you loss most the function’s
You have a good point, but in this case I’m just looking for Asterisk to fork the call between two numbers external to Asterisk. Those numbers exist at a branch office across our WAN, so I don’t want the media traversing the WAN unnecessarily.
Since I don’t need the extra functions in this case, I’d rather remove Asterisk from the media path and preserve WAN bandwidth. I know I can do this with a manual dial command, but I was hoping there’d be a way to do it through the GUI as well.
you need to disable the features that keep asterisk in the path like on demand call recording, etc.
Thank you for the suggestions. Turns out it was the “/n” after the context in the dial command.
After going through the dialparties.agi script, the following was being returned to the macro:
From what I read at http://www.experts-exchange.com/Networking/Telecommunications/IP_Telephony/IP_PBX/Q_22644990.html, the /n allows channel variables to jump contexts and extensions and keep its values.
Once I removed /n from the dialparties.agi script, the RTP for both Ring Group and Follow Me calls traveled directly between the two endpoints, not through Asterisk. I also tested the Confirmation feature and this change did not break it. After pressing 1 to accept the call, the RTP switched from ‘Asterisk to endpoint’ to ‘endpoint to endpoint’.
I’m not sure if there are other features that require this option, so if anyone else implements this, I would suggest thoroughly testing the features you use after doing so.
The specific line I modified is line 663 in /var/lib/asterisk/agi-bin/dialparties.agi, which reads $dialstring = ‘Local/’.$extnum.’@from-internal/n’;
As stated in the notes at the top of the script, if you do modify it, be sure to change the permissions to write-only for /var/www/html/admin/modules/core/agi-bin/dialparties.agi so FreePBX does not overwrite the one you modified.