Як менеджер міні-АТС із GSM та записами розмов робив

Зроби сам

Сьогодні, в епоху високих технологій та бездоганного клієнтського сервісу, всім хочеться бути на рівні. Багато компаній незалежно від рангу і розміру постійно намагаються зробити спілкування з клієнтом зручнішим і приємнішим. У нашому інтернет-агентстві, керівником якого я і є однією з таких «приємностей» стало введення в експлуатацію невеликої міні-АТС на базі Openvox і Asterisk, зібраної своїми руками. Але давайте по порядку:

Вдосталь намучившись, одного прекрасного дня я сказав голосне «Досить!» і не менш гучне «Потрібно щось зробити!»

Підбір рішення

Вибір та купівля обладнання та софту

Іду до найближчого інтернет-магазину та кладу до кошика наступні товари:

  • GSM Шлюз OpenVox VoxStack VS-GW1202-4G -16 932 рублів;
  • База і 1 трубка Yealink W52P -4828 рублів;
  • Дві додаткові трубки Yealink W52H -3175 рублів.
Викреслюю три пункти зі списку обладнання, два спокійно можна дістати в будь-якому комп'ютерному магазині нашого містечка. Та й гарна нагода трохи прогулятися:
  • Як сервер: Неттоп DNS Porto 0166749 [Intel i5-3337U, 2x1800 МГц, 4096 Мб, HDD 500 Гб] -11 500 рублів;
  • Побутовий роутер Zyxel Keenetic 4G II -1500 рублів.
Разом: 37921 рубльЩо ж, дуже навіть добре, ще й на морозиво залишилося.Прим. авт.: Справа була восени 2014 року, тому ціни дещо нижчі, ніж зараз.

Отримання та збирання обладнання

OpenVox VoxStack VS-GW1202-4G

Шлюз є невеликим блоком (розміром зі стандартний DVD-привід) і платою, яка поміщається всередину. Дана модель шлюзу підтримує 4сім-карти, але може бути розширена до восьми шляхом покупки ще однієї плати, яка вставляється поряд. Шлюз підключається в локальну мережу звичайною кручений парою і в електричну за допомогою адаптера живлення.

База та трубки Yealink W52P
Неттоп DNS Porto 0166749

Збираємо все воєдино відповідно до затвердженої схеми та встановлюємо ОС Ubuntu:

Тепер все готове для переходу до найцікавішого кроку: налаштування нашого сервера.

Встановлення та налаштування

Тепер потрібно «подружити» OpenVox та Asterisk. Зробити це досить легко. Спочатку увійдемо до веб-GUI Asterisk (за замовчуванням: localhost :8088), введемо логін та пароль вказаний при встановленні. Не довго думаючи йдемо шляхом: Trunks -> VOIP Trunks -> New SIP/IAX Trunk та вказуємо наступні налаштування:

Name - придумаємо ім'я User Name -ім'я користувача, яке вигадали ранішеPassword -пароль, який вигадали ранішеRegistration – This gateway registers with the endpoint

SIP endpoints -> Add New SIp Endpoint" src="http://habrastorage.org/files/218/e69/e78/218e69e7869445e09be22abd88f0a61a.png" style="margin: 0px; padding: 0px; outline: 0px; max-width: 100%; color: rgb(0, 0, 0); font-family: Verdana, sans-serif; line-height: 22.3999996185303px;">

Ідемо в ADVANCED -> Asterisk CLI і пишемо sip show registry, при вдалому збігу обставин побачимо "1 SIP registrations", що означає, що все працює.

Тепер налаштуємо правила для вхідних та вихідних дзвінків у ROUTING -> Call Routing Rules -> New Call Routing Rule.

Routing Name - ім'я роуту (нехай буде "out-route") Call Comes in From - вибираємо транк Send Call Through - вибираємо портopenvox'a

Для вхідних дзвінків все налаштовується аналогічно, єдиний пункт який може викликати труднощі - це параметр Forward Number для правил, тут потрібно написати Extension на стороні asterisk на який йтиме дзвінок.

Продовжимо налаштування Asterisk GUI, створимо користувачів та правила для дзвінків, ось невеликий мануал, як це зробити: http://invoip.net/2011/11/vvedení-v-asterisk-gui/

Прикручуємо різного роду «свистелки»

Голосове вітання

Спочатку замислювалося, що клієнт, зателефонувавши до нас, чує голосове вітання, в якому повідомляється куди він потрапив. Сам запис вітання можна здійснити як самостійно, так і звернувшись до спеціалізованої компанії, де професійний диктор запише його своїм голосом, накладе музику та інші звукові ефекти. Вбиваємо в гугл «запис голосового вітання» і вибираємо те, що сподобалося. У середньому один запис коштує від 1000 до 5000 рублів. Запис ви отримаєте у форматі mp3, який не дуже охоче працює з Asterisk без танців із бубном. Перетворюємо файл на зручний для Asterisk формат:

Отриманий файл покладемо в папку «asterisk/sounds» і повернемося до редагування меню. Спочатку нам потрібно взяти трубку та програти вітання, після цього з'єднати з потрібним користувачем:

У «Background» переїдаємо шлях до файлу привітання (тільки ім'я файлу, без розширення). У «Dial» передаємо ідентифікатор користувача Asterisk, час у секундах, який потрібно для того, щоб програти привітання і два параметри «t» (дозволяє користувачеві перевести дзвінок) і «m» (програвати музику очікування). Про інші параметри "Dial" можна дізнатися тут.

Запис розмови

Після того, як запрацювало голосовевітання та редагування «extensions.conf» не викликає труднощів, прикрутимо запис розмов. Нехай всі записи складаються в директорії розбиті за роками, місяцями і днями, а в назві файлу запису присутня дата, час і номер телефону. Звучить складно? А робиться просто:

Трансфер, АВН, список контактів

Завершення робіт

Все зібравши, налаштувавши і перевіривши, я вдосталь насолодився виконаною роботою. Залишилося всі ці коробки і дроти, акуратно прибрати кудись з очей геть, наприклад у великий залізний ящик:

Пізніше з'ясувалося, що засовувати базу бездротових трубок у жерстяну коробку - не найкраща ідея, тому через пару днів винесли її назовні і приліпили збоку.

З моменту описаних подій минуло близько 4 місяців. За цей час незначні недоробки було усунуто і все працює чітко та без збоїв. Без урахування часу доставки залізниць на всю роботу пішло близько 5 днів. У результаті клієнти та менеджери задоволені, дзвінки пишуться, голосові вітання програються, музика в трубках звучить, рівень сервісу зростає. Всім дякую за увагу, сподіваюся, що моя розповідь була корисною та цікавою.