Статьи

Elastix - дистрибутив для створення VoIP сервісу

  1. можливості Elastix
  2. установка Elastix
  3. Знайомство з веб-інтерфейсом

Стаття з журналу

Створювати VoIP сервіс на Asterisk можна декількома способами. Встановити все з нуля самому або скористатися вже готовими рішеннями. Дистрибутив одне з них.

Зручність спеціалізованих дистрибутивів очевидно. У звичайному випадку адміністратору доводиться спочатку встановити систему, а потім додавати компоненти нарощуючи її до потрібної функціональності. Цей процес займе деякий час, так як в репозитариях дистрибутивів рідко зустрічається весь необхідний в таких випадках комплект додатків. Вибравши готове рішення, практично відразу після установки системи можна переходити до налаштування конкретних сервісів. Найбільш відомими з таких спеціалізованих дистрибутивів є (раніше Asterisk @ HOME) і AsteriskNOW . Останній підтримується компанією-розробником Asterisk - Digium Веб-інтерфейс AsteriskNOW який використовується в цьому дистрибутиві знаходиться поки що в активної розробки, багато функцій, наприклад такі як білінг, можна сказати відсутні. Тому цікавими є рішення сторонніх розробників. Багато адміністратори використовують Trixbox, інформацію про який можна знайти в Інтернет. Дистрибутив Elastix від PaloSanto Solutions мені здався дещо більш цікавим рішенням, хоча по функціональності він не набагато обходить Trixbox Community Edition. Але ось закладений потенціал дає певний запас в разі його неминучою коммерцізація і тому при побудові Системи проектування з нуля є сенс придивитися саме до нього.

можливості Elastix

Перша версія Elastix 0.1 представляла собою веб-інтерфейс написаний на PHP до записів Asterisk CDR (Call Detail Record) містить інформацію про дзвінки і завантажених в базу MySQL. Система фільтрів дозволяла знайти потрібну подію задовольняє обраним критеріям. Але потім розробники пішли по шляху інтеграції і в даний час Elastix це вже спеціальний дистрибутив GNU / Linux орієнтований на створення VoIP сервісу, девізом розробки якого є "надійність, модульність і зручність". У Elastix включено все, що потрібно для Asterisk організацію VoIP сервісу, включаючи GUI для адміністрування та багато інших програм необхідні для зручної роботи, які довелося б встановлювати. Основна ідея проста - зібрати всі потрібні програми, спростивши управління. Останнє досягається, за рахунок застосування інтерфейсу власної розробки. Причому саме інтерфейс в першу чергу привертає увагу до дистрибутива, не дивлячись на функціональність, побудований він дуже логічно і потрібні налаштування знаходиш на своїх місцях. До документації в більшості випадків звертатися не доводиться. До того ж інтерфейс у версії 1.0 переведений на 19 мов, серед яких є і російська, що ще більш спрощує роботу з ним. За допомогою веб-інтерфейсу можна виробляти деякі настройки системи (мережа, користувачі, налаштування обладнання, установка і оновлення програм та інші), а також всіх наявних сервісів. Забігаючи трохи наперед слід зазначити, що переведена тільки частина інтерфейсу. І зокрема вкладка PBX в якій власне і проводяться всі налаштування що стосуються роботи Asterisk практично не переведена. Також є і проблеми зі шрифтами при створенні графіків, замість тексту, що читається видно знаки питань. При бажанні замість штатного інтерфейсу налаштування Asterisk можна виробляти, переключившись на freePBX.

Підписи в графіках містять знаки питань

Звичайним користувачам веб-інтерфейс також доступний. З його допомогою вони можуть переглядати статистику дзвінків, прослухати повідомлення голосової пошти, працювати з електронною поштою, вбудованою CRM і інші дозволені для цієї категорії. Адміністратор може перекласти частину обов'язків з адміністрування на інших користувачів, просто включивши їх в певну групу з потрібними правами.

Реалізована панель оператора з функціональністю call-центру.

Розповсюджується за ліцензією GNU GPL v.2.

Основою Elastix послужив CentOS 5 з ядром 2.6.18, пакети якого використовуються в дистрибутиві. У разі необхідності можна легко доустановити будь відсутню додаток, наявне в репозитарії CentOS (враховуючи походження останнього від Red Hat то і з нього), тим більше що дослідження налаштувань YUM показало, що деякі пакети для оновлень, беруться саме з сайту CentOS. Спочатку підтримується віртуалізація, тому можна запустити кілька систем Elastix на одному комп'ютері. Експерименти показують, що Elastix без проблем працює в різних віртуальних машинах на зразок VirtualBox, VMWare і XEN. У документації описаний процес установки і роботи в віртуальному середовищі саме для XEN. Основу системи VoIP складає Asterisk 1.4.18, розробники доповнили його утилітами власної розробки і модулями сторонніх виробників. При наявності клієнтських рішень (наприклад Ekiga) підтримують передачу відео, можна не тільки розмовляти, але й бачити абонента.

В якості системи білінгу використаний перероблений A2Billing, меню якого інтегровано в основне вікно налаштувань.

Серед інших можливостей хочеться відзначити наявність зв'язки Postfix і Cyrus-IMAP з можливістю роботи з поштою через веб-інтерфейс і обслуговування декількох доменів. Як інтерфейс для веб-пошти використовується RoundCubeMail, який також інтегрований з загальним.

Адміністратор і користувачі володіють потрібними правами, використовуючи веб-інтерфейс, можуть також управляти настройками сервера HylaFax, створюючи будь-яку кількість віртуальних факсів, дозволяючи замість дорогого устаткування призначеного для прийому передачі факсів використовувати Elastix. Повідомлення на вказану електронну адресу будуть прийматися як факс, використовуючи віртуальний принтер і Asterisk, можна відправити факс на будь-який номер.

В поставку входить і сервер Openfire 3.4.2 забезпечує обмін повідомленнями по протоколу XMPP / Jabber. Після установки в налаштуваннях за замовчуванням він відключений, але активувати його можна одним клацанням. Також в комплекті дистрибутива поставляються дві CRM (Customer relationship management) - SugarCRM і VTigerCRM, а також карткова платформа. SugarCRM є напевно функціональної і популярною CRM-системою, він активований за замовчуванням.

У релізі 1.0 крім цього з'явився і сервер DHCP настройки якого виробляються також через єдиний веб-інтерфейс. Як веб-сервера використаний Apache 2.2.3, бази даних зберігаються в MySQL 5.0. Є навіть такі утиліти як nmap і nc.

установка Elastix

Як програма установки використовується Anaconda в псевдографічному варіанті. Тому користувачі знайомі з нею нічого нового не знайдуть. Розробники ще більш спростили процес установки Elastix за рахунок використання файлів автоматизації KickStart. В ISO образі таких файлу три. За замовчуванням, тобто коли просто натискається в меню boot: клавіша Enter використовується ks.cfg. Адміністратору буде задано лише кілька запитань на кшталт расскладкі клавіатури, вибрати часовий пояс і введення пароля користувача root. Диск буде розмічений автоматично, без будь-якого попередження, тому встановити Elastix в якості другої системи для експериментів цьому випадку не можна. Далі будуть встановлені всі пакети, наявні на диску. Мережа також налаштовується автоматично, після перезавантаження деякий час система буде чекати відповіді DHCP сервера, якщо його в мережі немає, то доведеться трохи почекати.

Дещо більше свободи надає варіант Advanced, що активується введенням "advanced" в завантажувальному меню. Тут уже доступна розмітка ручна диска і настройка мережевих інтерфейсів. Склад додатків не змінюється. І третій kickstart-файл ks_xen.cfg використовується при установці в віртуальній машині XEN.

Після перезавантаження система повністю готова до налаштувань сервісів через веб-інтерфейс. Реєстрація в консолі може знадобитися тільки в тому випадку, коли мережевий інтерфейс не налаштований при установці. Нічого складного немає, викликаємо netconfig і вказуємо потрібні параметри.

У комплекті є OpenSSH сервер, тому в подальшому керувати ним можна і віддалено.

Знайомство з веб-інтерфейсом

Тепер можна реєструватися в системі, використовуючи веб-браузер. Для цього використовуємо обліковий запис "admin" і пароль "palosanto". За замовчуванням встановлено англійську мову інтерфейсу. Щоб змінити його досить вибрати меню System - Preferences - Language. Не знаю чому, але на форумі Elastix задають питання, про те як змінити встановлений пароль за замовчуванням для користувача "admin". Це можна зробити в тому ж меню де додаються або видаляються звичайні користувачі. Тобто перейшовши в Система - Користувачі, потім вибрати в меню зліва Users, відзначити обліковий запис admin і натиснути кнопку Редагувати.

