Поделиться через


Общие сведения о пакете SDK для вызовов

Службы коммуникации Azure позволяет браузерам, приложениям и службам конечных пользователей управлять голосовой связью и видеосвязи. На этой странице рассматривается пакет SDK для вызова клиента, который можно внедрить на веб-сайты и собственные приложения. На этой странице приведены подробные описания функций клиента звонков, таких как сведения о поддержке платформы и браузера. Службы программно управляют и получают доступ к вызовам с помощью API службы автоматизации вызовов. API комнат — это необязательный СЛУЖБЫ КОММУНИКАЦИИ AZURE API, который добавляет дополнительные функции в голосовой или видеозвонок, например роли и разрешения.

Чтобы создать собственный интерфейс пользователя с помощью пакета SDK для вызовов, ознакомьтесь с краткими руководствами по вызову или примером героя вызова.

Если вы хотите помочь с интерфейсом конечного пользователя, библиотека пользовательского интерфейса Службы коммуникации Azure предоставляет коллекцию компонентов пользовательского интерфейса, готовых к работе с открытым исходным кодом, чтобы перейти в приложение. С помощью этого набора предварительно созданных элементов управления вы можете создавать красивые возможности взаимодействия с помощью языка разработки Fluent Майкрософт. Если вы хотите узнать больше о библиотеке пользовательского интерфейса, посетите сайт обзора.

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

Ссылки на пакет SDK

Платформа Web (JavaScript) Windows (.NET) iOS Android Другие
Совершение вызовов npm NuGet GitHub Maven
Библиотека пользовательского интерфейса npm - GitHub GitHub GitHub, Storybook

Ключевые функции

  • Управление устройствами и мультимедиа. Пакет SDK для вызовов предоставляет средства для привязки к аудио- и видеоустройствам, кодирует содержимое для эффективной передачи через плоскость передачи данных и отображает содержимое на указанных выходных устройствах и в представлениях. Для совместного использования экрана и приложений также предоставляются интерфейсы API.
  • ТСОП — пакет SDK для звонков может инициировать голосовые звонки с традиционной общедоступной телефонной сетью, используя номера телефонов, которые вы приобретаете в портал Azure или программно. Вы также можете принести собственные номера с помощью контроллеров границ сеанса.
  • Собрания Teams и звонки . Пакет SDK для звонков может присоединяться к собраниям Teams и взаимодействовать с голосовой и видеопланой Teams.
  • Шифрование. Пакет SDK для вызовов шифрует трафик и предотвращает несанкционированное подключение к каналу связи.
  • Адресация. Службы коммуникации Azure предоставляют универсальные удостоверения, используемые для адресации конечных точек связи. Клиенты могут использовать эти удостоверения для проверки подлинности службы и общения друг с другом. Эти удостоверения используются в ИНТЕРФЕЙСАх API вызовов, которые предоставляют клиентам представление о том, кто подключен к вызову (список).
  • Безопасность доступа пользователей
  • Уведомления. Пакет SDK для вызовов предоставляет интерфейсы API, позволяющие клиентам получать уведомления о входящем вызове. В ситуациях, когда ваше приложение не работает на переднем плане, шаблоны доступны для запуска всплывающих уведомлений ("toasts") для информирования конечных пользователей о входящем вызове.
  • Статистика мультимедиа — пакет SDK для вызовов предоставляет подробные сведения о метриках голосовых и видеозвонков . Благодаря этой информации разработчики имеют более четкое представление о качестве звонков и могут принимать обоснованные решения для дальнейшего улучшения взаимодействия.
  • Ограничения видео. Пакет SDK для звонков предоставляет API-интерфейсы , которые получают возможность регулировать качество видео среди других параметров во время видеозвонков путем настройки параметров , таких как разрешение и частота кадров, поддерживающие различные ситуации вызова для различных уровней качества видео.
  • Диагностика для пользователей (UFD) — пакет SDK для вызовов предоставляет события , предназначенные для предоставления аналитических сведений о базовых проблемах, которые могут повлиять на качество вызовов. Разработчики могут подписаться на триггеры, такие как слабые сетевые сигналы или отключенные микрофоны, гарантируя, что они всегда знают о любых факторах, влияющих на вызовы.

Подробные возможности

В следующем списке представлен набор функций, которые в настоящее время доступны в пакетах SDK для вызовов Службы коммуникации Azure.

Группа функций Возможность JS Windows Java (Android) Objective-C (iOS)
Основные возможности Настройка индивидуального вызова между двумя пользователями ✔️ ✔️ ✔️ ✔️
Поместите групповой вызов с более чем двумя пользователями (до 100 пользователей) ✔️ ✔️ ✔️ ✔️
Перевести индивидуальный вызов с двумя пользователями в групповой вызов с более чем двумя пользователями ✔️ ✔️ ✔️ ✔️
Присоединение к групповому вызову после запуска ✔️ ✔️ ✔️ ✔️
Приглашение другого участника голосовых вызовов через IP присоединиться к текущему групповому вызову ✔️ ✔️ ✔️ ✔️
Управление в процессе вызова Включение или отключение видео ✔️ ✔️ ✔️ ✔️
Включение или отключение микрофона ✔️ ✔️ ✔️ ✔️
Отключение звука других участников ✔️ ✔️1 ✔️1 ✔️1
Переключение между камерами ✔️ ✔️ ✔️ ✔️
Локальное удержание/отмена удержания ✔️ ✔️ ✔️ ✔️
Активный динамик ✔️ ✔️ ✔️ ✔️
Выбор динамика для вызовов ✔️ ✔️ ✔️ ✔️
Выбор микрофона для вызовов ✔️ ✔️ ✔️ ✔️
Отображение состояния участника
Бездействие, Предварительные сигналы и сообщения, Подключение, Подключено, На удержании, В зале ожидания, Разъединенный
✔️ ✔️ ✔️ ✔️
Отображение состояния вызова
Предварительные сигналы и сообщения, Входящий, Подключение, Звонок, Подключено, На удержании, Отключение, Разъединенный
✔️ ✔️ ✔️ ✔️
Отображение того, отключен ли у участника микрофон ✔️ ✔️ ✔️ ✔️
Отображение причины, по которой участник закончил вызов ✔️ ✔️ ✔️ ✔️
Общий доступ к экрану Общий доступ ко всему экрану в приложении ✔️ ✔️2 ✔️2 ✔️2
Предоставление общего доступа к определенному приложению (из списка запущенных приложений) ✔️ ✔️2
Предоставление общего доступа к вкладке веб-браузера из списка открытых вкладок ✔️
Общий доступ к системным звукам во время общего доступа к экранам ✔️
Участник может просмотреть демонстрацию удаленного экрана ✔️ ✔️ ✔️ ✔️
Список Список участников ✔️ ✔️ ✔️ ✔️
Удалить участника ✔️ ✔️ ✔️ ✔️
ТСОП Создать индивидуальный вызов с участником ТСОП ✔️ ✔️ ✔️ ✔️
Создать групповой вызов с участниками ТСОП ✔️ ✔️ ✔️ ✔️
Перевести индивидуальный вызов с участником ТСОП в групповой вызов ✔️ ✔️ ✔️ ✔️
Возможность отключиться от группового вызова в качестве участника ТСОП ✔️ ✔️ ✔️ ✔️
Поддержка ранних носителей ✔️ ✔️ ✔️ ✔️
Общие Проверьте микрофон, динамик и камеру с помощью службы проверки звука (доступна по вызову 8:echo123) ✔️ ✔️ ✔️ ✔️
Управление устройствами Запрос разрешения на использование аудио и видео ✔️ ✔️ ✔️ ✔️
Получение списка камер ✔️ ✔️ ✔️ ✔️
Настройка камеры ✔️ ✔️ ✔️ ✔️
Получение выбранной камеры ✔️ ✔️ ✔️ ✔️
Получение списка микрофонов ✔️ ✔️ 3 3
Настройка микрофона ✔️ ✔️ 3 3
Получение выбранного микрофона ✔️ ✔️ 3 3
Получение списка докладчиков ✔️ ✔️ 3 3
Настройка параметров докладчика ✔️ ✔️ 3 3
Получение выбранного докладчика ✔️ ✔️ 3 3
Рендеринг видео Рендеринг одного видео во многих расположениях (локальная камера или удаленный поток) ✔️ ✔️ ✔️ ✔️
Настройка или обновление режима масштабирования ✔️ ✔️ ✔️ ✔️
Рендеринг удаленного видеопотока ✔️ ✔️ ✔️ ✔️
Видеоэффекты Размытие фона ✔️ ✔️ ✔️ ✔️
Пользовательское фоновое изображение ✔️ ✔️ ✔️ ✔️
Звуковые эффекты Музыкальный режим ✔️ ✔️ ✔️
Эхоподавление ✔️ ✔️ ✔️
Подавление шума ✔️ ✔️ ✔️ ✔️
Автоматическое управление получением (AGC) ✔️ ✔️ ✔️
Уведомления 4 Push-уведомления ✔️ ✔️ ✔️ ✔️
Пользовательский контекст Добавление пользовательских заголовков (UUI) или пользовательских заголовков в вызов ✔️

1 Возможность отключения других пользователей в настоящее время доступна в общедоступной предварительной версии.

2 Возможность общего экрана может быть достигнута с помощью API необработанных мультимедиа. Дополнительные сведения см . в кратком руководстве по доступу к необработанным носителям.

3 Пакет SDK для вызовов не имеет явного API для этих функций. Вместо этого используйте API ОС Android и iOS.

4 Максимальное значение для TTL на собственных платформах составляет 180 дней (1552 000 секунд), а минимальное значение — 5 минут (300 секунд). Для CTE (настраиваемая конечная точка Teams)/M365 Identity максимальное значение TTL составляет 24 часа (86 400 секунд).

Поддержка пакета SDK JavaScript для вызовов в ОС и браузерах

В следующей таблице представлен набор поддерживаемых браузеров, доступных в настоящее время. Мы поддерживаем последние три основных версии браузера (последние три дополнительных версий для Safari), если иное не указано.

Платформа Chrome Safari Microsoft Edge Firefox Веб-представление Electron
Android ✔️ ✔️ ✔️
iOS ✔️ ✔️ ✔️ ✔️
macOS ✔️ ✔️ ✔️ ✔️ ✔️
Windows ✔️ ✔️ ✔️ ✔️
Ubuntu/Linux ✔️
  • Исходящий общий доступ к экранам не поддерживается в мобильных браузерах iOS или Android.
  • Поддержка Firefox доступна в общедоступной предварительной версии.
  • В настоящее время вызывающий пакет SDK поддерживает только Android System WebView в Android, iOS WebView (WKWebView) в общедоступной предварительной версии. Другие типы внедренных браузеров или WebView на других платформах ОС официально не поддерживаются, например GeckoView, Chromium Embedded Framework (CEF), Microsoft Edge WebView2. Запуск пакета SDK для вызовов JavaScript на этих платформах не тестируется, он может работать или не работает.
  • Приложение iOS в Safari не может перечислить или выбрать устройства микрофона и динамика (например, Bluetooth). Эта проблема является ограничением для iOS, а выбор устройства по умолчанию управляет операционной системой.

Модель безопасности вызова между клиентом и браузером

Использование WebRTC по протоколу HTTPS

Интерфейсы API WebRTC, например getUserMedia, требуют, чтобы вызывающее их приложение обслуживалось по протоколу HTTPS. Для локальной разработки можно использовать http://localhost.

Внедрение пакета SDK для вызова Служб коммуникации в iframe

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

Если вы хотите использовать элемент iframe для размещения части приложения из другого домена, необходимо добавить в него атрибут allow с правильным значением.

Например, этот iframe обеспечивает доступ как к камере, так и к микрофону:

<iframe allow="camera *; microphone *">

Поддержка Android Calling SDK

  • Поддержка Android API уровня 21 или выше
  • Поддержка Java 7 или более поздней версии
  • Поддержка Android Studio 2.0

Мы настоятельно рекомендуем определять и проверять сценарий, посещая поддерживаемые платформы Android.

Поддержка iOS Calling SDK

  • Поддержка iOS 10.0+ во время сборки и iOS 12.0+ во время выполнения
  • Xcode 12.0+
  • Поддержка iPadOS 13.0+

Максимальная длительность вызова

Максимальная продолжительность вызова составляет 30 часов, и участники, которые достигают максимального времени существования звонка в течение 30 часов , отключаются от вызова.

Поддерживаемо количество входящих видеопотоков

Пакет SDK для вызовов Службы коммуникации Azure поддерживает следующие конфигурации потоковой передачи:

Лимит Интернет Windows/Android/iOS
Максимальное число исходящих локальных потоков, которые можно отправить одновременно 1 видео и 1 общий доступ к экрану 1 видео и 1 совместное использование экрана
Максимальное число исходящих удаленных потоков, которые можно одновременно преобразовать для просмотра 16 видео + 1 общий доступ к экранам в классических браузерах*, 4 видео + 1 общий доступ к экранам в веб-браузерах 9 видео + 1 общий доступ к экрану

* Начиная с пакета SDK для веб-звонков Службы коммуникации Azure версии 1.16.3. Хотя пакет SDK для вызовов не применяет эти ограничения, пользователи могут столкнуться с снижением производительности, если они превышены. Используйте API оптимального числа видео, чтобы определить количество входящих видеопотоков, которые могут поддерживать веб-среда. Чтобы правильно поддерживать 16 входящих видео, компьютеру требуется не менее 16 ГБ ОЗУ и 4-ядер или больше ЦП, который меньше 3 лет.

Поддерживаемые разрешения видео

Пакет SDK для вызова Службы коммуникации Azure автоматически настраивает разрешения потоков видео и общего доступа к экрану во время вызова.

Примечание.

Разрешение может отличаться в зависимости от количества участников вызова, объема пропускной способности, доступной клиенту, аппаратных возможностей локального участника, который отображает удаленные видеопотоки и другие общие параметры вызова.

Пакет SDK для вызовов Службы коммуникации Azure поддерживает отправку следующих разрешений видео

Максимальное разрешение видео WebJS iOS Android Окна
Отправка видео 720P 720P 720P 1080P
Отправка общего доступа к экрану 1080P 1080P 1080P 1080P
Получение удаленного видеопотока или общего доступа к экрану 1080P 1080P 1080P 1080P

Количество участников в службе поддержки звонков

  • До 350 пользователей могут присоединиться к групповому вызову, вызову комнаты или Teams + Службы коммуникации Azure звонка.
  • После того как размер звонка достигает 100+ участников, пакет SDK для звонков отображает только первые четыре доминирующих динамиков, имеющих активную видеокамеру.
  • Если число пользователей на вызове равно 100+, просматриваемое число входящих видео автоматически уменьшается с 4x4 (16 входящих видео) до 2x2 (4 входящих видео).
  • Когда число пользователей идет ниже 100, количество поддерживаемых входящих видео возвращается до 4x4 (16 входящих видео).

Время ожидания для вызова пакета SDK

Следующие тайм-ауты применяются к пакетам SDK для вызовов служб коммуникации:

Действие Время ожидания в секундах
Повторное подключение или удаление участника 60
Добавление новой модальности в вызов или ее удаление из него (запуск или завершение видео либо общий доступ к экрану) 40
Время ожидания операции передачи вызовов 60
Время ожидания для создания звонков 1:1 85
Время ожидания для группового вызова 85
Время ожидания создания вызовов ТСОП 115
Повышение времени ожидания звонка 1:1 115

Следующие шаги

  • Ознакомьтесь с общими потоками вызовов.
  • Узнайте о типах вызовов.
  • Узнайте об API автоматизации вызовов, который позволяет создавать рабочие процессы на основе сервера, которые могут направлять и контролировать вызовы с помощью клиентских приложений.
  • Запланируйте решение ТСОП.