[trunk1]
exten => _X.,1,Answer()
exten => _X.,n,Set(DID=${EXTEN})
exten => _X.,n,GotoIf($["${DID}" = "3550240"]?kazkad:client)
exten => _X.,n(kazkad),Dial(SIP/100)
exten => _X.,n,Hangup()
;exten => _X.,n(client),Macro(db,${EXTEN,1})
exten => _X.,n(client),MYSQL(Connect connid ${host} ${username} ${password} ${db})
exten => _X.,n,MYSQL(Query resultid ${connid} SELECT mask, user_id, trunk2 FROM user_numbers WHERE number='${DID}' AND user_id IS NO$
exten => _X.,n,MYSQL(Fetch fetchid ${resultid} mask user_id trunk)
exten => _X.,n,GotoIf($["${user_id}" = ""]?endConnect)
exten => _X.,n,Set(fname=${STRFTIME(${EPOCH},,%Y%m%d%H%M)}-${CALLERID(number)}-${DID})
exten => _X.,n,Set(callstart=${STRFTIME(${EPOCH},,%Y%m%d%H%M)})
exten => _X.,n,MYSQL(Query resultid ${connid} INSERT INTO user_calls SET user_id='${user_id}', user_number='${DID}', user_mask='${ma$
exten => _X.,n(endConnect),MYSQL(clear ${resultid})
exten => _X.,n,MYSQL(disconnect ${connid})
exten => _X.,n,MixMonitor(/home/kazkad/records/MP3/${fname}.wav)
exten => _X.,n,GotoIf($["${user_id}" = ""]?endCall)
exten => _X.,n,Dial(SIP/${trunk}/${mask})
exten => h,1,System(sleep 20)
exten => h,n,MYSQL(Connect connid ${host} ${username} ${password} ${db})
exten => h,n,MYSQL(Query resultid ${connid} SELECT MAX(id) as id FROM user_calls WHERE user_number='${DID}')
exten => h,n,MYSQL(Fetch fetchid ${resultid} id)
exten => h,n,Set(callend=${STRFTIME(${EPOCH},,%Y%m%d%H%M)})
exten => h,n,MYSQL(Query resultid ${connid} UPDATE user_calls SET end='${callend}', status='${DIALSTATUS}' WHERE id='${id}')
exten => h,n,MYSQL(clear ${resultid})
exten => h,n,MYSQL(disconnect ${connid})
exten => h,n(endCall),Hangup()
Не работает h extension после завершения звонка. Спасибо!
не работает, правильно.
обычно астериск дает 3-4 секунды на h-exten. а у вас там первой командой sleep 20(еще и через system, а не wait).
Рекомендую переосмыслить смысл жизни и диалплан.
Причем смысл жизни в приоритете.
Задан: 2016-06-10 08:53:06 +0400
Просмотрен: 576 раз
Обновлен: Jun 10 '16
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
так посмотрите почему, ответ в CLI.
virus_net ( 2016-06-10 09:52:46 +0400 )редактироватьЕсли убрать exten => h,1,System(sleep 20) если даже поставить wait все равно не выполняется extension на h, плохо что NoOp вообще нечего не показывает если вставить до Dial
gh_ost@list.ru ( 2016-06-10 10:39:40 +0400 )редактироватьА не проще ли с mysql в вашем случае работать через phpAGI?
romariosar ( 2016-06-10 10:45:09 +0400 )редактироватьТам будет работать с mysql после завершение звонка?
gh_ost@list.ru ( 2016-06-10 12:29:24 +0400 )редактироватьда, только вопрос зачем вам System(sleep 20)
romariosar ( 2016-06-10 16:12:05 +0400 )редактировать