Интеграция Vonage (Nexmo) SDK для звонков в мобильном приложении

Интеграция Vonage (Nexmo) SDK для связи в мобильном приложении Мы часто сталкиваемся с ситуацией: клиент уже использует Twilio, но ищет альтернативу с лучшим покрытием в Европе или более гибкими условиями. Или — MVP нужно запустить с голосовыми звонками, а бюджет не позволяет Video API. Vonage (р

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1734 услуг
Интеграция Vonage (Nexmo) SDK для звонков в мобильном приложении
Сложный
~3-5 дней

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    894
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    597

Интеграция Vonage (Nexmo) SDK для связи в мобильном приложении

Мы часто сталкиваемся с ситуацией: клиент уже использует Twilio, но ищет альтернативу с лучшим покрытием в Европе или более гибкими условиями. Или — MVP нужно запустить с голосовыми звонками, а бюджет не позволяет Video API. Vonage (ранее Nexmo, после поглощения Ericsson) — прямой конкурент Twilio, но с рядом нюансов. Разберём, как мы подключаем Vonage Client SDK и Video API, с какими граблями сталкивались и что важно учесть.

Vonage предоставляет несколько независимых SDK для мобильных приложений: Vonage Client SDK для In-App Voice и Messaging, Vonage Video API (ex-TokBox OpenTok) для видео, и отдельные REST API для SMS/WhatsApp. Важно не путать эти продукты — они имеют разный биллинг, разные SDK и разную документацию. Ошибка выбора SDK — одна из частых проблем на старте.

Как настроить push-уведомления для входящих звонков?

Без push входящий звонок не дойдёт, если приложение свёрнуто. Для iOS используем VoIP PushKit, для Android — FCM (Firebase Cloud Messaging). Настройка требует:

  1. Загрузить сертификат APNs (или ключ) в Vonage Dashboard.
  2. Указать FCM-ключ для Android.
  3. В SDK включить соответствующий delivery channel при логине.
// Android: включить push-уведомления val config = VGClientConfig() config.pushConfig = VGPushConfig.Builder(context) .setChannel(VGPushConfig.Channel.FCM) .build() 

После этого входящие звонки будут приходить даже в убитом состоянии, а система сама покажет native call UI (на iOS — CallKit, на Android — вызов по Notification).

Vonage Client SDK: голосовые звонки

Vonage Client SDK для голоса построен поверх WebRTC, но предоставляет высокоуровневый API с JWT-аутентификацией и интеграцией с Vonage Voice API.

JWT генерация на бэкенде — ключевой момент. Vonage использует RSA-подпись JWT, а не HMAC. Приватный ключ генерируется при создании Vonage Application в Dashboard — это .key файл, который нужно хранить на сервере, не в мобильном приложении.

import jwt, time payload = { "application_id": VONAGE_APP_ID, "iat": int(time.time()), "exp": int(time.time()) + 3600, "sub": user_id, "acl": { "paths": { "/*/users/**": {}, "/*/conversations/**": {}, "/*/legs/**": {} } } } token = jwt.encode(payload, private_key, algorithm="RS256") 

Пример инициализации на Android:

// build.gradle implementation 'com.vonage:client-sdk-android:8.x.x' // Инициализация val client = VonageClient.Builder(context) .build() client.setConnectionListener { connectionStatus, connectionStatusReason -> // CONNECTED, DISCONNECTED, etc. } // Логин с JWT client.login(jwt) { loginResult -> when (loginResult) { is LoginResult.Success -> { /* готов к звонкам */ } is LoginResult.Failure -> { /* обработать ошибку */ } } } 

Почему Vonage Client SDK сложнее Twilio?

Основной практический недостаток — документация. client-sdk-android версии 7.x и 8.x имеют несовместимые API, а migration guide неполный. Несколько раз приходилось разбирать changelog SDK, чтобы понять, почему коллбэки перестали вызываться после обновления зависимости. У Twilio с этим лучше: примеры актуальны, breaking changes — редкость. Но Vonage выигрывает в цене на европейских номерах и в гибкости лицензирования Video API.

Vonage Video API (OpenTok)

Если задача — видеозвонки или видеоконференции, Vonage Video API (OpenTok) — отдельный продукт с более богатой функциональностью: экранный шаринг, запись, broadcast, сигнализация через встроенные каналы.

// Android OpenTok SDK implementation 'com.vonage:client-sdk-video:x.x.x' val session = Session.Builder(context, API_KEY, sessionId).build() session.setSessionListener(sessionListener) session.connect(token) val publisher = Publisher.Builder(context).build() session.publish(publisher) 

Сессия создаётся на сервере через REST API, клиент получает sessionId и token. Модель аналогична Twilio Video, но OpenTok существует дольше, поэтому стабильнее работает на слабых сетях.

Vonage SMS и WhatsApp Business

SMS через Vonage REST API — простейший сценарий, SDK не нужен:

POST https://rest.nexmo.com/sms/json api_key=xxx&api_secret=yyy&from=Vonage&to=79001234567&text=Hello 

WhatsApp Business через Vonage Messages API — требует одобренного шаблона от Meta для первого сообщения (outbound), любой ответ пользователя открывает 24-часовое окно для свободной переписки.

Сравнение с Twilio

Критерий Vonage Twilio
Зрелость iOS/Android SDK Достаточная, обновления реже Хорошая, активная поддержка
PSTN покрытие Сильное в Европе Сильное в США, хорошее глобально
Видео API OpenTok — зрелый продукт Twilio Video — активно развивается
Документация Хуже, чем у Twilio Одна из лучших в индустрии
Стоимость голоса Сопоставима с Twilio Сопоставима с Vonage

Vonage выигрывает в Европе по покрытию PSTN, но проигрывает в качестве документации. По нашим замерам, интеграция Client SDK на Android занимает на 20–30% дольше, чем аналогичная на Twilio, из-за необходимости разбираться в устаревших примерах.

Что входит в работу

Создаём и настраиваем Vonage Application, генерируем ключевую пару RSA, реализуем бэкенд для JWT, интегрируем Client SDK или Video API на Android/iOS, настраиваем push для входящих звонков, тестируем на реальных устройствах. Мы уже провели более 15 интеграций Vonage для клиентов из Европы и СНГ — все 5+ лет опыта с мобильными SDK.

Срок: 1–3 недели в зависимости от требуемого функционала (только звонки или полная коммуникационная платформа). Закажите интеграцию Vonage SDK — оценим ваш проект и предложим оптимальный стек.

Типичные ошибки при интеграции
  • Путаница между Client SDK и Video API — разный подход к аутентификации.
  • Использование HMAC вместо RSA для JWT — Vonage отвергает такие токены.
  • Хранение приватного ключа на клиенте — утечка приведёт к полной компрометации.
  • Неправильная настройка delivery channel для push — звонки не приходят в фоне.

Избежав этих граблей, вы сэкономите до двух дней на отладке. Если нужна помощь — свяжитесь с нами. Источник: Vonage Developer Documentation