VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Asterisk (Elastix) Playback произвольного файла

Обо всем касательно FreePBX, MetPBX, TrixBox, Elastix, AstPBX и всех других дистрибутивов

Модераторы: april22, Zavr2008

Ответить
svd
Сообщения: 169
Зарегистрирован: 19 июл 2011, 08:13
Откуда: Красноярск
Контактная информация:

Asterisk (Elastix) Playback произвольного файла

Сообщение svd »

Всем доброго дня...

начал писать диал-план в котором мне от кучи разных условий необходимо воспроизводить разные файлы.
п.с. у меня установлен эластикс.

попробовал воспроизвести mp3 - не получилось, почитал, понял что задача не совсем правильная.
переключился на wav которые решил конвертить sox-ом в alaw, ulaw, gsm при помощи баш скрипта
#!/bin/bash
echo -** THIS SCRIPT REQUIRES LAME AND SOX TO WORK!**-
#Convert mp3 files to wav
for i in *.wav; do
val=${i%.wav}
sox -V $i -r 8000 -c 1 -t ul $val.ulaw
sox -V $i -r 8000 -c 1 -t al $val.alaw
sox -V $i -r 8000 -c 1 -t gsm $val.gsm
chown asterisk:asterisk $val.*
#rm -f "$i"
echo "** $i MP3 to WAV is complete"
done
всё конвертится, но не воспроизводится
[2016-06-30 11:51:17] NOTICE[14068][C-000000d3]: channel.c:4301 __ast_read: Dropping incompatible voice frame on SIP/033-0000010d of format alaw since our native format has changed to (ulaw)

и кажется когда добавил файл через меню SystemRecordings они начали воспроизводиться

но мне нужно будет динамически подтягивать, конвертить и воспроизводить файлы (буду использовать AGI)
такое ощущение что они добавились в базу, а команда Playback ищет запись в этой базе, и только потом уже, если нашла обращается к файлам

как это обойти?
svd
Сообщения: 169
Зарегистрирован: 19 июл 2011, 08:13
Откуда: Красноярск
Контактная информация:

Re: Asterisk (Elastix) Playback произвольного файла

Сообщение svd »

Пардон, всё заработало, видимо ошибка была где то ещё

вот работающий скрипт

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

#!/bin/bash
for i in *.wav; do
val=${i%.wav}
sox -V $i -r 8000 -c 1 -t ul $val.ulaw
sox -V $i -r 8000 -c 1 -t al $val.alaw
sox -V $i -r 8000 -c 1 -t gsm $val.gsm
chown asterisk:asterisk $val.*
mv $i $val.wavbackup
done
virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Asterisk (Elastix) Playback произвольного файла

Сообщение virus_net »

Convert WAV audio files for use in Asterisk
+

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

*CLI> file convert
Usage: file convert <file_in> <file_out>
Convert from file_in to file_out. If an absolute path
is not given, the default Asterisk sounds directory
will be used.

Example:
file convert tt-weasels.gsm tt-weasels.ulaw
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
svd
Сообщения: 169
Зарегистрирован: 19 июл 2011, 08:13
Откуда: Красноярск
Контактная информация:

Re: Asterisk (Elastix) Playback произвольного файла

Сообщение svd »

баш-скрипт вызвать из AGI можно, я проверил и это у меня работает, а можно ли из AGI вызвать произвольную команду в CLI.
есть такой способ
$AGI->exec(playback,$file_name);
как его применить к команде file convert таким методом, я точно не знаю.
наверное можно, но не факт что удобно.

баш скрипт я запускаю примерно так из AGI

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

   //Запустим конвертер
   $run = "/var/lib/asterisk/sounds/cash-33speech/cash_convert.sh $full_file_name localhost";
   exec($run);
virus_net, если пробовал запускать из AGI, подскажи синтаксис команды формата $AGI->exec(...
чтоб тема была раскрыта полностью
virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Asterisk (Elastix) Playback произвольного файла

Сообщение virus_net »

Что касается командной строки, то учимся читать хотя бы минимальный help:

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

# asterisk -h

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

...skiped...
   -r              Connect to Asterisk on this machine
   -x <cmd>        Execute command <cmd> (implies -r)
...skip...
svd писал(а):подскажи синтаксис команды формата $AGI->exec(...
http://www.voip-info.org/wiki/view/exec
exec
Usage: EXEC <application> <options>

EXAMPLE:
EXEC Dial Zap/g1/123456
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
svd
Сообщения: 169
Зарегистрирован: 19 июл 2011, 08:13
Откуда: Красноярск
Контактная информация:

Re: Asterisk (Elastix) Playback произвольного файла

Сообщение svd »

спасибо, бум учиться
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH