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


Краткое руководство: создание и управление ресурсом помещения

Это краткое руководство поможет вам приступить к работе с комнатами Служб коммуникаций Azure. A room — это пространство связи, управляемое сервером, для известного фиксированного набора участников для совместной работы в течение предопределенной длительности. Концептуальная документация по комнатам охватывает более подробные сведения и варианты использования для rooms.

Объектная модель

В следующей room таблице перечислены основные свойства объектов:

Имя Описание
roomId Уникальный room идентификатор.
validFrom Самое раннее время, когда можно использовать room.
validUntil Последнее время использования room.
pstnDialOutEnabled Включите или отключите возможность звонков на номер ТСОП из комнаты.
participants Список участников для room. Указан как CommunicationUserIdentifier.
roleType Роль участника комнаты. Может быть Presenter, AttendeeConsumer или Collaborator.

Предварительные требования

Установка

Добавление расширения

Добавьте расширение Службы коммуникации Azure для Azure CLI с помощью az extension команды.

az extension add --name communication

Вход в Azure CLI

Вам нужно войти в Azure CLI. Вы можете войти, выполнив az login команду из терминала и предоставив учетные данные.

Сохранение строки подключения в переменной среды

Вы можете настроить AZURE_COMMUNICATION_CONNECTION_STRING переменную среды для использования операциями ключей Azure CLI без необходимости --connection_string передачи строки подключения. Чтобы настроить переменную среды, откройте окно консоли и выберите операционную систему на следующих вкладках. Замените <connectionString> фактической строкой подключения.

setx AZURE_COMMUNICATION_CONNECTION_STRING "<connectionString>"

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

Операции

Создание комнаты

Используйте команду rooms create, чтобы создать комнату.

az communication rooms create --presenter-participants "<participantId>" --consumer-participants "<participantId>" --attendee-participant "<participantId>" --valid-from "<valid-from>" --valid-until "<valid-until>" --pstn-dial-out-enabled "<pstn-dial-out-enabled>" --connection-string "<connection-string>"
  • При необходимости можно <participantId> указать тип участника, такие как участник-докладчик, участник-потребитель или участник-слушатель. Если значение не указано, значение по умолчанию пусто.
  • Замените <connection-string> на строку подключения для Служб коммуникации Azure.
  • Можно <valid-from> указать метку времени по желанию, когда комната будет открыта для присоединения, в формате ISO8601, например 2022-07-14T10:21.
  • Необязательно используйте <valid-until> для указания временной метки, когда к комнате больше нельзя присоединиться, в формате ISO8601, например: 2022-07-14T10:21.
  • Используйте <pstn-dial-out-enabled> при необходимости, установив этот флаг ("True" или "False"), чтобы включить или отключить ПСТН для вызова из комнаты. По умолчанию этот флаг имеет значение False при создании комнаты.

Если вы сохранили строка подключения в переменных среды, как указано выше, вам не потребуется передать их команде.

az communication rooms create 

Включение возможности вызова через ОТС из комнаты

Выход на общественную коммутируемую телефонную сеть (PSTN) можно активировать во время rooms create, установив параметр --pstn-dial-out-enabled в значение "True". Эта функция также может быть изменена rooms update во время указания параметра --pstn-dial-out-enabled.

az communication rooms create --pstn-dial-out-enabled "<pstn-dial-out-enabled>" --connection-string "<connection-string>"
az communication rooms update --pstn-dial-out-enabled "<pstn-dial-out-enabled>" --room "<roomId>"
  • Чтобы включить или отключить функцию исходящих звонков через ТфОП для комнаты, установите флаг <pstn-dial-out-enabled> ("True" или "False").

Получить номера

Команда rooms get возвращает атрибуты существующей комнаты.

az communication rooms get --room "<roomId>" 
  • Замените <roomId> идентификатором комнаты.

Обновите временные рамки комнаты

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

az communication rooms update --valid-from "<valid-from>" --valid-until "<valid-until>" --pstn-dial-out-enabled "<pstn-dial-out-enabled>" --room "<roomId>"
  • Замените <valid-from> метку времени в формате ISO8601, например 2022-07-14T10:21, чтобы указать, когда комната открыта для присоединения. Следует использовать вместе с --valid-until.
  • Замените <valid-until> на метку времени в формате ISO8601, например 2022-07-14T10:21, чтобы указать, когда к комнате больше нельзя присоединиться. Следует использовать вместе с --valid-from.
  • Замените <pstn-dial-out-enabled> этот флаг ("True" или "False") для включения или отключения ТСОП (PSTN) для комнаты. Следует использовать вместе с --pstn-dial-out-enabled.
  • Замените <roomId> идентификатором комнаты.

Перечислите все активные комнаты

Команда rooms list возвращает все активные комнаты, принадлежащие ресурсу Службы коммуникации Azure.

az communication rooms list

Добавление новых участников или обновление существующих участников

При создании комнаты можно обновить комнату, добавив нового участника или обновив существующего участника. Перед вызовом room participant add-or-update команды убедитесь, что вы приобрели нового пользователя.

Используйте команду identity user create, чтобы создать нового участника, определяемого как participantId.

az communication identity user create

Добавьте пользователя в комнату в качестве участника.

az communication rooms participant add-or-update --attendee-participant "<participantId>" --room "<roomId>"
  • Замените <participantId> идентификатором участника. Если <participantId> нет в комнате, участник будет добавлен в комнату в роли участника. В противном случае роль участника обновляется до роли слушателя.
  • Замените <roomId> вашим идентификатором комнаты.

Получите список участников в комнате

az communication rooms participant get --room "<roomId>"
  • Замените <roomId> вашим идентификатором комнаты.

Удаление участника из комнаты

Вы можете удалить участника из комнаты с помощью rooms participant -remove.

az communication rooms participant remove --room "<roomId>" --participants "<participant1>" "<participant2>" "<participant3>"
  • Замените <roomId> идентификатором комнаты.
  • Замените <participant1>, <participant2>, <participant3> на ваши идентификаторы пользователей, полученные ранее с помощью команды identity user create.

Удаление комнаты

Аналогично созданию комнаты, можно также удалить комнату.

Используйте room delete команду для удаления существующей комнаты.

az communication rooms delete --room "<roomId>"
  • Замените <roomId> идентификатором комнаты.

Данное краткое руководство поможет вам начать работу с комнатами в Azure Communication Services. A room — это пространство связи, управляемое сервером, для известного фиксированного набора участников для совместной работы в течение предопределенной длительности. Концептуальная документация по комнатам охватывает дополнительные сведения и варианты использования для rooms.

Предварительные условия

Пример кода

Вы можете просмотреть и скачать пример кода для этого краткого запуска на сайте GitHub.

Настройка

Создание нового приложения C#

В окне консоли (cmd, PowerShell или Bash) выполните команду dotnet new, чтобы создать консольное приложение с именем RoomsQuickstart. Эта команда создает простой проект "Hello World" на языке C# с одним файлом исходного кода Program.cs.

dotnet new console -o RoomsQuickstart

Измените каталог на только что созданную папку приложения и выполните команду dotnet build, чтобы скомпилировать приложение.

cd RoomsQuickstart
dotnet build

Установка пакета

Установите клиентную библиотеку комнат коммуникации Azure для .NET с [NuGet][https://www.nuget.org/]:

dotnet add package Azure.Communication.Rooms

Вам потребуется использовать клиентскую библиотеку Комнат коммуникации Azure для .NET версии 1.1.0 или более поздней.

Настройка платформы приложения

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


using System;
using Azure;
using Azure.Core;
using Azure.Communication.Rooms;

namespace RoomsQuickstart
{
    class Program
    {
        static async System.Threading.Tasks.Task Main(string[] args)
        {
            Console.WriteLine("Azure Communication Services - Rooms Quickstart");

            // Quickstart code goes here
        }
    }
}

Инициализировать клиента комнаты

Создайте новый RoomsClient объект, который будет использоваться для создания новых rooms свойств и жизненного цикла и управления ими. Строка подключения вашего Communications Service будет использоваться для проверки подлинности запроса. Дополнительные сведения о строках подключения см. на этой странице.


// Find your Communication Services resource in the Azure portal
var connectionString = "<connection_string>";
RoomsClient roomsClient = new RoomsClient(connectionString);

Создание комнаты

Настройка участников комнаты

Чтобы настроить пользователей, которые могут присоединиться к комнате, вам потребуется список удостоверений этих пользователей. Вы можете следовать инструкциям здесь по созданию пользователей и выдаче маркеров доступа. Кроме того, если вы хотите создать пользователей по запросу, их можно создать с помощью CommunicationIdentityClient. Комнаты ACS в настоящее время поддерживают только участника комнаты типа CommunicationUserIdentifier, использование других типов CommunicationIdentity приведет к ошибке во время выполнения.

Чтобы использовать этот CommunicationIdentityClientпакет, установите следующий пакет:

dotnet add package Azure.Communication.Identity

Кроме того, импортируйте пространство имен пакета в верхней части Program.cs файла:

using Azure.Communication.Identity;

Теперь CommunicationIdentityClient можно инициализировать и использовать для создания пользователей:

// Create identities for users who will join the room
CommunicationIdentityClient identityClient = new CommunicationIdentityClient(connectionString);
CommunicationUserIdentifier user1 = identityClient.CreateUser();
CommunicationUserIdentifier user2 = identityClient.CreateUser();

Затем создайте список участников комнаты, ссылаясь на этих пользователей:

List<RoomParticipant> participants = new List<RoomParticipant>()
{
    new RoomParticipant(user1) { Role = ParticipantRole.Presenter },
    new RoomParticipant(user2) // The default participant role is ParticipantRole.Attendee
};

Инициализируйте комнату

Создайте новый room, используя participants, определенный в приведенном выше фрагменте кода.

// Create a room
DateTimeOffset validFrom = DateTimeOffset.UtcNow;
DateTimeOffset validUntil = validFrom.AddDays(1);
CancellationToken cancellationToken = new CancellationTokenSource().Token;

CommunicationRoom createdRoom = await roomsClient.CreateRoomAsync(validFrom, validUntil, participants, cancellationToken);

// CreateRoom or CreateRoomAsync methods can take CreateRoomOptions type as an input parameter.
bool pstnDialOutEnabled = false;
CreateRoomOptions createRoomOptions = new CreateRoomOptions()
{
    ValidFrom = validFrom,
    ValidUntil = validUntil,
    PstnDialOutEnabled = pstnDialOutEnabled,
    Participants = participants
};

createdRoom = await roomsClient.CreateRoomAsync(createRoomOptions, cancellationToken);
string roomId = createdRoom.Id;
Console.WriteLine("\nCreated room with id: " + roomId);

Поскольку rooms являются серверными сущностями, вы можете отслеживать и сохранять roomId в выбранном вами хранилище. Вы можете обратиться к roomId, чтобы просмотреть или обновить свойства объекта room.

Возможность звонков через ПСТН для комнаты

По умолчанию возможность исходящего набора ТСОП для каждого room отключена. Возможность дозвона через ТСОП может быть включена для room при создании, определив параметр pstnDialOutEnabled как true. Эта возможность также может быть изменена для параметра room путем выдачи запроса на обновление для pstnDialOutEnabled параметра.

// Create a room
CancellationToken cancellationToken = new CancellationTokenSource().Token;

// CreateRoom or CreateRoomAsync methods to create a room with PSTN dial out capability
bool pstnDialOutEnabled = true;
CreateRoomOptions createRoomOptions = new CreateRoomOptions()
{
    PstnDialOutEnabled = pstnDialOutEnabled,
};

CommunicationRoom createdRoom = await roomsClient.CreateRoomAsync(createRoomOptions, cancellationToken);
Console.WriteLine("\nCreated a room with PSTN dial out enabled: " + createdRoom.PstnDialOutEnabled);

// UpdateRoom or UpdateRoomAsync methods can take UpdateRoomOptions to enable or disable PSTN dial out capability
pstnDialOutEnabled = false;
UpdateRoomOptions updateRoomOptions = new UpdateRoomOptions()
{
    PstnDialOutEnabled = pstnDialOutEnabled,
};

CommunicationRoom updatedRoom = await roomsClient.UpdateRoomAsync(roomId, updateRoomOptions, cancellationToken);
Console.WriteLine("\nUpdated a room with PSTN dial out enabled: " + updatedRoom.PstnDialOutEnabled);

Получение свойств существующей комнаты

Извлеките сведения о существующем room, ссылаясь на roomId.


// Retrieve the room with corresponding ID
CommunicationRoom room = await roomsClient.GetRoomAsync(roomId);
Console.WriteLine("\nRetrieved room with id: " + room.Id);

Обновление времени существования комнаты

Срок службы room можно изменить, отправив запрос на обновление параметров ValidFrom и ValidUntil. Номер может быть действительным в течение не более шести месяцев.


// Update room lifetime
DateTimeOffset updatedValidFrom = DateTimeOffset.UtcNow;
DateTimeOffset updatedValidUntil = DateTimeOffset.UtcNow.AddDays(10);
CommunicationRoom updatedRoom = await roomsClient.UpdateRoomAsync(roomId, updatedValidFrom, updatedValidUntil, cancellationToken);

// UpdateRoom or UpdateRoomAsync methods can take UpdateRoomOptions type as an input parameter.
bool pstnDialOutEnabled = true;
UpdateRoomOptions updateRoomOptions = new UpdateRoomOptions()
{
    ValidFrom = validFrom,
    ValidUntil = validUntil,
    PstnDialOutEnabled = pstnDialOutEnabled,
};

updatedRoom = await roomsClient.UpdateRoomAsync(roomId, updateRoomOptions, cancellationToken);
Console.WriteLine("\nUpdated room with validFrom: " + updatedRoom.ValidFrom + ", validUntil: " + updatedRoom.ValidUntil + " and pstnDialOutEnabled: " + updatedRoom.PstnDialOutEnabled);

Перечислите все активные комнаты

Чтобы получить все активные комнаты, используйте метод GetRoomsAsync, предоставляемый клиентом.


// List all active rooms
AsyncPageable<CommunicationRoom> allRooms = roomsClient.GetRoomsAsync();
await foreach (CommunicationRoom currentRoom in allRooms)
{
    Console.WriteLine("\nFirst room id in all active rooms: " + currentRoom.Id);
    break;
}

Добавление новых участников или обновление существующих участников

Чтобы добавить новых участников в room, используйте метод AddParticipantsAsync, доступный на клиенте.


List<RoomParticipant> addOrUpdateParticipants = new List<RoomParticipant>();
// Update participant2 from Attendee to Consumer
RoomParticipant participant2 = new RoomParticipant(user2) { Role = ParticipantRole.Consumer };
// Add participant3
CommunicationUserIdentifier user3 = identityClient.CreateUser();
RoomParticipant participant3 = new RoomParticipant(user3) { Role = ParticipantRole.Collaborator };
addOrUpdateParticipants.Add(participant2);
addOrUpdateParticipants.Add(participant3);

Response addOrUpdateParticipantsResponse = await roomsClient.AddOrUpdateParticipantsAsync(roomId, addOrUpdateParticipants);
Console.WriteLine("\nAdded or updated participants to room");

Участники, которые были добавлены в room, становятся доступными для присоединения к звонкам. Участники, которые были обновлены, увидят новые role во время звонка.

Получение списка участников

Получение списка участников для существующего room путем ссылки на roomId:


// Get list of participants in room
AsyncPageable<RoomParticipant> existingParticipants = roomsClient.GetParticipantsAsync(roomId);
Console.WriteLine("\nRetrieved participants from room: ");
await foreach (RoomParticipant participant in existingParticipants)
{
    Console.WriteLine($"{participant.CommunicationIdentifier.ToString()},  {participant.Role.ToString()}");
}

Удаление участников

Чтобы удалить участника из room и отозвать доступ, используйте RemoveParticipantsAsync.


// Remove user from room
List<CommunicationIdentifier> removeParticipants = new List<CommunicationIdentifier>();
removeParticipants.Add(user2);

Response removeParticipantsResponse = await roomsClient.RemoveParticipantsAsync(roomId, removeParticipants);
Console.WriteLine("\nRemoved participants from room");

Удалить комнату

Если вы хотите распустить существующее room, вы можете выполнить явный запрос на удаление. Все rooms и связанные с ними ресурсы автоматически удаляются в конце срока их действия плюс льготный период.


// Deletes the specified room
Response deleteRoomResponse = await roomsClient.DeleteRoomAsync(roomId);
Console.WriteLine("\nDeleted room with id: " + roomId);

Выполнение кода

Чтобы запустить код, убедитесь, что вы находитесь в каталоге, где Program.cs находится файл.


dotnet run

Ожидаемые выходные данные описывают каждое завершенное действие:


Azure Communication Services - Rooms Quickstart

Created a room with id: 99445276259151407

Retrieved room with id: 99445276259151407

Updated room with validFrom: 2023-05-11T22:11:46.784Z, validUntil: 2023-05-21T22:16:46.784Z and pstnDialOutEnabled: true

First room id in all active rooms: 99445276259151407

Added or updated participants to room

Retrieved participants from room:
8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-ac89-7c76-35f3-343a0d00e901, Presenter
8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-f00d-aa4b-0cf9-9c3a0d00543e, Consumer
8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-f00d-aaf2-0cf9-9c3a0d00543f, Collaborator

Removed participants from room

Deleted room with id: 99445276259151407

Справочная документация

Ознакомьтесь с полным набором возможностей комнат в службе коммуникации Azure, используя справочник по пакету SDK для .NET или REST API.

Это краткое руководство поможет вам начать работу с Комнатами служб связи Azure. A room — это пространство связи, управляемое сервером, для известного фиксированного набора участников для совместной работы в течение предопределенной длительности. Концептуальная документация по комнатам охватывает дополнительные сведения и варианты roomsиспользования.

Предварительные условия

Пример кода

Вы можете просмотреть и скачать пример кода для этого краткого запуска на сайте GitHub.

Установка

Создание нового приложения Java

В окне консоли (cmd, PowerShell или Bash) выполните команду mvn, чтобы создать консольное приложение с именем rooms-quickstart. Эта команда создает простой проект Java Hello World с одним исходным файлом: App.java.

mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false

Включите пакет

Необходимо использовать клиентскую библиотеку Azure Communication Rooms для Java версии 1.1.0 или более поздней.

Включите файл BOM

Добавьте azure-sdk-bom в свой проект, чтобы использовать общедоступную (GA) версию библиотеки. В следующем фрагменте кода замените заполнитель {bom_version_to_target} номером версии. Для получения дополнительной информации о BOM см. руководство Azure SDK BOM.

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-sdk-bom</artifactId>
            <version>{bom_version_to_target}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

затем включите прямую зависимость в раздел зависимостей без тега версии.

<dependencies>
  <dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-communication-rooms</artifactId>
  </dependency>
</dependencies>

Включите прямую зависимость

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

<dependency>
  <groupId>com.azure</groupId>
  <artifactId>azure-communication-rooms</artifactId>
  <version>1.0.0-beta.1</version>
</dependency>

Настройка платформы приложений

Перейдите в каталог /src/main/java/com/communication/quickstart и откройте App.java файл. Добавьте следующий код:


package com.communication.rooms.quickstart;

import com.azure.communication.common.*;
import com.azure.communication.identity.*;
import com.azure.communication.identity.models.*;
import com.azure.core.credential.*;
import com.azure.communication.rooms.*;

import java.io.IOException;
import java.time.*;
import java.util.*;

public class App
{
    public static void main( String[] args ) throws IOException
    {
        System.out.println("Azure Communication Services - Rooms Quickstart");
        // Quickstart code goes here
    }
}

Инициализировать клиента комнаты

Создайте новый RoomsClient объект, который будет использоваться для создания новых rooms свойств и жизненного цикла и управления ими. Строка подключения вашего Communications Service будет использоваться для проверки подлинности запроса. Дополнительные сведения о строках подключения см. на этой странице.


// Initialize the rooms client
// Find your Communication Services resource in the Azure portal
String connectionString = "<connection string>";
RoomsClient roomsClient = new RoomsClientBuilder().connectionString(connectionString).buildClient();

Создание комнаты

Настройка участников комнаты

Чтобы настроить пользователей, которые могут присоединиться к комнате, необходимо иметь список удостоверений этих пользователей. Вы можете следовать инструкциям здесь по созданию пользователей и выдаче маркеров доступа. Кроме того, если вы хотите создать пользователей по запросу, их можно создать с помощью CommunicationIdentityClient. Комнаты ACS в настоящее время поддерживают только участника комнаты типа CommunicationUserIdentifier, используя другие типы CommunicationIdentity, приведет к ошибке среды выполнения.

Чтобы использовать CommunicationIdentityClient, добавьте следующий пакет:

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-communication-identity</artifactId>
</dependency>

Импортируйте пакет сверху на App.java файл:

import com.azure.communication.identity.CommunicationIdentityClient;
import com.azure.communication.identity.CommunicationIdentityClientBuilder;

Теперь CommunicationIdentityClient можно инициализировать и использовать для создания пользователей.

CommunicationIdentityClient communicationIdentityClient = new CommunicationIdentityClientBuilder()
    .connectionString(connectionString)
    .buildClient();

CommunicationUserIdentifier user1 = communicationClient.createUser();
CommunicationUserIdentifier user2 = communicationClient.createUser();
CommunicationUserIdentifier user3 = communicationClient.createUser();

Затем создайте список участников комнаты, ссылаясь на этих пользователей:

//The default participant role is ParticipantRole.Attendee
RoomParticipant participant_1 = new RoomParticipant(user1);
RoomParticipant participant_2 = new RoomParticipant(user2);
RoomParticipant participant_3 = new RoomParticipant(user3);

List<RoomParticipant> roomParticipants = new ArrayList<RoomParticipant>();

roomParticipants.add(participant_1);
roomParticipants.add(participant_2.setRole(ParticipantRole.CONSUMER));

Инициализируйте комнату

Создайте новый room, используя roomParticipants, определённый в фрагменте кода выше.

OffsetDateTime validFrom = OffsetDateTime.now();
OffsetDateTime validUntil = validFrom.plusDays(30);
boolean pstnDialOutEnabled = false;

CreateRoomOptions createRoomOptions = new CreateRoomOptions()
    .setValidFrom(validFrom)
    .setValidUntil(validUntil)
    .setPstnDialOutEnabled(pstnDialOutEnabled)
    .setParticipants(roomParticipants);

CommunicationRoom roomCreated = roomsClient.createRoom(createRoomOptions);

System.out.println("\nCreated a room with id: " + roomCreated.getRoomId());

Так как rooms это серверные сущности, вы можете захотеть отслеживать roomId и сохранять их в выбранном хранилище. Вы можете обратиться к roomId, чтобы просмотреть или обновить свойства объекта room.

Включение возможности дозвона через ТСОП для комнаты

По умолчанию для каждого room отключены исходящие вызовы по сети ТСОП. ТСОП можно включить при создании room, установив параметр pstnDialOutEnabled в значение true. Эта возможность также может быть изменена для параметра room путем выдачи запроса на обновление для pstnDialOutEnabled параметра.

boolean pstnDialOutEnabled = true;
// Create a room with PSTN dial out capability
CreateRoomOptions createRoomOptions = new CreateRoomOptions()
    .setPstnDialOutEnabled(pstnDialOutEnabled)

CommunicationRoom roomCreated = roomsClient.createRoom(createRoomOptions);
System.out.println("\nCreated a room with PSTN dial out enabled: " + roomCreated.getPstnDialOutEnabled());

// Update a room to enable or disable PSTN dial out capability
pstnDialOutEnabled = false;
UpdateRoomOptions updateRoomOptions = new UpdateRoomOptions()
    .setPstnDialOutEnabled(pstnDialOutEnabled);

CommunicationRoom roomUpdated = roomsClient.updateRoom(roomId, updateRoomOptions);
System.out.println("\nUpdated a room with PSTN dial out enabled: " + roomUpdated.getPstnDialOutEnabled());

Получение свойств существующей комнаты

Получение сведений о существующем room с помощью ссылки на roomId.


// Retrieve the room with corresponding ID
CommunicationRoom roomResult = roomsClient.getRoom(roomId);

System.out.println("Retrieved room with id: " + roomResult.getRoomId());

Продление срока существования комнаты

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


OffsetDateTime validFrom = OffsetDateTime.now().plusDays(1);
OffsetDateTime validUntil = validFrom.plusDays(1);
boolean pstnDialOutEnabled = true;

UpdateRoomOptions updateRoomOptions = new UpdateRoomOptions()
    .setValidFrom(validFrom)
    .setValidUntil(validUntil)
    .setPstnDialOutEnabled(pstnDialOutEnabled);

CommunicationRoom roomResult = roomsClient.updateRoom(roomId, updateRoomOptions);

System.out.println("Updated room with validFrom: " + roomResult.getValidFrom() + ", validUntil: " + roomResult.getValidUntil() + " and pstnDialOutEnabled: " + roomResult.getPstnDialOutEnabled());

Добавление или обновление участников

Чтобы добавить или обновить участников на room, используйте метод addOrUpdateParticipants, предоставляемый клиентом.


List<RoomParticipant> participantsToAddAOrUpdate = new ArrayList<>();

// Updating current participant
participantsToAddAOrUpdate.add(participant_1.setRole(ParticipantRole.PRESENTER));

// Adding new participant
 participantsToAddAOrUpdate.add(participant_3.setRole(ParticipantRole.COLLABORATOR));

AddOrUpdateParticipantsResult addOrUpdateParticipantsResult = roomsClient.addOrUpdateParticipants(roomId, participantsToAddAOrUpdate);

System.out.println("Participant(s) added/updated");

Участники, добавленные в room, становятся правомочными для участия в звонках.

Получение списка участников

Получение списка участников для существующего room путем ссылки на roomId:


// Get list of participants
try {

PagedIterable<RoomParticipant> participants = roomsClient.listParticipants(roomId);

System.out.println("Participants:/n");

for (RoomParticipant participant : participants) {
    System.out.println(participant.getCommunicationIdentifier().getRawId() + " (" + participant.getRole() + ")");
   }
} catch (Exception ex) {
    System.out.println(ex);
}

Удаление участников

Чтобы удалить участника из room и отозвать его доступ, используйте метод removeParticipants.


// Remove a participant from the room
List<CommunicationIdentifier> participantsToRemove = new ArrayList<>();

participantsToRemove.add(participant_3.getCommunicationIdentifier());

RemoveParticipantsResult removeParticipantsResult = roomsClient.removeParticipants(roomId,participantsToRemove);

System.out.println("Participant(s) removed");

Список всех активных комнат

Извлеките все активные rooms под вашим ресурсом Службы коммуникации Azure.

try {
    Iterable<PagedResponse<CommunicationRoom>> roomPages = roomsClient.listRooms().iterableByPage();

    System.out.println("Listing all the rooms IDs in the first two pages of the list of rooms:");

    int count = 0;
    for (PagedResponse<CommunicationRoom> page : roomPages) {
        for (CommunicationRoom room : page.getElements()) {
            System.out.println("\n" + room.getRoomId());
        }

        count++;
        if (count >= 2) {
            break;
        }
    }
} catch (Exception ex) {
    System.out.println(ex);
}

Удалить комнату

Если вы хотите распустить существующее room, вы можете выполнить явный запрос на удаление. Все rooms и связанные с ними ресурсы автоматически удаляются в конце срока их действия плюс льготный период.


// Deletes the specified room
roomsClient.deleteRoomWithResponse(roomId, Context.NONE);
System.out.println("\nDeleted the room with ID: " + roomId);

Выполнение кода

Чтобы запустить код, перейдите в каталог, содержащий pom.xml файл и скомпилируйте программу.


mvn compile

Затем создайте пакет:


mvn package

Выполните приложение.

mvn exec:java -D"exec.mainClass"="com.communication.rooms.quickstart" -D"exec.cleanupDaemonThreads"="false"

Ожидаемые выходные данные описывают каждое завершенное действие:


Azure Communication Services - Rooms Quickstart

Created a room with id:  99445276259151407

Retrieved room with id:  99445276259151407

Updated room with validFrom: 2023-05-11T22:11:46.784Z, validUntil: 2023-05-11T22:16:46.784Z and pstnDialOutEnabled: true

Participant(s) added/updated

Participants:
8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-ac89-7c76-35f3-343a0d00e901 (Presenter)
8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-ac89-7c76-35f3-343a0d00e902 (Consumer)
8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-ac89-7c76-35f3-343a0d00e903 (Collaborator)

Participant(s) removed

Listing all the rooms IDs in the first two pages of the list of rooms: 
99445276259151407
99445276259151408
99445276259151409

Deleted the room with ID:  99445276259151407

Справочная документация

Ознакомьтесь с полным набором возможностей комнат Службы коммуникации Azure из справочника по пакету SDK для Java или справочника по REST API.

Это краткое руководство поможет вам начать работу с комнатами служб связи Azure. A room — это пространство связи, управляемое сервером, для известного фиксированного набора участников для совместной работы в течение предопределенной длительности. Концептуальная документация по комнатам охватывает дополнительные сведения и варианты roomsиспользования.

Предварительные условия

Пример кода

Вы можете просмотреть и скачать пример кода для этого краткого запуска на сайте GitHub.

Установка

Создание приложения Python

В окне терминала или консоли создайте новую папку для приложения и перейдите к ней.

mkdir acs-rooms-quickstart
cd acs-rooms-quickstart

Установка пакета

Необходимо использовать клиентскую библиотеку Azure Communication Rooms для Python версия 1.1.0 или более поздней.

В командной строке консоли перейдите в каталог, содержащий файл rooms.py, а затем выполните следующую команду:

pip install azure-communication-rooms

Настройка платформы приложения

Создайте новый файл с именем rooms-quickstart.py и добавьте базовую структуру программы.

import os
from datetime import datetime, timedelta
from azure.core.exceptions import HttpResponseError
from azure.communication.rooms import (
    RoomsClient,
    RoomParticipant,
    ParticipantRole
)

class RoomsQuickstart(object):
    print("Azure Communication Services - Rooms Quickstart")
    #room method implementations goes here

if __name__ == '__main__':
    rooms = RoomsQuickstart()

Инициализировать клиента комнаты

Создайте новый RoomsClient объект, который будет использоваться для создания новых rooms свойств и жизненного цикла и управления ими. Ваша строка подключения Communications Service будет использоваться для проверки подлинности запроса. Дополнительные сведения о строках подключения см. на этой странице.

#Find your Communication Services resource in the Azure portal
connection_string = '<connection_string>'
rooms_client = RoomsClient.from_connection_string(connection_string)

Создание комнаты

Настройка участников комнаты

Чтобы настроить пользователей, которые могут присоединиться к комнате, вам потребуется список удостоверений этих пользователей. Вы можете следовать инструкциям здесь по созданию пользователей и выдаче токенов доступа. Кроме того, если вы хотите создать пользователей по запросу, их можно создать с помощью CommunicationIdentityClient. Комнаты ACS в настоящее время поддерживают только участников типа CommunicationUserIdentifier; использование других типов CommunicationIdentity приводит к ошибке среды выполнения.

Чтобы использовать этот CommunicationIdentityClientпакет, установите следующий пакет:

pip install azure-communication-identity

Кроме того, импортируйте пространство имен пакета в начале rooms-quickstart.py файла.

from azure.communication.identity import (
    CommunicationIdentityClient
)

Теперь CommunicationIdentityClient можно инициализировать и использовать для создания пользователей.

# Create identities for users who will join the room
identity_client = CommunicationIdentityClient.from_connection_string(connection_string)
user1 = identity_client.create_user()
user2 = identity_client.create_user()
user3 = identity_client.create_user()

Затем создайте список участников комнаты, ссылаясь на этих пользователей:

participant_1 = RoomParticipant(communication_identifier=user1, role=ParticipantRole.PRESENTER)
participant_2 = RoomParticipant(communication_identifier=user2, role=ParticipantRole.CONSUMER)
participants = [participant_1, participant_2]

Инициализируйте комнату

Создайте новый room с помощью participants, определённого в фрагменте кода выше.

# Create a room
valid_from = datetime.now()
valid_until = valid_from + timedelta(weeks=4)
pstn_dial_out_enabled = False

try:
    create_room = rooms_client.create_room(
        valid_from=valid_from,
        valid_until=valid_until,
        pstn_dial_out_enabled=pstn_dial_out_enabled,
        participants=participants
    )
    print("\nCreated a room with id: " + create_room.id)
except HttpResponseError as ex:
    print(ex)

Поскольку rooms являются серверными сущностями, вы можете отслеживать их и сохранять room.id в выбранном вами хранилище. Вы можете ссылаться на id, чтобы просмотреть или обновить свойства объекта room.

Включение функции исходящего вызова через ТСОП для комнаты

Для каждого room по умолчанию отключён исходящий вызов через ТСОП. ПТСН можно включить при создании room, установив параметр pstn_dial_out_enabled в значение true. Эта возможность также может быть изменена для параметра room путем выдачи запроса на обновление для pstn_dial_out_enabled параметра.

# Create a room with PSTN dial out capability
pstn_dial_out_enabled = True
create_room = rooms_client.create_room(pstn_dial_out_enabled=pstn_dial_out_enabled)
print("\nCreated room with pstn_dial_out_enabled: " + updated_room.pstn_dial_out_enabled)

# Update a room to enable or disable PSTN dial out capability
pstn_dial_out_enabled= False
updated_room = rooms_client.update_room(room_id=room_id, pstn_dial_out_enabled=pstn_dial_out_enabled)
print("\nUpdated room with pstn_dial_out_enabled: " + updated_room.pstn_dial_out_enabled)

Получение свойств существующей комнаты

Получение сведений о существующем room путем ссылки на id.

# Retrieves the room with corresponding ID
room_id = create_room.id
try:
    get_room = rooms_client.get_room(room_id=room_id)
    print("\nRetrieved room with id: ", get_room.id)
except HttpResponseError as ex:
    print(ex)

Обновить срок действия комнаты

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

# Update the lifetime of a room
valid_from =  datetime.now()
valid_until = valid_from + timedelta(weeks=7)
pstn_dial_out_enabled=True

try:
    updated_room = rooms_client.update_room(room_id=room_id, valid_from=valid_from, valid_until=valid_until, pstn_dial_out_enabled=pstn_dial_out_enabled)
     print("\nUpdated room with validFrom: " + updated_room.valid_from + ", validUntil: " + updated_room.valid_until + " and pstn_dial_out_enabled: " + updated_room.pstn_dial_out_enabled)
except HttpResponseError as ex:
    print(ex)

Список активных комнат

Чтобы получить все активные комнаты, созданные под вашим ресурсом, используйте метод, предоставляемый клиенту.

# List all active rooms
try:
    rooms = rooms_client.list_rooms()
    count = 0
    for room in rooms:
        if count == 1:
            break
        print("\nPrinting the first room in list"
            "\nRoom Id: " + room.id +
            "\nCreated date time: " + str(room.created_at) +
            "\nValid From: " + str(room.valid_from) + 
            "\nValid Until: " + str(room.valid_until) +
            "\nPSTN Dial-Out Enabled: " + str(room.pstn_dial_out_enabled))
        count += 1
except HttpResponseError as ex:
    print(ex)

Добавление или обновление участников

Чтобы добавить новых участников или обновить существующих участников в room, используйте метод add_or_update_participants, доступный на клиенте.

# Add or update participants in a room
try:
    # Update existing user2 from consumer to attendee
    participants = []
    participants.append(RoomParticipant(communication_identifier=user2, role=ParticipantRole.ATTENDEE))

    # Add new participant user3
    participants.append(RoomParticipant(communication_identifier=user3, role=ParticipantRole.COLLABORATOR))
    rooms_client.add_or_update_participants(room_id=room_id, participants=participants)
    print("\nAdd or update participants in room")

except HttpResponseError as ex:
    print('Error in adding or updating participants to room.', ex)

Участники, добавленные в room, получают право присоединяться к звонкам.

Перечислите участников в комнате

Получение списка участников для существующего room путем ссылки на room_id:

# Get list of participants in room
try:
    participants = rooms_client.list_participants(room_id)
    print('\nParticipants in Room Id :', room_id)
    for p in participants:
        print(p.communication_identifier.properties['id'], p.role)
except HttpResponseError as ex:
    print(ex)

Удаление участников

Чтобы удалить участника из room и отозвать доступ, используйте метод remove_participants.

# Remove Participants
try:
    participants = [user2]
    rooms_client.remove_participants(room_id=room_id, participants=participants)
    print("\nRemoved participants from room")

except HttpResponseError as ex:
    print(ex)

Удалите комнату

Если вы хотите распустить существующее room, вы можете выполнить явный запрос на удаление. Все rooms и связанные с ними ресурсы автоматически удаляются в конце срока их действия плюс льготный период.

# Delete Room

rooms_client.delete_room(room_id=room_id)
print("\nDeleted room with id: " + room_id)

Выполнение кода

Чтобы запустить код, убедитесь, что вы находитесь в каталоге, где rooms-quickstart.py находится файл.


python rooms-quickstart.py

Ожидаемые выходные данные описывают каждое завершенное действие:


Azure Communication Services - Rooms Quickstart

Created a room with id:  99445276259151407

Retrieved room with id:  99445276259151407

Updated room with validFrom: 2023-05-03T00:00:00+00:00, validUntil: 2023-06-23T00:00:00+00:00 and pstn_dial_out_enabled: True

Printing the first room in list
Room Id: 99445276259151407
Created date time: 2023-05-03T00:00:00+00:00
Valid From: 2023-05-03T00:00:00+00:00
Valid Until: 2023-06-23T00:00:00+00:00
PSTN Dial-Out Enabled: True

Add or update participants in room

Participants in Room Id : 99445276259151407
8:acs:42a0ff0c-356d-4487-a288-ad0aad95d504_00000018-ef00-6042-a166-563a0d0051c1 Presenter
8:acs:42a0ff0c-356d-4487-a288-ad0aad95d504_00000018-ef00-6136-a166-563a0d0051c2 Consumer
8:acs:42a0ff0c-356d-4487-a288-ad0aad95d504_00000018-ef00-61fd-a166-563a0d0051c3 Collaborator

Removed participants from room

Deleted room with id: 99445276259151407

Справочная документация

Ознакомьтесь с полным набором возможностей комнат Azure Communication Services, обратившись к справочнику по пакету SDK для Python или справочнику по REST API.

Это краткое руководство поможет вам начать работу с комнатами Служб связи Azure. A room — это пространство связи, управляемое сервером, для известного фиксированного набора участников для совместной работы в течение предопределенной длительности. Концептуальная документация по комнатам охватывает дополнительные сведения и варианты roomsиспользования.

Необходимые условия

Пример кода

Вы можете просмотреть и скачать пример кода для этого краткого запуска на сайте GitHub.

Настройка

Создание веб-приложения

В окне терминала или консоли создайте новую папку для приложения и перейдите к ней.

mkdir acs-rooms-quickstart && cd acs-rooms-quickstart

Выполните команду npm init , чтобы создать файл package.json с параметрами по умолчанию.

npm init -y

Создайте новый файл index.js, в который будет добавлен код для этого быстрого старта.

Установка пакетов

Необходимо использовать клиентскую библиотеку Комнат коммуникации Azure для JavaScript версии 1.1.0 или более поздней.

Используйте команду npm install, чтобы установить указанные ниже пакеты SDK Служб коммуникации для JavaScript.

npm install @azure/communication-rooms --save

Настройка платформы приложения

Добавьте в файл index.js указанный ниже код. Мы добавим код для быстрого запуска в функцию main.

const { RoomsClient } = require('@azure/communication-rooms');

const main = async () => {
  console.log("Azure Communication Services - Rooms Quickstart")

  // Quickstart code goes here

};

main().catch((error) => {
  console.log("Encountered an error");
  console.log(error);
})

Инициализация клиента комнаты

Создайте новый RoomsClient объект, который будет использоваться для создания новых rooms свойств и жизненного цикла и управления ими. Строка подключения Communications Service будет использоваться для проверки подлинности вашего запроса. Дополнительные сведения о строках подключения см. на этой странице.

Добавьте следующий код в index.js, находящийся внутри функции main.

const connectionString =
    process.env["COMMUNICATION_CONNECTION_STRING"] ||
    "endpoint=https://<resource-name>.communication.azure.com/;<access-key>";

// create RoomsClient
const roomsClient = new RoomsClient(connectionString);

Создание комнаты

Настройка участников комнаты

Чтобы настроить пользователей, которые могут присоединиться к комнате, необходимо иметь список удостоверений этих пользователей. Вы можете следовать инструкциям здесь по созданию пользователей и выдаче токенов доступа. Кроме того, если вы хотите создать пользователей по запросу, их можно создать с помощью CommunicationIdentityClient. В настоящее время комнаты ACS поддерживают только участника типа CommunicationUserIdentifier; использование других типов CommunicationIdentity приведет к ошибке времени выполнения.

Чтобы использовать CommunicationIdentityClient, установите следующий пакет npm:

npm install @azure/communication-identity --save

Кроме того, добавьте следующий обязательный пакет в верхней части index.js файла:

const { CommunicationIdentityClient } = require('@azure/communication-identity');

Теперь CommunicationIdentityClient можно инициализировать и использовать для создания пользователей.

// create identities for users
const identityClient = new CommunicationIdentityClient(connectionString);
const user1 = await identityClient.createUserAndToken(["voip"]);
const user2 = await identityClient.createUserAndToken(["voip"]);

Затем создайте список участников комнаты, ссылаясь на этих пользователей:

const participants = [
  {
      id: user1.user,
      role: "Presenter",
  },
  {
    id: user2.user,
    role: "Consumer",
  }
]

Инициализация комнаты

Создайте новый room с помощью participants, указанного в приведенном выше фрагменте кода.

// Create a room
var validFrom = new Date(Date.now());
var validUntil = new Date(validFrom.getTime() + 60 * 60 * 1000);
var pstnDialOutEnabled = false;

const createRoomOptions = {
  validFrom,
  validUntil,
  pstnDialOutEnabled,
  participants
};

const createRoom = await roomsClient.createRoom(createRoomOptions);
const roomId = createRoom.id;
console.log("\nCreated a room with id: ", roomId);

Поскольку rooms являются серверными сущностями, вы можете захотеть отслеживать и сохранять roomId в выбранном вами хранилище. Вы можете ссылаться на roomId, чтобы просматривать или обновлять свойства объекта room.

Включение возможности исходящих звонков по ТСОП для комнаты

По умолчанию исходящие звонки по ОТС для каждого room отключены. Возможность исходящих вызовов по ТСОП можно включить при создании room, установив параметр pstnDialOutEnabled в значение true. Эта возможность также может быть изменена для параметра room путем выдачи запроса на обновление для pstnDialOutEnabled параметра.

// Create a room with PSTN dial out capability
var pstnDialOutEnabled = true;
const createRoomOptions = {
  pstnDialOutEnabled,
};

const createRoom = await roomsClient.createRoom(createRoomOptions);
console.log("\nCreated a room with PSTN dial out enabled: ", createRoom.pstnDialOutEnabled);

// Update a room to enable or disable PSTN dial out capability
pstnDialOutEnabled = false;
const updateRoomOptions = {
  pstnDialOutEnabled,
};

const updateRoom = await roomsClient.updateRoom(roomId, updateRoomOptions);
console.log("\nUpdated a room with PSTN dial out enabled: ", updateRoom.pstnDialOutEnabled);

Получение свойств существующей комнаты

Получение сведений о существующем room путем использования ссылки на roomId.

// Retrieve the room with corresponding ID
const getRoom = await roomsClient.getRoom(roomId);
console.log("\nRetrieved room with id: ", getRoom.id);

Обновление срока службы комнаты

Время существования room можно изменить путем выдачи запроса на обновление для параметров validFrom и validUntil. Номер может быть действительным в течение не более шести месяцев.

// Update room lifetime
validFrom.setTime(validUntil.getTime());
validUntil.setTime(validFrom.getTime() + 5 * 60 * 1000);
pstnDialOutEnabled = true;
// request payload to update a room
const updateRoomOptions = {
  validFrom,
  validUntil,
  pstnDialOutEnabled,
};

const updateRoom = await roomsClient.updateRoom(roomId, updateRoomOptions);
console.log("\nUpdated room with validFrom: ", updateRoom.validFrom, ", validUntil: ", updateRoom.validUntil, " and pstnDialOutEnabled: ", updateRoom.pstnDialOutEnabled);

Получение списка номеров

Получите список комнат с помощью listRooms метода:

const roomsList = await roomsClient.listRooms();
console.log("\nRetrieved list of rooms; printing first room:");
for await (const currentRoom of roomsList) {
  // access room data here
  console.log(currentRoom);
  break;
}

Добавление или обновление участников

Чтобы добавить новых участников в room, используйте метод addOrUpdateParticipants, доступный на клиенте. Этот метод также обновит участника, если они уже существуют в комнате.

// Add and update participants

const user3 = await identityClient.createUserAndToken(["voip"]);

// request payload to add and update participants
const addOUpdateParticipantsList = [
  {
      id: user1.user,
      role: "Presenter",
  },
  {
    id: user3.user,
    role: "Collaborator",
  }
]

// add user3 to the room and update user1 to Presenter role
await roomsClient.addOrUpdateParticipants(roomId, addOUpdateParticipantsList);
console.log("\nAdded and updated participants in the room");

Участники, добавленные в room, становятся правомочными для присоединения к звонкам.

Получение списка участников

Получение списка участников для существующего room путем ссылки на roomId:

const participantsList = await roomsClient.listParticipants(roomId);
console.log("\nRetrieved participants for room:");
for await (const participant of participantsList) {
  // access participant data here
  console.log(participant);
}

Удаление участников

Чтобы удалить участника из room и отозвать доступ, используйте метод removeParticipants.

// Remove both users from the room
const removeParticipantsList = [user1.user, user2.user]

// remove both users from the room with the request payload
await roomsClient.removeParticipants(roomId, removeParticipantsList);
console.log("\nRemoved participants from room");

Удалить комнату

Если вы хотите распустить существующее room, вы можете выполнить явный запрос на удаление. Все rooms и связанные с ними ресурсы автоматически удаляются в конце срока их действия плюс льготный период.

// Deletes the specified room
await roomsClient.deleteRoom(roomId);
console.log("\nDeleted room with id: ", roomId)

Выполнение кода

Чтобы запустить код, убедитесь, что вы находитесь в каталоге, где index.js находится файл.

node index.js

Ожидаемые выходные данные описывают каждое завершенное действие:

Azure Communication Services - Rooms QuickStart

Created a room with id:  99445276259151407

Retrieved room with id:  99445276259151407

Updated room with validFrom:  2023-05-11T22:11:46.784Z, validUntil:  2023-05-11T22:16:46.784Z and pstnDialOutEnabled: true

Retrieved list of rooms; printing first room:

{
  id: "99445276259151407",
  createdAt: "2023-05-11T22:11:50.784Z",
  validFrom: "2023-05-11T22:11:46.784Z",
  validUntil: "2023-05-11T22:16:46.784Z"
}

Added and updated participants in the room

Retrieved participants for room:
{
  id: {
    kind: 'communicationUser',
    communicationUserId: '8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-ac89-7c76-35f3-343a0d00e901'
  },
  role: 'Presenter'
}
{
  id: {
    kind: 'communicationUser',
    communicationUserId: '8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-ac89-7ccc-35f3-343a0d00e902'
  },
  role: 'Consumer'
}
{
  id: {
    kind: 'communicationUser',
    communicationUserId: '8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-ac89-7ccc-35f3-343a0d00e903'
  },
  role: 'Collaborator'
}

Removed participants from room

Deleted room with id:  99445276259151407

Справочная документация

Ознакомьтесь с полным набором возможностей комнат в Azure Communication Services, используя справочник по JavaScript SDK или REST API.

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

Вы можете узнать, как присоединиться к телефону после создания и настройки комнаты.

В этом разделе вы узнали, как:

  • Создайте новую комнату
  • Узнать свойства комнаты
  • Обновление свойств комнаты
  • Удаление комнаты

Вы также можете: