Asterisk-features.conf: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
 (Created page with "== Overview == Asterisk featuers.conf 파일 설정 내용 정리.  == See also == * https://wiki.asterisk.org/wiki/display/AST/Asterisk+14+Configuration_features - Asterisk 1...")  | 
				|||
| (2 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
== Overview ==  | == Overview ==  | ||
Asterisk featuers.conf 파일 설정 내용 정리.  | Asterisk featuers.conf 파일 설정 내용 정리.  | ||
features.conf 파일은 transfer, monitor/mixmonitor, etc 를 위한 설정 파일이다. 예전에는 parking 관련 설정도 이곳에 설정했었으나, Asterisk-12 부터는 모든 parking 관련 설정은 res_parking.conf 파일로 이관되었다.  | |||
== general ==  | |||
<pre>  | |||
[general]  | |||
;transferdigittimeout => 3      ; Number of seconds to wait between digits when transferring a call  | |||
                                ; (default is 3 seconds)  | |||
;xfersound = beep               ; to indicate an attended transfer is complete  | |||
;xferfailsound = beeperr        ; to indicate a failed transfer  | |||
;pickupexten = *8               ; Configure the pickup extension. (default is *8)  | |||
;pickupsound = beep             ; to indicate a successful pickup (default: no sound)  | |||
;pickupfailsound = beeperr      ; to indicate that the pickup failed (default: no sound)  | |||
;featuredigittimeout = 1000     ; Max time (ms) between digits for  | |||
                                ; feature activation  (default is 1000 ms)  | |||
;recordingfailsound = beeperr   ; indicates that a one-touch monitor or one-touch mixmonitor feature failed  | |||
                                ; to be applied to the call. (default: no sound)  | |||
;atxfernoanswertimeout = 15     ; Timeout for answer on attended transfer default is 15 seconds.  | |||
;atxferdropcall = no            ; If someone does an attended transfer, then hangs up before the transfer  | |||
                                ; target answers, then by default, the system will try to call back the  | |||
                                ; person that did the transfer.  If this is set to "yes", the ringing  | |||
                                ; transfer target is immediately transferred to the transferee.  | |||
;atxferloopdelay = 10           ; Number of seconds to sleep between retries (if atxferdropcall = no)  | |||
;atxfercallbackretries = 2      ; Number of times to attempt to send the call back to the transferer.  | |||
                                ; By default, this is 2.  | |||
;transferdialattempts = 3       ; Number of times that a transferer may attempt to dial an extension before  | |||
                                ; being kicked back to the original call.  | |||
;transferretrysound = "beep"    ; Sound to play when a transferer fails to dial a valid extension.  | |||
;transferinvalidsound = "beeperr" ; Sound to play when a transferer fails to dial a valid extension and is out of retries.  | |||
;atxferabort = *1               ; cancel the attended transfer  | |||
;atxfercomplete = *2            ; complete the attended transfer, dropping out of the call  | |||
;atxferthreeway = *3            ; complete the attended transfer, but stay in the call. This will turn the call into a multi-party bridge  | |||
;atxferswap = *4                ; swap to the other party. Once an attended transfer has begun, this options may be used multiple times  | |||
; Note that the DTMF features listed below only work when two channels have answered and are bridged together.  | |||
; They can not be used while the remote party is ringing or in progress. If you require this feature you can use  | |||
; chan_local in combination with Answer to accomplish it.  | |||
</pre>  | |||
== featuremap ==  | |||
여기에 설정된 DTMF 를 누르면 설정된 feature 가 실행되게 된다. DTMF 입력이후, 지정된 Dial() 혹은 Queue() application 이 동작하게 되며, 이후 입력되는 DTMF 가 인자값으로 전달되게 된다.  | |||
<pre>  | |||
[featuremap]  | |||
;blindxfer => #1                ; Blind transfer  (default is #) -- Make sure to set the T and/or t option in the Dial() or Queue() app call!  | |||
;disconnect => *0               ; Disconnect  (default is *) -- Make sure to set the H and/or h option in the Dial() or Queue() app call!  | |||
;automon => *1                  ; One Touch Record a.k.a. Touch Monitor -- Make sure to set the W and/or w option in the Dial() or Queue() app call!  | |||
;atxfer => *2                   ; Attended transfer  -- Make sure to set the T and/or t option in the Dial() or Queue()  app call!  | |||
;parkcall => #72                ; Park call (one step parking)  -- Make sure to set the K and/or k option in the Dial() app call!  | |||
;automixmon => *3               ; One Touch Record a.k.a. Touch MixMonitor -- Make sure to set the X and/or x option in the Dial() or Queue() app call!  | |||
</pre>  | |||
== applicationmap ==  | |||
<pre>  | |||
[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  | |||
</pre>  | |||
== Dynamic feature group ==  | |||
<pre>  | |||
; 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].  | |||
</pre>  | |||
== See also ==  | == See also ==  | ||
Latest revision as of 16:11, 19 December 2016
Overview
Asterisk featuers.conf 파일 설정 내용 정리.
features.conf 파일은 transfer, monitor/mixmonitor, etc 를 위한 설정 파일이다. 예전에는 parking 관련 설정도 이곳에 설정했었으나, Asterisk-12 부터는 모든 parking 관련 설정은 res_parking.conf 파일로 이관되었다.
general
[general]
;transferdigittimeout => 3      ; Number of seconds to wait between digits when transferring a call
                                ; (default is 3 seconds)
;xfersound = beep               ; to indicate an attended transfer is complete
;xferfailsound = beeperr        ; to indicate a failed transfer
;pickupexten = *8               ; Configure the pickup extension. (default is *8)
;pickupsound = beep             ; to indicate a successful pickup (default: no sound)
;pickupfailsound = beeperr      ; to indicate that the pickup failed (default: no sound)
;featuredigittimeout = 1000     ; Max time (ms) between digits for
                                ; feature activation  (default is 1000 ms)
;recordingfailsound = beeperr   ; indicates that a one-touch monitor or one-touch mixmonitor feature failed
                                ; to be applied to the call. (default: no sound)
;atxfernoanswertimeout = 15     ; Timeout for answer on attended transfer default is 15 seconds.
;atxferdropcall = no            ; If someone does an attended transfer, then hangs up before the transfer
                                ; target answers, then by default, the system will try to call back the
                                ; person that did the transfer.  If this is set to "yes", the ringing
                                ; transfer target is immediately transferred to the transferee.
;atxferloopdelay = 10           ; Number of seconds to sleep between retries (if atxferdropcall = no)
;atxfercallbackretries = 2      ; Number of times to attempt to send the call back to the transferer.
                                ; By default, this is 2.
;transferdialattempts = 3       ; Number of times that a transferer may attempt to dial an extension before
                                ; being kicked back to the original call.
;transferretrysound = "beep"    ; Sound to play when a transferer fails to dial a valid extension.
;transferinvalidsound = "beeperr" ; Sound to play when a transferer fails to dial a valid extension and is out of retries.
;atxferabort = *1               ; cancel the attended transfer
;atxfercomplete = *2            ; complete the attended transfer, dropping out of the call
;atxferthreeway = *3            ; complete the attended transfer, but stay in the call. This will turn the call into a multi-party bridge
;atxferswap = *4                ; swap to the other party. Once an attended transfer has begun, this options may be used multiple times
; Note that the DTMF features listed below only work when two channels have answered and are bridged together.
; They can not be used while the remote party is ringing or in progress. If you require this feature you can use
; chan_local in combination with Answer to accomplish it.
featuremap
여기에 설정된 DTMF 를 누르면 설정된 feature 가 실행되게 된다. DTMF 입력이후, 지정된 Dial() 혹은 Queue() application 이 동작하게 되며, 이후 입력되는 DTMF 가 인자값으로 전달되게 된다.
[featuremap] ;blindxfer => #1 ; Blind transfer (default is #) -- Make sure to set the T and/or t option in the Dial() or Queue() app call! ;disconnect => *0 ; Disconnect (default is *) -- Make sure to set the H and/or h option in the Dial() or Queue() app call! ;automon => *1 ; One Touch Record a.k.a. Touch Monitor -- Make sure to set the W and/or w option in the Dial() or Queue() app call! ;atxfer => *2 ; Attended transfer -- Make sure to set the T and/or t option in the Dial() or Queue() app call! ;parkcall => #72 ; Park call (one step parking) -- Make sure to set the K and/or k option in the Dial() app call! ;automixmon => *3 ; One Touch Record a.k.a. Touch MixMonitor -- Make sure to set the X and/or x option in the Dial() or Queue() app call!
applicationmap
[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 group
; 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].
See also
- https://wiki.asterisk.org/wiki/display/AST/Asterisk+14+Configuration_features - Asterisk 14 Configuration_features