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


API для комнат для структурированных собраний

Виртуальные комнаты позволяют разработчикам с основными возможностями безопасности и контроля создавать хорошо структурированные возможности взаимодействия, такие как виртуальные встречи и групповые связи. Разработчики могут использовать виртуальные комнаты для проведения голосовых, видео и ТСОП звонков. Безопасность и элементы управления в комнатах можно классифицировать следующим образом.

  • Безопасность доступа пользователей и элементы управления применяются к участникам вызова, управляя тем, кто может присоединиться к вызову и какие действия они могут предпринять во время звонка. Например, во время виртуальной встречи пациента с врачом, только авторизованный персонал больницы и пациенты могут присоединиться к вызову. Ограничение участников сохраняет конфиденциальность пациентов, и участники не превышают назначенные им роли и привилегии, чтобы нарушить текущий вызов.

  • Безопасность и элементы управления на уровне помещений применяются на уровне вызова для управления тем, когда вызов может выполняться и какие возможности доступны во время вызова. Например, учащиеся могут присоединиться только к вызову класса в течение выделенного времени, но вызывающий ТСОП не может присоединиться к одному вызову класса.

Возможности высокого уровня, поддерживаемые в виртуальных комнатах

Возможность Поддерживается в вызове комнат
Голос (VoIP) ✔️
Видео ✔️
Клиент, инициированный телефонным подключением к номеру ТСОП ✔️
Сервер, инициированный телефонным подключением к номеру ТСОП ✔️
Управление вызовами на стороне сервера (автоматизация вызовов)* ✔️
Телефонная связь ТСОП
Асинхронное обмен сообщениями (чат)
Взаимодействие с Microsoft Teams

* Применяются некоторые исключения. Полный список см. в разделе "Возможности автоматизации вызовов".

Когда следует использовать виртуальные комнаты

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

Состояние Использование комнат
Если важно контролировать, кто может присоединиться к вызову (только приглашение). ✔️
Когда важно управлять началом и окончанием вызова. ✔️
Когда роли и разрешения пользователей необходимы для проведения хорошо управляемых коммуникаций. ✔️
Если решение требует взаимодействия Teams.*

* Если решение требует взаимодействия между Teams и Службами коммуникации Azure, используйте вызовы взаимодействия Teams.

Как проводить вызовы в виртуальных комнатах

На высоком уровне для проведения звонков в виртуальных комнатах необходимо создать и управлять комнатами. В следующей таблице описывается, как разрешить участникам присоединяться к вызовам и выполнять операции в вызове из пакета SDK для вызовов на стороне клиента и на стороне сервера.

Возможность ACS SDK Клиентский пакет SDK для сервера Описание
Создание виртуальных комнат и управление ими Пакет SDK для виртуальных комнат Сервер Пакет SDK для виртуальных комнат позволяет разработчикам создавать виртуальные комнаты и управлять ими, добавлять и удалять пользователей, назначать и обновлять роли пользователей, устанавливать или обновлять расписания виртуальных комнат. Разработчики также могут задать ограничения безопасности, например ограничить исходящий номер ТСОП из комнат.
Присоединение звонка виртуальных комнат с голосовой связью, видео или ТСОП и выполнение операций, инициированных клиентом в вызове Вызов пакета SDK Клиент Пакет SDK для вызывающего клиента позволяет пользователям присоединяться к вызову виртуальных комнат и выполнять операции на стороне клиента, разрешенные назначенными ролями пользователей. Безопасность в вызове виртуальных комнат обеспечивается путем применения списка, расписания, ролей пользователей и ограничений управления, заданных путем создания и управления виртуальными комнатами. Используя пакет SDK для вызовов клиента, разработчики позволяют участникам вызова выполнять такие операции, как отключение и отключение звонка, общий доступ к экрану, включение и отключение видео для участника ТСОП и т. д.
Управление операциями на стороне сервера Пакет SDK службы автоматизации вызовов Сервер Пакет SDK службы автоматизации вызовов позволяет разработчикам выполнять операции в вызове на стороне сервера. Операции с вызовами включают абонентскую связь, инициированную сервером, к номеру ТСОП, записи звонков, отправке и получению DTMF, отправке объявлений определенным пользователям и т. д. Так как выполнение операций вызова на стороне сервера не зависит от пользователей и управляется разработчиками, эти действия не контролируются ролями пользователей.

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

Возможность Пакет SDK для сервера комнат Вызов пакета SDK для клиента Пакет SDK для сервера автоматизации вызовов
Управление виртуальными комнатами: создание, получение, обновление, список и удаление виртуальных комнат ✔️
Управление списками виртуальных комнат— добавление и обновление и удаление пользователя в виртуальную комнату ✔️
Управление разрешениями участников вызовов виртуальных комнат — назначение и обновление ролей пользователей ✔️
Управление расписанием виртуальных комнат — разрешенное расписание набора и обновления виртуальных комнат ✔️
Управление средствами управления безопасностью виртуальных комнат— флаг установки и обновления, чтобы разрешить исходящий ТСОП из определенных виртуальных комнат ✔️
Получение списка пользователей, приглашенных для присоединения к виртуальной комнате ✔️
Пользователь инициирует вызов виртуальных комнат или присоединяет выполняемый вызов. ✔️
Подключение к пользователю ТСОП ✔️ ✔️
Добавление и удаление участников VoIP в выполняемый вызов ✔️ ✔️
Получение списка участников, присоединившихся к вызову во время выполнения ✔️ ✔️
Заголовки вызовов "Запуск и остановка" и "Изменение заголовков" ✔️
Управление записью вызовов ✔️
Отправка и получение DTMF от участников ТСОП ✔️
Воспроизведение звуковых запросов участникам ✔️

Полный список операций на стороне клиента во время вызова и их использование см. в документации пакета SDK для вызовов клиента Calling client SDK.

Управление вызовами виртуальных комнат на стороне сервера с помощью пакета SDK для сервера автоматизации вызовов

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

Возможность автоматизации вызовов Поддерживается в вызове комнат
Участник ТСОП с телефонным подключением ✔️
Отправка и чтение DTMF участнику ТСОП ✔️
Отправка объявлений определенным участникам звонка ✔️
Добавление и удаление участника VoIP из текущего вызова ✔️
Завершение вызова для всех пользователей ✔️
Транскрибирование вызовов* ✔️
Потоковая передача аудиомедийных носителей* ✔️

* В настоящее время в общедоступной предварительной версии.

На этом рисунке показаны основные понятия для управления комнатами и присоединения к ней.

Схема управления комнатами.

Сервер, инициированный ТСОП, с помощью пакета SDK для сервера автоматизации вызовов

Разработчики могут активировать и деактивировать возможность подключения к участнику ТСОП, задав флаг pstnDialoutEnabled для конкретной комнаты. После того как разработчик устанавливает pstnDialoutEnabled=TRUE для комнаты, разработчики могут вызвать участника ТСОП на стороне сервера с помощью службы автоматизации вызовов, не требуя участия на стороне клиента.

Например, пациент может запросить службу интерпретации для предстоящей виртуальной встречи с врачом. В большинстве случаев номер телефона службы интерпретации определяется динамически с помощью внутреннего процесса. Эта возможность ТСОП на стороне сервера позволяет разработчикам определить целевой номер телефона, инициировать звонок и добавить его в виртуальный звонок пациента, не требуя каких-либо действий на стороне клиента.

Выполните следующие действия, чтобы добавить номер ТСОП в вызов комнаты с помощью пакета SDK службы автоматизации вызовов:

  1. Создание комнаты с флагом pstnDialoutEnabled True
  2. Участники запускают звонок в комнате
  3. Использование пакета SDK службы автоматизации вызовов для подключения к вызову комнаты с помощью идентификатора комнаты
  4. Использование пакета SDK службы автоматизации звонков для подключения к номеру ТСОП
  5. Пользователь ТСОП принимает и присоединяется к вызову комнаты

Управление вызовами в виртуальных комнатах с использованием клиентских SDK для вызовов

Используйте пакеты SDK для звонков, чтобы присоединиться к вызову комнаты. Вызовы комнат можно присоединить с помощью пакетов SDK для вызовов в Интернете, iOS или Android. Примеры и способы присоединения к звонку в комнате см. в разделе "Присоединение к звонку в комнате".

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

Клиент, инициированный ТСОП, с помощью пакета SDK для клиента для вызовов

Разработчики могут включить или отключить возможность участников вызова дозвониться до участника PSTN, установив флаг pstnDialoutEnabled, специфичный для комнаты. После того как разработчик устанавливает pstnDialoutEnabled=TRUE для комнаты, участники вызова с ролью докладчика могут вызвать участника ТСОП из своего вызывающего клиента. Следующие шаги используются для добавления номера ТСОП в вызов комнаты с помощью пакета SDK для вызывающего клиента.

  1. Создайте комнату с флагом pstnDialoutEnabled, равным True.
  2. Участники начинают комнатный звонок.
  3. Участник с ролью презентатора добавляет номер PSTN в вызов.
  4. Пользователь телефонной сети принимает вызов и присоединяется к конференц-вызову.

API виртуальных комнат и пакеты SDK

Комнаты создаются и управляются с помощью API-интерфейсов комнат или пакетов SDK. Используйте API и пакеты SDK комнат в серверном приложении для room операций:

  • Создание
  • Изменить
  • Удаление
  • Установка и обновление списка участников
  • Установка и изменение срока действия комнаты
  • Назначение ролей и разрешений пользователям
