Asterisk и IP-телефония

Установка и настройка Asterisk для работы с WebRTC / Хабрахабр

Материал перенесён из старой базы знаний ATC-IP и оформлен в едином стиле нового сайта.

10 сентября 2014 в 16:04
Установка и настройка Asterisk для работы с WebRTC
tutorial
Разработка систем связи
Asterisk
В сети есть много информации и инструкций по теме, но на текущий момент они уже не актуальны и довольно сложны. Во многих случаях используют
webrtc2sip
но его довольно сложно собрать и заставить работать. Под катом я написал подробную инструкцию как заставить работать WebRTC через Asterisk.
1. Подготовка системы (ubuntu 14.04)
обновляем
apt-get install aptitude
aptitude
update
&& aptitude upgrade -y
apt-get install openssl
качаем 13 версию астериска:
cd /usr/src/
wget http://downloads
.asterisk
.org
/pub/telephony/asterisk/asterisk-
13
-current
.tar
.gz
tar -zxvf asterisk-
13
-current
.tar
.gz
в пакете с астером есть скрипт который устанавливает все зависимости, для начала попробуем его использовать.
cd
asterisk-13.2.0/contrib/scripts/
./install_prereq install
в моем случае скрипт выдал кучу конфликтов, у меня ubuntu 64 а скрип пытается поставить i386 пакеты. Поэтому установим все зависимости вручную.
aptitude install -y libncurses-dev libz-dev libssl-dev libxml2-dev libsqlite3-dev uuid-dev uuid libcurl-dev libspeex-dev libspeexdsp-dev libogg-dev libvorbis-dev libasound2-dev portaudio19-dev libcurl4-openssl-dev libpq-dev unixodbc-dev libsqlite0-dev libmysqlclient15-dev libneon27-dev libgmime-dev libusb-dev
liblua5.
-dev
lua5.
libopenh323-dev libvpb-dev
libgtk2.
-dev libmysqlclient-dev libbluetooth-dev libradiusclient-ng-dev freetds-dev libsnmp-dev libiksemel-dev libcorosync-dev libnewt-dev libpopt-dev libical-dev libspandsp-dev libjack-dev libresample-dev libc-client-dev binutils-dev libsrtp-dev libgsm1-dev libedit-dev doxygen libjansson-dev libldap-dev subversion git libxslt1-dev mc htop iftop
еще раз воспользуемся скриптом для установки дополнительных пакетов libsrtp и pjproject они очень важны для работы webrtc
/install_prereq
install
unpackaged
тут все собралось без проблем, но если вдруг возникнут ошибки то ставим все руками
cd
/usr/src/
git
clone
https://github
com/cisco/libsrtp
git
cd
libsrtp
/configure
CFLAGS=
fPIC
&&
make
libsrtp
&&
make
uninstall
&&
make
install
cd
echo
"/usr/local/lib"
/etc/ld
so
conf
d/usr_local
conf
/sbin/ldconfig
git
clone
https://github
com/asterisk/pjproject
git
cd
pjproject
/configure
enable
shared
with
external
speex
with
external
gsm
with
external
srtp
disable
sound
disable
resample
&&
make
&&
make
install
/sbin/ldconfig
на этом система готова для установки астериска с поддержкой webrtc.
Установка Asterisk
cd /usr/src/asterisk-13.2.0/
./configure
--with-crypto --with-ssl --with-srtp
make menu
select
в меню надо проверить есть ли звездочки
что бы было отмечено
[x]
, если
xxx
то не
собран данный модуль

Материал сокращён при переносе в новую базу знаний. Полная версия сохранена в архиве старого сайта.

Позвонить +7 (343) 382-33-16