2016-01-23 5 views
2

Я хочу перенаправить вызывающего абонента на IVR после зависания набранного номера. Я сделал исследование и нашел что-то под названием deadAGI, но я не мог заставить его работать. Вы можете найти мой файл extensions_custom.conf ниже.Asterisk IVR After Hangup

[from-internal-custom] 
exten => 80,1,AGI(custom/agi.php) 
exten => 80,2,MixMonitor(${FILE}.WAV) 
exten => 80,3,Dial(SIP/custom/${NUMBER}) 
exten => 80,4,Hangup() 
exten => h,1,deadAGI(custom/finish) 

Мои файлы AGI верны, я уверен, что. Мне просто нужно запустить команду hangup.

Заранее спасибо.

+0

Я голосующий, чтобы закрыть этот вопрос как не относящийся к теме, потому что он выглядит как вопрос конфигурации звездочки, не связанный с программированием. –

+0

Здесь много вопросов, но это не проблема. –

ответ

0

Если вы используете FreePBX, и определили IVR в FreePBX Гуй, это просто будет доступен по вызову в соответствующий контекст диалплана, который вы легко найдете в генерируемый extensions.conf

Экстен => ч, 1, Goto (the_ivr_context, $ {EXTEN}, 1)

3

"ядро шоу приложение набора" гласит:

g: Proceed with dialplan execution at the next priority in the current 
extension if the destination channel hangs up. 

Так изменить ваш код:

[from-internal-custom] 
exten => 80,1,AGI(custom/agi.php) 
exten => 80,2,MixMonitor(${FILE}.WAV) 
exten => 80,3,Dial(SIP/custom/${NUMBER},,g) 
exten => 80,4,deadAGI(custom/finish) 
exten => 80,5,Hangup() 

Если вы хотите запустить свой скрипт не РАЗНИЦА вызывающий или вызываемый абонент вешает трубку:

e: Execute the 'h' extension for peer after the call ends 

Итак:

[from-internal-custom] 
exten => 80,1,AGI(custom/agi.php) 
exten => 80,2,MixMonitor(${FILE}.WAV) 
exten => 80,3,Dial(SIP/custom/${NUMBER},,ge) 
exten => 80,4,deadAGI(custom/finish) 
exten => 80,5,Hangup() 
exten => h,1,deadAGI(custom/finish) 

Ваша идея была почти в порядке. 'h' - расширение , а не приоритет.

+0

Я пробовал этот, но не совсем то, что мне нужно. Если вызываемый абонент зависает, абонент остается в сети, но AGI не работает. –

0

Помните, что никакие носители не могут воспроизводиться на мертвых каналах, поэтому держите каналы, на которых вы хотите играть в IVR.

0

Вы не можете играть на мертвом канале, нить звездочки будет передавать/выгружать все файлы с привязкой к переменной/значение deadAGI, чтобы мы могли записать историю вызова.

+0

Хорошо, спасибо за эту информацию, но как я могу ее обработать. Я думаю, вы понимаете, что мне нужно, я прав? –

+0

Использование может использовать приложение confbridge, когда вызываемый вызовет зависание, тогда вы будете только человеком в мосту, поэтому настройте файл IVR в конфиг, чтобы воспроизводить файл, когда есть только один участник. Это довольно легко. Дайте мне знать, что у вас есть другие запросы. –

Смежные вопросы