Пакет SDK для виртуальных комнат Версия Штат
Пакеты SDK для виртуальных комнат 2025-03-13 Общая доступность — полностью поддерживается
Пакеты SDK для виртуальных комнат 15.04.2024 Общая доступность — полностью поддерживается
Пакеты SDK для виртуальных комнат 2023-06-14 Общая доступность — полностью поддерживается
Пакеты SDK для виртуальных комнат 2023-10-30 Общедоступная предварительная версия — полностью поддерживается
Пакеты SDK для виртуальных комнат 2023-03-31 Общедоступная предварительная версия — прекращена
Пакеты SDK для виртуальных комнат 2022-02-01 Общедоступная предварительная версия — прекращена
Пакеты SDK для виртуальных комнат 2021-04-07 Общедоступная предварительная версия — прекращена

Предопределенные роли и разрешения участников в вызовах виртуальных комнат

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

В следующей таблице представлены подробные возможности, сопоставленные с ролями. На высоком уровне роль докладчика имеет полный контроль, у участника есть возможности аудио, видео и общий доступ к экрану, участники имеют возможности аудио и видео, в то время как потребитель может получать только аудио, видео и общий доступ к экранам.

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

Возможность Роль: выступающий Роль: сотрудник Роль: участник Роль: потребитель
Элементы управления "Средний вызов"
— Включение и отключение видео ✔️ ✔️ ✔️
— отключить или отменить микрофон ✔️ ✔️ ✔️
— Отключить удаленный пользователь ✔️
— Переключение между камерами ✔️ ✔️ ✔️
— активный динамик ✔️ ✔️ ✔️ ✔️
— Выбор говорящего для звонков ✔️ ✔️ ✔️ ✔️
— выбор микрофона для звонков ✔️ ✔️ ✔️
— Отображение состояния участников: простой, подключение, подключено, в ожидании, отключение, отключено и т. д. ✔️ ✔️ ✔️ ✔️
— Показать состояние вызова: предварительные медиа, входящий, подключение, идет звонок, подключено, удержание, отключение, отключено и т. д. ✔️ ✔️ ✔️ ✔️
— Показывает, отключен ли участник ✔️ ✔️ ✔️ ✔️
- Показать причину, по которой участник оставил звонок ✔️ ✔️ ✔️ ✔️
— Запуск подписей вызовов ✔️ ✔️ ✔️ ✔️
— Изменение языка подписей ✔️ ✔️ ✔️ ✔️
- Приглашение присоединиться к участнику виртуальной комнаты к вызову ✔️
Общий доступ к экранам
— экран общего доступа ✔️ * ✔️ *
— Предоставление общего доступа к приложению ✔️ * ✔️ *
— Общий доступ к вкладке браузера ✔️ * ✔️ *
— Участники могут просматривать общий экран ✔️ ✔️ ✔️ ✔️
Управление реестром
— удаление участника ✔️
Управление устройствами
— запрашивать разрешение на использование звука и видео ✔️ ✔️ ✔️
— Получение списка камер ✔️ ✔️ ✔️
— Установка камеры ✔️ ✔️ ✔️
— Получение выбранной камеры ✔️ ✔️ ✔️
— получение списка микрофонов ✔️ * ✔️ * ✔️ *
— Установка микрофона ✔️ * ✔️ * ✔️ *
— Получение выбранного микрофона ✔️ * ✔️ * ✔️ *
— Получение списка динамиков ✔️ * ✔️ * ✔️ * ✔️ *
— Настройка динамиков ✔️ * ✔️ * ✔️ * ✔️ *
— Получение выбранного говорящего ✔️ ✔️ ✔️ ✔️
Визуализация видео
— Отрисовка видео в нескольких местах (локальная камера или удаленный поток) ✔️ ✔️ ✔️ ✔️
(Только удаленный)
— настройка и обновление режима масштабирования видео ✔️ ✔️ ✔️ ✔️
(Только удаленный)
— отрисовка удаленного видеопотока ✔️ ✔️ ✔️ ✔️
Подключение к участникам ТСОП на стороне клиента
— Абоненты ТСОП из звонков виртуальных комнат ✔️

* Доступно только в пакете SDK для веб-вызовов.

Обработка событий

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

  • CallStarted публикуется при запуске вызова комнаты.
  • CallEnded публикуется при завершении вызова комнаты.
  • CallParticipantAdded публикуется при присоединении нового участника к вызову комнаты.
  • CallParticipantRemoved публикуется при удалении участника из вызова комнаты.

Устаревшие возможности

Более ранняя общедоступная предварительная версия API комнат поддерживает две конфигурации для управления списком комнат следующим образом:

  • Только комната "Пригласить ", которая позволила только приглашенным пользователям присоединиться к вызову комнат.
  • Открытая комната, которая была менее безопасной. В конфигурации открытых комнат все Службы коммуникации Azure пользователи смогли присоединиться к вызову без явного приглашения через список комнат.

Концепция Open Room теперь устарела. Идти вперед, Пригласить только номера являются единственным поддерживаемым типом комнаты.

Известные ограничения

  • Служба автоматизации вызовов Azure Communication Services в настоящее время не поддерживает звонки в комнаты.

Дальнейшие шаги