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

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

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

спросил 2012-12-17 17:03:30 +0400

thunderamur Gravatar thunderamur

Автоответчик - не работает Record()

Звонок поступает на gsm-шлюз Addpac-1002a, с него вызов по sip поступает на Астериск. Нужно добавить запись сообщения звонящего, сделал, как делал раньше, но почему-то после "бип" звонок завершается через 1 сек. Запись создается длинной 1 сек.

exten=>.X,1,Answer()
    same=>n,Set(fname=/mnt/data/share/Общая/Автоответчик/${STRFTIME(${EPOCH},,%Y-%m-%d__%H-%M-%S)}__${CALLERID(nuber)})
    same=>n,Record(${fname}.wav,2,60,x)
    same=>n,Hangup()

В консоли вижу следующее:

-- Executing [1000@gsm-in:1] Goto("SIP/gsm-00000c49", "record-gsm-in,1000,1") in new stack
-- Goto (record-gsm-in,1000,1)
-- Executing [1000@record-gsm-in:1] Answer("SIP/gsm-00000c49", "") in new stack
-- Executing [1000@record-gsm-in:2] Set("SIP/gsm-00000c49", "fname=/mnt/data/share/Общая/Автоответчик/2012-12-17__20-43-58__XXX-1000") in new stack
-- Executing [1000@record-gsm-in:3] Record("SIP/gsm-00000c49", "/mnt/data/share/Общая/Автоответчик/2012-12-17__20-43-58__XXX-1000.wav,2,60,x") in new stack
-- <SIP/gsm-00000c49> Playing 'beep.gsm' (language 'ru')
-- Executing [1000@record-gsm-in:4] Hangup("SIP/gsm-00000c49", "") in new stack

== Spawn extension (record-gsm-in, 1000, 4) exited non-zero on 'SIP/gsm-00000c49'

В чем может быть проблема?

Автоответчик - не работает Record()

Звонок поступает на gsm-шлюз Addpac-1002a, с него вызов по sip поступает на Астериск. Нужно добавить запись сообщения звонящего, сделал, как делал раньше, но почему-то после "бип" звонок завершается через 1 сек. Запись создается длинной 1 сек.

exten=>.X,1,Answer()
    same=>n,Set(fname=/mnt/data/share/Общая/Автоответчик/${STRFTIME(${EPOCH},,%Y-%m-%d__%H-%M-%S)}__${CALLERID(nuber)})
    same=>n,Record(${fname}.wav,2,60,x)
    same=>n,Hangup()

В консоли вижу следующее:

-- Executing [1000@gsm-in:1] Goto("SIP/gsm-00000c49", "record-gsm-in,1000,1") in new stack
-- Goto (record-gsm-in,1000,1)
-- Executing [1000@record-gsm-in:1] Answer("SIP/gsm-00000c49", "") in new stack
-- Executing [1000@record-gsm-in:2] Set("SIP/gsm-00000c49", "fname=/mnt/data/share/Общая/Автоответчик/2012-12-17__20-43-58__XXX-1000") in new stack
-- Executing [1000@record-gsm-in:3] Record("SIP/gsm-00000c49", "/mnt/data/share/Общая/Автоответчик/2012-12-17__20-43-58__XXX-1000.wav,2,60,x") in new stack
-- <SIP/gsm-00000c49> Playing 'beep.gsm' (language 'ru')
-- Executing [1000@record-gsm-in:4] Hangup("SIP/gsm-00000c49", "") in new stack

== Spawn extension (record-gsm-in, 1000, 4) exited non-zero on 'SIP/gsm-00000c49'

В чем может быть проблема?

====================================

Выяснил, что проблема связана с автовыключением по параметру maxsilence в voicemail.conf, который почему-то не отрабатывается как должен.

; How many seconds of silence before we end the recording
maxsilence=10
; Silence threshold (what we consider silence: the lower, the more sensitive)
silencethreshold=128

Заметил, что если выкрутить микрофон побольше, чтобы шел постоянный громкий шум, или просто непрерывно громко говорить, то запись проводится. Если же сделать паузу на несколько секунд, то запись заканчивается, иногда через пару секунд иногда через 5 или больше. Если же поставить микрофон на 0% запись заканчивается сразу же. Изменение параметров приведенных выше, никак не меняют ситуацию, пробовал ставить 30 секунд выдержки, ставить чувствительность на ноль - бесполезно.

Какие идеи?

Автоответчик - не работает Record()

===== РЕШЕНО =====

Record(filename:format[|silence][|maxduration][|option])

я считал параметр silence, тишиной перед записью, т.е. паузой... В этом вся проблема, нужно поставить ноль, чтобы не было автовыключения и все!

==================

Звонок поступает на gsm-шлюз Addpac-1002a, с него вызов по sip поступает на Астериск. Нужно добавить запись сообщения звонящего, сделал, как делал раньше, но почему-то после "бип" звонок завершается через 1 сек. Запись создается длинной 1 сек.

exten=>.X,1,Answer()
    same=>n,Set(fname=/mnt/data/share/Общая/Автоответчик/${STRFTIME(${EPOCH},,%Y-%m-%d__%H-%M-%S)}__${CALLERID(nuber)})
    same=>n,Record(${fname}.wav,2,60,x)
    same=>n,Hangup()

В консоли вижу следующее:

-- Executing [1000@gsm-in:1] Goto("SIP/gsm-00000c49", "record-gsm-in,1000,1") in new stack
-- Goto (record-gsm-in,1000,1)
-- Executing [1000@record-gsm-in:1] Answer("SIP/gsm-00000c49", "") in new stack
-- Executing [1000@record-gsm-in:2] Set("SIP/gsm-00000c49", "fname=/mnt/data/share/Общая/Автоответчик/2012-12-17__20-43-58__XXX-1000") in new stack
-- Executing [1000@record-gsm-in:3] Record("SIP/gsm-00000c49", "/mnt/data/share/Общая/Автоответчик/2012-12-17__20-43-58__XXX-1000.wav,2,60,x") in new stack
-- <SIP/gsm-00000c49> Playing 'beep.gsm' (language 'ru')
-- Executing [1000@record-gsm-in:4] Hangup("SIP/gsm-00000c49", "") in new stack

== Spawn extension (record-gsm-in, 1000, 4) exited non-zero on 'SIP/gsm-00000c49'

В чем может быть проблема?

====================================

Выяснил, что проблема связана с автовыключением по параметру maxsilence в voicemail.conf, который почему-то не отрабатывается как должен.

; How many seconds of silence before we end the recording
maxsilence=10
; Silence threshold (what we consider silence: the lower, the more sensitive)
silencethreshold=128

Заметил, что если выкрутить микрофон побольше, чтобы шел постоянный громкий шум, или просто непрерывно громко говорить, то запись проводится. Если же сделать паузу на несколько секунд, то запись заканчивается, иногда через пару секунд иногда через 5 или больше. Если же поставить микрофон на 0% запись заканчивается сразу же. Изменение параметров приведенных выше, никак не меняют ситуацию, пробовал ставить 30 секунд выдержки, ставить чувствительность на ноль - бесполезно.

Какие идеи?

Автоответчик - не работает Record()

===== РЕШЕНО =====

Record(filename:format[|silence][|maxduration][|option])

я считал параметр silence, тишиной перед записью, т.е. паузой... В этом вся проблема, нужно т.к. это параметр означает время тишины до разрыва соединения. Нужно поставить ноль, чтобы не было автовыключения и все!

==================

Звонок поступает на gsm-шлюз Addpac-1002a, с него вызов по sip поступает на Астериск. Нужно добавить запись сообщения звонящего, сделал, как делал раньше, но почему-то после "бип" звонок завершается через 1 сек. Запись создается длинной 1 сек.

exten=>.X,1,Answer()
    same=>n,Set(fname=/mnt/data/share/Общая/Автоответчик/${STRFTIME(${EPOCH},,%Y-%m-%d__%H-%M-%S)}__${CALLERID(nuber)})
    same=>n,Record(${fname}.wav,2,60,x)
    same=>n,Hangup()

В консоли вижу следующее:

-- Executing [1000@gsm-in:1] Goto("SIP/gsm-00000c49", "record-gsm-in,1000,1") in new stack
-- Goto (record-gsm-in,1000,1)
-- Executing [1000@record-gsm-in:1] Answer("SIP/gsm-00000c49", "") in new stack
-- Executing [1000@record-gsm-in:2] Set("SIP/gsm-00000c49", "fname=/mnt/data/share/Общая/Автоответчик/2012-12-17__20-43-58__XXX-1000") in new stack
-- Executing [1000@record-gsm-in:3] Record("SIP/gsm-00000c49", "/mnt/data/share/Общая/Автоответчик/2012-12-17__20-43-58__XXX-1000.wav,2,60,x") in new stack
-- <SIP/gsm-00000c49> Playing 'beep.gsm' (language 'ru')
-- Executing [1000@record-gsm-in:4] Hangup("SIP/gsm-00000c49", "") in new stack

== Spawn extension (record-gsm-in, 1000, 4) exited non-zero on 'SIP/gsm-00000c49'

В чем может быть проблема?

====================================

Выяснил, что проблема связана с автовыключением по параметру maxsilence в voicemail.conf, который почему-то не отрабатывается как должен.

; How many seconds of silence before we end the recording
maxsilence=10
; Silence threshold (what we consider silence: the lower, the more sensitive)
silencethreshold=128

Заметил, что если выкрутить микрофон побольше, чтобы шел постоянный громкий шум, или просто непрерывно громко говорить, то запись проводится. Если же сделать паузу на несколько секунд, то запись заканчивается, иногда через пару секунд иногда через 5 или больше. Если же поставить микрофон на 0% запись заканчивается сразу же. Изменение параметров приведенных выше, никак не меняют ситуацию, пробовал ставить 30 секунд выдержки, ставить чувствительность на ноль - бесполезно.

Какие идеи?

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