Summary: | ASTERISK-25175: Wiki Documentation - Features - Application Map & Dynamic Features | ||
Reporter: | Rusty Newton (rnewton) | Labels: | |
Date Opened: | 2015-06-19 12:47:08 | Date Closed: | 2015-07-06 09:46:03 |
Priority: | Trivial | Regression? | |
Status: | Closed/Complete | Components: | Documentation |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | In the [Features|https://wiki.asterisk.org/wiki/display/AST/Features] section of the wiki, document the existence and usage of the application map and dynamic features functionality.
Basically update and wikify: {noformat} [applicationmap] ; Note that the DYNAMIC_FEATURES channel variable must be set to use the features ; defined here. The value of DYNAMIC_FEATURES should be the names of the features ; to allow the channel to use separated by '#'. For example: ; ; Set(__DYNAMIC_FEATURES=myfeature1#myfeature2#myfeature3) ; ; (Note: The two leading underscores allow these feature settings to be set ; on the outbound channels, as well. Otherwise, only the original channel ; will have access to these features.) ; ; The syntax for declaring a dynamic feature is any of the following: ; ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>[,<AppArguments>[,MOH_Class]] ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>[,"<AppArguments>"[,MOH_Class]] ;<FeatureName> => <DTMF_sequence>,<ActivateOn>[/<ActivatedBy>],<Application>([<AppArguments>])[,MOH_Class] ; ; FeatureName -> This is the name of the feature used when setting the ; DYNAMIC_FEATURES variable to enable usage of this feature. ; DTMF_sequence -> This is the key sequence used to activate this feature. ; ActivateOn -> This is the channel of the call that the application will be executed ; on. Valid values are "self" and "peer". "self" means run the ; application on the same channel that activated the feature. "peer" ; means run the application on the opposite channel from the one that ; has activated the feature. ; ActivatedBy -> ActivatedBy is no longer honored. The feature is activated by which ; channel DYNAMIC_FEATURES includes the feature is on. Use predial ; to set different values of DYNAMIC_FEATURES on the channels. ; Historic values are: "caller", "callee", and "both". ; Application -> This is the application to execute. ; AppArguments -> These are the arguments to be passed into the application. If you need ; commas in your arguments, you should use either the second or third ; syntax, above. ; MOH_Class -> This is the music on hold class to play while the idle ; channel waits for the feature to complete. If left blank, ; no music will be played. ; ; ; IMPORTANT NOTE: The applicationmap is not intended to be used for all Asterisk ; applications. When applications are used in extensions.conf, they are executed ; by the PBX core. In this case, these applications are executed outside of the ; PBX core, so it does *not* make sense to use any application which has any ; concept of dialplan flow. Examples of this would be things like Goto, ; Background, WaitExten, and many more. The exceptions to this are Gosub and ; Macro routines which must complete for the call to continue. ; ; Enabling these features means that the PBX needs to stay in the media flow and ; media will not be re-directed if DTMF is sent in the media stream. ; ; Example Usage: ; ;testfeature => #9,peer,Playback,tt-monkeys ;Allow both the caller and callee to play ; ;tt-monkeys to the opposite channel ; ; Set arbitrary channel variables, based upon CALLERID number (Note that the application ; argument contains commas) ;retrieveinfo => #8,peer,Set(ARRAY(CDR(mark),CDR(name))=${ODBC_FOO(${CALLERID(num)})}) ; ;pauseMonitor => #1,self/callee,Pausemonitor ;Allow the callee to pause monitoring ; ;on their channel ;unpauseMonitor => #3,self/callee,UnPauseMonitor ;Allow the callee to unpause monitoring ; ;on their channel ; Dynamic Feature Groups: ; Dynamic feature groups are groupings of features defined in [applicationmap] ; that can have their own custom key mappings. To give a channel access to a dynamic ; feature group, add the group name to the value of the DYNAMIC_FEATURES variable. ; ; example: ; [myGroupName] ; defines the group named myGroupName ; testfeature => #9 ; associates testfeature with the group and the keycode '#9'. ; pauseMonitor => ; associates pauseMonitor with the group and uses the keycode specified ; ; in the [applicationmap]. {noformat} | ||
Comments: | By: Rusty Newton (rnewton) 2015-07-06 09:46:03.461-0500 https://wiki.asterisk.org/wiki/display/AST/Features https://wiki.asterisk.org/wiki/display/AST/Custom+Dynamic+Features |