В данной статье я дам небольшое описание как сохранять записи разговоров в формате mp3 но с расширением .wav, тем самым уменьшив размер файлов и сохранив возможность прослушивать файлы из панели управления (имена файлов не будут меняться). А так же дам пару советов, как уменьшить нагрузку на дисковую подсистему, избавившись от лишних логов (при нагруженной системе уменьшение нагрузки достаточно заметно).
В старых версиях файлы записей хранились по умолчанию в одной папке, создавая тем самым проблемы при их большом количестве. В Elastix 2.5 перешли на FreeBPX 2.11, а там, как известно, записи телефонных разговоров раскладываются по папкам на каждый день.
Соответственно изменились (добавились) переменные для использования со скриптом конвертации записей после звонка.
Причем, в старых версиях, добавить параметр “Run after record” можно было прямо через панель управления Elastix, в разделе “General Settings”. В новой версии, для того чтобы добавить это параметр (кстати, параметр тоже поменял название — “Post Call Recording Script”), нужно воспользоваться панелью управления FreePBX.
Итак, в чем суть: мы будем конвертировать файл после разговора в формат mp3 с помощью lame, потом, с помощью ffmpeg мы добавим заголовок к файлу записи и сменим расширение обратно на .wav. В итоге все останется для самой системы неизменным, однако существенно уменьшится размер хранимых файлов, по моей оценке в 7-10 раз.
В первую очередь необходимо установить в систему пакеты ffрmpeg и lame:
# rpm -Uhv http://ift.tt/14qJ9cA
# yum --disablerepo=commercial-addons install ffmpeg lame
Параметр --disablerepo=commercial-addons необходим потому что, в репозитории commercial-addons присутствует пакет ffmpeg, который нам не подходит.
Создаем папку для нашего скрипта:
# mkdir -p /etc/asterisk/scripts; chown asterisk. /etc/asterisk/scripts
Забираем скрипт с github:
# wget http://ift.tt/1cSbsrV -O /etc/asterisk/scripts/mixmon-mp3-2.sh
Устанавливаем права на файл
# chown asterisk. /etc/asterisk/scripts/mixmon-mp3-2.sh
# chmod a+x /etc/asterisk/scripts/mixmon-mp3-2.sh
Сам репозиторий на github.
Выполняем команду visudo и добавляем в конец файла:
asterisk ALL = NOPASSWD: /bin/nice
asterisk ALL = NOPASSWD: /usr/bin/ionice
asterisk ALL = NOPASSWD: /bin/chmod
asterisk ALL = NOPASSWD: /bin/chown
asterisk ALL = NOPASSWD: /bin/rm
asterisk ALL = NOPASSWD: /bin/touch
Вот теперь, мы выполнили все необходимые действия в консоли, и можем спокойно переходить к панели управления FreePBX:
Идем в раздел “Settings -> Advanced Settings” и включаем 2 параметра (Display Readonly Settings, Override Readonly Settings)
Применяем изменения. У нас теперь появилась возможность редактировать дополнительные параметры.
В параметр “Post Call Recording Script” вставляем значение:
/etc/asterisk/scripts/mixmon-mp3-2.sh ^{YEAR} ^{MONTH} ^{DAY} ^{CALLFILENAME} ^{MIXMON_FORMAT} ^{MIXMON_DIR}
В параметр “Override Call Recording Location” вставляем значение:
/var/spool/asterisk/monitor/
Применяем все изменения.
Всё, теперь все записи телефонных разговоров, после разговора, будут конвертированы в формат mp3, с сохранением расширения .wav.
Для старых версий файл скрипта mixmon-mp3.sh, а парамерт “Run after record”:
/etc/asterisk/scripts/mixmon-mp3.sh ^{MIXMON_DIR} ^{CALLFILENAME} ^{MIXMON_FORMAT}
И еще, перед тем как Вы включите это всё, несомненно вы захотите конвертировать уже имеющиеся у вас записи телефонных разговоров. Для этого, файл скрипта conv.sh и запускаем команду из консоли:
find /var/spool/asterisk/monitor/ -name '*.wav' -exec ./conv.sh {} \;
Процесс не быстрый.
Теперь, когда вы будете прослушивать файлы записей, формат будет mp3 — обратите внимание на картинку:
Что касается логов:
По умолчанию, Elastix пишет полные логи, и складывает CDR аж в три места (mysql, sqlite и файл csv):
/etc/asterisk/logger.conf и ему сопутствуюшие, оставьте только:
console => notice,warning,error
/etc/asterisk/cdr.conf и ему сопутствуюшие, оставьте только запись в mysql.
Вот и всё!
Удачи в настройках.
This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.
Комментариев нет:
Отправить комментарий