Читаю будущее телефонии.
Скомпилировал и установил Asterisk 13.10.0 на CentOS 7 x64
[root@localhost asterisk]# cat extensions.conf
[globals]
[general]
autofallthrough=yes
[default]
[incoming-calls]
[internal]
[phones]
include => internal
В консоли астерикса пишу dialplan show и получаю
dialplan show
[ Context 'default' created by 'pbx_config' ]
[ Context 'incoming-calls' created by 'pbx_config' ]
[ Context 'internal' created by 'pbx_config' ]
[ Context 'phones' created by 'pbx_config' ]
Include => 'internal' [pbx_config]
[ Context 'parkedcalls' created by 'res_parking' ]
'700' => 1. Park() [res_parking]
=============================================================================================================
!!!!!!!!! ВСЁ, ЧТО НИЖЕ ЛИШНЕЕ, не должно этого тут быть. !!!!!!!
'701' => 1. ParkedCall(default,701) [res_parking/default]
'702' => 1. ParkedCall(default,702) [res_parking/default]
'718' => 1. ParkedCall(default,718) [res_parking/default]
'719' => 1. ParkedCall(default,719) [res_parking/default]
'720' => 1. ParkedCall(default,720) [res_parking/default]
[ Context '__func_periodic_hook_context__' created by 'func_periodic_hook' ]
'beep' (CID match '') => 1. Answer() [func_periodic_hook]
2. Playback(beep) [func_periodic_hook]
'hook' (CID match '') => 1. Set(EncodedChannel=${CUT(HOOK_CHANNEL,-,1-2)}) [func_periodic_hook]
2. Set(GROUP_NAME=${EncodedChannel}${HOOK_ID}) [func_periodic_hook]
3. Set(GROUP(periodic-hook)=${GROUP_NAME}) [func_periodic_hook]
4. ExecIf($[${GROUP_COUNT(${GROUP_NAME}@periodic-hook)} > 1]?Hangup()) [func_periodic_hook]
5. Set(ChannelToSpy=${URIDECODE(${EncodedChannel})}) [func_periodic_hook]
6. ChanSpy(${ChannelToSpy},qEB) [func_periodic_hook]
[ Context 'ael-builtin-h-bubble' created by 'pbx_ael' ]
'h' => 1. Goto(9991) [pbx_ael]
9991. Set(~~parentcxt~~=${STACK_PEEK(1,c,1)}) [pbx_ael]
9992. GotoIf($["${~~parentcxt~~}"=""]?9996) [pbx_ael]
9993. GotoIf(${DIALPLAN_EXISTS(${~~parentcxt~~},h,1)}?9994:9996) [pbx_ael]
9994. StackPop() [pbx_ael]
9995. Goto(${~~parentcxt~~},h,1) [pbx_ael]
9996. NoOp() [pbx_ael]
[ Context 'ael-default' created by 'pbx_ael' ]
Include => 'ael-demo' [pbx_ael]
[ Context 'ael-demo' created by 'pbx_ael' ]
'#' => 1. Playback(demo-thanks) [pbx_ael]
2. Hangup() [pbx_ael]
'1000' => 1. Goto(ael-default,s,1) [pbx_ael]
'2' => 1. Background(demo-moreinfo) [pbx_ael]
2. Goto(s,instructions) [pbx_ael]
'3' => 1. Set(LANGUAGE()=fr) [pbx_ael]
2. Goto(s,restart) [pbx_ael]
'500' => 1. Playback(demo-abouttotry) [pbx_ael]
2. Dial(IAX2/guest@misery.digium.com/s@default) [pbx_ael]
3. Playback(demo-nogo) [pbx_ael]
4. Goto(s,instructions) [pbx_ael]
'600' => 1. Playback(demo-echotest) [pbx_ael]
2. Echo() [pbx_ael]
3. Playback(demo-echodone) [pbx_ael]
4. Goto(s,instructions) [pbx_ael]
'8500' => 1. VoicemailMain() [pbx_ael]
2. Goto(s,instructions) [pbx_ael]
'i' => 1. Playback(invalid) [pbx_ael]
's' => 1. Wait(1) [pbx_ael]
2. Answer() [pbx_ael]
3. Set(TIMEOUT(digit)=5) [pbx_ael]
4. Set(TIMEOUT(response)=10) [pbx_ael]
[restart] 5. Background(demo-congrats) [pbx_ael]
[instructions] 6. MSet(x=$[0]) [pbx_ael]
7. GotoIf($[ ${x} < 3]?8:12) [pbx_ael]
8. Background(demo-instruct) [pbx_ael]
9. WaitExten() [pbx_ael]
10. MSet(x=$[${x} + 1]) [pbx_ael]
11. Goto(7) [pbx_ael]
12. NoOp(Finish for_ael-demo_3) [pbx_ael]
't' => 1. Goto(#,1) [pbx_ael]
'_1234' => 1. Gosub(ael-std-exten-ael,~~s~~,1(${EXTEN}, "IAX2")) [pbx_ael]
[ Context 'ael-std-exten-ael' created by 'pbx_ael' ]
'a' => 1. VoiceMailMain(${ext}) [pbx_ael]
2. Return() [pbx_ael]
'sw_1_' => 10. Goto(sw_1_.,10) [pbx_ael]
8. Return() [pbx_ael]
'_sw_1_.' => 10. Voicemail(${ext},u) [pbx_ael]
11. Goto(~~s~~,7) [pbx_ael]
Include => 'ael-builtin-h-bubble' [pbx_ael]
[ Context 'ael-local' created by 'pbx_ael' ]
Include => 'ael-default' [pbx_ael]
Include => 'ael-trunklocal' [pbx_ael]
[ Context 'ael-longdistance' created by 'pbx_ael' ]
Include => 'ael-local' [pbx_ael]
Include => 'ael-trunkld' [pbx_ael]
Ignore pattern => '9' [pbx_ael]
[ Context 'ael-international' created by 'pbx_ael' ]
Include => 'ael-longdistance' [pbx_ael]
Include => 'ael-trunkint' [pbx_ael]
Ignore pattern => '9' [pbx_ael]
[ Context 'ael-trunktollfree' created by 'pbx_ael' ]
'_91800NXXXXXX' => 1. Dial(${OUTBOUND-TRUNK}/${EXTEN:${OUTBOUND-TRUNKMSD}}) [pbx_ael]
[ Context 'ael-trunklocal' created by 'pbx_ael' ]
'_9NXXXXXX' => 1. Dial(${OUTBOUND-TRUNK}/${EXTEN:${OUTBOUND-TRUNKMSD}}) [pbx_ael]
[ Context 'ael-trunkld' created by 'pbx_ael' ]
'_91NXXNXXXXXX' => 1. Gosub(ael-dundi-e164,~~s~~,1(${EXTEN:1})) [pbx_ael]
2. Dial(${OUTBOUND-TRUNK}/${EXTEN:${OUTBOUND-TRUNKMSD}}) [pbx_ael]
[ Context 'ael-iaxprovider' created by 'pbx_ael' ]
[ Context 'ael-iaxtel700' created by 'pbx_ael' ]
'_91700XXXXXXX' => 1. Dial(IAX2/${IAXINFO-AEL}@iaxtel.com/${EXTEN:1}@iaxtel) [pbx_ael]
[ Context 'ael-dundi-e164' created by 'pbx_ael' ]
'~~s~~' => 1. MSet(LOCAL(exten)=${ARG1}) [pbx_ael]
2. Goto(${exten},1) [pbx_ael]
3. Return() [pbx_ael]
Include => 'ael-builtin-h-bubble' [pbx_ael]
[ Context 'ael-dundi-e164-lookup' created by 'pbx_ael' ]
Include => 'ael-dundi-e164-local' [pbx_ael]
Include => 'ael-dundi-e164-switch' [pbx_ael]
[ Context 'ael-dundi-e164-switch' created by 'pbx_ael' ]
Alt. Switch => 'DUNDi/e164' [pbx_ael]
[ Context 'ael-dundi-e164-local' created by 'pbx_ael' ]
Include => 'ael-dundi-e164-canonical' [pbx_ael]
Include => 'ael-dundi-e164-customers' [pbx_ael]
Include => 'ael-dundi-e164-via-pstn' [pbx_ael]
[ Context 'ael-dundi-e164-via-pstn' created by 'pbx_ael' ]
[ Context 'ael-dundi-e164-customers' created by 'pbx_ael' ]
[ Context 'ael-dundi-e164-canonical' created by 'pbx_ael' ]
-= 49 extensions (96 priorities) in 26 contexts. =-
Пробовал очищать другие файлы extensions.* но мусора становится только больше.
Почему Asterisk ведёт себя не "по книжке"? Как исправить?