ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Выполнение команды при разрыве звонка

Проблемы и их решения Asterisk как такового

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

Выполнение команды при разрыве звонка

Сообщение Prizr2k » 22 дек 2017, 11:53

Нужно выполнить скрипт когда входящий звонок на группу завершен(т.е. поговорили с оператором, или просто не дождались ответа и скинули, независимо кто положил трубку). Подскажите куда и как вставить команду System(bash test.sh)?

Есть группа вызова:
exten => 603,1,Macro(user-callerid,)
exten => 603,2,System(bash test.sh)
exten => 603,n,Macro(blkvm-setifempty,)
exten => 603,n,GotoIf($["${GOSUB_RETVAL}" = "TRUE"]?skipov)
exten => 603,n,Macro(blkvm-set,reset)
exten => 603,n,Set(__NODEST=)
exten => 603,n(skipov),Set(RRNODEST=${NODEST})
exten => 603,n(skipvmblk),Set(__NODEST=${EXTEN})
exten => 603,n,GosubIf($[${DB_EXISTS(RINGGROUP/603/changecid)} = 1 & "${DB(RINGGROUP/603/changecid)}" != "default" & "${DB(RINGGROUP/603/changecid)}" != ""]?sub-rgsetcid,s,1())
exten => 603,n,Gosub(sub-record-check,s,1(rg,603,dontcare))
exten => 603,n,Set(RingGroupMethod=ringall)
exten => 603,n(DIALGRP),Macro(dial,20,${DIAL_OPTIONS},778)
exten => 603,n,Gosub(sub-record-cancel,s,1())
exten => 603,n,Set(RingGroupMethod=)
exten => 603,n,GotoIf($["foo${RRNODEST}" != "foo"]?nodest)
exten => 603,n,Set(__NODEST=)
exten => 603,n,Macro(blkvm-clr,)
exten => 603,n,Goto(ext-group,604,1)
exten => 603,n(nodest),Noop(SKIPPING DEST, CALL CAME FROM Q/RG: ${RRNODEST})
Prizr2k
 
Сообщений: 2
Зарегистрирован: 22 дек 2017, 11:33

Re: Выполнение команды при разрыве звонка

Сообщение april22 » 22 дек 2017, 12:07

Есть ли жизнь после exten h ?
Своими вопросами , вы загоняете меня в ГУГЛЬ.
april22
 
Сообщений: 2187
Зарегистрирован: 09 июл 2012, 09:47

Re: Выполнение команды при разрыве звонка

Сообщение awsswa » 22 дек 2017, 12:48

Перед звонком
После
exten => 603,n,Set(__NODEST=)
Вставляем
exten => 603,n,Set(CHANNEL(hangup_handler_push)=sub-macro-hangupcall,s,1)

[sub-macro-hangupcall]
exten => s,1,NoOp(=DIALSTATUS=${DIALSTATUS}=)
exten => s,n,СУПЕР-МАКРОС-ТУТ
exten => s,n,Return()
платный суппорт по мере возможностей
awsswa
 
Сообщений: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Выполнение команды при разрыве звонка

Сообщение Prizr2k » 22 дек 2017, 15:07

Спасибо за наводку как написано не работает сделал по другому, все как надо получилось.

[sub-macro-hangupcall]
exten => s,1,NoOp(=DIALSTATUS=${DIALSTATUS}=)
exten => s,n,System()
exten => s,n,Return()

exten => 603,1,Macro(user-callerid,)
exten => 603,2,Set(CHANNEL(hangup_handler_push)=sub-macro-hangupcall,s,1)
exten => 603,n,Macro(blkvm-setifempty,)
exten => 603,n,GotoIf($["${GOSUB_RETVAL}" = "TRUE"]?skipov)
exten => 603,n,Macro(blkvm-set,reset)
exten => 603,n,Set(__NODEST=)
exten => 603,n(skipov),Set(RRNODEST=${NODEST})
exten => 603,n(skipvmblk),Set(__NODEST=${EXTEN})
exten => 603,n,GosubIf($[${DB_EXISTS(RINGGROUP/603/changecid)} = 1 & "${DB(RINGGROUP/603/changecid)}" != "default" & "${DB(RINGGROUP/603/changecid)}" != ""]?sub-rgsetcid,s,1())
exten => 603,n,Gosub(sub-record-check,s,1(rg,603,dontcare))
exten => 603,n,Set(RingGroupMethod=ringall)
exten => 603,n(DIALGRP),Macro(dial,20,${DIAL_OPTIONS},778)
exten => 603,n,Gosub(sub-record-cancel,s,1())
exten => 603,n,Set(RingGroupMethod=)
exten => 603,n,GotoIf($["foo${RRNODEST}" != "foo"]?nodest)
exten => 603,n,Set(__NODEST=)
exten => 603,n,Macro(blkvm-clr,)
exten => 603,n,Goto(ext-group,604,1)
exten => 603,n(nodest),Noop(SKIPPING DEST, CALL CAME FROM Q/RG: ${RRNODEST})
Prizr2k
 
Сообщений: 2
Зарегистрирован: 22 дек 2017, 11:33

Re: Выполнение команды при разрыве звонка

Сообщение whoim » 17 янв 2018, 04:13

april22 писал(а):Есть ли жизнь после exten h ?

Не у всех, велосипеды интереснее)
облачные и локальные сервера asterisk/freepbx/a2billing/crm с полной техподдержкой. skype: whoim2, sipuri: whoim@asterisk.ru
whoim
 
Сообщений: 766
Зарегистрирован: 26 ноя 2013, 23:25
Откуда: Краснодар


Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 20

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH