Как проиграть звуковой файл при входящем звонке и записать сообщение?
===== РЕШЕНИЕ =====
Подготовка звукового файла
Конвертим *.wav в *.gsm (mono, 8000)
sox hi.wav -r 8000 -c 1 hi.gsm resample -ql
Запихиваем *.gsm куда-нить в voicemail, я закинул в /var/spool/asterisk/voicemail/mgp
extensions.conf:
exten=>202010,1,Answer()
same=>n,Playback(/var/spool/asterisk/voicemail/mgp/hi)
same=>n,Set(fname=/var/spool/asterisk/monitor/202010/${STRFTIME(${EPOCH},,%Y-%m-%d__%H-%M-%S)}__${CALLERID(nu$
same=>n,Record(${fname}.gsm,2,60,x)
same=>n,Hangup()
exten=>202010,1,Answer()
same => n,Playback(/var/spool/asterisk/voicemail/mgp/hi)
same => n,Set(fname=/var/spool/asterisk/monitor/202010/${STRFTIME(${EPOCH},,%Y-%m-%d__%H-%M-%S)}__${CALLERID(nuber)})
same => n,Record(${fname}.wav,2,60,x)
same => n,Hangup()
а вообще смотрите
core show aplication Record
Пытаюсь запись сделать, нет ожидания пока звонящий положит трубку, как сделать?
exten=>202010,1,Answer()
same=>n,Playback(/var/spool/asterisk/voicemail/mgp/hi)
same=>n,Playback(/var/spool/asterisk/voicemail/mgp/beep)
same=>n,Set(fname=/var/spool/asterisk/monitor/202010/${STRFTIME(${EPOCH},,%Y-%m-%d__%H-%M-%S)}__${CALLERID(nu$
same=>n,MixMonitor(${fname}.wav)
same=>n,Hangup()
same=>n,StopMixMonitor
===== РЕШЕНИЕ =====
Конвертим *.wav в *.gsm (mono, 8000)
sox hi.wav -r 8000 -c 1 hi.gsm resample -ql
Запихиваем *.gsm куда-нить в voicemail, я закинул в /var/spool/asterisk/voicemail/mgp
Добавляем в extensions.conf строку:
exten => 202010,1,Playback(/var/spool/asterisk/voicemail/mgp/hi)
same => n,Return()
Попробуйте выполнить конверт файла через сервис online-convert.com
Change audio bitrate: 16 kbps
Change audio frequency: 8000 Hz
Change audio channels: mono
смотриет в сторону voicemail. там можно сообщение менять и оставлять собщение послегудка.
вообще неплохо было бы прочитать какуюто книжку. вы ну вообще простые вопросы задаете которые расматриваются в начале всех гидов.
Да, проверить, что файл /var/spool/asterisk/mgp/hi.wav имеет подходящий формат и изменить диалплан на
exten => 202010,1,Playback(/var/spool/asterisk/mgp/hi)
same => n,Return()
Т.к расширение файлов не нужно указывать
Ну во первых - формат вашего файла не соответствует желанием. Гуглим - asterisk sox Во вторых - лучше проигрывать через: Background так вы дадите возможность пользоваться другими возможностями - например перевод звонка
Судя по приведенному диалплану ТС вряд ли хочет возвращать управление и поэтому использует Playback
renat ( 2012-05-29 08:17:16 +0400 )редактироватьТоварищи, а что значит возвращать управление? Мне нужно, чтобы звонивший по номеру услышал сообщение. И, если это не сложно, сделать возможность, чтобы он мог оставить обращение после гудка...
thunderamur ( 2012-05-29 09:04:14 +0400 )редактироватьsox fullhi.wav -r 8000 -c 1 fullhi.gsm resample -ql
всё та же ошибка, как я понял asterisk хочет ulaw, можно ему gsm скормить?
thunderamur ( 2012-05-29 09:44:33 +0400 )редактироватьсделал ulaw, но то же самое... sox -V hi.wav -r 8000 -c 1 -t ul -2 hi.ulaw
thunderamur ( 2012-05-29 09:55:29 +0400 )редактироватьв другом ответе уже указано на вашу ошибку.
exten => 202010,1,Playback(/var/spool/asterisk/mgp/hi)
zzuz ( 2012-05-29 12:26:54 +0400 )редактироватьБлин, расширение файла убирать не надо было, только в extensions.conf без расширения указывается. :D
thunderamur ( 2012-05-30 03:20:05 +0400 )редактироватьЗадан: 2012-05-29 05:46:48 +0400
Просмотрен: 44,774 раз
Обновлен: May 31 '12
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.