Страница 4 из 6

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 05 сен 2012, 13:02
Vlad1983
упорный какой
ну раз так надо:

Код: Выделить всё

exten => 3691,1,Set(EXT=${EXTEN})
exten => 3691,n,Set(CLI=${CALLERID(num)})
exten => 3691,n,Set(REC=${STRFTIME(${EPOCH},,%d-%m-%y__%H-%M)}_from_${CLI}_to_${EXT}_${UNIQUEID})
exten => 3691,n,Background(perevod)
exten => 3691,n,Record(/wav/${REC}.wav)
exten => 3691,n,Hangup
exten => h,1,System(/path/sendmes "${EXT}" "${CLI}" "${REC}" &)
скрипт /path/sendmes писать самому в нем и конвертация в mp3 и отправка

на досуге для общего развития
http://voip.rus.net/tiki-index.php?page ... =voicemail

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 05 сен 2012, 13:47
ded
У Романа проблема в другом: так как
exten => h,1,System(/usr/local/bin/lame -b 16 -silent /wav/${UNIQUEID}.wav /mp3/${UNIQUEID}.mp3 &)
exten => h,2,System(rm -r /wav/${UNIQUEID}.wav)
находится в том же контексте, где обрабатываются все внутренние (и наружные?) вызовы, то exten => h,1срабатывает на всех ваызовах, когда абонент кладёт трубку. А ему нужно чтобы срабатовало только для 3691.

Для этого надо поместить
exten => 3691,1,
exten => h,1,System
в отдельный контекст, и направлять в него через Goto(этот контекст,3691,1)

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 05 сен 2012, 14:04
Vlad1983
можно и так отфильтровать из общей кучи
exten => h,n,ExecIf($[ "${EXT}"= "3691" ]?System(/path/sendmes "${EXT}" "${CLI}" "${REC}" &))

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 05 сен 2012, 14:10
ded
а в точке exten => h,n,ExecIf($[ "${EXT}" содержимое ${EXT} разве не будет равным уже h? Или это будет содержимое ${EXTEN}?

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 05 сен 2012, 14:13
Vlad1983
так понятней наверное будет
exten => 3691,1,Set(EXT=${EXTEN}) ;запоминаем EXTEN в EXT
exten => 3691,n,Set(CLI=${CALLERID(num)})
exten => 3691,n,Set(REC=${STRFTIME(${EPOCH},,%d-%m-%y__%H-%M)}_from_${CLI}_to_${EXT}_${UNIQUEID})
exten => 3691,n,Background(perevod)
exten => 3691,n,Record(/wav/${REC}.wav)
exten => 3691,n,Hangup
....
exten => h,1,NoOp(for all)
exten => h,n,NoOp(...)
exten => h,n,NoOp(send rec for 3691)
exten => h,n,ExecIf($[ "${EXT}"= "3691" ]?System(/path/sendmes "${EXT}" "${CLI}" "${REC}" &))

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 06 сен 2012, 06:22
Роман1111
....
exten => h,1,NoOp(for all)
exten => h,n,NoOp(...)
exten => h,n,NoOp(send rec for 3691)
exten => h,n,ExecIf($[ "${EXT}"= "3691" ]?System(/path/sendmes "${EXT}" "${CLI}" "${REC}" &))

....
и
exten => h,n,NoOp(...)
это имя контекста???

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 06 сен 2012, 10:21
ded
Роман, не хотите книжку почитать?

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 06 сен 2012, 10:47
Роман1111
хочу, только у меня ее нет (((

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 06 сен 2012, 10:50
ded

Re: Записать голосовое сообщение, не пробрасывая звонок на т

Добавлено: 07 сен 2012, 12:58
Роман1111
спасибо, буду читать