Курсы по использованию Asterisk

IP-телефония — технология будущего. Обучитесь работе с IP-АТС Asterisk для того чтобы внедрить и профессионально использовать при решении коммуникационных задач.

Работайте с Asterisk профессионально!

Многоуровневая защита IP-АТС Asterisk

Телефонные станции очень часто становятся объектами хакерских атак. Узнайте, каким образом необходимо строить многоуровневую защиту для Вашей IP-АТС.

Не оставьте хакерам шансов. Защитите свой Asterisk от атак.

Используйте Веб-Интерфейс для удобства настройки

Панель управление FreePBX позволяет легко и удобно управлять всей системой. Научитесь эффективно использовать FreePBX для решения своих задач.

Управление станцией и статистика в окне браузера.

Научитесь работать с Asterisk из консоли

Для понимания работы с Asterisk необходимо уметь настраивать его вручную с конфигурационными файлами и командной строкой CLI Asterisk.

Научитесь «тонкой» настройке Asterisk

Цель курсов - максимум практики.

Обучение нацелено на практическую работу с IP-оборудованием: платы потоков E1, VoIP-телефонные аппараты, голосовые шлюзы FXS и прочее.

Обучение на реальном оборудовании — залог успеха.

Связка WebRTC и Asterisk

База знаний Настройка Asterisk

WebRTC - относительно новая технология, позволяющая, в том числе, реализовать функцию звонка с сайта. WebRTC реализована в Asterisk 11, но не работает с распространёнными браузерами без патчей, поэтому для связки Asterisk и WebRTC лучше использовать программу webrtc2sip. webrtc2sip можно использовать с более старыми версиями Asterisk, к тому же донастройка Asterisk практически не требуется.

Сборка WebRTC


Приведенные шаги сборки верны для CentOS 5.8 x86_64. Более подробная инструкция по сборке Doubango IMS Framework и webrtc2sip приведена на странице http://code.google.com/p/webrtc2sip/wiki/Building_Source_v2_0#Building_Doubango_IMS_Framework_and_3rd-party_libraries.

Установка инструментов и библиотек для сборки

yum install autoconf libtool make gcc gcc-c++ subversion cvs openssl-devel speex-devel libxml2-devel

Для получения некоторых исходниках понадобится git, собираем его:

(для сборки git понадобится еще несколько зависимостей)

yum install gettext-devel perl-ExtUtils-MakeMaker

wget http://git-core.googlecode.com/files/git-1.7.10.rc0.tar.gz

tar xzf git-*.gz

cd git-*

./configure

make && make install

Установка libsrtp (Если Вы используете FreePBX, достаточно выполнить yum install libsrtp-devel)

git clone https://github.com/cisco/libsrtp/

cd libsrtp

CFLAGS="-fPIC" ./configure --enable-pic

make && make install

Установка libgsm (Для поддержки кодека GSM)

wget http://www.quut.com/gsm/gsm-1.0.13.tar.gz

tar -xvzf gsm-1.0.13.tar.gz

cd gsm-1.0-pl13 && make && make install

#cp -rf ./inc/* /usr/local/include

#cp -rf ./lib/* /usr/local/lib

Установка g729

(может понадобится вручную создать поддиректорию m4 в директории с исходным кодом для успешного выполнения скрипта autogen.sh)

svn co http://g729.googlecode.com/svn/trunk/ g729b

cd g729b

./autogen.sh

./configure --enable-static --disable-shared

make && make install

Установка iLBC

svn co http://doubango.googlecode.com/svn/branches/2.0/doubango/thirdparties/scripts/ilbc

cd ilbc

wget http://www.ietf.org/rfc/rfc3951.txt

awk -f extract.awk rfc3951.txt

./autogen.sh

./configure

make && make install

Установка Doubango IMS Framework (может понадобится вручную создать поддиректорию m4 в директории с исходным кодом для успешного выполнения скрипта autogen.sh)

svn checkout http://doubango.googlecode.com/svn/branches/2.0/doubango doubango

cd doubango

./autogen.sh

./configure --with-ssl --with-srtp

make && make install

Установка webrtc2sip

(может понадобится вручную создать поддиректорию m4 в директории с исходным кодом для успешного выполнения скрипта autogen.sh)

svn co http://webrtc2sip.googlecode.com/svn/trunk/ webrtc2sip

cd webrtc2sip

./autogen.sh

./configure --prefix=/opt/webrtc2sip

make && make install

cp -f ./config.xml /opt/webrtc2sip/sbin/config.xml

При сборке могут возникнуть ошибки

src/trtp_srtp.c:71: error: 'srtp_policy_t' has no member named 'window_size'

src/trtp_srtp.c:72: error: 'srtp_policy_t' has no member named 'allow_repeat_tx'

В этом случае нужно в файле ./tinyRTP/src/trtp_srtp.c закментировать строки

ctx->policy.window_size = 2048;

ctx->policy.allow_repeat_tx = 1;

srtp_ctx->rtp.policy.window_size = 2048;

srtp_ctx->rtp.policy.allow_repeat_tx = 1;

Создаем пользователя для запуска webrtc2sip

useradd webrtc2sip

chown -R webrtc2sip /opt/webrtc2sip

Запускаем webrtc2sip

sudo -u webrtc2sip /opt/webrtc2sip/sbin/webrtc2sip

У webrtc2sip отсутствует функция запуска в режиме демона, поэтому webrtc2sip следует запускать в screen

Лог сообщений программы можно писать, например, так

sudo -u webrtc2sip /opt/webrtc2sip/sbin/webrtc2sip > >(tee /opt/webrtc2sip/sbin/log) 2> >(tee /opt/webrtc2sip/sbin/log >&2)

Создаем SIP-пир на Asterisk, подойдут стандартные настройки.

Протестировать работу WebRTC можно на странице http://www.sipml5.org/call.htm

Заполняем поля следующим образом (Здесь 1.1.1.1 - IP-адрес хоста Asterisk, 101 - SIP-пир, настроенный на Asterisk):

Display Name: что-угодно

Private Identity: 101

Public Identity: 101@1.1.1.1

Password: пароль

Realm: 1.1.1.1

В "Expert mode":

Disable Video: <отмечаем>

Enable RTCWeb Breaker: <отмечаем> (для перекодирования медиа в приемлемый для Asterisk формат)

WebSocket Server URL: ws://1.1.1.1:10062

На основной странице жмем "Login". Если всё сделано правильно и sipML5 удасться подключиться, то над настройками появится слово "Connected". После этого sipML5 может принимать и совершать вызовы.

webrtc, call, FreePBX, инструкция, установка, sip, asterisk, Cisco