Author: Vitaly Kovalyshyn

IT-SFERA and Webitel
Managing Partner

Web: kovalyshyn.pp.ua

На самом деле мы собираемся на забеги не для того, чтобы посоревноваться и выиграть друг у друга. А для того, чтобы бежать вместе.

Ось уже місяць як я бігаю. Разом із преміум підпискою в Runtastic я розпочав тренувальний план — 50 хв за 6 тижнів. Разом із першими перемогами прийшли і перші проблеми. У кросівки, цілком не призначених для бугу, провалилась п’ятка від моєї надмірної ваги та неправильної техніки. З’явився біль у колінах. Разом із новими книгами, такими як «Бег с Лидьярдом», «Бегай быстро и без травм» чи «Ультра. Как изменить свою жизнь в 40 лет и стать одним из лучших атлетов планеты» — прийшло перше розуміння необхідних змін. Вибрав та придбав свої перші бігові кросівки, розпочав читати про пульсові зони та шукати хороший пульсометр, проконсультувався із лікарем відносну болю в колінах…

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

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

Откровенно говоря, мне кажется, что сила воли (ее отсутствие или наличие) вообще не имеет никакого отношения к моим ежедневным пробежкам. Думаю, все эти годы я бегаю по одной-единственной причине: бег мне подходит. Ну, или, во всяком случае, он меня не напрягает. Людям свойственно продолжать делать то, что им нравится, и бросать то, что не нравится.

Я ніколи не любив бігати. У восьмому класі середньої школи я почав займатися важкою атлетикою. Мені подобалось тренуватись, їздити на змагання, займати місця та виконувати розряди. Проте, я терпіти не міг біг у тренувальному плані, а він був! Доводилось, поки тренер не слідкує, пропускати коло-друге, халявити… І так тривало до вищої школи — там я теж не бігав 🙂 Більше того, якщо потрібно було пробігти 3 км у лісі, я радше би «захворів» чи пішов у наряд на кухню, але тільки б не біг!


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

Більше того, нам запропонували принести до них в офіс медіаконверот, щоб перевірити, чи він часом не збоїть, і наше питання буде розглянуто протягом 3-х робочих днів. Хоча, мені було достатньо підійти до будинку, де знаходилася та клята коробка і за кілька хвилин дізнатися, що представники УарНет самі усе відключили і звільнили приміщення, як цього і вимагав новий власник.

У мене виникють закономірні запитання: навіщо перевіряти наш медіаконверот? на що чекати 3 дні, якщо і так зрозуміло в чім проблема? Підрозділи провайдера №1 в Західній Україні не координують свою роботу? Так давайте ми Вам CRM впровадимо! 🙂

PS: ми не прив’язані до приміщення, усі сервіси в хмарі, працівники можуть виконувати свою роботу з дому. Проте, таке ставлення до клієнтів обурює, коли технічна підтримка провайдера кидає трубку і нічого не хоче пояснювати.

PPS: Пострадали лише сайти УГКЦ (як і в минулорічній ситуації). Довелось допомогти і терміново винести усе в Європейський ДатаЦентр.

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

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

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

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

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

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

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

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

В статье переводим bpm’online на HTTPS я описал процесс перевода сайта приложения на использование безопасного протокола https. Но, не так давно, центр сертификации StartCom был заблокирован основными браузерами и больше не считается надежным. Не спешите покупать платный сертификат, в этой статье я опишу, как бесплатно получить надежный сертификат и забыть о проблеме раз и на долго 🙂

Let’s Encrypt — это OpenSource центр сертификации, который предоставляет API для получения бесплатных сертификатов на 90 дней. Вам не нужно заходить на сайт, регистрироваться, покупать сертификаты. Достаточно выполнить один запрос и настроить автоматическое обновление. В официальной документации весь процесс автоматизирован для Linux\Unix платформ и в будущей версии webitel Вы найдете инструменты для получения и продления сертификатов.

Как быть с Windows? Я нашел несколько утилит, но одна мне особенно понравилась своей простотой — letsencrypt-win-simple. Все, что Вам нужно — это скачать архив с последней версией, распаковать его и запустить в консоли PowerShell утилиту:

LetsEncrypt

Вам будет предложено только 2 действия: ввести свой email и выбрать сайт для установки нового сертификата из списка доступных сайтов. Утилита автоматически сгенерирует сертификат и установит его на выбранном вами сайте:

Перезапускаем приложение и проверяем наш сайт:

 

  1. Setup FreeSWITCH
    1. Install FreeSWITCH with mod_verto.
    2. Setup mod_verto
    3. For screen sharing, please, add new extension in the default context:
      <extension name="screen_sharing">
            <condition field="destination_number" expression="^(\d )-screen$">
              <action application="set" data="effective_caller_id_number=${caller_id_number}-screen"/>
              <action application="transfer" data="$1 XML default"/>
            </condition>
          </extension>
      
  2. Install chrome Application and Extension.
  3. Setup Your login, password and WebSocket Uri:
  4. Make a call:

Сегодня уже никого не удивишь функцией синтеза речи в различных приложениях. Вот и webitel мы решили научить говорить в новом релизе.

Тестировали и выбирали из нескольких поставщиков услуги Text-To-Speech. Основные требование — качество синтеза речи и наличие основных языков. Очень понравился облачный сервис IVONA, он и стал первым кандидатом на реализацию. Так же, мы добавили поддержку Microsoft Bing Text To Speech.

Протестировать в живую, что у нас получилось, можете на нашем IVR. Набирайте любой наш номер (есть на сайте), услышите приветствие и голосовое — нажамайте 9, там вас ждет IVONA.