IP-АТС Asterisk умеет все то же, что и традиционная АТС, плюс поддерживает актуальные для бизнеса VoIP-протоколы: голосовую почту, конференц-связь, центр обработки звонков, интерактивное меню, хранение записей. Рассказываем, как настроить с нуля базовый функционал «Астериск» АТС и получить рабочий сервер компьютерной телефонии.
Для примера настройки Asterisk возьмем офис с такими характеристиками:
- 3 отдела, в которых работают 25 сотрудников;
- используются трехзначные телефонные номера;
- услуги предоставляет один SIP-провайдер.
Не советуем устанавливать Asterisk из репозитория, так как при данной установке может установиться не та версия asterisk и необходимых к ней зависимостей. В данном случае используем установку Asterisk из исходников.
В разных операционных системах (Cent Os, Ubunty и др.) отличаются команды и необходимые зависимости.
Установка Asterisk из исходников
- Сборка и установка необходимых зависимостей и пакетов.
Вначале нужно установить дополнительные пакеты, которые необходимы для установки и работы Asterisk. Без части из этих пакетов Asterisk вообще откажется устанавливаться (к примеру, если отсутствует gcc). Без некоторых пакетов Asterisk установится и даже будет работать, однако часть функционала будет недоступна. Например, пакет bison необходим для обработки выражений в файле extensions.conf. Еще пример: libnewt необходим для работы интерфейса управления astman. Для сервера Asterisk он не требуется, но без этого пакета у Вас не будет приложения astman, которое является отдельной программой. В нашем приводиться пример установки Asterisk 13 в системе Cent OS 6.9:
yum -y install gcc gcc-c++ make ncurses-devel libxml2-devel sqlite-devel bison kernel-headers kernel-devel openssl openssl-devel newt newt-devel flex curl sox binutils
Для 12-13 версии Asterisk требуется установка пакетов uuid и janson. Для установки библиотеки uuid в RHEL / Centos выполните команду:
yum -y install libuuid-devel
. Для установки библиотеки jansson в RHEL / Centos выполните команду:
yum -y install jansson-devel (предварительно требуется установка репозитория epel: yum install epel-release)
После обновляем систему до последней версии командой yum update –y и перегружаем ее: reboot
- Установка и установка их исходников
Чтобы получить эффективное и рабочее решение, рекомендуем: выполняйте установку и настройку Asterisk в чистом виде, без дополнительных плат расширения и модемов. Так вы получите программную АТС, которую можно легко переносить с одного сервера на другой. Для этого необходимо установить Asterisk с нуля, инсталлировать pjproject с jansson, обновить систему и отключить SELinux.
Для начала отключим Selinux. Для этого заходим /etc/selinux/config и ставим: SELINUX=DISABLED.
Также выключаем FireWall (iptables):
- Проверка статуса: service iptables status;
- Отключение: service iptables stop
- Отключение из автозагрузки: chkconfig iptables off
- Перегружаем систему: reboot
Скачайте и инсталлируйте pjproject:
d /usr/src
git clone git://github.com/asterisk/pjproject pjproject
cd pjproject/
./configure –libdir=/usr/lib64 –prefix=/usr –enable-shared –disable-sound –disable-resample
make dep
make
make install
ldconfig
ldconfig -p | grep pj
Для конвертации mp3 файлов необходим пакет Lame. Установим его из репозитория:
rpm -Uvh https://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
yum repolist — проверка установленных репозиториев
Далее устанавливаем сам пакет: yum install lame
Скачиваем и устанавливаем библиотеку Libpri:
cd /usr/src/
wget https://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz
tar xvfz libpri-1.4-*.tar.gz
cd /usr/src/libpri-1.4.*
make
make install
Если команды wget – не существует, то устанавливаем ее командой yum –y install wget
Далее скачиваем и устанавливаем сам asterisk 13:
cd /usr/src/
wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz
tar xvfz asterisk-13-current.tar.gz
cd asterisk-13.*
contrib/scripts/get_mp3_source.sh
./configure –libdir=/usr/lib64
Если при проверки и подготовки сборки необходимых настроек, моделей никаких ошибок нету, то появиться в консоли иконка Asterisk
make menuselect — выбираются все необходимые параметры, но в принципе можно оставить по умолчанию, главное чтобы были включены необходимые драйверы каналов
Выберите модули и звуки (можно оставить по ум-чанию). В модулях выбираем только sip. (pjsip не ставим):
Установите озвучку для core и extra (для второй она доступна на русском языке). Рекомендуем кодеки g729, alaw, ulaw, ,gsm. Далее уже на Ваш вкус какие кодеки необходимы.:
Другие настройки можно оставить по умолчанию. Если вы установили модуль, но поняли, что он вам не нужен, просто отключите его в конфигурации и сделайте заново сборку через make. Сохраняем выбранные изменения.
Продолжайте инсталляцию:
make
make install
make config
make samples
ldconfig
При успешной установки Asterisk видно в строчках лога эмблему Asterisk (появляется после этапа configure).
Добавьте Asterisk в автозапуск и приступайте к работе:
chkconfig asterisk on
service asterisk start
Проверьте корректность запуска через консоль:
asterisk -r
Перегрузите компьютер чтобы проверить автоматический запуск Asterisk. При вводе asterisk –r мы должны попасть в консоль, как на скрине выше.
Установка и настройка Asterisk для работы с WebRTC
В сети есть много информации и инструкций по теме, но на текущий момент они уже не актуальны и довольно сложны. Во многих случаях используют webrtc2sip но его довольно сложно собрать и заставить работать. Под катом я написал подробную инструкцию как заставить работать WebRTC через Asterisk.
Подготовка системы (ubuntu 14.04)
обновляем aptitude update && aptitude upgrade -y качаем 12 версию астериска:
cd /usr/src/ wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-12-current.tar.gz tar -zxvf asterisk-12-current.tar.gz
в пакете с астером есть скрипт который устанавливает все зависимости, для начала попробуем его использовать.
cd asterisk-12.5.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.1-0-dev lua5.1 libopenh323-dev libvpb-dev libgtk2.0-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.a && 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-12.5.0/ ./configure && make menuselect
в меню надо проверить есть ли звездочки
Channel Drivers -> chan_pjsip и chan_sip Resource Modules -> res_srtp, res_crypto и res_http_websocket
если все есть, то продолжаем, если нет — проверяем заново зависимости.
make && make install && make samples
Генерируем сертификаты.
mkdir /etc/asterisk/keys cd /usr/src/asterisk-12.5.0/contrib/scripts/ ./ast_tls_cert -C pbx.pbxware.ru -O «ATC Design» -d /etc/asterisk/keys скрипт запросит установить пароль (не менее 4 символов) на сертификат.
Установка завершена, переходим к настройкам.
Настройка
редактируем файл http.conf
[general] enabled=yes bindaddr=0.0.0.0 bindport=8088
rtp.conf
[general] rtpstart=10000 rtpend=20000 icesupport=yes stunaddr=stun.l.google.com:19302
sip.conf
[general] udpbindaddr=0.0.0.0:5060 realm=webrtc.pbxware.ru ; заменить на свой ИП или на доменное имя сервера с астериском. transport=udp,ws [webrtc](!) host=dynamic context=from-internal type=friend encryption=yes avpf=yes force_avp=yes icesupport=yes nat=force_rport,comedia directmedia=no disallow=all qualify=yes videosupport=yes allow=ulaw,alaw,vp8,h264,h263p,mpeg4 dtlsenable=yes dtlsverify=no dtlscertfile=/etc/asterisk/keys/asterisk.pem dtlscafile=/etc/asterisk/keys/ca.crt dtlssetup=actpass [101](webrtc) defaultusername=101 secret=101badpassword [102](webrtc) defaultusername=102 secret=102badpassword [103](webrtc) defaultusername=103 secret=103badpassword [104](webrtc) defaultusername=104 secret=104badpassword [105](webrtc) defaultusername=105 secret=105badpassword [106](webrtc) defaultusername=106 secret=106badpassword
extensions.conf
[from-internal] exten => 999,1,Answer() same => n,Playback(demo-congrats) same => n,Hangup() exten => 888,1,Answer() same => n,Echo() same => n,Hangup() exten => _XXX,1,Noop(webrtc test call) same => n,DIAL(SIP/${EXTEN}) same => n,Hangup()
Тестирование
Для тестирования можем использовать HTML5 sip client с сервера sipml5.org/call.htm или установить его на свой сервер.
aptitude install apache2 cd /var/www/html/ svn checkout https://sipml5.googlecode.com/svn/trunk/ sipml5
теперь веб HTML5 сип клиент доступен на нашем сервере webrtc.pbxware.ru/sipml5/call.htm Настройка
Display Name: web1 Private Identity*: 101 Public Identity*: sip:[email protected] Password: 101badpassword Realm*: webrtc.pbxware.ru
в Expert mode WebSocket Server URL[2]: ws://webrtc.pbxware.ru:8088/ws ICE Servers[4]: [{ url: ‘stun:stun.l.google.com:19302’}]
Тестируем
Звонок между двумя ноутами:
Звонок на андроид (chrome)
лог звонка
webrtc*CLI> == Using SIP VIDEO CoS mark 6 == Using SIP RTP CoS mark 5 — Executing [[email protected]:1] NoOp(«SIP/103-00000020», «webrtc test call») in new stack — Executing [[email protected]:2] Dial(«SIP/103-00000020», «SIP/104») in new stack == Using SIP VIDEO CoS mark 6 == Using SIP RTP CoS mark 5 — Called SIP/104 — SIP/104-00000021 is ringing webrtc*CLI> — SIP/104-00000021 answered SIP/103-00000020 — Channel SIP/103-00000020 joined ‘simple_bridge’ basic-bridge <13742dcb-5019-4fd2-b85e-0e1b70b1ccd7> — Channel SIP/104-00000021 joined ‘simple_bridge’ basic-bridge <13742dcb-5019-4fd2-b85e-0e1b70b1ccd7> webrtc*CLI> sip show channels Peer User/ANR Call ID Format Hold Last Message Expiry Peer 91.203.82.152 104 0a9b261a3926a75 (ulaw|vp8) No Tx: ACK 104 91.203.82.152 103 3f8b4b42-600d-8 (ulaw|vp8) No Rx: ACK 103
Тесты проводились на chrome 37.0.2062.94 — работает голос, видео, DTMF. android chrome 37.0.2062.117 — работает голос, видео, DTMF. Firefox 32.0 — работает голос, DTMF. Видео работает только в одну сторону.
P.S. Сейчас сервер работает, можете звонить и проверять как работает WebRTC.
Добавление плана звонков
План звонков потребуется для совершения вызовов. Найдите файл конфигурации extensions.conf, сделайте его резервную копию, а оригинальную версию очистите от комментариев и запишите в нее след:
extension — https://asterisk.ru/knowledgebase/Asterisk+config+extensions.conf
[local]
;для исход. внутренних номеров между собой
exten => _XXX,1,Noop(Test ${CALLERID(num)} Hat)
exten => _XXX,n,Dial(SIP/${EXTEN})
Так вы добавите план звонков на трехзначные номера. В нашем случае это номера 101 и 102 (в sip.conf)
Перезагрузите план набора (диалплан):
dialplan reload
Не страшно, если на экране появятся сообщения об ошибках – вы еще не завершили настройку и исправите их на следующих шагах.
Проверьте список пользователей командой:
sip show peers
Пользователи, пароли и контекст
Установите любую программную «звонилку» или воспользуйтесь реальным телефоном. В первом варианте вам понадобится настроить софт для работы с АТС. В нашем примере используем Zoiper 5. Пример настроек указан в нашей вики https://wiki.new-tel.net/doku.php?id=Zoiper-PC:
Настройки софтовой «звонилки» для проверки Asterisk
Все дальнейшие настройки звонилки и принцип работы указан в ссылке выше.
Теперь проверьте подключенные пиры с помощью команды:
Sip show peers
Если все верно, вы увидите такую строку:, в котором видно нашу SIP-линию и статус подключения SIP-линии:
Sip-линия IP-address A 5060 OK Cached RT
После настройки Asterisk протестируйте звонки на двух абонентах. Для этого подключите еще один физический или программный телефон. Позвоните от одного абонента другому (набрав с 101 на 102 и наоборот). Проверьте содержимое файла /var/log/asterisk/full. – там появится запись о последнем вызове. Также там фиксируется все сообщения и ошибки, возникаемые при работе Asterisk.
Записи обо всех последующих вызовах тоже попадут в этот файл. Позже их можно будет перебросить в базу данных.
Редактирование dialplan
Чтобы настроить входящие и исходящие звонки в IP-телефонии Asterisk, отредактируйте файл extensions.conf, добавив в конце следующий код (с контекста local):
;для исход по транку (пример указан с префиксом 123#).
exten => _123#8XXXXXXXXXX,1,Set(CALLERID(all)=78125000963)
exten => _123#8XXXXXXXXXX,n,Noop( (CALLERID(all) + Boris)
exten => _123#8XXXXXXXXXX,n,Dial(SIP/7${EXTEN:5}@Ip-address)
; избавление от префикса 123# и заменой цифры 8 на 7. Далее отправляется звонок на хост IP провайдера (указан в sip.conf)
[trunk_cid]
;для вход. по транку на 101.
exten => _XXXXXXXXXX,1,Dial(SIP/101,30,r)
Перезагрузите Asterisk командой core restart now и снова сделайте тестовый звонок. Информация о нем добавится в файле full
Пример лога консоли Asterisk:
На этом базовая настройка IP-телефонии «Астерикс» завершена. Чтобы расширить функционал после того, как Asterisk установлен, настройте приветствие и голосовое меню (ivr), активируйте голосовую почту, настройте очередь (queue) входящих звонков, сбор и просмотр статистики (cdr viewer), запись (record) разговоров, поставьте музыку на ожидание (on hold), настройте конференции, перевод, перехват и переадресацию звонков.
Простая установка Asterisk + FreePBX для начинающих
Ситуация
В сети на сегодняшний день достаточно много описаний по развертыванию IP телефонии и в основном это два варианта:
- Берём готовый дистрибутив в виде установочного образа (Elastix,Trixbox etc…) и в результате получаем рабочий комплекс не имея никаких знаний в Linux
- Устанавливаем комплекс самостоятельно занимаясь при этом компиляцией из исходных кодов и ручной правкой множества конфигурационных файлов.
У каждого варианта имеются как достоинства, так и недостатки. Если первый способ подразумевает практически нулевую подготовку и дает возможность получить результат ничего не поняв, как это работает, то второй напротив требует обширных знаний в linux и очень сложен для начинающих хоть и обеспечивает высокую гибкость и масштабирование.
Предпосылки
В процессе внедрения IP телефонии в одной из компаний с разветвленной структурой филиалов рассматривались оба варианта но оба не устраивало по ряду причин:
- Бюджет на проект не подразумевал затрат на привлечение сторонних компаний для развертывания проекта, весь комплекс телефонии было решено развертывать своими силами.
- Большинство системных администраторов в филиалах были не знакомы с Linux системами и являлись чистыми Winows админами.
- Требовалось заложить высокую гибкость системы под будущие, еще не придуманные задачи.
Перед нами встала дилемма, с одной стороны проще настроить сервера и разослать их в регионы, а с другой весь груз сопровождения такого «черного ящика» ложится на наши плечи, а нас мало. В общем нас самих такая ситуация не устраивала. Вариант заказа внедрения сторонней компании был сразу отметен руководством по финансовым причинам. Вариант с готовым дистрибутивом тоже отпал, поскольку проект подразумевал необходимость расширения функционала телефонии под нужды компании с учетом особенностей филиалов и это расширение необходимо было выполнять силами местных сотрудников. То есть без обучения nix системам никак.
Решение
Мы решили пойти путем более сложным и трудозатратным для нас, но дешевым для компании. Начали учить системных администраторов азам работы с linux. Концепция обучения состоит в том, чтобы сотрудник мог самостоятельно взяв типовой дистрибутив linux ubutu server 12.04 сумел установить на него Asterisk, Веб управление FreePBX и систему веб-управления факсами hylafax+Avantfax, при этом использую реальные проекты в их текущих состояниях.
Кроме того, для упрощения развертывания, инструкция должна была стать максимально простой и короткой. В итоге всё свелось к простому копи-пасту и установке большинства пакетов из репозиториев. Весь процесс множество раз выверялся повторными установками. Мы постарались обеспечить принцип минимальной достаточности. Всё без чего можно обойтись пропускалось (оставлено для самостоятельного освоения сотрудниками). Это очень облегчило задачу для Win админов которые не привыкли к консоли и позволило им почувствовать себя более уверенно, особенно когда в результате собственных действий за минимальное число попыток получали рабочую систему. Это очень воодушевляет на первых этапах.
Итак сама инструкция
После установки чистой ubuntu server 12.04 LTS по этой инструкции мы готовы к началу установки.
В первый раз ВСЕ действия выполняем копированием — вставкой ничего не меняя, как есть!
Установка LAMPA
LAMPA — (Linux,Apache,Mysql,Php,Asterisk) apt-get update apt-get install lamp-server^ libmysqlclient18 asterisk-dev \ asterisk-mysql asterisk-moh-opsound-wav php-db selinux-utils audiofile-tools \ bison libset-intspan-perl curl openssl php5-gd lame sox libxml2 subversion \ dahdi-* linux-headers-`uname -r` В процессе установки мастер попросит задать пароль для mysql сервера. Задаем например PaSs или свой и запоминаем. Пустым пароль оставлять не надо!
FreePBX
Указываем пароль, который поставили при установке mysql
passwd=PaSs #Указываем версию которую хотим установить fpbxver=2.10
Загрузка и создание базы
svn co https://svn.freepbx.org/freepbx/branches/$fpbxver /usr/src/freepbx cd /usr/src/freepbx mysqladmin create asterisk -p${passwd} mysqladmin create asteriskcdrdb -p${passwd} mysql asterisk < SQL/newinstall.sql -p${passwd} mysql asteriskcdrdb < SQL/cdr_mysql_table.sql -p${passwd} echo «GRANT ALL PRIVILEGES ON asterisk.* TO [email protected] IDENTIFIED BY ‘${passwd}’;» > /tmp/tmpfbpx echo «GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO [email protected] IDENTIFIED BY ‘${passwd}’;» >> /tmp/tmpfbpx echo «flush privileges;» >> /tmp/tmpfbpx echo «quit» >> /tmp/tmpfbpx mysql -p${passwd} < /tmp/tmpfbpx
Установка FREEPBX
Запускаем установку (заполняем параметры или оставляем по умолчанию): rm /var/www/index.html ./install_amp —password=${passwd} —webroot=/var/www Подтверждаем параметры adduser www-data asterisk /etc/init.d/apache2 restart wget https://127.0.0.1/admin/config.php# -O /dev/NULL
Подготовка WEB сервера
Изменение конфигурации apache2, для корректной работы с русским языком, а так-же меняем пользователя www-data от имени которого стартует apache2 на пользователя asterisk locale-gen ru_RU perl -pi -e ‘s/#AddDefaultCharset UTF-8/AddDefaultCharset UTF-8/g’ /etc/apache2/conf.d/charset perl -pi -e ‘s/export APACHE_RUN_USER=www-data/export APACHE_RUN_USER=asterisk/g’ /etc/apache2/envvars perl -pi -e ‘s/export APACHE_RUN_GROUP=www-data/export APACHE_RUN_GROUP=asterisk/g’ /etc/apache2/envvars /etc/init.d/apache2 restart
Загрузка модулей и обновлений
Загружаем и устанавливаем свежие модули ./setup_svn.php ./install_amp cp amp_conf/moh/*.wav /var/lib/asterisk/moh cd /etc/asterisk rm ccss.conf extensions.conf logger.conf iax.conf sip.conf features.conf sip_notify.conf chan_dahdi.conf chown asterisk:asterisk /etc/amportal.conf
На этом базовый функционал готов, можно подключиться к серверу по адрес сервера логин и пароль: admin
Некоторые добавления и исправления
Небольшой твик для стабильной работы FOP панели, перезапускает её раз в 10 минут chmod 770 -R /var/www/admin/modules/fw_fop echo «*/10 * * * * root amportal 2 > /dev/NULL»>>/etc/crontab Исправляем косяки с путями хранения звуков cp -r /var/lib/asterisk/sounds/ /usr/share/asterisk/ rm -r /var/lib/asterisk/sounds/ ln -s /usr/share/asterisk/sounds /var/lib/asterisk/ chown -R asterisk:asterisk /var/lib/asterisk/sounds/ chown -R asterisk:asterisk /var/lib/asterisk/sounds/custom/
Русификация голоса
paths=/usr/share/asterisk/sounds/ cd /tmp wget -c https://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-ru-wav-current.tar.gz mkdir $paths/ru cd $paths/ru tar zxvf /tmp/asterisk-core-sounds-ru-wav-current.tar.gz
На этом этапе базовая система считается развернутой, дальше уже идет настройка через WEB интерфейс.
Ссылка на wiki с инструкцией
Ошибки в настройке Asterisk
Рассмотрим распространенные ошибки при настройке виртуальной АТС «Астерикс» и дадим инструкции, которые помогут их .
- Asterisk не регистрируется на сервере и возвращает ответ Forbidden в режиме отладки.
Причина: некорректно введен пароль, указан SIP ID или домен. Проверьте содержимое файла sip.conf. - Сбрасываются входящие звонки.
Причины: внутренний пользователь не зарегистрирован. Проверьте регистрацию командой sip show registry. - Не проходят исходящие вызовы.
Причина: некорректно задан шаблон номера (пропущен символ «_» перед шаблоном). - Звук проходит только в одну сторону.
Причина: вы используете NAT. Включите debug и используйте tcpdump – так вы увидите, куда уходят запросы и аудиотрафик.
Установка Asterisk
Установка и настройка окажется простой, если соблюдать пошагово инструкцию.
Если нужна только VoIP-сеть, то можно установить только asterisk. Но лучшим вариантом станет установка трех пакетов.
Драйвер dahdi используется при цифровом оборудовании. Для обмена данными с периферийным оборудованием нужен драйвер. Принцип настройкиAsterisk заключается в следующем:
сервер Asterisk<->chan_dahdi<-> Драйвер dahdi<-> Карта <-> Телефон/Коммутатор/Телефонная сеть
Библиотека libpri необходима для использования TDM-интерфейсов ISDN: PRI (PrimaryRateInterface) и BRI (BasicRateInterface). Libri делится на каналы по времени – Time Division Multiplexing.
Можно рассмотреть установку Asterisk из исходников. Такой способ установки дает возможность установить Asterisk с нуля.
Важно! Есть несколько условий для установки и настройки программы.
- Версия ядра системы должна быть не ниже 2.6.
- Обязательное наличие файлов заголовков в системе.
- Присутствие компилятора gccctermcap и openssl.
Проверив все эти моменты, можно приступать к установке. Для этого надо перейти на сайте в Download и загрузить такие архивы:
- «asterisk»
- «asterisk-sounds»
- «asterisk-addons»
- «zaptel»
- «libpri»
После этого скопировать файлы на сервер и разместить их в папке «/usr/src/.».
Далее надо запустить терминал в сервере.
Затем распаковать каждый архив командой «tar-xzf<�имя >tar.gz».
Потом перейти в каждую папку при помощи команды «cd<�имя>».
Закончив, надо выполнить определенные команды для настройки:
- «./configure» (это подготовит программу к сборке)
- «make» (команда для сборки)
- «makeinstall» (установка программы)
Для установки необходимых пакетов не нужно прилагать особых усилий. Астериск обладает автоматизацией пакетов, поэтому для этого нужен скрипт install_prereq, который можно найти в подкаталоге contrib/scripts, где есть исходные коды.
Нужно зайти в этот подкаталог и запустить скрипт. С помощью него необходимые пакеты будут установлены.
Таким образом, при соблюдении всех действий Asterisk для чайников будет готов.