[asterisk-users] Guidence in DialPlan programming.
James B. Byrne
byrnejb at harte-lyne.ca
Fri Mar 6 12:32:05 CST 2015
I am dealing with a FreePBX generated dialplan. I have been following
the processing traces attempting to make use of the advice I received
here respecting setting a custom ring tone. I have discovered that
the context I am using for incoming calls is not used at all during a
blind transfer. Thus setting a third ring tone for that situation
inside that context is an impossibility.
I know now what I need to do and possibly where I need put it. What I
wish is some guidance on how to properly return from my custom code
without damaging the dialplan elsewhere.
Here is the situation:
In extensions.conf I see this:
;---------------------------------------------------------------------
;---------------------------------------------------------------------
; Internal dialplan that most internal phones have access to
;
[from-internal]
include => from-internal-noxfer
include => from-internal-xfer
include => bad-number ; auto-generated
;---------------------------------------------------------------------
;---------------------------------------------------------------------
; from-internal-noxfer:
;
; Place to put internal dialplan that should not be accessible
; during a blind transfer, this context will not be visible
; during such.
;
[from-internal-noxfer]
include => from-internal-noxfer-custom
include => from-internal-noxfer-additional ; auto-generated
;---------------------------------------------------------------------
;---------------------------------------------------------------------
; from-internal-xfer:
;
; Place to put most internal dialplan, will be visible during
; normal calls and blind transfers.
;
[from-internal-xfer]
include => from-internal-custom
include => from-internal-additional ; auto-generated
exten => s,1,Macro(hangupcall)
exten => h,1,Macro(hangupcall)
;---------------------------------------------------------------------
;---------------------------------------------------------------------
If a call is placed by a local extension then context
[from-internal-noxfer] is used. If a blind transfer is performed the
context is [from-internal-xfer]. What I am considering is placing the
following code in extensions-custom.conf:
[from-internal-custom].
exten => _X,1,Noop()
exten => _X,n,Set(AlertSnom=<http://www.notused.com>\;info=)
exten => _X,n,Set(AlertInternalTransfer=alert_internal_transfer)
exten => _X,n,Set(__ALERT_INFO=${AlertSnom}${AlertInternalTransfer})
exten => s,1,Macro(hangupcall)
exten => h,1,Macro(hangupcall)
My question is: are the last two lines the correct method of returning
from this back to extensions.conf? Is there something else I should
use? At them moment I just want to know how to properly and safely
return to the original referring context ([from-internal-xfer]).
--
*** E-Mail is NOT a SECURE channel ***
James B. Byrne mailto:ByrneJB at Harte-Lyne.ca
Harte & Lyne Limited http://www.harte-lyne.ca
9 Brockley Drive vox: +1 905 561 1241
Hamilton, Ontario fax: +1 905 561 0757
Canada L8E 3C3
More information about the asterisk-users
mailing list