Перейти к основному содержимому

Руководство по настройке SIP — звонки WhatsApp Business | Документация для разработчиков

Руководство по настройке SIP — звонки через WhatsApp Business

Обновлено: 15 декабря 2025 г
При включении SIP вы не можете использовать связанные с вызовами конечные точки Graph API , и связанные с вызовами веб-хуки не отправляются.

Обзор

Протокол инициации сеанса (SIP)— это протокол сигнализации, используемый для инициирования, поддержания, изменения и завершения сеансов связи в реальном времени между двумя или более конечными точками.
API для бизнес-звонков WhatsApp поддерживает использование SIP в качестве протокола сигнализации вместо наших конечных точек Graph API и вебхуков.

Прежде чем начать

Прежде чем приступить к сигнализации SIP-вызовов, подтвердите следующее:
Вы соответствуете общим предварительным требованиям для работы по специальности.Ваше приложение имеет права на отправку сообщений с корпоративного телефонного номера, для которого вы хотите включить SIP. Проверьте это, отправляя и получая сообщения с помощью конечных точек обмена сообщениями Graph API, а затем используйте то же приложение для настройки SIP-сервера на рабочем телефонном номере для совершения звонков.Для подтверждения используйте API состояния здоровья с идентификатором PHONE_NUMBER_ID.Режим работы вашего приложения — «Рабочий», а не «Разработка».У вас есть соответствующий стандартам сторонний SIP-сервер, поддерживающий TLS и дайджест-аутентификацию.
Дополнительные сведения см. в разделе «Возможные настройки сигнализации и мультимедиа».

Схемы вызовов с использованием SIP

Прежде чем начать, убедитесь, что вы включили и настроили SIP для номера телефона компании. Meta генерирует уникальный пароль пользователя SIP для каждой комбинации номера телефона компании и приложения. Вам понадобится эта информация, и вы можете получить ее, используя конечную точку getCall Settings.

Безопасность

Для SIP-протокола обязателен протокол TLS. Meta предоставит действительный сертификат сервера с именем субъекта, охватывающим наш SIP-домен wa.meta.vc. Ваш SIP-сервер должен сделать то же самое, поскольку Meta гарантирует действительность вашего сертификата и то, что имя субъекта охватывает SIP-домен, настроенный вами для бизнес-телефонного номера Meta НЕ поддерживает взаимный TLS (также известный как mTLS). Это означает, что когда Meta берет на себя роль TLS-клиента, ваш TLS-сервер не должен запрашивать клиентский сертификат. Если вы все же запросите клиентский сертификат, Meta предоставит его, но имя субъекта сертификата будет указывать на случайный динамический хост, который не пройдет проверку сертификата.Meta добавляет параметр transport=TLS к URI запроса в рамках SIP-запросов к вашему SIP-серверу.Для звонков, инициированных бизнес-процессами, запрос SIP-приглашения от вашего SIP-сервера будет проверяться с использованием дайджест-аутентификации. Более подробную информацию см. в разделе «Звонки, инициированные бизнес-процессами».Для вызовов, инициированных пользователем, настоятельно рекомендуется запрашивать подтверждение SIP INVITE через Meta, используя дайджест-аутентификацию для повышения безопасности. Более подробную информацию см. в разделе «Вызовы, инициированные пользователем».

Как проверить наличие действующего TLS-сертификата

Когда пользователь WhatsApp звонит в компанию, распространенной причиной того, что ваш SIP-сервер не получает SIP INVITE от Meta, является ошибка проверки сертификата. Вы можете использовать информацию, представленную здесь, чтобы подтвердить правильность настройки.
Выполните команду openssl s_client -quiet -verify_hostname {hostname} -connect {hostname}:{port} , правильно заменив hostname и port на ваши значения.
Пример действительного сертификата сервера
$ openssl s_client  - quiet  - verify_hostname meta - voip . example . com  - connect meta - voip . example . com : 5061 Подключение  к  64 : ff9b :: 68f8 : b0b8 глубина = 2  C = US ,  ST = New Jersey ,  L = Jersey City ,  O = Сеть  USERTRUST  ,  CN = Центр сертификации  RSA  USERTrust 
проверка  возвращает : 1 
глубина = 1  C = AT ,  O = ZeroSSL ,  CN = ZeroSSL  RSA  Domain Secure Site  CA проверка  возвращает : 1 глубина 
= 0 CN  = example . com проверка  возвращает : 1
Пример ситуации, когда имя хоста и порт не прослушивают TLS-соединение
openssl s_client -quiet -verify_hostname lb01.voice.usw2.pure.cloud -connect lb01.voice.usw2.pure.cloud:5060Подключение к 34.211.206.63009F0DFB01000000:ошибка:0A000126:SSL routines::unexpected eof while reading:ssl/record/rec_layer_s3.c:693:
Пример недействительного сертификата
$ openssl s_client  - quiet  - verify_hostname meta - inb . byoc . mypurecloud . com  - connect meta - inb . byoc . mypurecloud . com : 5061 Подключение  к  64 : ff9b :: 3652 : f1c0 глубина = 0  jurisdictionC = US ,  jurisdictionST = California ,  businessCategory = Private Organization ,  serialNumber = 1515861 ,  C = US ,  ST = Indiana ,  L = Indianapolis ,  O = Genesys Cloud Services , Inc .,  CN = voice . mypurecloud . com ошибка проверки : num = 62 : несоответствие имени хоста  возврат проверки : 1 
глубина = 2  C = US ,  O = DigiCert Inc ,  OU = www . digicert . com ,  CN = DigiCert High Assurance  EV  Root CA  verify  return : 1 
depth = 1  C = US ,  O = DigiCert Inc ,  OU = www.digicert.com , CN = DigiCert  SHA2  Extended Validation Server CA  verify  return : 1 
depth = 0  jurisdictionC = US ,  jurisdictionST = California ,  businessCategory = Private Organization ,  serialNumber = 1515861 ,  C = US ,  ST = Indiana ,  L = Indianapolis , O  = Genesys Cloud Services  , Inc. ,  CN = voice.mypurecloud.com verify return : 1​​​​ ​
В этом случае вы можете изменить сертификат, чтобы он соответствовал имени хоста, или изменить имя хоста настроенного SIP-сервера, чтобы оно соответствовало вашему сертификату.

Звонки, инициированные бизнесом

Предварительные требования
У вас есть необходимое разрешение на совершение звонков от пользователя WhatsApp Узнайте, как получить у пользователей права на совершение звонковПолучите сгенерированный Meta пароль SIP и настройте его на своем SIP-сервере, чтобы он мог отвечать на запросы аутентификации в формате дайджеста от SIP-серверов Meta.
Схема вызовов
Отправьте первоначальный SIP-запрос INVITE на наши серверы. Наш SIP-домен — wa.meta.vc. Для инициирования звонка пользователю WhatsApp с номером телефона 11234567890, URI SIP-запроса должен быть следующим: 'sip:+11234567890@wa.meta.vc;transport=tls' Этот запрос завершится ошибкой «Требуется аутентификация прокси-сервера SIP 407».Отправьте второй SIP INVITE с соответствующим заголовком Authorization в соответствии с RFC 3261. Атрибут имени пользователя в поле «Авторизация» должен совпадать с именем пользователя в заголовке «От», которое представляет собой номер телефона компанииПароль генерируется Meta, и вы можете получить его, используя конечную точку `getCallSettings`.В заголовке «От» в поле имени пользователя должен быть указан полностью нормализованный номер корпоративного телефонаДоменное имя в заголовке From должно совпадать с именем SIP-сервера, настроенного для номера корпоративного телефонаВключаемое вами предложение SDP поддерживает ICE, DTLS-SRTP и OPUS (по сути, медиаконтент WebRTC)Отправьте SIP INVITE на номер пользователя WhatsApp, которому вы хотите позвонить.

Звонки, инициированные пользователем

Предварительные требования
Если вы планируете использовать дайджест-аутентификацию SIP, получите сгенерированный Meta пароль SIP и настройте его на своем SIP-сервере, чтобы он мог отвечать на запросы дайджест-аутентификации от SIP-серверов Meta.
Схема вызовов
Пользователь WhatsApp звонит на рабочий телефонный номер, не зная, использует ли компания SIP или Graph API. Другими словами, пользовательский опыт идентиченЕсли номер корпоративного телефона поддерживает SIP, Meta отправит SIP INVITE на SIP-сервер, настроенный для этого номера корпоративного телефона.Вы отвечаете запросом аутентификации SIP digest (рекомендуется) или SIP OK и передаете ответ SDP.
Если вы не получаете SIP INVITE от Meta, обратитесь к разделу часто задаваемых вопросов по SIP для дальнейшего устранения неполадок.

Пользовательские SIP-заголовки

Следующие пользовательские SIP-заголовки являются общими как для вызовов, инициированных компанией, так и для вызовов, инициированных пользователем
Название заголовка Метаданные Описание
x-wa-meta-call-duration
Необязательный параметр; Строка
Продолжительность вызова в секундах. Эта информация присутствует в запросах SIP BYE от Meta для завершения установленного вызова.
х-ва-мета-вацид
Необязательный параметр; Строка
Идентификатор вызова WhatsApp. Он присутствует в SIP INVITE-запросе от Meta для вызова, инициированного пользователем, и в SIP BYE-запросах от Meta для завершения установленного вызова.
Следующие пользовательские SIP-заголовки предназначены исключительно для вызовов, инициированных пользователем
Название заголовка Метаданные Описание
x-wa-meta-cta-payload
Необязательный параметр; Строка
Отображается, когда пользователь инициирует вызов с помощью кнопки вызова, содержащей заданные бизнес-логикой данные. Подробнее.
x-wa-meta-deeplink-payload
Необязательный параметр; Строка
Присутствует, когда пользователь инициирует звонок через ссылку для подключения, содержащую заданные бизнес-логикой данные. Подробнее.

Настройка или обновление параметров SIP для корпоративного телефонного номера

Используйте этот конечный пункт для обновления настроек вызовов для отдельного корпоративного телефонного номера.

Параметры конечной точки

Заполнитель Описание Пример значения
<PHONE_NUMBER_ID>
Целое число
Необходимый

Рабочий телефонный номер, для которого вы обновляете настройки API вызовов.
+12784358810

Параметры тела

Параметр Описание
статус
Нить
Необязательный

Включить или отключить сигнализацию SIP-вызовов для указанного корпоративного телефонного номера.
По умолчанию отключено.
Если статус «ВКЛЮЧЕНО» , этот номер телефона будет использовать исключительно SIP для сигнализации вызовов и не будет работать с Graph API. Веб-хуки не отправляются.
Если статус установлен на DISABLED, значения SIP- серверов не сбрасываются.
Если вы снова включите SIP для того же номера телефона, вступят в силу ранее настроенные значения серверов
В одном запросе можно настроить как серверы статуса, так и SIP-серверы
серверы
Нить
Необязательный

Конфигурация маршрутизации SIP-сервера.
Для каждого телефонного номера можно настроить только один SIP-сервер. Серверы представляют собой массив, что обеспечивает перспективность системы.
Ранее мы разрешали использование нескольких приложений, каждое со своим собственным SIP-сервером, но эта конфигурация не будет работать, поскольку Meta завершит вызов после получения BYE от любого из SIP-серверов.
Если в GET-запросе вы видите несколько SIP-серверов, это означает, что вы использовали POST API с разными токенами доступа, принадлежащими разным приложениям.
Соответствующее приложение извлекается из токена доступа, использованного для выполнения вызова API.
Чтобы удалить ранее настроенный SIP-сервер, передайте в это поле пустой массив. Если после очистки вы все еще видите оставшиеся серверы, они могут принадлежать разным приложениям, поэтому вам необходимо использовать соответствующие токены доступа для их удаления.
Обратите внимание, что при включенном статусе SIP должен существовать как минимум один SIP-сервер для любого приложения. Чтобы удалить серверы для всех приложений, используемых с корпоративным телефонным номером, статус SIP следует отключить.
имя хоста — (Строка) Обязательно
Имя хоста SIP-сервера.
Запросы должны использовать протокол TLS.
порт — (Строка) Обязательно
Порт на вашем SIP-сервере, который будет принимать запросы.
Запросы должны использовать протокол TLS.
Порт по умолчанию — 5061
request_uri_user_params — (String) Optional
Необязательное поле для передачи любых параметров, которые вы хотите включить в пользовательскую часть URI запроса, используемого в нашем SIP INVITE на ваш SIP-сервер.
Максимальный размер пары ключ/значение — 128 символов.
Примером использования могут служить группы транков (RFC 4904.)
sip:+1234567890@sip.example.comtgrp=wacalltrunk-context=byoc.example.com
В этом примере используются два пользовательских параметра: tgrp и trunk-context.
В этом случае эффективная строка URI SIP-запроса будет выглядеть следующим образом : sip:+1234567890;tgrp=wacall;trunk-context=byoc.example.com@sip.example.com

Ответ с ошибкой

Получение настроек телефонных звонков (SIP)

Используйте эту конечную точку для проверки конфигурации параметров функции Calling API, включая значения SIP.
Этот конечный пункт может возвращать информацию о других настройках функций Cloud API.

Параметры конечной точки

Заполнитель Описание Пример значения
<PHONE_NUMBER_ID>
Целое число
Необходимый

Рабочий телефонный номер, для которого вы получаете настройки API вызовов.
+12784358810
Требуются разрешения приложения
whatsapp_business_management: Для обновления API для конечных бизнес-клиентов требуется расширенный доступ.

Ответ с ошибкой

Примеры SIP-запросов

Звонки, инициированные бизнесом (с использованием WebRTC)

Первоначальный SIP-запрос INVITE
INVITE sip:+12195550714@wa.meta.vc;transport=tls SIP/2.0Record-Route:<sip:+159.65.244.171:5061;transport=tls;lr;ftag=Kc9QZg4496maQ;nat=yes>Via: SIP/2.0/TLS 159.65.244.171:5061;received=2803:6081:798c:93f8:5f9b:bfe8:300:0;branch=z9hG4bK0da2.36614b8977461b486ceabc004c723476.0;i=617261Via: SIP/2.0/TLS 137.184.87.1:35181;rport=56533;received=137.184.87.1;branch=z9hG4bKQNa6meey5Dj2g
Max-Forwards:69From:<sip:+17125550259@meta-voip.example.com>;tag=Kc9QZg4496maQTo:<sip:+12195550714@wa.meta.vc>Call-ID: dc2c5b33-1b81-43ee-9213-afb56f4e56ba
CSeq:96743476 INVITE
Contact:<sip:mod_sofia@137.184.87.1:35181;transport=tls;swrad=137.184.87.1~56533~3>User-Agent:SignalWireAllow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER, REFER, NOTIFY
Supported: timer, path, replaces
Allow-Events: talk, hold, conference, refer
Session-Expires:600;refresher=uac
Min-SE:90Content-Type: application/sdp
Content-Disposition: session
Content-Length:2427
X-Relay-Call-ID: dc2c5b33-1b81-43ee-9213-afb56f4e56ba
Remote-Party-ID:<sip:+17125550259@meta-voip.example.com>;party=calling;screen=yes;privacy=off
Content-Type: application/sdp
Content-Length:2427<<SDP опущено для краткости>>
Ответ 407 от Meta
SIP / 2.0 407 Требуется аутентификация прокси - сервера Через :  SIP / 2.0 / TLS  159.65.244.171:5061 ; получено = 2803 : 6081 : 798c : 93f8 : 5f9b : bfe8 : 300 : 0 ; ветвь = z9hG4bK0da2.36614b8977461b486ceabc004c723476.0 ; i = 617261 Через :  SIP / 2.0 / TLS  137.184.87.1:35181 ; rport = 56533 ; получено = 137.184.87.1 ;​​​​​​​​​​ branch = z9hG4bKQNa6meey5Dj2g
 Record - Route : < sip :+ 159.65 . 244.171 : 5061 ; transport = tls ; lr ; ftag = Kc9QZg4496maQ ; nat = yes > Call - ID :  dc2c5b33 - 1b81 - 43ee - 9213 - afb56f4e56ba
 From : < sip :+ 17125550259@meta - voip . example . com >; tag = Kc9QZg4496maQ To : < sip :+ 12195550714@wa . meta . vc >; tag = z9hG4bK0da2 . 36614b8977461b486ceabc004c723476.0 CSeq : 96743476  INVITE
 Proxy - Authenticate : Digest  realm = "wa.meta.vc" , nonce = "419ac2415577f8e1" , opaque = "440badfc05072367" , algorithm = MD5 , qop = "auth"
Второй SIP INVITE отправлен с подтверждением авторизации
INVITE sip :+ 12195550714@wa . meta . vc ; transport = tls SIP / 2.0 Record - Route : < sip :+ 159.65 . 244.171 : 5061 ; transport = tls ; lr ; ftag = Kc9QZg4496maQ ; nat = yes > Via :  SIP / 2.0 / TLS  159.65 . 244.171 : 5061 ; received = 2803 : 6081 : 798c : 93f8 : 5f9b : bfe8 : 300 : 0 ; branch = z9hG4bK1da2 . ed8900012befced853927008d619d374 . 0 ; i = 617261 Via :  SIP / 2.0 / TLS  137.184 . 87.1 : 35181 ; rport = 56533 ; received = 137.184 . 87.1 ; branch = z9hG4bKry3yp9y12p8mc
         Max - Forwards : 69 From : < sip :+ 17125550259@meta - voip . example . com >; tag = Kc9QZg4496maQ To : < sip :+ 12195550714@wa . meta . vc > Call - ID :  dc2c5b33 - 1b81 - 43ee - 9213 - afb56f4e56ba
         CSeq : 96743477  INVITE
         Contact : < sip : mod_sofia@137 . 184.87 . 1 : 35181 ; transport = tls ; swrad = 137.184 . 87.1 ~ 56533 ~ 3 > User - Agent : SignalWire Allow :  INVITE ,  ACK ,  BYE ,  CANCEL ,  OPTIONS ,  MESSAGE ,  INFO ,  UPDATE ,  REGISTER ,  REFER ,  NOTIFY
         Supported :  timer ,  path ,  replaces
         Allow - Events :  talk ,  hold ,  conference ,  refer
         Proxy - Authorization : Digest  username = "17125550259" ,  realm = "wa.meta.vc" ,  nonce = "419ac2415577f8e1" ,  uri = "sip:+12195550714@wa.meta.vc;transport=tls" ,  response = "blah" ,  algorithm = MD5 ,  cnonce = " / mVZtYFCEj65YQJCrBEAAg " ,  opaque = " 440badfc05072367 " ,  qop = auth ,  nc = 00000001 Session - Expires : 600 ; refresher = uac
         Min - SE : 90 Content - Type :  application / sdp
         Content - Disposition :  session
         Content - Length : 2427 
        X - Relay - Call - ID :  dc2c5b33-1b81-43ee - 9213 - afb56f4e56ba Remote - Party - ID : < sip : +17125550259@meta-voip.example.com > ; party =
         calling ; screen = yes ;​​​​ privacy = off
         Content - Type :  application / sdp
         Content - Length : 2427 << SDP опущен  для  краткости >>
Пример ответа об ошибке
SIP / 2.0 403 SIP -   сервер wa.meta.vc из INVITE не  соответствует  ни одному SIP-серверу ,  настроенному  для  идентификатора номера телефона  { ID } Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : c954 : b533 : ecfb : 5cec : 300 : 0 ]: 39459 ; rport = 39459 ; received = 2803 : 6080 : c954 : b533 : ecfb : 5cec : 300 : 0 ; branch = z9hG4bKPjf9f3d0bddb3dbe0c9b1e3b486f39784a ; alias Via :  SIP / 2.0 / TLS  148.72 . 155.236 : 5061 ; rport = 30498 ; received = 2803 : 6080 : d014 : 8e40 : ddbb : 4ed7 : 300 : 0 ; branch = z9hG4bKPjfd270ec8 - 7aaf - 4a65 - b290 - 4bef3b50b7b7 ; alias Record - Route : < sip : onevc - sip - proxy - dev . fbinfra . net : 8191 ; transport = tls ; lr > Record - Route : < sip : wa . meta . vc ; transport = tls ; lr > Call - ID : 91578781 - 44f1 - 4268 - 9a7f - d7efec1abf72
         From : < sip :+ 17125550259@wa . meta . vc >; tag = 3a63b370 - a697 - 4a5a - 82b4 - e8105e23f176
         To : < sip :+ 12195550714@wa . meta . vc >; tag = e0d30a05 - 657b - 47ec - a668 - e05ca79f9f05
         CSeq : 15659  INVITE
         Allow :  INVITE ,  ACK ,  BYE ,  CANCEL ,  NOTIFY ,  OPTIONS X - FB - External - Domain :  wa . meta . vc
         Warning : 399  wa . meta . vc  "SIP server wa.meta.vc from INVITE does not match any SIP server configured for phone number id {ID}" Content - Length : 0 Content - Length : 0
Прощай, глоток
BYE sip :+ 5559800000693@wa . meta . vc ; transport = tls ; ob SIP / 2.0 Via :  SIP / 2.0 / TLS  137.184 . 4.155 : 5061 ; received = 2803 : 6080 : c074 : cac : 10ed : 4b05 : 400 : 0 ; i = 8d2dc2 Via :  SIP / 2.0 / TLS  143.198 . 136.243 : 35181 ; rport = 38087 ; received = 143.198 . 136.243 Route : < sip : wa . meta . vc ; transport = tls ; lr > Маршрут : < sip : onevc - sip - proxy . fbinfra . net : 8191 ; transport = tls ; lr > Максимальное количество переадресаций : 69 ​​От : < sip :+ 12145551869@meta - voip . example . com >; tag = NcKQ6mtDKSDQB Кому : "5559800000693" < sip :+ 5559800000693@wa . meta . vc > ; tag = 92a01092 - ee78 - 4870 - 865f - bc176203a6bd
 Идентификатор вызова :  исходящий : wacid . HBgPMjAwNzU2OTA0ODY5OTY1FRIAEhggMjQ4QzUwOUQ1REQ0NDUwNENEQzRFMTgwRTNGQjAwNjEcGAsxMjE0NTU1MTg2ORUCAAA CSeq : 98734935  BYE
 User - Agent : SignalWire Allow :  INVITE ,  ACK ,  BYE ,  CANCEL ,  OPTIONS ,  MESSAGE ,  INFO ,  UPDATE ,  REGISTER ,  REFER ,  NOTIFY
 Supported :  timer ,  path ,  replaces
 Reason :  Q . 850 ; cause = 16 ; текст = "NORMAL_CLEARING" Content - Length : 0 
X - Relay - Call - ID :  b72c0c65 - e319 - 41b3 - afb7 - 19ebcca05d38 Content - Length : 0
SIP INVITE (с SDES)
INVITE sip :+ 12195550714@wa . meta . vc ; transport = tls SIP / 2.0 Record - Route : < sip : 54.172 . 60.1 : 5061 ; transport = tls ; lr ; r2 = on > Record - Route : < sip : 54.172 . 60.1 ; lr ; r2 = on > CSeq : 2  INVITE
 From : "12145551869" < sip :+ 12145551869@meta - voip . example . com >; tag = 28460006 _c3356d0b_5cdada8c - cbf0 - 4369 - b02d - cc97d3c36f2b
 To : < sip :+ 12195550714@wa . meta . vc > Max - Forwards : 66 
P - Asserted - Identity : < sip :+ 12145551869@meta - voip . example . com > Min - SE : 120 Call - ID :  f304a1d2cafb8139c1f9ff93a7733586@0 . 0.0 . 0 Contact : "12145551869" < sip :+ 12145551869 @ 172.25 . 10.217 : 5060 ; transport = udp > Allow :  INVITE ,  ACK ,  CANCEL ,  OPTIONS ,  BYE ,  REFER ,  NOTIFY
 Via :  SIP / 2.0 / TLS  54.172 . 60.1 : 5061 ; received = 2803 : 6080 : f934 : 8894 : 7eb5 : 24f9 : 300 : 0 ; branch = z9hG4bK1e5a . 0da2ace9cc912d9e5f2595ca4acb9847.0 Via :  SIP / 2.0 / UDP  172.25 . 10.217 : 5060 ; rport = 5060 ; branch = z9hG4bK5cdada8c - cbf0 - 4369 - b02d - cc97d3c36f2b_c3356d0b_54 - 457463274351249162 Supported :  timer
 User - Agent : Twilio Gateway Proxy - Authorization : Digest  username = "12145551869" ,  realm = "wa.meta.vc" ,  nonce = "2a487cb01d4ed43b" ,  uri = "sip:+12195550714@wa.meta.vc;transport=tls" ,  response = "3f58df7af575b948625aeffd51bf9060" ,  algorithm = MD5 ,  cnonce = "b338deb7f0e004e66353e26d34ad62b7" ,  opaque = "725a06fb2cd89a32" ,  qop = auth ,  nc = 00000002 Content - Type :  application / sdp X - Twilio - CallSid :  CA93eac6be615da5e6836c7059e9555348
 Content - Length : 422 Content - Type :  application / sdp
 Content - Length : 422 

v = 0 
o = root  1185414872 1185414872  IN  IP4 172.18.155.180 
s = Twilio Media Gateway 
c = IN IP4  168.86 . 138.232 
t = 0 0 
m = audio  19534  RTP / SAVP  107 0 8 101 
a = crypto :************************************************************************** 
a = rtpmap : 0  PCMU / 8000 
a = rtpmap : 107  opus / 48000 / 2 
a = fmtp : 107  useinbandfec = 1 
a = rtpmap : 8  PCMA / 8000 
a = rtpmap : 101  telephone - event / 8000 
a = fmtp : 101 0 - 16 
a = ptime : 20 
a = maxptime : 20 
a = sendrecv
SIP OK (с SDES)
SIP / 2.0 200  OK
 Via :  SIP / 2.0 / TLS  54.172.60.1:5061 ; received = 2803 : 6080 : f934 : 8894 : 7eb5 : 24f9 : 300 : 0 ; branch = z9hG4bK1e5a.0da2ace9cc912d9e5f2595ca4acb9847.0 Via :  SIP / 2.0 / UDP 172.25.10.217:5060 ; rport = 5060 ;​​​​​ ​​​​​ branch = z9hG4bK5cdada8c - cbf0 - 4369 - b02d - cc97d3c36f2b_c3356d0b_54 - 457463274351249162 Record - Route : < sip : onevc - sip - proxy . fbinfra . net : 8191 ; transport = tls ; lr > Record - Route : < sip : wa . meta . vc ; transport = tls ; lr > Record - Route : < sip : 54.172 . 60.1 : 5061 ; transport = tls ; lr ; r2 = on > Record - Route : < sip : 54.172 . 60.1 ; lr ; r2 = on > Call - ID :  f304a1d2cafb8139c1f9ff93a7733586@0 . 0.0 . 0 From : "12145551869" < sip :+ 12145551869@meta - voip . example . com >; tag = 28460006 _c3356d0b_5cdada8c - cbf0 - 4369 - b02d - cc97d3c36f2b
 To : < sip :+ 12195550714@wa . meta . vc >; tag = 0d185053 - 2615 - 46c7 - 8ff2 - 250bda494cf1 CSeq : 2  INVITE
 Allow :  INVITE ,  ACK ,  BYE ,  CANCEL ,  NOTIFY ,  OPTIONS
 Supported :  timer X - FB - External - Domain :  wa . meta . vc
 Contact : < sip :+ 12195550714@wa . meta . vc ; transport = tls ; ob ; X - FB - Sip - Smc - Tier = collaboration . sip_gateway . sip . prod >; isfocus
 Content - Type :  application / sdp
 Content - Length : 645 

v = 0 
o =- 1746657286595 2  IN IP4  127.0 . 0.1 
s =- 
t = 0 0 
a = group : BUNDLE audio a = msid - semantic :  WMS  42da9643 - cb50 - 4eca - 95d3 - ca41b3f1f4bb m = audio  3480  RTP / SAVP  107 101 
c = IN IP4  157.240 . 19.130 
a = rtcp : 9  IN IP4  0.0 . 0.0 
a = mid : audio a = sendrecv a = msid : 42da9643 - cb50 - 4eca - 95d3 - ca41b3f1f4bb  WhatsAppTrack1 
a = rtcp - mux a = crypto :************************************************************************** 
a = rtpmap : 107  opus / 48000 / 2 
a = fmtp : 107  maxaveragebitrate = 20000 ; maxplaybackrate = 16000 ; minptime = 20 ; sprop - maxcapturerate = 16000 ; useinbandfec = 1 
a = rtpmap : 101  telephone - event / 8000 
a = maxptime : 20 
a = ptime : 20 
a = ssrc : 1238967757  cname : WhatsAppAudioStream1

Звонки, инициированные пользователем (с использованием WebRTC)

ПРИГЛАШЕНИЕ НА ПОЛУЧЕНИЕ ПИВА
INVITE sip :+ 17015558857@meta - voip . example . com ; transport = tls SIP / 2.0 Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : e888 : 51aa : d4a4 : c5e0 : 300 : 0 ]: 33819 ; rport = 33819 ; received = 2803 : 6080 : e888 : 51aa : d4a4 : c5e0 : 300 : 0 ; branch = z9hG4bKPjNvs . IZBnUa1W4l8oHPpk3SUMmcx3MMcE ; alias Max - Forwards : 70 From : "12195550714" < sip :+ 12195550714@wa . meta . vc >; tag = bbf1ad6e - 79bb - 4d9c - 8a2c - 094168a10bea To : < sip :+ 17015558857@meta - voip . example . com > Contact : < sip :+ 12195550714@wa . meta . vc ; transport = tls ; ob >; isfocus
 Call - ID :  outgoing : wacid . HBgLMTIxOTU1NTA3MTQVAgASGCAzODg1NTE5NEU1NTBEMTc1RTFFQUY5NjNCQ0FCRkEzRhwYCzE3MDE1NTU4ODU3FQIAAA == CSeq : 2824  INVITE
 Route : < sip : onevc - sip - proxy - dev . fbinfra . net : 8191 ; transport = tls ; lr > 
X - FB - External - Domain :  wa . meta . vc
 Allow :  INVITE ,  ACK ,  BYE ,  CANCEL ,  NOTIFY ,  OPTIONS
 User - Agent : Facebook SipGateway Content - Type :  application / sdp
 Content - Length : 1028 

v = 0 
o =- 1741113186367 2  IN IP4  127.0 . 0.1 
s =- 
t = 0 0 
a = group : BUNDLE audio a = msid - semantic :  WMS  632a909f - 1060 - 4369 - 96a4 - 7bd03e291ee7 
a = ice - lite m = audio  3480  UDP / TLS / RTP / SAVPF  111 126 
c = IN IP4  57.144 . 135.35 
a = rtcp : 9  IN IP4  0.0 . 0.0 
a = candidate : 1775469887 1  udp  2122260223 57.144 . 135.35 3480 тип  хоста поколения  0  сеть - стоимость  50 
a = кандидат : 3355715111 1  udp  2122262783 2a03 : 2880 : f343 : 131 : face : b00c : 0 : 699c 3480  тип хоста поколения  0  сеть - стоимость  50 
a = ice - ufrag : RmDDkfzkwbexPfbC 
a = ice - pwd : ************************* 
a = fingerprint : ******************************************************************************************************* 
a = setup : actpass a = mid : audio a = sendrecv a = msid : 632a909f - 1060-4369-96a4-7bd03e291ee7 WhatsAppTrack1 
a = rtcp - mux a = rtpmap : 111  opus / 48000 / 2 
a = rtcp - fb : 111  transport - cc a = fmtp : 111  maxaveragebitrate = 20000 ; maxplaybackrate = 16000 ; minptime = 20 ; sprop - maxcapturerate = 16000 ; useinbandfec = 1 
a = rtpmap : 126  telephone - event / 8000 
a = maxptime : 20 
a = ptime : 20 
a = ssrc : 849255537  cname : WhatsAppAudioStream1
Прощай, глоток
BYE sip :+ 5559800000693@wa . meta . vc ; transport = tls ; ob SIP / 2.0 Via :  SIP / 2.0 / TLS  137.184 . 4.155 : 5061 ; received = 2803 : 6080 : c074 : cac : 10ed : 4b05 : 400 : 0 ; i = 8d2dc2 Via :  SIP / 2.0 / TLS  143.198 . 136.243 : 35181 ; rport = 38087 ; received = 143.198 . 136.243 Route : < sip : wa . meta . vc ; transport = tls ; lr > Маршрут : < sip : onevc - sip - proxy . fbinfra . net : 8191 ; transport = tls ; lr > Максимальное количество переадресаций : 69 ​​От : < sip :+ 12145551869@meta - voip . example . com >; tag = NcKQ6mtDKSDQB Кому : "5559800000693" < sip :+ 5559800000693@wa . meta . vc > ; tag = 92a01092 - ee78 - 4870 - 865f - bc176203a6bd
 Идентификатор вызова :  исходящий : wacid . HBgPMjAwNzU2OTA0ODY5OTY1FRIAEhggMjQ4QzUwOUQ1REQ0NDUwNENEQzRFMTgwRTNGQjAwNjEcGAsxMjE0NTU1MTg2ORUCAAA CSeq : 98734935  BYE
 User - Agent : SignalWire Allow :  INVITE ,  ACK ,  BYE ,  CANCEL ,  OPTIONS ,  MESSAGE ,  INFO ,  UPDATE ,  REGISTER ,  REFER ,  NOTIFY
 Supported :  timer ,  path ,  replaces
 Reason :  Q . 850 ; cause = 16 ; текст = "NORMAL_CLEARING" Content - Length : 0 
X - Relay - Call - ID :  b72c0c65 - e319 - 41b3 - afb7 - 19ebcca05d38 Content - Length : 0
SIP INVITE (с SDES)
INVITE sip:+12145551869@meta-voip.example.com;transport=tls SIP/2.0Via: SIP/2.0/TLS [2803:6080:f948:9597::]:57363;rport;branch=z9hG4bKPj3a9f2ad89e4a3df61408aa84f7d9a63e;aliasRecord-Route:<sip:wa.meta.vc;transport=tls;lr>Record-Route:<sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>Via: SIP/2.0/TLS [2803:6080:f948:9597:d33c:e00:400:0]:5061;branch=z9hG4bKPj3a9f2ad89e4a3df61408aa84f7d9a63e
            Via: SIP/2.0/TLS [2803:6080:f948:9597:1ac5:cdf8:300:0]:63057;rport=63057;получено=2803:6080:f948:9597:1ac5:cdf8:300:0;ветвь=z9hG4bKPj-phic0sbns27DiP0OlrxRxgLtNg4mio7;псевдонимMax-Forwards:69От:"12195550714"<sip:+12195550714@wa.meta.vc>;тег=8a0f7e65-6e9e-4801-bf92-85c3ef2485d9Кому:<sip:+12145551869@meta-voip.example.com>Контакт:<sip:+12195550714@wa.meta.vc;transport=tls;ob>;isfocus
            Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA4QkY1MTJCQkNFNTgxMEVFRERFRTUzNTFERkE1MDU0MhwYCzEyMTQ1NTUxODY5FQIAAACSeq:31159 INVITE X-FB-External-Domain: wa.meta.vc
            Allow: INVITE, ACK, BYE, CANCEL, NOTIFY, OPTIONS
            User-Agent:FacebookSipGatewayContent-Type: application/sdp
            Content-Length:645

v=0
o=-17466599669802 IN IP4 127.0.0.1
s=-
t=00
a=group:BUNDLE audio a=msid-semantic: WMS 07092115-d151-427e-8722-26c70936b104
m=audio 3480 RTP/SAVP 111126
c=IN IP4 157.240.19.130
a=rtcp:9 IN IP4 0.0.0.0
a=mid:audio a=sendrecv a=msid:07092115-d151-427e-8722-26c70936b104WhatsAppTrack1
a=rtcp-mux a=crypto:**************************************************************************
a=rtpmap:111 opus/48000/2
a=fmtp:111 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1
a=rtpmap:126 telephone-event/8000
a=maxptime:20
a=ptime:20
a=ssrc:1615009994 cname:WhatsAppAudioStream1
SIP OK (с SDES)
SIP / 2.0 200  OK
             CSeq : 31159  INVITE
             Call - ID :  outgoing : wacid . HBgLMTIxOTU1NTA3MTQVAgASGCA4QkY1MTJCQkNFNTgxMEVFRERFRTUzNTFERkE1MDU0MhwYCzEyMTQ1NTUxODY5FQIAAA From : "12195550714" < sip :+ 12195550714@wa . meta . vc >; tag = 8a0f7e65 - 6e9e - 4801 - bf92 - 85c3ef2485d9 To : < sip :+ 12145551869@meta - voip . example . com >; tag = 66596922 _c3356d0b_fee164be - 566a - 4679 - a80d - 5bfdf1d0aa9e Via :  SIP / 2.0 / TLS  157.240 . 229.209 : 5061 ; rport = 51830 ; received = 69.171 . 251.115 ; branch = z9hG4bKPj3a9f2ad89e4a3df61408aa84f7d9a63e ; alias Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : f948 : 9597 : d33c : e00 : 400 : 0 ]: 5061 ; branch = z9hG4bKPj3a9f2ad89e4a3df61408aa84f7d9a63e
             Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : f948 : 9597 : 1ac5 : cdf8 : 300 : 0 ]: 63057 ; rport = 63057 ; получено = 2803 : 6080 : f948 : 9597 : 1ac5 : cdf8 : 300 : 0 ; ветвь = z9hG4bKPj - phic0sbns27DiP0OlrxRxgLtNg4mio7 ; псевдоним Запись - Маршрут : < sip : 54.172 . 60.1 : 5060 ; lr ; r2 = on ; twnat = sip : 69.171 . 251.115 : 51830 > Запись - Маршрут : < sip : 54.172 . 60.1 : 5061 ; транспорт = tls ; lr ; r2 = on ; twnat = sip : 69.171 . 251.115 : 51830 > Record - Route : < sip : wa . meta . vc ; transport = tls ; lr > Record - Route : < sip : onevc - sip - proxy . fbinfra . net : 8191 ; transport = tls ; lr > Server : Twilio Contact : < sip :+ 172.25 . 16.223 : 5060 > Разрешить :  INVITE ,  ACK ,  CANCEL ,  OPTIONS ,  BYE ,  REFER ,  NOTIFY
             Content - Type :  application / sdp X - Twilio - CallSid : CAb0d74508fe5fcdf6ec70ea3cf4e9b90b Content - Length : 446 Content - Type :  application / sdp
             Content - Length : 446 

v = 0 
o = root  1353670385 1353670385  IN  IP4 172.18.164.24 
s = Twilio Media Gateway 
c = IN IP4  168.86 . 138.176 
t = 0 0 
m = audio  15822  RTP / SAVP  111 126 
a = rtpmap : 111  opus / 48000 / 2 
a = fmtp : 111  maxplaybackrate = 16000 ; sprop - maxcapturerate = 16000 ; maxaveragebitrate = 20000 ; useinbandfec = 1 
a = rtpmap : 126  telephone - event / 8000 
a = fmtp : 126 0 - 16 
a = crypto :************************************************************************* 
a = ptime : 20 
a = maxptime : 20 
a = sendrecv

Звонки, инициированные пользователем, с дайджест-аутентификацией (с использованием медиафайлов SDES)

SIP-сервер Meta поддерживает дайджест-аутентификацию для вызовов, инициированных пользователем. Ваш SIP-сервер должен ответить запросом на дайджест-аутентификацию, и Meta повторно отправит SIP INVITE с ответом на запрос. Имя пользователя, используемое для дайджест-аутентификации, — это (нормализованный) рабочий номер телефона, а пароль генерируется Meta и может быть получен с помощью конечной точки getCall settings.
Первый запрос INVITE от Meta
INVITE sip:+12145551869@meta-voip.example.com;transport=tls SIP/2.0Via: SIP/2.0/TLS [2803:6080:f948:9597::]:47237;rport;branch=z9hG4bKPj1e6c665db16b3ecacf32cadb4497fe77;aliasRecord-Route:<sip:wa.meta.vc;transport=tls;lr>Record-Route:<sip:onevc-sip-proxy.fbinfra.net:8191;transport=tls;lr>Via: SIP/2.0/TLS [2803:6080:f948:9597:7253:922a:400:0]:5061;branch=z9hG4bKPj1e6c665db16b3ecacf32cadb4497fe77
Via: SIP/2.0/TLS [2803:6080:f8bc:9272:e488:9927:400:0]:58279;rport=58279;получено=2803:6080:f8bc:9272:e488:9927:400:0;ветвь=z9hG4bKPjr33j97A1mx5J8HWHEy2zIgqZYCCIb4Fb;псевдонимMax-Forwards:69От:"12195550714"<sip:+12195550714@wa.meta.vc>;тег=ece2da15-39e7-4983-ac65-e312f325d94a
Кому:<sip:+12145551869@meta-voip.example.com>Контакт:<sip:+12195550714@wa.meta.vc;transport=tls;ob>;isfocus
Call-ID: outgoing:wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA2MUI2QUY0MDRCMTUyOTM4QkE5ODEwN0ZGQTAwODkxORwYCzEyMTQ1NTUxODY5FQIAFRoACSeq:9989 INVITE X-FB-External-Domain: wa.meta.vc
Allow: INVITE, ACK, BYE, CANCEL, NOTIFY, OPTIONS
User-Agent:FacebookSipGatewayContent-Type: application/sdp
Content-Length:643

v=0
o=-17507168679132 IN IP4 127.0.0.1
s=-
t=00
a=group:BUNDLE audio a=msid-semantic: WMS 4e37b099-8aef-45d0-be4f-1cde2ca5a37d
m=audio 3480 RTP/SAVP 111126
c=IN IP4 57.144.219.49
a=rtcp:9 IN IP4 0.0.0.0
a=mid:audio a=sendrecv a=msid:4e37b099-8aef-45d0-be4f-1cde2ca5a37dWhatsAppTrack1
a=rtcp-mux a=crypto:**************************************************************************
a=rtpmap:111 opus/48000/2
a=fmtp:111 maxaveragebitrate=20000;maxplaybackrate=16000;minptime=20;sprop-maxcapturerate=16000;useinbandfec=1
a=rtpmap:126 telephone-event/8000
a=maxptime:20
a=ptime:20
a=ssrc:215879358 cname:WhatsAppAudioStream1
Ответ 407 от партнерского SIP-сервера
SIP / 2.0 407  Требуется
 аутентификация прокси CSeq : 9989  INVITE
 Call - ID :  outgoing : wacid.HBgLMTIxOTU1NTA3MTQVAgASGCA2MUI2QUY0MDRCMTUyOTM4QkE5ODEwN0ZGQTAwODkxORwYCzEyMTQ1NTUxODY5FQIAFRoA From : " 12195550714 " < sip : +12195550714@wa.meta.vc > ; tag = ece2da15-39e7-4983 - ac65 - e312f325d94a To : < sip : +12145551869@meta-voip.example.com > ;​
​​​​​​​​​​​ tag = 45065608 _c3356d0b_16001fd8 - 76d2 - 45f0 - bb35 - e0441d6dc4a2
 Via :  SIP / 2.0 / TLS  31.13 . 66.215 : 5061 ; rport = 62080 ; received = 69.171 . 251.112 ; branch = z9hG4bKPj1e6c665db16b3ecacf32cadb4497fe77 ; alias Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : f948 : 9597 : 7253 : 922a : 400 : 0 ]: 5061 ; branch = z9hG4bKPj1e6c665db16b3ecacf32cadb4497fe77
 Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : f8bc : 9272 : e488 : 9927 : 400 : 0 ]: 58279 ; rport = 58279 ; получено = 2803 : 6080 : f8bc : 9272 : e488 : 9927 : 400 : 0 ; ветвь = z9hG4bKPjr33j97A1mx5J8HWHEy2zIgqZYCCIb4Fb ; псевдоним Контакт : < sip :+ 172.25 . 58.54 : 5060 > Proxy - Authenticate : Digest  realm = "sip.twilio.com" , nonce = "eyOam_8-l5FVugxsyxFRjnlxq9vy1TjQIMB3mBfJuAvB5gV4" , opaque = "4a6a068be2ca2032a57912b9a2a6adf7" , qop = "auth" Content - Length : 0 Content - Length : 0
Второе приглашение с авторизацией от Meta
INVITE sip :+ 12145551869@meta - voip . example . com ; transport = tls SIP / 2.0 Via :  SIP / 2.0 / TLS  31.13 . 66.215 : 5061 ; rport ; branch = z9hG4bKPj16be0694dc6763eb66de5ec5f262db03 ; alias Record - Route : < sip : wa . meta . vc ; transport = tls ; lr > Record - Route : < sip : onevc - sip - proxy . fbinfra . net : 8191 ; transport = tls ; lr > Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : f948 : 9597 : 7253 : 922a : 400 : 0 ]: 5061 ; branch = z9hG4bKPj16be0694dc6763eb66de5ec5f262db03
 Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : f8bc : 9272 : e488 : 9927 : 400 : 0 ]: 58279 ; rport = 58279 ; получено = 2803 : 6080 : f8bc : 9272 : e488 : 9927 : 400 : 0 ; ветвь = z9hG4bKPjYp9LqI0D8zJ . wly5wyMyVaH9fUwIU921 ; псевдоним Max - Forwards : 69 От : "12195550714" < sip :+ 12195550714@wa . meta . vc >; тег = ece2da15 - 39e7 - 4983 - ac65 - e312f325d94a
 Кому : < sip :+ 12145551869@meta - voip . example . com > Контакт : < sip :+ 12195550714@wa . meta . vc ; transport = tls ; ob >; isfocus
 Call - ID :  outgoing : wacid . HBgLMTIxOTU1NTA3MTQVAgASGCA2MUI2QUY0MDRCMTUyOTM4QkE5ODEwN0ZGQTAwODkxORwYCzEyMTQ1NTUxODY5FQIAFRoA CSeq : 9990  INVITE X - FB - External - Domain :  wa . meta . vc
 Allow :  INVITE ,  ACK ,  BYE ,  CANCEL ,  NOTIFY ,  OPTIONS
 User - Agent : Facebook SipGateway Proxy - Authorization : Digest  username = "12145551869" ,  realm = "sip.twilio.com" ,  nonce = "eyOam_8-l5FVugxsyxFRjnlxq9vy1TjQIMB3mBfJuAvB5gV4" ,  uri = "sip:+12145551869@meta-voip.example.com" ,  response = "b28ed6b8bf1418e3c6eca05ef8c7a0b1" ,  cnonce = "TY2SszvYCKitUCBlVLpGiPKMQfmBbj" ,  opaque = "4a6a068be2ca2032a57912b9a2a6adf7" , qop  = auth , nc  = 00000001 Content - Type : application  / sdp Content
 - Length : 643 v 

= 0 o 
= - 1750716867913 2 IN  IP4  127.0.0.1 s 
= - 
t = 0 0 
a = group : BUNDLE audio a = msid - semantic :  WMS  4e37b099-8aef - 45d0 - be4f - 1cde2ca5a37d 
m = audio  3480  RTP / SAVP  111 126 
c = IN IP4  57.144.219.49 
a = rtcp : 9 IN IP4  0.0  . 0.0 
a = mid : audio a = sendrecv a = msid : 4e37b099 - 8aef - 45d0 - be4f - 1cde2ca5a37d WhatsAppTrack1 
a = rtcp - mux a = crypto :************************************************************************** 
a = rtpmap : 111  opus / 48000 / 2 
a = fmtp : 111  maxaveragebitrate = 20000 ; maxplaybackrate = 16000 ; minptime = 20 ; sprop - maxcapturerate = 16000 ; useinbandfec = 1 
a = rtpmap : 126  telephone - event / 8000 
a = maxptime : 20 
a = ptime : 20 
a = ssrc : 215879358  cname : WhatsAppAudioStream1
SIP-соединение подтверждено партнерским SIP-сервером
SIP / 2.0 200  OK
 CSeq : 9990  INVITE
 Call - ID :  outgoing : wacid . HBgLMTIxOTU1NTA3MTQVAgASGCA2MUI2QUY0MDRCMTUyOTM4QkE5ODEwN0ZGQTAwODkxORwYCzEyMTQ1NTUxODY5FQIAFRoA From : "12195550714" < sip :+ 12195550714@wa . meta . vc >; tag = ece2da15 - 39e7 - 4983 - ac65 - e312f325d94a
 To : < sip :+ 12145551869@meta - voip . example . com >; tag = 29360930 _c3356d0b_4933dc58 - f035 - 4597 - b075 - 04b19e552329 Via :  SIP / 2.0 / TLS  31.13 . 66.215 : 5061 ; rport = 62080 ; received = 69.171 . 251.112 ; branch = z9hG4bKPj16be0694dc6763eb66de5ec5f262db03 ; alias Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : f948 : 9597 : 7253 : 922a : 400 : 0 ]: 5061 ; branch = z9hG4bKPj16be0694dc6763eb66de5ec5f262db03
 Via :  SIP / 2.0 / TLS  [ 2803 : 6080 : f8bc : 9272 : e488 : 9927 : 400 : 0 ]: 58279 ; rport = 58279 ; получено = 2803 : 6080 : f8bc : 9272 : e488 : 9927 : 400 : 0 ; ветвь = z9hG4bKPjYp9LqI0D8zJ . wly5wyMyVaH9fUwIU921 ; псевдоним Запись - Маршрут : < sip : 54.172 . 60.0 : 5060 ; lr ; r2 = on ; twnat = sip : 69.171 . 251.112 : 62080 > Запись - Маршрут : < sip : 54.172 . 60.0 : 5061 ; транспорт = tls ; lr ; r2 = on ; twnat = sip : 69.171 . 251.112 : 62080 > Record - Route : < sip : wa . meta . vc ; transport = tls ; lr > Record - Route : < sip : onevc - sip - proxy . fbinfra . net : 8191 ; transport = tls ; lr > Contact : < sip :+ 172.25 . 43.84 : 5060 > Разрешить :  INVITE ,  ACK ,  CANCEL ,  OPTIONS ,  BYE ,  REFER ,  NOTIFY
 Content - Type :  application / sdp X - Twilio - CallSid : CAd4d6e59a356c4d1b0ee85323b2d9dab5 Content - Length : 444 Content - Type :  application / sdp
 Content - Length : 444 

v = 0 
o = root  477560318 477560318  IN  IP4 172.18.156.61 
s = Twilio Media Gateway 
c = IN IP4  168.86 . 137.174 
t = 0 0 
m = audio  12710  RTP / SAVP  111 126 
a = rtpmap : 111  opus / 48000 / 2 
a = fmtp : 111  maxplaybackrate = 16000 ; sprop - maxcapturerate = 16000 ; maxaveragebitrate = 20000 ; useinbandfec = 1 
a = rtpmap : 126  telephone - event / 8000 
a = fmtp : 126 0 - 16 
a = crypto :************************************************************************* 
a = ptime : 20 
a = maxptime : 20 
a = sendrecv

Настройка SDES для обмена ключами SRTP

Протокол безопасного обмена ключами в реальном времени (SRTP) — это криптографический протокол, используемый для безопасного обмена ключами шифрования между двумя сторонами по незащищенному каналу связи.
Вы можете настроить обмен ключами SRTP одним из двух способов:
DTLS (по умолчанию) — стандартный для отрасли метод обмена ключами с шифрованием. Рекомендуется.SDES — В протокол SDP включен ключ в открытом текстовом виде, который передается по защищенному протоколу сигнализации, такому как SIP или Graph API. При использовании SDES отпадает необходимость в STUN, ICE и DTLS, что может помочь сократить время установления соединения.

Ответ с ошибкой

Получить протокол обмена ключами SRTP

Параметры конечной точки
Заполнитель Описание Пример значения
<PHONE_NUMBER_ID>
Целое число
Необходимый

Рабочий телефонный номер, для которого вы обновляете настройки API вызовов.
+12784358810
Параметры отклика
Параметр Описание Пример значения
srtp_key_exchange_protocol
Нить
Тип протокола обмена ключами SRTP, настроенного для запрашиваемого номера корпоративного телефона
Возможные значения: SDES и DTLS.
По умолчанию используется DTLS.
Примечание: Если это поле не было явно задано, оно не будет возвращено.
«SDES»
Ответ с ошибкой

IP-адреса

IP-адреса, используемые для настройки SIP, совпадают с адресами, указанными для веб-перехватчиков в разделе «IP-адреса веб-перехватчиков Cloud API».
Данная ссылка предназначена исключительно для указания IP-адресов, которые следует разрешить для SIP-трафика. При включении SIP веб-хуки, связанные с вызовами, не отправляются.

Поиск неисправностей

Дополнительные вопросы и ответы, касающиеся SIP, см. в разделе «Часто задаваемые вопросы по SIP», а ошибки SIP — в разделе « Ошибки SIP» — для получения информации об ошибках и решениях, связанных с SIP.