Общие сведения о пакете 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 общий доступ к экрану |
* Начиная с Службы коммуникации Azure пакета SDK для веб-звонков версии 1.16.3, хотя пакет SDK для вызовов не применяет эти ограничения, пользователи могут столкнуться с снижением производительности, если они превышены. Используйте API оптимального числа видео, чтобы определить, сколько текущих входящих видеопотоков может поддерживать веб-среда. Для правильной поддержки 16 входящих видео компьютер должен иметь mimum 16 ГБ ОЗУ и 4-ядро или больше ЦП, который не старше 3 лет
Поддерживаемые разрешения видео
Пакет SDK для вызова Службы коммуникации Azure автоматически настраивает разрешения потоков видео и общего доступа к экрану во время вызова.
Примечание.
Разрешение может отличаться в зависимости от количества участников вызова, объема пропускной способности, доступной клиенту, аппаратных возможностей локального участника, который отображает удаленные видеостроки и другие общие параметры вызова.
Пакет SDK для вызовов Службы коммуникации Azure поддерживает отправку следующих разрешений видео
Максимальное разрешение видео | WebJS | iOS | Android | Окна |
---|---|---|---|---|
Отправка видео | 720P | 720P | 720P | 1080P |
Отправка общего доступа к экрану | 1080P | 1080P | 1080P | 1080P |
Получение удаленного видеопотока или общего доступа к экрану | 1080P | 1080P | 1080P | 1080P |
Количество участников в службе поддержки звонков
- До 350 пользователей могут присоединиться к групповому вызову, номеру или команде + ACS.
- После того как размер звонка достигает 100+ участников звонка, можно увидеть только первые 4 наиболее доминирующих динамиков, которые имеют свою видеокамеру.
- Если число пользователей на вызове равно 100+, просматриваемое число входящих видео отрисовывается автоматически с 4x4 (16 входящих видео) до 2x2 (4 входящих видео).
- Когда число пользователей идет ниже 100, количество поддерживаемых входящих видео возвращается до 4x4 (16 входящих видео).
Время ожидания пакета SDK для вызовов
К пакетам SDK для вызовов Служб коммуникации применяются следующие значения времени ожидания:
Действие | Время ожидания в секундах |
---|---|
Повторное подключение или удаление участника | 60 |
Добавление новой модальности в вызов или ее удаление из него (запуск или завершение видео либо общий доступ к экрану) | 40 |
Время ожидания операции передачи вызова | 60 |
Время ожидания установки вызова в формате 1:1 | 85 |
Время ожидания установки группового вызова | 85 |
Время ожидания установки вызова ТСОП | 115 |
Время ожидания перевода вызова из формата 1:1 в формат группового вызова | 115 |
Следующие шаги
Дополнительные сведения см. в следующих статьях:
- Знакомство с общими сведениями о потоках вызовов
- Узнайте о типах вызовов
- Узнайте об API автоматизации вызовов, который позволяет создавать рабочие процессы на основе сервера, которые могут направлять и контролировать вызовы с помощью клиентских приложений.
- Планирование решения ТСОП