Интеграция функционала «Онлайн-звонок» с мобильного приложения
1. Описание
Интеграция функционала «Онлайн-звонок» с мобильным приложением производится с помощью Webitel Mobile SDK.
Webitel предоставляет набор библиотек, которые могут встраивать в мобильное приложение Заказчика. Библиотеки поддерживают функционал:
инициации исходящего вызова клиентом - клиент может позвонить в КЦ;
инициация исходящего чата клиентом - клиент может написать в чат.
Все исходящие звонки/чаты пользователей мобильного приложения попадают в отдельную схему маршрутизации для постановки в очередь ожидания. Больше о схемах можно посмотреть здесь.
В звонке возможно следующее:
удержание звонка;
отключить/включить микрофон;
включить/отключить громкую связь;
отправить DTMF.
В чате возможно следующее:
отправить/получить текстовое сообщение;
отправить/получить медиа-файл;
посмотреть историю сообщений.
Исполнитель предоставляет исходный код Mobile SDK и описание примера использования - webitel_portal_sdk.docx
2. Webitel Mobile SDK
Программируемый Webitel Mobile SDK упрощает добавление чата и голосовых вызовов по IP (VoIP) в ваше приложение. SDK позволяет совершать и принимать звонки, отправлять и получать текстовые и мультимедийные сообщения.
Для работы с этой библиотекой понадобится устройство Android с уровнем Android API 24, или более поздней версии.
Пример программы для интеграции и тестирования:
https://github.com/webitel/mobile-demo-app
Для установки необходимо:
Добавить SDK в свое приложение;
Настроить push-уведомления;
Настроить сервер Webitel.
2.1. Добавление SDK в свое приложение
Добавьте репозиторий JitPack в файл сборки.
Добавьте его в свой корневой build.gradle
в конце репозитория:
allprojects {
repositories {
maven { url "https://jitpack.io" }
}
}
Добавьте зависимость:
dependencies {
implementation 'com.github.webitel:mobile-sdk:0.2.4'
}
Включите разрешения микрофона.
Вам необходимо убедиться, что ваше приложение запрашивает разрешения для доступа к микрофону во время выполнения. Для этого выполните следующие два шага:
а) Добавьте следующее в файл Android Manifest :
<uses-permission
android:name="android.permission.RECORD_AUDIO"/>
б) Запросите разрешения микрофона из кода вашего приложения:
2.2. Настройка push-уведомления
Добавьте Firebase в свой проект Android:
https://firebase.google.com/docs/android/setup
Настройка клиентского приложения Firebase Cloud Messaging на Android:
https://firebase.google.com/docs/cloud-messaging/android/client
2.3. Настроить сервер Webitel
2.3.1. Webitel Mobile SDK
2.3.2. Начало работы
Для получения точки входа в SDK:
Следующий шаг - авторизация пользователя:
// iss
- идентификатор отправителя ответа. Значение iss
— это URL-адрес с учетом регистра, использующий схему https, которая содержит компоненты схемы, хоста и, при необходимости, номера порта и пути, а не компоненты запроса или фрагмента.
// sub
-идентификатор субъекта. Локально уникальный и никогда не переназначаемый идентификатор внутри эмитента для конечного пользователя, который предназначен для использования клиентом, например 24400320 или AItOawmwtWwcT0k51BayewNvutrJUqsvl6qs7A4. Его длина НЕ ДОЛЖНА превышать 255 символов ASCII. Подзначение представляет собой строку, чувствительную к регистру.
// name
- полное имя конечного пользователя в отображаемой форме, включая все части имени, возможно, включая заголовки и суффиксы, упорядоченные в соответствии с языковыми стандартами и предпочтениями конечного пользователя.
Создание нового исходящего звонка:
Отправление текстового сообщения:
Получить историю диалогов: