Linux-программа Asterisk нужна для создания серверов телефонии и АТС. У неё много полезных функций, которые будут к месту в любом офисе. Конференции, автоответчики, распределение звонков, текстовые сообщения, видео, голосовое меню и голосовая почта. Утилита поддерживает популярные протоколы связи. Их можно коммутировать. Но установка Asterisk на Ubuntu — дело не самое простое. Приложение загружается и настраивается через терминал. Поэтому надо изучить консольные команды.
Перед установкой
В Линукс одна программа может зависеть от дополнительных модулей. И без них не будет работать. Поэтому надо скачать не одну утилиту, а несколько. Для Астериска нужны пакеты:
- Взаимодействие с потоковыми интерфейсами ISDN. Например, с PRI, который нужен для связи с российскими операторами по E1.
- Работа с цифровыми интерфейсами.
Они есть на сайте asterisk.org в разделе «Download». Там же указаны терминальные команды для загрузки исходников.
Перед установкой:
- Откройте консоль. Она в меню «Программы — Стандартные».
- Перед каждой командой ставьте «sudo».
- Обновите систему. Для этого напишите «apt-get upgrade» и нажмите Enter. Потом «apt-get update».
- Перезагрузите ОС командой «reboot».
- Синхронизируйте дату и время с официальным сервером — «apt-get install ntp».
- Получите права администратора — «sudo -i».
Для работы Asterisk нужны дополнительные библиотеки. Если вы ставите программу из репозитория, они должны догрузиться автоматически. Но при запуске из исходников необходимые пакеты придётся ставить вручную. Для этого используйте команду «apt-get install [Имя-модуля]». Название библиотек вводите через пробел. Понадобятся:
- Apache Предназначен для работы с HTTP-серверами
- OpenSSL. Криптографический инструмент.
- LibSSL-Dev.
- Build-Essential.
- PHP Язык программирования, который используется для создания Web-приложений.
- PHP5-MySQL.
- Libxml2-Dev.
- Subversion. Нужна для контроля версий.
- Libncurses5-Dev.
- Wget. С её помощью вы скачаете исходники с сайта разработчика.
- Linux Headers. Для установки напишите не только название, но и параметры «linux-headers-$(uname -r)».
При загрузке система попросит ввести Root-пароль. У вас набор модулей может быть другим. Это зависит от того, какие пакеты у вас уже есть, и для каких целей вы будете использовать утилиту. Когда закончите с библиотеками, снова перезапустите систему. После этого можно устанавливать остальные зависимости.
LibPRI и DAHD
Запускайте модули в определённом порядке: вначале LibPRI, потом DAHD.
- Откройте каталог, в который собираетесь их поместить — «cd [Путь-к-папке]». Чтобы создать новую директорию, введите, «mkdir [Путь-к-новой-папке]».
- Скачайте файлы с модулями — «wget [Ссылка-на-загрузку]». URL можно узнать на сайте Asterisk. Вводить команду надо дважды — для каждой библиотеки. Ссылка должна заканчиваться расширением. Объекты будут помещены в открытую на данный момент папку.
- Если они находятся в архивах, распакуйте их — «tar zxvf [Название-файла]». Имя вводите с расширением. Номер версии можете заменить на «*» («Звёздочка»). Этот параметр воспринимается, как любое количество символов. Например, если напишете «dahdi-linux*», откроются все файлы, название которых начитается с «DAHDY Linux».
- При помощи команды «cd» перейдите в распакованную папку с LibPRI.
- Напечатайте последовательно три команды: «sudo make all», потом «sudo make install» и настройте конфигурацию «sudo make config».
- Сделайте то же самое для папки с DAHDY.
- Чтобы запустить этот сервис, напишите «service dahdi start».
- Чтобы он активировался при старте ОС, введите «chkconfig dahdi on».
Установка
Теперь установка самого Asterisk на Ubuntu.
- Скачайте его с сайта разработчика. Введите «wget [ссылка-на-загрузку]». Файл будет помещён в текущий каталог. Поэтому заранее откройте нужную папку при помощи команды «cd».
- Если программа заархивирована, распакуйте её — «tar zxvf [Название-архива]».
- Зайдите в директорию с Астериксом.
- В последних версиях утилиты используются службы WebRTC. Их можно загрузить прямо из Asterisk-исходников — введите «contrib/scripts/install_prereq install». Е нужны скрипты «Pjproject» и «Libsrtp». Чтобы их запустить, напишите ту же команду, но с параметром «-unpackaged».
- Снова перейдите в каталог с программой.
- Наберите «. /configure». Должна появиться заставка.
- Можете запустить графический интерфейс, чтобы посмотреть, как выглядит меню программы «make menuselect». Чтобы выйти из него, нажмите «Exit».
- Теперь последовательно введите две команды: вначале «make», потом «make install».
- Астериск установлен и работает.
Эту программу можно скачать из репозитория — «apt-get install asterisk».
Самостоятельная сборка Pjproject и Libsrtp
Если «Pjproject» и «Libsrtp» не запустятся из исходников или возникнет ошибка, придётся самостоятельно их «собирать».
- Введите команду «sudo su».
- Перейдите директорию, в которой хранятся скрипты — «cd /usr/src/».
- Скачайте в неё нужный модуль — «git clone 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».
- И завершите командой «ldconfig».
- Можете выходить из Root-режима.
Настройка
Теперь выберем параметры для телефонного сервера Ubuntu. Настройка с нуля Asterisk выглядит так.
Меню
- Зайдите в меню программы — «make menuselect».
- Активируйте все функции «MySQL».
- Откройте вкладку «Add-ons».
- Выберите опцию «format_mp3». Так голосовое меню будет в MP3-формате.
- Если вы хотите поставить поддержку русского языка (или какого-то другого), включите её в подразделе «Core Sound Packages».
- Вам нужны все три кодека. «ALAW» — основной. «G729» — для номеров, которые присоединяются через внешнюю сеть. «GSM» — для GSM-шлюзов.
- Скачайте модуль «meetme».
- В разделе «Extras Sound Packages» тоже подключите кодеки.
- Для использования FreePBX выберите «cdr_odbc».
- На вкладке «Music On Hold File» активируйте всё.
- Загрузите «MOH-OPSOUND-WAV». Это набор мелодий. Потом вы сможете их заменить на те, которые вам нужны.
- Нажмите «Save & Exit».
Консоль
Включили модуль MP3? Теперь скачайте пакеты голосовых сообщений.
- Перейдите в папку «contrib/scripts/» при помощи команды «cd».
- Откройте скрипт «get_mp3_source.sh».
- Введите «make install».
- Подождите, пока загрузятся архивы.
Установленный Asterisk надо настраивать и через меню, и через терминал. Поэтому откройте консоль.
- Сделайте конфигурационные файлы. Можно в качестве теста. Команда — «make samples».
- Активируйте функцию автозапуска — «make config ldconfig».
- Теперь можно запустить сервис — «service asterisk start».
- Или сразу открыть его в качестве демона — «/etc/init.d/asterisk start». Чтобы включить его консоль, введите команду «sudo asterisk -rvvvcd».
Пока для работы с Астериском вам нужны права суперюзера. Но лучше создать отдельного пользователя и предоставить ему доступ к функциям программы. Для этого:
- Временно отключите утилиту — «service asterisk stop».
- Добавьте нового юзера — «adduser [Имя]». Можете создать группу, которой предоставите нужные права. Она пригодится, если вы решите сделать нескольких пользователей для работы с разными службами Астериска.
- Теперь нужна директория для запуска. Добавьте её при помощи команды «mkdir». После неё напишите параметр «-p» и путь к папке «/var/run/asterisk».
- Чтобы приложение открывалось сразу под нужным юзером, отредактируйте файл «/etc/default/asterisk». Установите там следующие параметры: «AST_GROUP=»dialout»» и «AST_USER=»asterisk»».
- Можно сделать это проще — впишите скрипт «sed -i ‘s/#AST_USER=»asterisk»/AST_USER=»asterisk»/g’ /etc/default/asterisk».
- Предоставьте пользователю доступ ко всем папкам программы — «chown -R [Имя-юзера] [Путь-к-каталогу]».
- Откройте файл «asterisk.conf», найдите в нём параметр «runuser» и укажите в нём только что созданного пользователя. Если делали группу, также перепишите строчку «rungroup».
- Перезагрузите систему — «reboot».
- Зайдите под именем Asterisk-юзера — «su [Имя]».
- И запустите программу.
- Чтобы посмотреть информацию о ней, введите «asterisk -rvvvv».
Утилита готова к работе. Дальнейшие действия зависят от того, в каких условиях будет использоваться станция. Есть несколько файлов, в которых расписана конфигурация:
- conf — общие настройки сервера. В нём можно указать, сколько подключено абонентов. Там устанавливают правила дозвона.
- conf — в нём также настраивают правила дозвона и выставляют параметры звонков.
- conf — конфигурация абонентских аккаунтов.
С Asterisk вы создадите АТС любой сложности. В нём много полезных функций и модулей. После установки и настройки вы сможете взаимодействовать со станцией при помощи клиентского программного обеспечения. Например, Linphone.