Веб-інтерфейс складається з 7 основних вкладок, в яких виробляються настройки за яким одному напрямку. Назви відповідають їх призначенню, тому розібратися легко. Всередині основних вкладок також є підміню, в яких вже можна отримати доступ до конкретних налаштувань. Праворуч розташовані дві кнопки. Одна відповідає за виклик довідки (спливаючі вікна повинні бути дозволені), друга дозволяє згорнути систему меню, щоб збільшити корисну площу вікна.

Про деякі налаштуваннях у вкладці Система сказано вище. Тут також можна активувати і налаштувати вбудований DHCP сервер, створити групи і вказати їм права. Група до якої належить користувач задається при створенні облікового запису, після групу легко змінити. Користувач може бути членом тільки однієї групи. В інших підміню знаходяться пункти, що дозволяють завантажити модуль, знайти обладнання, завершити роботу системи, оновити пакети, зробити резервування (необхідно вибрати резервуються параметри) і відновлення системи. Файл з ім'ям elastixbackup-дата * містить резервну копію поміщається в каталог / var / www / html / backup.

Редагування права групи

У вкладці PBX знаходиться все пов'язане з налаштуваннями Asterisk. Тут же знаходиться доступ до CLI Asterisk, меню редагування конфігураційних файлів, панель оператора, доступ до голосової пошти і записаним повідомленнями. У підміню "Endpoint Configuration" можна проаналізувати зазначений діапазон IP-адрес і отримати список абонентів із зазначенням їх номерів, адрес і типів телефонів. Можливість проведення конференції за замовчуванням відключена, для її активації і настройки слід перейти в підміню Conference.

Можливість проведення конференції за замовчуванням відключена, для її активації і настройки слід перейти в підміню Conference

Налаштування SIP аккаунта

Налаштування віртуальних факсів виробляються в меню Факс. Тут же вказується електронна адреса, на який будуть надсилатися повідомлення про отримання нового факсу, реалізований пошук по прийнятим повідомленнями. Зайшовши в Template Email слід встановити шаблон повідомлення використовуваного при відправці факсу. У попередніх версіях адміністратор повинен був вручну заносити інформацію про дозволені клієнтів в файл /var/spool/hylafax/etc/hosts.hfaxd для HylaFax. Тепер для цього достатньо вибрати підміню Факс-клієнти. До речі серед документації на сайті проекту є три видеоурока показують як налаштувати HylaFax і відправити повідомлення з комп'ютера клієнта. Правда показана стара версія Elastix і пояснення даються англійською, але людині вперше зіткнувся з подібним завданням вони будуть безсумнівно корисними.

Налаштування поштового сервера, облікових записів і перенаправлення пошти виробляються в меню Email. Тут же знаходиться підменю для доступу до RoundCubeMail.

Аналогічно всі налаштування OpenFire зібрані в меню IM. За замовчуванням цей сервіс неактивний. Після натискання на посилання запуститься майстер настройки сервісу і надалі робота з OpenFire стандартна.

Меню Звіти повністю відповідає своїй назві. Тут можна дізнатися статистику дзвінків і використання каналів. Підміню Биллинг містить додаткові пункти в яких вказуються тарифні плани та різноманітні звіти.

І, нарешті, в меню Додатково знаходяться підменю для доступу до SugarCRM, VTigerCRM і платформі для роботи з картками. У підміню Завантаження розробники зібрали посилання на протестовані і рекомендовані для використання спільно з Elastix додатки (софтфони, IM-клієнти і факс-утиліти).

З огляду на, що велика частина сервісів вже працюють після установки і нічого підганяти не треба, можна відразу приступати до настроювань. Економія часу очевидна. Якщо адміністратор подає кінцевий результат, то швидко знайде в Elastix всі потрібні функції. Щоб познайомитися з основними можливостями і настройками Elastix вистачить і однієї години. Зручний і зрозумілий інтерфейс дозволяє перекласти частину функцій з управління сервером (наприклад, обліковими записами користувачів) на не підготовлена ​​персонал.

Новости