Диалпланы Asterisk — различия между версиями

Материал из megapuper
Перейти к: навигация, поиск
Строка 1: Строка 1:
Все диалпланы будем испытывать на тестовом стенде в котором два Asterisk_11 на первом абоненты 12xx, на втором 13xx.
 
 
 
Контекст для абонентов
 
[phones]
 
include = internal
 
include = outgoing
 
include = incoming
 
 
 
 
Звонки по внутренней сети
 
Звонки по внутренней сети
 
  [internal]
 
  [internal]
Строка 15: Строка 5:
 
  exten => _12X.,n,Hangup()
 
  exten => _12X.,n,Hangup()
  
 
+
Исходящие звонки в ёмкости 74951690XXX в коротком  формате
Исходящие звонки
 
 
  [outgoing]
 
  [outgoing]
  exten => _7X.,1,NoOp(Outgoing call)
+
  exten => _1690XXX,1,NoOp(Outgoing call inside network in short format)
  exten => _7X.,n,Dial(SIP/sipnet/${EXTEN})
+
  exten => _1690XXX,n,Set(CALLERID(ALL)=${CALLERID(num)})
  exten => _7X.,n,Hangup()
+
exten => _1690XXX,n,Dial(SIP/7495${EXTEN})
 
+
  exten => _1690XXX,n,Hangup()
  
Входящие звонки
+
Исходящие звонки в ёмкости 7495XXXXXXX/7499XXXXXXX в коротком формате внутри префикса.
  [incoming]
+
  exten => _XXXXXXX,1,NoOp(Outgoing call of short number by ${CALLERID(num)})
  exten => _X.,1,NoOp(Incoming call)
+
  exten => _XXXXXXX,n,Set(first_three=${CALLERID(num):1:3})
  exten => _X.,n,Dial(SIP/${EXTEN})
+
exten => _XXXXXXX,n,NoOp(---first_three digits are ${first_three})
  exten => _X.,n,Hangup()
+
exten => _XXXXXXX,n,Set(CALLERID(ALL)=${CALLERID(num)})
 +
  exten => _XXXXXXX,n,Dial(SIP/peer_mtt/7${first_three}${EXTEN})
 +
  exten => _XXXXXXX,n,Hangup()
  
 +
Исходящие звонки в ёмкости 74951690XXX в длинном формате со сменой 8 на 7
 +
exten => _84951690XXX,1,NoOp(Outgoing call inside network in long format)
 +
exten => _84951690XXX,n,Set(CALLERID(ALL)=${CALLERID(num)})
 +
exten => _84951690XXX,n,Dial(SIP/7${EXTEN:1})
 +
exten => _84951690XXX,n,Hangup()
  
 
Входящий звонок и ivr
 
Входящий звонок и ivr

Версия 11:13, 4 сентября 2019

Звонки по внутренней сети

[internal]
exten => _12X.,1,NoOp(Local call)
exten => _12X.,n,Dial(SIP/${EXTEN})
exten => _12X.,n,Hangup()

Исходящие звонки в ёмкости 74951690XXX в коротком формате

[outgoing]
exten => _1690XXX,1,NoOp(Outgoing call inside network in short format)
exten => _1690XXX,n,Set(CALLERID(ALL)=${CALLERID(num)})
exten => _1690XXX,n,Dial(SIP/7495${EXTEN})
exten => _1690XXX,n,Hangup()

Исходящие звонки в ёмкости 7495XXXXXXX/7499XXXXXXX в коротком формате внутри префикса.

exten => _XXXXXXX,1,NoOp(Outgoing call of short number by ${CALLERID(num)})
exten => _XXXXXXX,n,Set(first_three=${CALLERID(num):1:3})
exten => _XXXXXXX,n,NoOp(---first_three digits are ${first_three})
exten => _XXXXXXX,n,Set(CALLERID(ALL)=${CALLERID(num)})
exten => _XXXXXXX,n,Dial(SIP/peer_mtt/7${first_three}${EXTEN})
exten => _XXXXXXX,n,Hangup()

Исходящие звонки в ёмкости 74951690XXX в длинном формате со сменой 8 на 7

exten => _84951690XXX,1,NoOp(Outgoing call inside network in long format)
exten => _84951690XXX,n,Set(CALLERID(ALL)=${CALLERID(num)})
exten => _84951690XXX,n,Dial(SIP/7${EXTEN:1})
exten => _84951690XXX,n,Hangup()

Входящий звонок и ivr

[incoming]
exten => _X.,1,NoOp(Incoming call)
exten => _X.,n,Goto(ivr,s,1)

[ivr]
exten => s,1,Answer()
exten => s,n,Background(ivr)
exten => s,n,WaitExten(3)
exten => s,n,Dial(SIP/1200,10)
exten => s,n,Hangup()
exten => 1,1,Dial(SIP/1201)
exten => 1,n,Hangup()
exten => 2,1,Playback(filename)
exten => 2,n,Hangup()
exten => i,1,Playback(pbx-invalid)
exten => i,n,Goto(ivr,s,1)