@Igor2208

Воспроизведение mp3 через CDR Report?

Всем привет . Стоит такая задача, что бы все записи разговоров были в mp3 формате, скриптом пере конвертировал записи разговоров gsm и wav (разные сервера) в mp3 формат . Если скачать записи на ПК то их можно воспроизвести с любого проигрывателя , но прослушать через CDR Report в FreePBX 13 не получается , выдает ошибку :
Exception
Unable to find an intermediary converter for /var/spool/asterisk/monitor/2019/04/17/out-номертелефона-1000-20190417-185204-155124.331.mp3
File:/var/www/html/admin/libraries/media/Media/Media.php:299
(скрин прикрепил)

может кто сталкивался с такой ситуацией или знает как решить буду рад любой помощи , так-как 3 дня пытаюсь настроить но ничего не получается.
П.С.
gsm и wav форматы воспроизводятся в CDR Report без проблем.

5ccfe78d3b38a449993942.png
  • Вопрос задан
  • 821 просмотр
Пригласить эксперта
Ответы на вопрос 3
сам долго бился над этим. решение оказалось простое - при конвертировании файла в mp3 нужно просто обновить имя файла в БД.
Ответ написан
Francyz
@Francyz
Photographer & SysAdmin
Возможно в строке "File:/var/www/html/admin/libraries/media/Media/Media.php:299" число 299 означает строку в указанном файле.
Попробуйте открыть этот файл на этой строке и посмотреть какую команду он пытается там выполнить. может там будет указан какой-нибудь дефолтный конвертер, которого у вас нет.

UPD:
Посмотрите эту запись, там 14-ый но думаю разница не велика: Клац-клац
Если не поможет, гуглите по фразе: "FreePBX mp3"
Ответ написан
@Igor2208 Автор вопроса
Так я так и делаю ) ради теста установил себе с iso образа 14 FreePBX (Sangoma) все работает.
а вот в 13 который собирался с исходиков не хочет.
сам скрипт
#!/bin/bash
cdrdb=asteriskcdrdb
cdrtable=cdr
astdbuser=freepbxuser
astdbuserpass=Passwd123
for i in `find /var/spool/asterisk/monitor/ -type f -name "*.wav"`
do
if [ -e "$i" ]; then
file=`basename "$i" .wav`;
dir=`dirname "$i"`;
ffmpeg -i "$i" -acodec libmp3lame -y "$dir/$file.mp3";
rm -f "$dir/$file.wav";.
mysql --user="$astdbuser" --password="$astdbuserpass" --database="$cdrdb" --execute='UPDATE '$cdrtable' SET recordingfile="'$file'.mp3" WHERE recordingfile="'$file'.wav";';
fi
done
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы