Во Freeswitch есть очень крутая функция — telecast, за неё отвечает модуль, который называется Mod_shout, который позволяет прослушивать вызовы онлайн прямо из браузера, а так же создает mp3 поток, который можно слушать в любом плеере. Под катом я расскажу как подключить данный модуль.
Все действия будут происходить на примере Ubuntu 14.04.
Для начала установим необходимые библиотеки:
1 |
apt-get install libvorbis0a libogg0 libogg-dev libvorbis-dev |
Далее в каталоге с сорцами Freeswitch в файле modules.conf раскомментируем модуль formats/mod_shout
1 |
formats/mod_shout |
И собственно собираем:
1 2 3 |
./configure make make install |
Если все собралось без ошибок, то в файле /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml раскомментируем строку с модулем. Должно получится примерно так:
1 2 |
<!--For icecast/mp3 streams/files--> <load module="mod_shout"/> |
! Так же нужно знать, что бы все работало должен быть включен модуль mod_xml_rpc.
Перезагружаем Freeswitch, хотя это вовсе не обязательно и достаточно просто подгрузить модуль в консоли командой load mod_shout.
! Хочу обратить внимание на безопасность данного метода. рекомендую изменить стандартный порт с 8080 на какой то другой с соответствующей настройкой фаервола, а так же изменить стандартные логин и пароль. Все это делается в файле /usr/local/freeswitch/conf/autoload_configs/xml_rpc.conf.xml . Иначе есть риск быть взломанным.
И проверяем, зайдя в браузере по адресу http://<Ваш_Сервер>:8080/webapi/telecast/index вы можете наблюдать следующую картину:
Теперь вы можете прослушать разговор в реальном времени с задержкой 0,5-1с. прямо в браузере, либо скачать плейлист m3u и прослушать в вашем плеере.