PBX

Довольно долго мы откладывали реализацию графического конструктора для настройки маршрутизации вызовов. Лично я всегда считал, что наша платформа для разработчиков, которые будут знать, что такое JSON и править код проще, чем перетягивать кубики. Но, пользователи требуют кубики.

И вот они, кубики:

Почти в каждом внедрение Webitel мы настраиваем создание Активности или Лида в bpm’online при звонке в нерабочее время. Сегодня я решил описать простой механизм создания Лида с помощью веб-службы DataService. Что бы было интересней, мы воспользуемся средствами преобразования текста в голос и распознавания голоса в webitel. Приступаем к реализации!

В справочнике Тип потребности bpm’online я создам новую запись с названием Заказ обратного звонка:

А в справочнике Каналы Лида добавлю наш номер, что бы было легче идентифицировать на какой номер звонил клиент:

Теперь перейдем к настройкам маршрутизации в webitel. Наша схема состоит из нескольких блоков.

Не так давно наша компания начала активно использовать Slack в качестве внутреннего корпоративного чата. Одним из больших преимуществ данного приложения (как и в webitel) – множество механизмов для веб-интеграций. Сегодня рассмотрим пример уведомления пользователей о пропущенных звонках.

Первое, что необходимо сделать – настроить входящий WebHook:

Настройте изображением, название и скопируйте сгенерированный входящий URL.

Дальше, в public маршрутизации нашего городского номера на событие OnDisconnect добавляем:

Очень сильно раздражает, если для поиск нужного звонка в статистике любой АТС нужно ждать десятки секунд, а то и минуты. А теперь представьте, что Вы постоянно работаете со статистикой… Каждый поиск, каждый новый фильтр – потерянные минуты, которые собираются в часы 🙁 Вы можете увеличить вычислительные ресурсы сервера, можно удалить старые записи… А можно перейти на полнотекстовый поиск. Вот это последние мы и решили испытать в ожидающем нас новом релизе webitel.

Те, кто пользовался админкой в webitel 3.0 или 3.1, очень хорошо помнят ее ограничения при работе со статистикой – только фильтры по дате. Я сам неоднократно не мог найти нужный мне звонок:

Старая статистика звонков

В релизе 3.2 мы презентовали новый Webitel WebClient, который обзавелся не только новым видом, но и новым конструктором фильтров:

Конструктор фильтров

Вчера мы закончили основные работы с перехода на новую версию webitel. Лично для меня, самым долгожданным был новый WebClient (Игорь, привет!). Описание других новшеств Вы сможете прочитать на этой странице: тыц!

Несколько дней назад возникла необходимость объединить пользователей bpm’online клиента с его офисной АТС Avaya IP Office 500.

Схема объединения

Для начала я разделил внутренние номера так, что пользователи bpm’online будут иметь номера на 2хх, а телефоны за Avaya – 1хх. Поскольку webitel находится в облаке, а IPO в локальной сети клиента, необходимо наличие статического IP адреса на маршрутизаторе, а так же, сделать проброс SIP и RTP портов. Здесь все зависит от конкретной модели интернет роутера.

Наша задача – разрешить пользователям звонить между собой по внутренним номерам, а пользователям bpm’online – выходить в мир через городские линий IPO. Рассмотрим настройки Avaya и Webitel в отдельности.

Недавно я рассказывал о нашем опыте подружить webitel с elasticsearch. И вот мы запустили в тестовом режиме сервис аналитики по звонкам для всех пользователей webitel on-demand. В основе все та же связка elasticsearch и kibana. Сегодня я хочу более подробней рассказать, что это такое.

Пройдя авторизацию (все данные можете запросить у поддержки), для Вас открывается простой Dashboard:

Dashboard

Вся статистика webitel хранится в хранилище MongoDB в виде JSON файлов с детальным описанием всего маршрута звонка и переменных канала. Но, до сегодня было довольно сложно быстро построить отчет (либо график) по истории звонков. И мы начали поиск решения… Но, решение оказалось ближе, чем мы предполагали 🙂

Уже несколько последних месяцев для сбора и анализа логов я использую связку Elasticsearch+Logstash+Kibana, которая успешно справляется с поставленной задачей. Возникла идея, что если синхронизировать MongoDB с Elasticsearch и с помощью Kibana строить отчеты. Так и решили сделать!