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

История изменений [назад]

нажмите, чтобы скрыть/показать версии 1
изначальная версия
редактировать

ответил 2011-11-09 09:48:05 +0400

asteriskguru Gravatar asteriskguru

http://www.asteriskguru.r...

Я на FreePBX 2.6.0 решил этот вопрос допилив диалплан:

cat extensions_override_freepbx.con

[macro-exten-vm] ;exten => s,n,Set(RT=${IF($[$["${VMBOX}"!="novm"] | $["foo${CFUEXT}"!="foo"]]?${RINGTIMER}:"")}) exten => s,7,Set(RT=${IF($[$["${VMBOX}"!="novm"] | $["foo${CFUEXT}"!="foo"] | $["foo${IVR_CONTEXT}"!="foo"]]?${RINGTIMER}:"")})

;exten => s-.,2,GotoIf($["${IVRRETVM}" = "RETURN" & "${IVRCONTEXT}" != ""]?exit|1) exten => _s-.,2,GotoIf($["${IVRRETVM}" = "RETURN" & "${IVRCONTEXT}" != "" & "${QAGENT}" = ""]?exit|1) ;exten => _s-BUSY,2,GotoIf($["${IVRRETVM}" = "RETURN" & "${IVRCONTEXT}" != ""]?exit|1) exten => _s-BUSY,2,GotoIf($["${IVRRETVM}" = "RETURN" & "${IVR_CONTEXT}" != "" & "${QAGENT}" = ""]?exit|1)

И в IVR чекнул "VM Return to IVR"

Минус такого решения в том, что может перестать работать после апгрейда FreePBX. На свежих версиях может уже и не сработает, придется самому допиливать. А плюс в том, что в захватывающем процессе допиливания вы лучше разберетесь во внутренностях используемой системы.

Я на FreePBX 2.6.0 решил этот вопрос допилив диалплан:

cat extensions_override_freepbx.con

extensions_override_freepbx.conf [macro-exten-vm] ;exten => s,n,Set(RT=${IF($[$["${VMBOX}"!="novm"] | $["foo${CFUEXT}"!="foo"]]?${RINGTIMER}:"")}) exten => s,7,Set(RT=${IF($[$["${VMBOX}"!="novm"] | $["foo${CFUEXT}"!="foo"] | $["foo${IVR_CONTEXT}"!="foo"]]?${RINGTIMER}:"")})

$["foo${IVR_CONTEXT}"!="foo"]]?${RINGTIMER}:"")})

;exten => s-.,2,GotoIf($["${IVRRETVM}" _s-.,2,GotoIf($["${IVR_RETVM}" = "RETURN" & "${IVRCONTEXT}" "${IVR_CONTEXT}" != ""]?exit|1) exten => _s-.,2,GotoIf($["${IVRRETVM}" = "RETURN" & "${IVRCONTEXT}" != "" & "${QAGENT}" = ""]?exit|1) ;exten => _s-BUSY,2,GotoIf($["${IVRRETVM}" = "RETURN" & "${IVRCONTEXT}" != ""]?exit|1) exten => _s-BUSY,2,GotoIf($["${IVRRETVM}" _s-.,2,GotoIf($["${IVR_RETVM}" = "RETURN" & "${IVR_CONTEXT}" != "" & "${QAGENT}" = ""]?exit|1)

""]?exit|1) ;exten => _s-BUSY,2,GotoIf($["${IVR_RETVM}" = "RETURN" & "${IVR_CONTEXT}" != ""]?exit|1) exten => _s-BUSY,2,GotoIf($["${IVR_RETVM}" = "RETURN" & "${IVR_CONTEXT}" != "" & "${QAGENT}" = ""]?exit|1)

И в IVR чекнул "VM Return to IVR"

Минус такого решения в том, что может перестать работать после апгрейда FreePBX. На свежих версиях может уже и не сработает, придется самому допиливать. А плюс в том, что в захватывающем процессе допиливания вы лучше разберетесь во внутренностях используемой системы.

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