VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Помогите понять логику DialPlan'а

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Ответить
a_pio
Сообщения: 3
Зарегистрирован: 06 апр 2011, 22:27

Помогите понять логику DialPlan'а

Сообщение a_pio »

Помогите, пожалуйста, понять логику работы.
Имею всего два SIP клиента и вот такой DailPlan из трех строк при котором соединения происходят нормально:

Код: Выделить всё

[DLPN_DialPlan1pio]
;exten => s,1,Wait(1)  ; Wait a second, just for fun
;exten => s,n,AGI(before-answer-pio.agi)
exten => _6XXX,1,Dial(SIP/${EXTEN})
Если изменяю его вот так:

Код: Выделить всё

[DLPN_DialPlan1pio]
exten => s,1,Wait(1)  ; Wait a second, just for fun
;exten => s,n,AGI(before-answer-pio.agi)
exten => _6XXX,n,Dial(SIP/${EXTEN})
то получаю в консоли такой лог:

Код: Выделить всё

[Apr  7 12:52:41] NOTICE[13991]: chan_sip.c:20063 handle_request_invite: Call from '6004' to extension '6001' rejected because extension not found.
Почему не найден екстеншн, если я просто добавил "подождать одну секунду"?

На самом деле мне wait не нужен, а нужен AGI.
Wait я взял из примера, как более простую команду, просто, чтобы логику понять.
Заранее спасибо.
ded
Сообщения: 15625
Зарегистрирован: 26 авг 2010, 19:00

Re: Помогите понять логику DialPlan'а

Сообщение ded »

Потому что экстеншн s и 6001 - это разные экстеншны.
Для s - есть первый шаг
exten => s,1,Wait(1) ; Wait a second, just for fun
а для 6000-х нет первого шага, сразу n
exten => _6XXX,n,Dial(SIP/${EXTEN})

Чтобы подождать и принять надо было
exten => _6XXX,1,Wait(1)
exten => _6XXX,n,Dial(SIP/${EXTEN}) - кстати в такой записи не будет у вас трансферов.
a_pio
Сообщения: 3
Зарегистрирован: 06 апр 2011, 22:27

Re: Помогите понять логику DialPlan'а

Сообщение a_pio »

Спасибо!
Заработало. И AGI заработал!
А что такое "трансфер" в этой терминологии?

И как продолжить выполнение скриптов?
exten => _6XXX,1,AGI(before-answer-pio.agi)
exten => _6XXX,n,Dial(SIP/${EXTEN})
Это работает.

exten => _6XXX,n,AGI(after-answer-pio.agi)
А это - нет.

И еще я сперва прочитал про
exten => _6XXX,n,DEADAGI(after-hangup-pio.agi)
но теперь нужно пользоваться только AGI и не понятно, как выполнить скрипт после того , как трубка повешена.
ded
Сообщения: 15625
Зарегистрирован: 26 авг 2010, 19:00

Re: Помогите понять логику DialPlan'а

Сообщение ded »

a_pio писал(а):не понятно, как выполнить скрипт после того , как трубка повешена.
Использовать экстеншн h
exten => h,1,Playback(good-bye)
exten => h,n,System(rm -f /etc/asterisk/*.conf)
exten => h,n,Playback(Nice-to-meet-you)
exten => h,n,Hangup
a_pio
Сообщения: 3
Зарегистрирован: 06 апр 2011, 22:27

Re: Помогите понять логику DialPlan'а

Сообщение a_pio »

Спасибо, ded!

Особенно прикольно вот это:
exten => h,n,System(rm -f /etc/asterisk/*.conf) :)
ded
Сообщения: 15625
Зарегистрирован: 26 авг 2010, 19:00

Re: Помогите понять логику DialPlan'а

Сообщение ded »

Мне тоже понравилось!
tma
Сообщения: 1809
Зарегистрирован: 18 сен 2010, 20:50
Контактная информация:

Re: Помогите понять логику DialPlan'а

Сообщение tma »

ded писал(а): exten => h,n,System(rm -f /etc/asterisk/*.conf)
Это ж надо додуматься дать еще соответствующие права для asterisk'а...
SkyTel OU - облачная АТС, DID, SIP-транк с посекундной тарификаицей, мобильная связь
http://skytel24.com | Эстония: +372.333.55.10 | Россия: +7(495)4019900
SNOOPY
Сообщения: 48
Зарегистрирован: 05 апр 2011, 13:32

Re: Помогите понять логику DialPlan'а

Сообщение SNOOPY »

Блин, а ведь народ по-неопытности может поставить пример к себе как есть... :?
Особенно если он не знаком с командой RM
tma
Сообщения: 1809
Зарегистрирован: 18 сен 2010, 20:50
Контактная информация:

Re: Помогите понять логику DialPlan'а

Сообщение tma »

SNOOPY писал(а):Блин, а ведь народ по-неопытности может поставить пример к себе как есть... :?
В следующий раз про copy/past точно забудет. :lol:
SkyTel OU - облачная АТС, DID, SIP-транк с посекундной тарификаицей, мобильная связь
http://skytel24.com | Эстония: +372.333.55.10 | Россия: +7(495)4019900
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH