integration

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

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

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

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

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

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

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

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

Время от времени возникает вопрос — как быстро получить информацию пропущенном или переведенном звонке, когда я не в офисе? Раньше я предлагал отправлять SMS сообщение, но сейчас с этой задачей прекрасно справляются Push-уведомления. Давайте посмотрим, как это работает в webitel.

В качестве клиентского приложения для получения Push я использую универсальный клиент Pushover, который доступен для всех мобильных платформ. После регистрации и установки приложения, вы должны получить User Key.

Создаем свое приложение и получаем Token Key.

User Key и Token Key будут нам нужен для отправки сообщений.

А дальше, все элементарно просто — воспользуемся приложением httpRequest для отправки сообщений из ACR маршрутизации. К примеру, я уже по номеру телефона из bpm’online получил имя клиента и теперь могу отправить себе эту информацию на телефон:

{
        "httpRequest": {
            "url": "https://api.pushover.net/1/messages.json",
            "method": "POST",
            "headers": {
                "Content-Type": "application/x-www-form-urlencoded"
            },
            "data": {
                "html": 1,
                "user": "hGvdrtgFDvsgtrfBBFgvfff",
                "token": "HGGtyteg66gbGFfggtdgbgG",
                "message": "<font color=blue>входящий звонок от </font> <b>${effective_caller_id_name}</b> с ${caller_id_number}"
            }
        }
    }

Если звонок переводят мне на мобильный, то я получаю вот такие уведомления, еще до того, как звонок поступить ко мне через GSM сеть:

В своих старых вебинарах я рассказывал о реализации функции “звонк на ответственного” через разработку дополнительного web-сервиса без авторизации в bpm’online. Данный сервис позволяет определить контакта по номеру телефона, найти внутренний номер сотрудника, закрепленного за этим контактом и направить звонок непосредственно на него. Только если он не ответил на протяжение n-секунд, отправить по общему правилу.

В представленной мною реализации было несколько проблем:

  1. Сервис без авторизации, а значит, к нему легко получить доступ. Ничего, кроме внутреннего номера ответственного по заданному номеру клиента не увидят. Но, это все же не безопасный метод.
  2. Есть основание полагать, что после очередного обновления bpm’online, этот сервис перестанет работать и нужна будет повторная его установка.

В документации по разработке bpm’online 7.8 появилось описание интеграции с помощью веб-службы DataService. Как уверяют меня коллеги, этот функционал был давно, но, описание появилось только начиная с 7.8 🙂 Вот на него и будем переводить нашу функцию “Звонок на ответственного”.

Для реализации поставленной задачи, нужна сборка ACR от 27.06.2016 или старше (начиная с релиза webitel v3.3.0), где была добавлена функция реверса строки и работы с Cookie. Так же, нам понадобиться логин и пароль пользователя bpm’online, у которого есть доступ на чтение в разделе Контакты.

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

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

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

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

Планирую во вторник (20.11.2012) провести вебинар, на котором расскажу о функциональных возможностях нашего нового продукта Terrasoft Webitel CallManager. Если Вам интересно, что он из себя представляет — регистрируйтесь на вебинар. Так же, можете задавать вопросы в комментариях к данному посту.

Неоднократно приходись делать объединение офисной АТС на базе Asterisk с call-центром Oktell или просто интегрировать два номерных плана удаленных офисов на Oktell IP PBX и Asterisk. В общем, нет ничего сложного, посмотрим как это все работает на простом примере.

У нас есть 2 офиса: в одном прекрасно работает Oktell IP PBX (номерной план 1хх и 2хх), а в другом со своей задачей отлично справляется Asterisk (номерной план 3хх и 4хх). У каждой из АТС имеются свои городские номера, только еще на Asterisk установлен GSM-шлюз. Каждая из АТС имеет белый внешний адрес (или VPN между офисами). Задача сделать прозрачное объединение двух номерных планов, что бы сотрудник не задумываясь набирал номер, а так же дать возможность сотрудникам за Oktell звонить через GSM-шлюз. Рассмотрим как это решается.