1 | изначальная версия редактировать | |
Только начинаю изучать и настраивать Astrisk.
Есть Asterisk 1.6.2.20 c Web GUI. Есть SIP учетная запись (внешняя) оператора. Регистрация с ней есть (sip show registry ее подтверждает и в GUI видно) .
При исходящем звонке сообщение: "call from internal# to extension 9external# reject because extension (куда звоним c 9) not found in context название dialplan"
Есть outgoing Calling Rules, сделанное из Web GUI по умолчанию, выдержка из sip.conf:
[МоеCallingRule] exten => 9XXXXXXX,1,Macro(trunkdial-failover-0.3,${SIPномер/имярегистрацииУоператора}/${exten:1},,SIPномер/имярегистрацииУоператора,SIPномер/имярегистрацииУ_оператора)
сам макрос определен там же (по умолчанию) : [macro-trunkdial-failover-0.3] exten = s,1,GotoIf($[${LEN(${FMCIDNUM})} > 6]?1-fmsetcid,1) exten = s,2,GotoIf($[${LEN(${GLOBALOUTBOUNDCIDNAME})} > 1]?1-setgbobname,1) exten = s,3,Set(CALLERID(num)=${IF($[${LEN(${CID${CALLERID(num)}})} > 2]?${CID${CALLERID(num)}}:)}) exten = s,n,GotoIf($[${LEN(${CALLERID(num)})} > 6]?1-dial,1) exten = s,n,Set(CALLERID(all)=${IF($[${LEN(${CID${ARG3}})} > 6]?${CID${ARG3}}:${GLOBALOUTBOUNDCID})}) exten = s,n,Goto(1-dial,1) exten = 1-setgbobname,1,Set(CALLERID(name)=${GLOBAL_OUTBOUNDCIDNAME}) exten = 1-setgbobname,n,Goto(s,3) exten = 1-fmsetcid,1,Set(CALLERID(num)=${FMCIDNUM}) exten = 1-fmsetcid,n,Set(CALLERID(name)=${FMCIDNAME}) exten = 1-fmsetcid,n,Goto(1-dial,1) exten = 1-dial,1,Dial(${ARG1}) exten = 1-dial,n,Gotoif(${LEN(${ARG2})} > 0 ?1-${DIALSTATUS},1:1-out,1) exten = 1-CHANUNAVAIL,1,Dial(${ARG2}) exten = 1-CHANUNAVAIL,n,Hangup() exten = 1-CONGESTION,1,Dial(${ARG2}) exten = 1-CONGESTION,n,Hangup() exten = 1-out,1,Hangup()
там же GLOBALOUTBOUNDCID = GLOBALOUTBOUNDCIDNAME = CIDSIPномер/имярегистрацииУоператора = SIPномер/имярегистрацииУ_оператора
там же [МойDialPlan] include => МоеCallingRule - правило для SIP исходящего звонка (см. выше) include => default - контекст, созданный asterisk по умолчанию для внутренних звонков:
Этот контекс по dialplan show default:
[ Context 'default' created by 'pbx_config' ]
'100' => hint: SIP/100
1. Dial(${HINT})
'101' => hint: SIP/101
1. Dial(${HINT})
'102' => hint: SIP/102
1. Dial(${HINT})
'103' => hint: SIP/103
1. Dial(${HINT})
и так далее, плюс
exten => o,1,
exten => 199,1,VoiceMailMain(${CALLERID(num)}@default)
В Users.conf для internal# прописан: context=МойDialPlan
2 | No.2 Revision редактировать |
Только начинаю изучать и настраивать Astrisk.
Есть Asterisk 1.6.2.20 c Web GUI. Есть SIP учетная запись (внешняя) оператора. Регистрация с ней есть (sip show registry ее подтверждает и в GUI видно) .
При исходящем звонке сообщение: "call from internal# to extension 9external# reject because extension (куда звоним c 9) not found in context название dialplan"
Есть outgoing Calling Rules, сделанное из Web GUI по умолчанию, выдержка из sip.conf:
[МоеCallingRule] exten => 9XXXXXXX,1,Macro(trunkdial-failover-0.3,${SIPномер/имярегистрацииУоператора}/${exten:1},,SIPномер/имярегистрацииУоператора,SIPномер/имярегистрацииУ_оператора)
сам макрос определен там же (по умолчанию) : [macro-trunkdial-failover-0.3] exten = s,1,GotoIf($[${LEN(${FMCIDNUM})} > 6]?1-fmsetcid,1) exten = s,2,GotoIf($[${LEN(${GLOBALOUTBOUNDCIDNAME})} > 1]?1-setgbobname,1) exten = s,3,Set(CALLERID(num)=${IF($[${LEN(${CID${CALLERID(num)}})} > 2]?${CID${CALLERID(num)}}:)}) exten = s,n,GotoIf($[${LEN(${CALLERID(num)})} > 6]?1-dial,1) exten = s,n,Set(CALLERID(all)=${IF($[${LEN(${CID${ARG3}})} > 6]?${CID${ARG3}}:${GLOBALOUTBOUNDCID})}) exten = s,n,Goto(1-dial,1) exten = 1-setgbobname,1,Set(CALLERID(name)=${GLOBAL_OUTBOUNDCIDNAME}) exten = 1-setgbobname,n,Goto(s,3) exten = 1-fmsetcid,1,Set(CALLERID(num)=${FMCIDNUM}) exten = 1-fmsetcid,n,Set(CALLERID(name)=${FMCIDNAME}) exten = 1-fmsetcid,n,Goto(1-dial,1) exten = 1-dial,1,Dial(${ARG1}) exten = 1-dial,n,Gotoif(${LEN(${ARG2})} > 0 ?1-${DIALSTATUS},1:1-out,1) exten = 1-CHANUNAVAIL,1,Dial(${ARG2}) exten = 1-CHANUNAVAIL,n,Hangup() exten = 1-CONGESTION,1,Dial(${ARG2}) exten = 1-CONGESTION,n,Hangup() exten = 1-out,1,Hangup()
там же
GLOBALOUTBOUNDCID =
GLOBALOUTBOUNDCIDNAME =
GLOBAL_OUTBOUNDCID=
GLOBAL_OUTBOUNDCIDNAME=
CIDSIPномер/имярегистрацииУоператора = SIPномер/имярегистрацииУ_оператора
там же [МойDialPlan] include => МоеCallingRule - правило для SIP исходящего звонка (см. выше) include => default - контекст, созданный asterisk по умолчанию для внутренних звонков:
Этот контекс по dialplan show default:
[ Context 'default' created by 'pbx_config' ]
'100' => hint: SIP/100
1. Dial(${HINT})
'101' => hint: SIP/101
1. Dial(${HINT})
'102' => hint: SIP/102
1. Dial(${HINT})
'103' => hint: SIP/103
1. Dial(${HINT})
и так далее, плюс
exten => o,1,
exten => 199,1,VoiceMailMain(${CALLERID(num)}@default)
В Users.conf для internal# прописан: context=МойDialPlan
3 | No.3 Revision редактировать |
Только начинаю изучать и настраивать Astrisk.
Есть Asterisk 1.6.2.20 c Web GUI. Есть SIP учетная запись (внешняя) оператора. Регистрация с ней есть (sip show registry ее подтверждает и в GUI видно) .
При исходящем звонке сообщение: "call from internal# to extension 9external# reject because extension (куда звоним c 9) not found in context название dialplan"
Есть outgoing Calling Rules, сделанное из Web GUI по умолчанию, выдержка из sip.conf:
[МоеCallingRule] exten => 9XXXXXXX,1,Macro(trunkdial-failover-0.3,${SIPномер/имярегистрацииУоператора}/${exten:1},,SIPномер/имярегистрацииУоператора,SIPномер/имярегистрацииУ_оператора)
сам макрос определен там же (по умолчанию) : [macro-trunkdial-failover-0.3] exten = s,1,GotoIf($[${LEN(${FMCIDNUM})} > 6]?1-fmsetcid,1) exten = s,2,GotoIf($[${LEN(${GLOBALOUTBOUNDCIDNAME})} > 1]?1-setgbobname,1) exten = s,3,Set(CALLERID(num)=${IF($[${LEN(${CID${CALLERID(num)}})} > 2]?${CID${CALLERID(num)}}:)}) exten = s,n,GotoIf($[${LEN(${CALLERID(num)})} > 6]?1-dial,1) exten = s,n,Set(CALLERID(all)=${IF($[${LEN(${CID${ARG3}})} > 6]?${CID${ARG3}}:${GLOBALOUTBOUNDCID})}) exten = s,n,Goto(1-dial,1) exten = 1-setgbobname,1,Set(CALLERID(name)=${GLOBAL_OUTBOUNDCIDNAME}) exten = 1-setgbobname,n,Goto(s,3) exten = 1-fmsetcid,1,Set(CALLERID(num)=${FMCIDNUM}) exten = 1-fmsetcid,n,Set(CALLERID(name)=${FMCIDNAME}) exten = 1-fmsetcid,n,Goto(1-dial,1) exten = 1-dial,1,Dial(${ARG1}) exten = 1-dial,n,Gotoif(${LEN(${ARG2})} > 0 ?1-${DIALSTATUS},1:1-out,1) exten = 1-CHANUNAVAIL,1,Dial(${ARG2}) exten = 1-CHANUNAVAIL,n,Hangup() exten = 1-CONGESTION,1,Dial(${ARG2}) exten = 1-CONGESTION,n,Hangup() exten = 1-out,1,Hangup()
там же GLOBAL_OUTBOUNDCID=
GLOBAL_OUTBOUNDCIDNAME=
CIDSIPномер/имярегистрацииУоператора = SIPномер/имярегистрацииУ_оператора
там же [МойDialPlan] include => МоеCallingRule - правило для SIP исходящего звонка (см. выше) include => default - контекст, созданный asterisk по умолчанию для внутренних звонков:
Этот контекс по dialplan show default:
[ Context 'default' created by 'pbx_config' ]
'100' => hint: SIP/100
1. Dial(${HINT})
'101' => hint: SIP/101
1. Dial(${HINT})
'102' => hint: SIP/102
1. Dial(${HINT})
'103' => hint: SIP/103
1. Dial(${HINT})
и так далее, плюс
exten => o,1,
exten => 199,1,VoiceMailMain(${CALLERID(num)}@default)
В Users.conf для internal# прописан: context=МойDialPlan
Как настроить extensions.conf и почему не правильный context ?
4 | No.4 Revision редактировать |
Только начинаю изучать и настраивать Astrisk.
Есть Asterisk 1.6.2.20 c Web GUI. Есть SIP учетная запись (внешняя) оператора. Регистрация с ней есть (sip show registry ее подтверждает и в GUI видно) .
При исходящем звонке сообщение: "call from internal# to extension 9external# reject because extension (куда звоним c 9) not found in context название dialplan"
Есть outgoing Calling Rules, сделанное из Web GUI по умолчанию, выдержка из sip.conf:
[МоеCallingRule] exten => 9XXXXXXX,1,Macro(trunkdial-failover-0.3,${SIPномер/имярегистрацииУоператора}/${exten:1},,SIPномер/имярегистрацииУоператора,SIPномер/имярегистрацииУ_оператора)
[_Мое_CallingRule]
exten => _9XXXXXXX,1,Macro(trunkdial-failover-0.3,${SIP_номер/имя_регистрации_У_оператора}/${exten:1},,SIP_номер/имя_регистрации_У_оператора,SIP_номер/имя_регистрации_У_оператора)
сам макрос определен там же (по умолчанию) :
:
[macro-trunkdial-failover-0.3]
exten = s,1,GotoIf($[${LEN(${FMCIDNUM})} > 6]?1-fmsetcid,1)
exten = s,2,GotoIf($[${LEN(${GLOBALOUTBOUNDCIDNAME})} s,2,GotoIf($[${LEN(${GLOBAL_OUTBOUNDCIDNAME})} > 1]?1-setgbobname,1)
exten = s,3,Set(CALLERID(num)=${IF($[${LEN(${CID${CALLERID(num)}})} s,3,Set(CALLERID(num)=${IF($[${LEN(${CID_${CALLERID(num)}})} > 2]?${CID${CALLERID(num)}}:)})
2]?${CID_${CALLERID(num)}}:)})
exten = s,n,GotoIf($[${LEN(${CALLERID(num)})} > 6]?1-dial,1)
exten = s,n,Set(CALLERID(all)=${IF($[${LEN(${CID${ARG3}})} s,n,Set(CALLERID(all)=${IF($[${LEN(${CID_${ARG3}})} > 6]?${CID${ARG3}}:${GLOBALOUTBOUNDCID})})
6]?${CID_${ARG3}}:${GLOBAL_OUTBOUNDCID})})
exten = s,n,Goto(1-dial,1)
exten = 1-setgbobname,1,Set(CALLERID(name)=${GLOBAL_OUTBOUNDCIDNAME})
exten = 1-setgbobname,n,Goto(s,3)
exten = 1-fmsetcid,1,Set(CALLERID(num)=${FMCIDNUM})
exten = 1-fmsetcid,n,Set(CALLERID(name)=${FMCIDNAME})
exten = 1-fmsetcid,n,Goto(1-dial,1)
exten = 1-dial,1,Dial(${ARG1})
exten = 1-dial,n,Gotoif(${LEN(${ARG2})} > 0 ?1-${DIALSTATUS},1:1-out,1)
exten = 1-CHANUNAVAIL,1,Dial(${ARG2})
exten = 1-CHANUNAVAIL,n,Hangup()
exten = 1-CONGESTION,1,Dial(${ARG2})
exten = 1-CONGESTION,n,Hangup()
exten = 1-out,1,Hangup() 1-out,1,Hangup()
там же
GLOBAL_OUTBOUNDCID= GLOBAL_OUTBOUNDCIDNAME=
CIDSIPномер/имярегистрацииУоператора = SIPномер/имярегистрацииУ_оператора
GLOBAL_OUTBOUNDCID=
GLOBAL_OUTBOUNDCIDNAME=
CID_SIP_номер/имя_регистрации_У_оператора = SIP_номер/имя_регистрации_У_оператора
там же
[МойDialPlan]
[_Мой_DialPlan]
include => МоеCallingRule _Мое_CallingRule - правило для SIP исходящего звонка (см. выше)
include => default - контекст, созданный asterisk по умолчанию для внутренних звонков:звонков:
Этот контекс по dialplan show default:
default:
[ Context 'default' created by 'pbx_config' ]
'100' => hint: SIP/100
1. Dial(${HINT})
'101' => hint: SIP/101
1. Dial(${HINT})
'102' => hint: SIP/102
1. Dial(${HINT})
'103' => hint: SIP/103
1. Dial(${HINT})
Dial(${HINT})
и так далее, плюс
exten => o,1,
exten => 199,1,VoiceMailMain(${CALLERID(num)}@default)199,1,VoiceMailMain(${CALLERID(num)}@default)
В Users.conf для internal# прописан:
context=МойDialPlan
context=_Мой_DialPlan
Как настроить extensions.conf и почему не правильный context ?
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.