First time here? Check out the FAQ!

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

Автоответчик (приветствие и запись сообщения)

2

Как проиграть звуковой файл при входящем звонке и записать сообщение?

===== РЕШЕНИЕ =====

Подготовка звукового файла

  1. Конвертим *.wav в *.gsm (mono, 8000)

    sox hi.wav -r 8000 -c 1 hi.gsm resample -ql

  2. Запихиваем *.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()

спросил May 29 '12

thunderamur Gravatar thunderamur
444 70 12 39

обновил May 31 '12

7 Ответов

3

Да, проверить, что файл /var/spool/asterisk/mgp/hi.wav имеет подходящий формат и изменить диалплан на

exten => 202010,1,Playback(/var/spool/asterisk/mgp/hi) 
    same
=> n,Return()

Т.к расширение файлов не нужно указывать

ссылка удалить спам редактировать

ответил May 29 '12

renat Gravatar renat flag of Russian Federation
51 9 1 8
http://www.galiev.net/
1

Ну во первых - формат вашего файла не соответствует желанием. Гуглим - asterisk sox Во вторых - лучше проигрывать через: Background так вы дадите возможность пользоваться другими возможностями - например перевод звонка

ссылка удалить спам редактировать

ответил May 29 '12

awsswa Gravatar awsswa flag of Russian Federation
685 5 2 9

Comments

Судя по приведенному диалплану ТС вряд ли хочет возвращать управление и поэтому использует Playback

renat (May 29 '12)edit

Товарищи, а что значит возвращать управление? Мне нужно, чтобы звонивший по номеру услышал сообщение. И, если это не сложно, сделать возможность, чтобы он мог оставить обращение после гудка...

thunderamur (May 29 '12)edit

sox fullhi.wav -r 8000 -c 1 fullhi.gsm resample -ql

всё та же ошибка, как я понял asterisk хочет ulaw, можно ему gsm скормить?

thunderamur (May 29 '12)edit

сделал ulaw, но то же самое... sox -V hi.wav -r 8000 -c 1 -t ul -2 hi.ulaw

thunderamur (May 29 '12)edit

в другом ответе уже указано на вашу ошибку.

exten => 202010,1,Playback(/var/spool/asterisk/mgp/hi)

zzuz (May 29 '12)edit

я убирал кавычки и расширение - не помогло.

thunderamur (May 29 '12)edit

Блин, расширение файла убирать не надо было, только в extensions.conf без расширения указывается. :D

thunderamur (May 29 '12)edit
1
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
ссылка удалить спам редактировать

ответил May 30 '12

brost Gravatar brost flag of Russian Federation
100 12 3 12
http://asterisk-system.ru...

обновил May 31 '12

Comments

Спасибо, исправлю 1-й пост.

thunderamur (May 31 '12)edit
0

смотриет в сторону voicemail. там можно сообщение менять и оставлять собщение послегудка.

вообще неплохо было бы прочитать какуюто книжку. вы ну вообще простые вопросы задаете которые расматриваются в начале всех гидов.

ссылка удалить спам редактировать

ответил May 29 '12

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/
0

Попробуйте выполнить конверт файла через сервис online-convert.com

Change audio bitrate: 16 kbps
Change audio frequency: 8000 Hz
Change audio channels: mono
ссылка удалить спам редактировать

ответил May 29 '12

Thomas Morph Gravatar Thomas Morph
11 2
0

===== РЕШЕНИЕ =====

  1. Конвертим *.wav в *.gsm (mono, 8000)

    sox hi.wav -r 8000 -c 1 hi.gsm resample -ql

  2. Запихиваем *.gsm куда-нить в voicemail, я закинул в /var/spool/asterisk/voicemail/mgp

  3. Добавляем в extensions.conf строку:

    exten => 202010,1,Playback(/var/spool/asterisk/voicemail/mgp/hi)

    same => n,Return()

ссылка удалить спам редактировать

ответил May 29 '12

thunderamur Gravatar thunderamur
444 70 12 39

обновил May 29 '12

0

Пытаюсь запись сделать, нет ожидания пока звонящий положит трубку, как сделать?

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
ссылка удалить спам редактировать

ответил May 30 '12

thunderamur Gravatar thunderamur
444 70 12 39

Comments

1

Wait(100000)

meral (May 30 '12)edit

Запись остановится по hangup() ?

thunderamur (May 30 '12)edit

да, поставил 60 сек. Спасибо :)

thunderamur (May 30 '12)edit

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: May 29 '12

Просмотрен: 45,346 раз

Обновлен: May 31 '12

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