Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Параллельное или фоновое выполнение php скрипта в диал плане

0

Доброго времени суток ! Имеется FreePBX 15.0.16 .В диал плане :

[zay]
exten => _.,1,Answer()
exten => _.,n,Background(/var/lib/asterisk/sounds/ru/custom/6_zay,skip)
exten => _.,n,AGI(zay.php,${CALLERID(num)}, ${STRFTIME(${EPOCH},,%Y.%m.%d  -  %H:%M)}, ${CALLERID(name)})
exten => _.,n,Hangup()

Скрипт php сложный и выполняется 25 - 30 сек. Что происходит.После произнесения звонящему 6_zay уходит на выполнение zay.php и если звонящий не положит трубку в эти 25 -30 сек то все нормально отрабатывает. Ну и соответственно если положит то выполнение скрипта прерывается. Как бы реализовать - сначала отпустить звенящего Hangup() а вот потом продолжить выполнение php ? DeadAGI - не помогает

удалить закрыть спам изменить тег редактировать

спросил 2020-12-04 13:21:54 +0400

DIC Gravatar DIC
1 2

обновил 2020-12-04 16:27:09 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

Comments

Для чего выполняется скрипт?

zzuz ( 2020-12-04 20:56:25 +0400 )редактировать

2 Ответа

0

Если нужно, делайте hangup, ну а пост-обработку делайте в h экстене или же навешивая hangup_handler.

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

ссылка удалить спам редактировать

ответил 2020-12-21 22:17:13 +0400

Zavr2008 Gravatar Zavr2008 flag of Russian Federation
2886 11 9 40
http://mh.otx.ru/
0

Тривиально гуглится(выдает тоже мой ответ, но то таке)

https://stackoverflow.com/questions/32391634/set-waiting-tone-for-asterisk-agi-function-processing

А вообще откройте для себя threads и многопоточное программированние. Положена ли трубка в текущем потоке можно узнать запросив ${CHANNEL(state)} через $agi->getfullvariable.

https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Function_CHANNEL

ссылка удалить спам редактировать

ответил 2020-12-04 16:29:59 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

обновил 2020-12-04 16:30:32 +0400

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2020-12-04 13:21:54 +0400

Просмотрен: 683 раз

Обновлен: Dec 21 '20

Похожие вопросы:

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.