Инструменты пользователя

Инструменты сайта


extensions.conf

**Это старая версия документа!**

[global] ; глобальные переменные

;контексты - где искать правило для обработки звонка берется из параметра контекст

[my]

exten ⇒ шаблон, приор, приложение

; _89 ; X от 0-9 ; N 2-9 ; [2-9] [1-3,5-7] ; . - любой

примеры 89N 89X 89N. 89X.

exten => _8911X. , 1, приложение

exten ⇒ _8911X. , 2, приложение exten ⇒ _8911X. , 3, приложение

exten ⇒ 8921X.,1, same ⇒ _8921X.,n, same ⇒ _8921X.,n,
разрешить 100 звонить на номер exten ⇒ _8911X./100,1,

приложения Playback проигрование без учета нажатий exten ⇒ 999,1,PlayBack(hello-world&tt-monkey Background проигрование с учетом нажатий Dial Answer Hangup NOOP Verbose Goto Macro Cosub Wait WaitExten SayDigits

справка по командам core show application Playback

exten ⇒ 999,1,PlayBack(hello-world&tt-monkeys

exten ⇒ 888,1,Background(tt-monkeys)

exten ⇒ 5,1,SayNumber(5455523) ; обработка некорректного символа exten ⇒ i,1,SayAlpha(dfdfa)

После настроики перезагрузить dialplan dialplan reload

екстеншены служебные

i - не корректно t - таймаут

exten ⇒ 888,1,Background(vm-review) same ⇒ n,WaitExten(5) exten ⇒ t,1,SayDigits(123456789)

Приложение read многозначный добаваочный

приложение Dial

Dial(SIP/100,5) - звонок на конечный телефон таймаут 5 с
переменные ${} - взять значение ${EXTEN}

Звонок нескольким абонентам (кто первый возьмет)

exten ⇒ 777,1,Dial(SIP/501&SIP/502)

фоновая мелодия

exten = _5XX,1,Answer

  same => n,Dial(SIP/${EXTEN},15,m)
  same => n,Playback(tt-monkeys)

опция tT переадресация

T - звоняший может переводить t - тот кому позвонили может переводить

манипуляция с цифрами

exten ⇒ 0000,1,Dial(SIP/10${EXTEN}10)

exten ⇒ 0000,1,Dial(SIP/10${EXTEN:3}) откинуть первые три цифры

exten ⇒ 00000,1,Dial(SIP/10${EXTEN:3:2}) отступить 3 цифры и взять 2 последующие

exten ⇒ _989X.,1,Dial(SIP/provider/${EXTEN:1},15,mTt)

как звонить

Dial(SIP/${EXTEN})

Dial(sip/ast2/200)

Dial(sip/${exten}@ast1)

Подключение контекста

[out_mgmn]

exten ⇒ _8X.,1,Dial(sip/op/${EXTEN}) exten ⇒ _8911X.,1,Dial(sip/op2/${EXTEN})

[support]

exten ⇒ _XXX,1,Dial(sip/${EXTEN})

[Boss] exten ⇒ _XXX,1,Dial(Sip/${EXTEN})

include ⇒ out_mgmn

Показать диалплан

dialplan show my1

NOOP - вывести в консоль астериска

exten ⇒ 1,1,NOOP(bla-bla)

    same=> n,Hangip

exten ⇒777,1,NOOP(YOU are LUCKEY)

  same => n,NOOP(${CALLERID(num)})
  same => n,NOOP(${CHANNEL(language)})
  same => n,NOOP(WE ARE HERE)
  same => n,NOOP(USER CALLED ${EXTEN}) 
  same => n,Playback(tt-monkeys)

Установка значений переменных

exten = _5XX,1,NOOP( WE ARE START, MY CALLERID = ${CALLERID})

  same => n,Set(CALLERID(NAME)=PUTIN)
  same => n,Set(CHANNEL(Language)=ru)
  same => n,Set(CALLERID(num)=666)
  same => n,Dial(sip/${EXTEN})

exten ⇒ _[1-4]XX,1,Dial(sip/ast${EXTEN:0:1}/${EXTEN})

Работ с каналом

core show channels verbose core show channel SIP/500-0000003 hangup request SIP/ast3-0000002a

Проверка логических условий $[условие]

exten ⇒ 000,1,Answer

    same => n,Gotoif($[${CALLERID(num)}=500]?ok:no)
    same => n(ok),Playback(hello-world)
    same => n(no),Playback(tt-monkeys)
     

exten ⇒ 000,1,Answer

    same => n,Gotoif($[${CALLERID(num)}=500]?my,000,ok:no)
    same => n(ok),Playback(hello-world)
    same => n(no),Playback(tt-monkeys)
    
    

exten ⇒ 000,1,Answer

    same => n,Gotoif($[${CALLERID(num)}=500]?test,1:no)
    same => n(ok),Playback(hello-world)
    same => n(no),Playback(tt-monkeys)

exten ⇒ test,1,Playback(hello-world)

exten ⇒ 000,1,Answer

    same => n,Gotoif($[${CALLERID(num)}=500]?test,1:no)
    same => n(ok),Goto(test,1)
    same => n(no),Playback(tt-monkeys)

exten ⇒ test,1,Playback(hello-world)

приложение gotoiftime(9:00-10:00,,,*?worktime:unwork,1) изучить

макросы - группировка екстеншенов в блоки

exten ⇒ 001,1,Macro(test,1024,${EXTEN}) переменные передеются в ARG0 ,ARG1 …

[macro-test]

exten ⇒ s,1,Answer

    same=> n,SayDigits(${ARG1})
    same=> n,SayNumber(${ARG2})

приложение gosub

exten ⇒ 002,1,Answer same ⇒n,GoSub(subtest,start,1()) same ⇒ n, Playbask(vm-goodbye)

[subtest]

exten ⇒ start,1,sayPhonetic(monkey)

       same => n,return ; возврат  
       

с передачей аргумента.

exten ⇒ 002,1,Answer same ⇒n,GoSub(subtest,start,1(test)) same ⇒ n, Playbask(vm-goodbye)

[subtest]

exten ⇒ start,1,sayPhonetic(${ARG1})

       same => n,return ; возврат  
       

запись

exten ⇒ 003,1,Set(RECODFILE = record%d.wav) same ⇒ n,Record(${RECORDFILE})

запиь пойдет /var/spool/lib/monitor

1 приветствиее повторение по таймауту

1если вы хотиие связаться с внутеренним обоненном - жми 1 2 если знаете внеутр номер обонента - 2 введите внутрений 3значный номер сообщение вы ввели не верный номер повеситт трубку 3 - техподдержка - все телефоны
4 - если вы хотите связаться с отделом продаж нажмине 4 - перевод по 10 сек

Реализация меню

exten ⇒ 1001,1,Answer same ⇒ n(b),Playback(helo) same ⇒ n,Waitexten(10)

exten ⇒ 1,1,Dial(sip/1000) exten ⇒ 2,1,Gotosub(SubButton,start,1()) exten ⇒ 3,1,Dial(sip/100&sip/101&sip/102) exten ⇒ 4,1,Dial(sip/1001,10,tr)

exten ⇒ t,1,Goto(b) exten ⇒ t,1,Goto(b)

[SubButton]

exten ⇒ start(b),1,Playback

   same =>n,Waitexten(10)

exten ⇒ t,1,Goto(b) exten ⇒ i,1,Goto(b) exten ⇒ _X. ,1 Goto(b)

Обработка входящих (waitexten, read, ) должна осуществляться в контексте не имеющем выхода в город. (macro,gosub) макрос возвращает управление, gosub только при использование return [my] exten ⇒ 2402040,1,Macro(ivr)

запись звонков monitor и mixmonitor

exten ⇒ _5XX,1,Mixmonitor

    same => n,Dial(sip/${EXTEN})

универсальная запись

exten ⇒ _500,1,Set(M=${STRTIME(${EPOCH},,%d.%m.%Y-%H.%M%S)}) same ⇒ n,Mixmonitor(${M}.wav) same ⇒ n,Dial(sip/${EXTEN})

extensions.conf.1416479094.txt.gz · Последнее изменение: 2014/11/20 13:24 (внешнее изменение)

DokuWiki Appliance - Powered by TurnKey Linux