Шаблоны интеграции | Документация для разработчиков
Модели интеграции
Обновлено: 25 февраля 2026 г
Возможные подходы высокого уровня
| Подход | Настройка номеров | Обязанности поставщика бизнес-решений | Обязанности поставщика услуг телефонной связи | Завершение выполнения деловых обязанностей |
|---|---|---|---|---|
|
BSP сообщений, способный вызывать |
Существующий номер для сообщений продлен для звонков или присвоения нового номера |
BSP для обмена сообщениями повторно использует свое приложение и подписывает его на веб-хуки вызовов. Создание нового приложения, предназначенного специально для вызовов, также работает, но не рекомендуется.Обработка веб-хуков вызовов и координация с инфраструктурой мультимедиа в реальном времени.Выполнение вызовов Graph API, связанных с вызовами, аналогично вызовам Graph API для обмена сообщениями. |
Неприменимо, поскольку в деле участвует только один партнер. |
Включите и используйте звонки.Продолжайте оплачивать счет через BSP, в котором теперь есть пункты, связанные с использованием звонков. |
|
Единый номер, управляемый независимо как системой обмена сообщениями (BSP), так и системой связи (BSP/TP) для вызывающих абонентов |
BSP в обмене сообщениями не вносит никаких изменений |
Обращение к хостинг-провайдерам BSP/TP через их собственный веб-сайт, указывающее на их собственное приложение,приводит к тому, что конечные клиенты обращаются через их хостинг-провайдеров. |
При подключении используйте ES партнера по вызову.Оплачивайте счета поставщику услуг обмена сообщениями (Messaging BSP) как и раньше.За операции, понесенные партнером по вызову, оплачивайте счет партнеру по вызову, если он является поставщиком услуг обмена сообщениями, или Meta, если он не является поставщиком услуг обмена сообщениями. | |
|
Эксклюзивный звонок от независимого поставщика программного обеспечения |
Новый номер для звонков |
Неприменимо, поскольку отсутствует BSP для обмена сообщениями |
Обращение к хостинг-провайдеру программного обеспечения (ISV) и размещение на его веб-сайте встроенной системы регистрации (Embedded Signup, ES) со ссылкой на собственное приложениеприводит к тому, что конечный бизнес использует их ES. Если ISV является поставщиком технологий или партнером, Meta выставляет счета конечному бизнесу напрямую. ISV и конечный бизнес самостоятельно определяют порядок выставления счетов.Если ISV является поставщиком бизнес-услуг (BSP), он может предоставить конечным компаниям свою кредитную линию. |
Внедрение через ES в TP.Если ISV является поставщиком технологий или партнером, оплачивайте Meta напрямую. Для этого конечным компаниям необходимо иметь прямые платежные отношения с Meta. Настройка этих отношений может занять несколько недель.Если ISV является BSP, оплачивайте счет через BSP. |
|
Многоплатформенное решение с использованием Calling ISV, зарегистрированного в качестве поставщика технологических решений (TP). |
Новый номер, предназначенный исключительно для звонков, обслуживается (только) компанией Calling TP. |
BSP и TP работают вместе над созданием/утверждением многопартнерского решения. У BSP и TP есть собственные приложениядля обмена сообщениями, звонков, коммерческих отношений снезависимыми поставщиками программного обеспеченияМожно получать сообщения или звонки, но нельзя отправлять сообщения или звонки, поскольку в многоплатформенном решении можно выбрать только одного из двух партнеров для отправки сообщений/звонков. |
BSP и TP работают вместе над созданием/утверждением многопартнерского решения. У BSP и TP есть собственные приложения:обмен сообщениями, звонки, коммерческие отношения с независимыми поставщиками программного обеспечения, подключениеконечных клиентов с использованием ES, указывающих на созданное решение,отправка/получение сообщений или звонков. |
При посадке с использованием ES на TPBiz получает информацию о TP в ES.Оплачивает счет через BSP. |
Многовариантные диалоги (MSC)
Функция многоканальных диалогов позволяет использовать несколько решений на одном телефонном номере, локализуя обмен сообщениями и звонки в рамках одного чата.
Интеграция с использованием стороннего поставщика услуг связи: детальный дизайн
Следующая логическая архитектура иллюстрирует, как интегрировать функцию звонков WhatsApp Business с использованием стороннего поставщика услуг звонков (3P).
В этом сценарии вы будете использовать стороннего поставщика в фоновом режиме, и этот сторонний поставщик будет невидим для Meta. Эта схема аналогична любой другой SaaS-службе, которую вы можете использовать.
На диаграмме также показано, как эту архитектуру можно дополнительно расширить для интеграции с SIP-инфраструктурой на вашей стороне.
В соответствии с нашими условиями, использование телефонной сети общего пользования (PSTN) запрещено на любом этапе разговора через WhatsApp.
Даже если вы подключаете звонки WA к сети SIP, необходимо убедиться, что они по-прежнему осуществляются исключительно через VoIP и никогда не затрагивают телефонную сеть общего пользования (PSTN). Использование SIP-транка само по себе не запрещено, поскольку технически SIP-транк можно использовать вообще без подключения к PSTN.
(Щелкните правой кнопкой мыши по изображению и выберите «Открыть в новой вкладке», чтобы увеличить его)Одно приложение против нескольких приложений
В этом разделе рассматриваются рекомендации и соображения относительно повторного использования существующего приложения для обмена сообщениями для совершения звонков по сравнению с созданием нового приложения специально для функций API звонков.
Для интеграции с API звонков WhatsApp необходимо вызывать конечные точки Graph API и обрабатывать веб-хуки из Meta. Для этого требуется приложение, и почти всегда у вас уже должно быть приложение, используемое для обмена сообщениями.
Короче говоря, вы можете повторно использовать существующее приложение, которое применяется для встроенной регистрации и для обмена сообщениями.
Повторное использование одного и того же приложения дает следующие преимущества:
Снижение операционных издержек (например, проверка приложений, текущее техническое обслуживание)Упрощенный размер страниц на MetaСовпадение характеристик приложения, используемого для встроенной регистрации, и приложения, используемого для вызова Graph API и получения веб-хуковПовторное использование этого приложения для звонков никак не повлияет на существующую функциональность. Вам просто нужно убедиться, что сервер веб-хуков способен корректно обрабатывать веб-хуки, связанные с «звонками».
Поддержка использования отдельных приложений по-прежнему сохраняется; Часто задаваемые вопросы по началу работы подробности
Рекомендации по интеграции медиапотоков
Стек VoIP-звонков WhatsApp Business Calling разработан для совместимости с WebRTC. Однако для обеспечения бесперебойной интеграции с протоколом WhatsApp компания Meta ограничивает поддерживаемые функции. В результате применяются следующие требования и рекомендации.
Обязательные требования
Если какое-либо из обязательных требований не будет выполнено, вызов завершится неудачей. Эта неудача может произойти либо на этапе сигнализации вызова, что приведет к отклонению вызова, либо на этапе декодирования медиапакетов.
Используйте только аудиокодек Opus.Установите тактовую частоту мультимедиа на 48 кГц.Установите частоту тактирования DTMF на 8 кГц.Используйте значение ptime равный 20 мс.Для передачи аудиоданных необходимо использовать один SSRC. Сервер ретрансляции Meta перезаписывает SSRC всех бизнес-аудиопакетов на фиксированный SSRC до того, как эти пакеты достигнут клиента WA. Клиенты WA обрабатывают только один источник звука от своих партнеров. Использование нескольких SSRC приводит к неопределенному поведению. Это включает в себя серьезное повреждение медиафайлов, сбои звука и, вероятно, полный отказ передачи медиафайлов.
Рекомендации
Хотя перечисленные ниже аспекты не являются обязательными, их рекомендуется соблюдать для обеспечения высокого качества и надежности связи.
Процесс ICEНаш стек VoIP — ICE-LITE, поэтому рекомендуется, чтобы стек VoIP поставщиков услуг связи (BSP) был ICE-FULL. (RFC 5245, раздел)2.7Стек VoIP поставщиков баз данных должен инициировать процесс ICE, отправляя проверки подключения STUN.VoIP-стек BSP должен взять на себя роль ICE CONTROLLING, поскольку Meta будет брать на себя только роль CONTROLLED.кандидатов вместо агрессивного. (RFC 5245 Раздел 8.1.1.2)выдвижениеДождитесь завершения процесса ICE, прежде чем выдвигать кандидатуру и запускать DTLS.Не меняйте кандидата в середине разговора.ДТЛСДля предотвращения фрагментации пакетов во время передачи используйте ключи ECDH для сертификатов DTLS.BSP должен выступать в качестве DTLS-клиента. (RFC 6347, раздел)4.2Решение проблемы искажения звукаЗадержите воспроизведение звука с SIP-соединения до тех пор, пока не будет установлено медиасоединение с Meta.Интеграция с API предварительного подтверждения поможет уменьшить искажения звука в звонках, инициированных пользователем.