скористатися власною мовою Asterisk, створити модуль на Cи або використовувати універсальний інтерфейс інтеграції з зовнішніми системами обробки даних AGI. Щоб спростити розробку модулів, призначених для вирішення різних завдань, запропоновано декілька рівнів API (channel, application, codec, file format). Тому нові можливості (наприклад, кодеки) з'являються в Asterisk дуже швидко і їх впровадження проходить безболісно. Крім цього, модульність Asterisk дозволяє адміністраторам підключати тільки необхідні функції, модифікуючи систему під свої потреби. Сервер Asterisk можна встановити на комп'ютерах, що працюють під управлінням GNU/Linux, Free/Net/OpenBSD, Mac OS X/Darwin, Open/Solaris. Клієнти доступні практично для всіх систем, в тому числі і Windows. Виняток становлять драйвери Zaptel і ISDN-пристроїв, реалізації яких поки є не для всіх платформ.
Установка Asterisk
Якщо метою роботи є знайомство з Asterisk, можна використовувати один з дистрибутивів, в яких вже є налаштований і повністю готовий до роботи сервер: AsteriskNow, Trixbox, VoIPonCD. Asterisk присутній в репозитаріях пакетів більшості дистрибутивів. Так, в Ubuntu команда sudo apt-cache search Asterisk видає пристойний список пакетів, після установки яких відразу ж можна приступати до налаштування. Але установка з репозитарія має один мінус - як правило, в ньому версія Asterisk пристойно відстає від поточної, яку можна завантажити з офіційного сайту.
Тому буде розглянуто універсальний спосіб установки на прикладі Ubuntu, хоча вся інформація відноситься і до решти дистрибутивам. Установка пакетів, необхідних для компіляції:
$ sudo apt-get install build-essential automakebison flex libtool libncurses5-dev libssl-dev
Крім того, рекомендується встановити бібліотеку libpri, навіть якщо не потрібна підтримка Primary Rate ISDN (первинний тип цифрової мережі з інтеграцією послуг).
Це можна зробити або через репозитарій: sudo apt-get install libpri1.2, або використовуючи вихідні тексти:
$ wget - c downloads. digium/pub/libpri/libpri - 1.4-current. tar. gz
Компіляція бібліотеки стандартна.
Завантаження з сайту вихідних текстів Asterisk і конфігурація:
$ wget - c downloads. digium/pub/Asterisk/Asterisk - 1.4.11. tar. gz
$ tar xzvf Asterisk - 1.4.11. tar. gz
$ cd Asterisk - 1.4.11
$./configure - -prefix=/ usr
Після закінчення роботи скрипта в консолі з'явиться емблема проекту і деяка інформація про налаштування.
$ make
$ sudo make install
Примітка: якщо проводиться установка версії 1.2, то для підтримки формату mp3 перед командою make слід ввести make mpg123 raquo ;, версія 1.4 вже ніяк не реагує на цю команду. Після компіляції, крім усього іншого, будуть встановлені наступні виконувані файли:
/usr/sbin/Asterisk - демон сервера Asterisk, який і забезпечує всю роботу;
/usr/sbin/safe_Asterisk - скрипт для запуску, перезапуску та перевірки роботи сервера Asterisk;
/usr/sbin/astgenkey - скрипт для створення закритого і публічного RSA ключів у форматі PEM, які необхідні для роботи Asterisk.
Щоб встановити шаблони конфігураційних файлів і документацію, набираємо:
$ sudo make samples
Приклади конфігураційних файлів будуть скопійовані в/etc/Asterisk. Якщо в цьому каталозі вже знаходяться файли конфігурації, вони будуть перейменовані з префіксом laquo ;. old raquo ;. Для складання документації потрібно пакет doxygen, якщо його немає, встановлюємо:
$ sudo apt-get install doxygen
$ sudo make progdocs
Аналогічно ставимо і пакет з розширеннями Asterisk-addons (цей крок не обов'язковий, його можна сміливо припустити). Багато модулі, що входять до складу цього набору, є експериментальними. Їх варто встановлювати, тільки якщо потрібно запис інформації в БД, підтримка mp3-файлів і протоколу ooh323c (Objective Systems Open H.323 for C):
$ wget - c downloads. digium/pub/Asterisk/Asterisk-addons - 1.4.2 tar. gz
$ tar xzvf Asterisk-addons - 1.4.2 tar. gz
$ cd Asterisk-addons - 1.4.2
$./configure; make; sudo make install; sudo make samples
Установка Asterisk закінчена. Спочатку рекомендується запустити сервер в отладочном режимі і переглянути вис...