Підключення IP-телефонів Akuvox до АТС Avaya без ліцензії на SIP

В наявності

Серверна разом з Avaya
Після деяких роздумів було обговорено таку схему:

Приступаємо
Перше, з чого варто почати – для реалізації цього завдання Avaya має бути ліцензія хоча б на один транк. Нехай навіть використана. Нам потрібна одна, щоб підчепити Asterisk. Далі зв'язком і транками (будь-якою їх кількістю) керуватиме він.
Беремо наш прекрасний дел і встановлюємо на нього Debian stable (благо не встигла померти клава, але навіть це не було б проблемою встановити систему попередньо на ПЗУ) через debootstrap (бо можемо і хочеться), далі збираємо Asterisk з вихідників і встановлюємо на нього FreePBX морду. (Ну-ну, все ж таки не тільки з консолі керувати залізом)
Розписувати повний процес установки я не буду, просто дам посилання на мануал використовуваний мною для підняття цього добра:
Зразкова схема виглядає так:
На кожну аналогову лінію піднімається відповідний екстеншень. (Так-так, секурність на висоті). Також створюємо користувача (для зручності у кожного екстеншона є користувач з таким же ім'ям, що не є обов'язково).

Далі йдемо до самої Avaya. Робимо з цього мануалу. Перевіряємо наявність ліцензій для транків.

Добре, вона ще й вічна!
Переходимо до розділу «Лінії»і створюємо нову лінію SIP.
У вкладці Лінія SIPВстановлюємо значення поля «Метод маршрутизації дзвінків» на значення URI запиту. За бажанням можемо заповнити поле «Доменне ім'я ITSP», куди можна вписати домен нашого asterisk, якщо такий є. У мене його немає, тож залишаю порожнім.
Вкладка «Облікові дані SIP»
Додаємо обліковий запис за даними екстеншена Asterisk

Вкладка «SIP URI»
Не торкаємося поля, де встановлено значення «Використовувати ім'я користувача з облікових даних». Вказати номери вхідної групи, що відповідають номеру екстеншена.
Вихідної групи – вигадуємо самі і робимо єдиною всім облікових записів тут.

Вкладка VoIPТут налаштовуємо кодеки і вказуємо стандарт DTMF. Рекомендую виставити в такій же градації, як встановлено в Asterisk. Або просто синхронізувати список.
Створимо діалплан для дзвінків.

Тепер створимо шорткат для дзвінків саме на цю лінію.
Ці настройки використовуються лише для зручності використання в Asterisk. Для клієнтів виключно SIP`ових на Asterisk будуть створені такі самі трицифрові номери. Для аналогів це буде маршрут N і всі виклики будуть йти до Asterisk незалежно від того, хто викликається. На Asterisk заводимо роути та всю логіку.

Але ж ми хочемо і приймати виклики з цієї лінії. Тому відкриваємо «Маршрут вхідних викликів» та створюємо новий. Що нам тут важливо — це два поля, «Ємність несучий» та «Ідентифікатор групи лінії» на вкладці «Стандартний» .
Івкладка «Пункти призначення»– вказати номер, який відповідає аналоговій лінії. На цьому контакті це номер 123. Але в маршрутах вказано як 1125. Тому що в нетрях аваї вже стоїть редирект з 125 на 123. Не хочеться чіпати усталені маршрути роботи співробітників. Тому робимо все максимально прозорим для них.

Ось ми і схрестили Avaya з Asterisk. Але поки що вона не повний FXS шлюз. Тому що ми з Asterisk не можемо дзвонити на інші транки Avaya. І ось тут зіткнулисяіз головною проблемою. Asterisk не може через IVR перевести виклик на потрібний нам транк. На цьому етапі було прийнято рішення зробити з Avaya «дурний» FXS шлюз, який займається лише аналоговими лініями. А всю магію віддати на долю Asterisk. Він ще й більш гнучкий. Це вимагає повного налаштування прозорої для користувачів міграції їхньої АТС на Asterisk. Для мене особисто це ще кілька днів роботи… Ех.
Налаштування бекапу нашого чудового сервера
Для бекапу використовувався вбудований пакет FreePBX для бекапу. Бекап лягає по ssh на Synology. Все за розкладом о 00.00 щотижня з огляду на те, що конфігурація сервера не змінюється часто після налаштування. У перші дні я робив бекапи майже щогодини. З радістю підняв би все в Docker`і на Synology, якби була на руках модель з x86. Або зовсім у нативному пакеті DSM. Але маємо те, що маємо.
Вибирати мені не довелося, працював із тими, які дали. Це моделі R50, R-53P, R-59P, EM53, EM63 від Akuvox. Телефони на тверду впевнену четвірку з плюсом, за що можна сміливо сказати спасибі. У всіх моделей Akuvox стандартно є два Ethernet порти (Internet\PC) і робота в режимі мосту або роутера. Моделі з індексом P мають PoE. Кому мало – повні специфікації українською можна подивитися тут.

R59P з підключеним модулем розширення на якому запущено тест LED індикаторів






Набір можливостей стандартний: індикатори BLF\BLFList, SRTP, локальна конференція, VPN (тільки OpenVPN через імпортування ovpn файлу, чим ми скористаємося), кількавіддалених книг (у тому числі Broadsoft), дистанційне керування, стягування конфіга та оновлення з сервера, інтеграція в LDAP.
Потішила можливість зміни дії клавіш. Наприклад, можна змінити дію клавіш "Ок" і "назад". Або стрілець.
українська мова є, але не в прошивці "з коробки". Переклад добротний, не китайський. Налаштування всього цього добра нижче.
ІМХО: R59P найкращий з наявних. Екран ч/б але не монохромний як R50/53.

Про модулі - просто екран з дод. кнопки. Скільки в ланцюжку їх можливо не вдалося з'ясувати, бо всього маю тільки 2. З двома точно працює. Якщо кнопок стане мало - є тристорінковий інтерфейс на кожному модулі. Ланцюжок підключення (кольоровий або ч/б модуль так само не важливий).
Полазивши по офіційному сайту було знайдено документацію. І в розділі support було знайдено документ AutoP.

Змінюємо на англ і йдемо в Upgrade>Advanced

Трохи нижче, у цьому меню є опція Export в підрозділі Others. Я спочатку його скачував і не міг зрозуміти, чому завантажується config.tgz. Не архів, а текстовий файл, але зашифрований. Благо все наважилося.
Конфігураційний файл має синтаксис:
Залежно від параметра, значення може бути числовим або текстовим. Все просто та зрозуміло.
Замість ув'язнення
Якщо буде ажіотаж, напишу повний мануал з перенесення та налаштування всього цього добра в Asterisk. З фіч, які можуть сподобається - можна винести весь IVR в google.voice. Вітання, промови і т.д. генеруватимуться в ріалтаймі, тобто, без записаних звукових файлів.
Хардкорна конфа за С++. Ми запрошуємо лише профі.