Snabbstart: Skapa och hantera en rumsresurs
Den här snabbstarten hjälper dig att komma igång med Azure Communication Services Rooms. A room
är ett serverhanterat kommunikationsutrymme för en känd, fast uppsättning deltagare som ska samarbeta under en fördefinierad varaktighet. Den konceptuella dokumentationen för rummen innehåller mer information och användningsfall för rooms
.
Objektmodell
I följande tabell visas huvudegenskaperna för room
objekt:
Name | beskrivning |
---|---|
roomId |
Unik room identifierare. |
validFrom |
Tidigaste tid en room kan användas. |
validUntil |
Senaste gången en room kan användas. |
pstnDialOutEnabled |
Aktivera eller inaktivera uppringning till ett PSTN-nummer i ett rum. |
participants |
Lista över deltagare till en room . Anges som en CommunicationUserIdentifier . |
roleType |
Rollen som rumsdeltagare. Kan vara antingen Presenter , Attendee eller Consumer . |
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En aktiv Communication Services-resurs och niska veze. Skapa en Communication Services-resurs.
- Installera Azure CLI.
- Du kan hämta niska veze från Azure-portalen genom att klicka på nycklarna i inställningarna.
Konfigurera
Lägga till tillägget
Lägg till Azure Communication Services-tillägget för Azure CLI med hjälp az extension
av kommandot .
az extension add --name communication
Logga in på Azure CLI
Du måste logga in på Azure CLI. Du kan logga in genom att az login
köra kommandot från terminalen och ange dina autentiseringsuppgifter.
Lagra niska veze i en miljövariabel
Du kan konfigurera AZURE_COMMUNICATION_CONNECTION_STRING
miljövariabeln så att den använder Azure CLI-nycklar utan att behöva använda --connection_string
för att skicka in niska veze. Om du vill konfigurera en miljövariabel öppnar du ett konsolfönster och väljer ditt operativsystem på flikarna nedan. Ersätt <connectionString>
med din faktiska niska veze.
setx AZURE_COMMUNICATION_CONNECTION_STRING "<connectionString>"
När du har lagt till miljövariabeln kan du behöva starta om alla program som körs och som behöver läsa miljövariabeln, inklusive konsolfönstret. Om du till exempel använder Visual Studio som redigerare startar du om Visual Studio innan du kör exemplet.
Operations
Skapa ett rum
rooms create
Använd kommandot för att skapa ett rum.
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>"
- Du
<participantId>
kan också ange typen av deltagare som presentatörsdeltagare, konsumentdeltagare eller deltagare. Om du inte anger något värde är standardvärdet tomt. - Ersätt
<connection-string>
med din Azure Communication Services-niska veze. - Du
<valid-from>
kan också ange tidsstämpeln när rummet är öppet för anslutning, i ISO8601 format, t.ex. 2022-07-14T10:21. - Du
<valid-until>
kan också ange tidsstämpeln när rummet inte längre kan kopplas, i ISO8601 format, till exempel 2022-07-14T10:21. - Du kan också använda
<pstn-dial-out-enabled>
den här flaggan ("True" eller "False") för att aktivera eller inaktivera PSTN-uppringning för ett rum. Som standard är den här flaggan inställd på "False" när du skapar ett rum.
Om du har lagrat niska veze i miljövariabler enligt ovan behöver du inte skicka dem till kommandot.
az communication rooms create
Aktivera pstn-utringningsfunktion för ett rum
PSTN-utringningen kan aktiveras under rooms create
genom att definiera parametern --pstn-dial-out-enabled
som "True". Den här funktionen kan också ändras under rooms update
genom att ange parametern --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>"
- Om du vill aktivera eller inaktivera PSTN-uppringning för ett rum anger du
<pstn-dial-out-enabled>
flagga ("Sant" eller "Falskt").
Hämta rummen
Kommandot rooms get
returnerar attributen för ett befintligt rum.
az communication rooms get --room "<roomId>"
- Ersätt
<roomId>
med ditt rums-ID.
Uppdatera tidsramen för ett rum
Du kan uppdatera tidsstämpeln för ett rum. Innan du anropar room update
kommandot kontrollerar du att du har skaffat ett nytt rum med en giltig tidsram.
az communication rooms update --valid-from "<valid-from>" --valid-until "<valid-until>" --pstn-dial-out-enabled "<pstn-dial-out-enabled>" --room "<roomId>"
- Ersätt
<valid-from>
med tidsstämpeln i ISO8601 format, t.ex. 2022-07-14T10:21, för att ange när rummet är öppet för anslutning. Ska användas tillsammans med--valid-until
. - Ersätt
<valid-until>
med tidsstämpeln i ISO8601 format, till exempel 2022-07-14T10:21, för att ange när rummet inte längre kan kopplas. Ska användas tillsammans med--valid-from
. - Ersätt
<pstn-dial-out-enabled>
ange den här flaggan ("True" eller "False") för att aktivera eller inaktivera PSTN-uppringning för ett rum. Ska användas tillsammans med--pstn-dial-out-enabled
. - Ersätt
<roomId>
med ditt rums-ID.
Visa en lista över alla aktiva rum
Kommandot rooms list
returnerar alla aktiva rum som tillhör din Azure Communication Services-resurs.
az communication rooms list
Lägga till nya deltagare eller uppdatera befintliga deltagare
När du skapar ett rum kan du uppdatera rummet genom att lägga till en ny deltagare eller uppdatera en befintlig deltagare i det. Kontrollera att du har skaffat en ny användare innan du anropar room participant add-or-update
kommandot.
identity user create
Använd kommandot för att skapa en ny deltagare som identifieras av participantId
.
az communication identity user create
Lägg till en användare som deltagare i rummet.
az communication rooms participant add-or-update --attendee-participant "<participantId>" --room "<roomId>"
- Ersätt
<participantId>
med ditt deltagar-ID. Om det<participantId>
inte finns i rummet läggs deltagaren till i rummet som en deltagarroll. Annars uppdateras deltagarens roll till en deltagarroll. - Ersätt
<roomId>
med ditt rums-ID.
Hämta en lista över deltagare i ett rum
az communication rooms participant get --room "<roomId>"
- Ersätt
<roomId>
med ditt rums-ID.
Ta bort en deltagare från ett rum
Du kan ta bort en rumsdeltagare från ett rum med hjälp rooms participant -remove
av .
az communication rooms participant remove --room "<roomId>" --participants "<participant1>" "<participant2>" "<participant3>"
- Ersätt
<roomId>
med ditt rums-ID. - Ersätt
<participant1>
,<participant2>
,<participant3>
med användar-ID:t som du fick tidigare med kommandot körsidentity user create
.
Ta bort ett rum
På samma sätt som när du skapar ett rum kan du också ta bort ett rum.
Använd room delete
kommandot för att ta bort det befintliga rummet.
az communication rooms delete --room "<roomId>"
- Ersätt
<roomId>
med ditt rums-ID.
Den här snabbstarten hjälper dig att komma igång med Azure Communication Services Rooms. A room
är ett serverhanterat kommunikationsutrymme för en känd, fast uppsättning deltagare som ska samarbeta under en fördefinierad varaktighet. Den konceptuella dokumentationen för rummen innehåller mer information och användningsfall för rooms
.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En aktiv Communication Services-resurs och niska veze. Skapa en Communication Services-resurs.
- Den senaste versionen av .NET Core-klientbiblioteket för ditt operativsystem.
Exempelkod
Du kan granska och ladda ned exempelkoden för den här snabbstarten på GitHub.
Konfigurera
Skapa ett nytt C#-program
I ett konsolfönster (till exempel cmd, PowerShell eller Bash) använder du dotnet new
kommandot för att skapa en ny konsolapp med namnet RoomsQuickstart
. Det här kommandot skapar ett enkelt "Hello World"-C#-projekt med en enda källfil: Program.cs.
dotnet new console -o RoomsQuickstart
Ändra katalogen till den nyligen skapade appmappen dotnet build
och använd kommandot för att kompilera programmet.
cd RoomsQuickstart
dotnet build
Installera -paketet
Installera Azure Communication Rooms-klientbiblioteket för .NET med [NuGet][https://www.nuget.org/]:
dotnet add package Azure.Communication.Rooms
Du måste använda Azure Communication Rooms-klientbiblioteket för .NET version 1.1.0 eller senare.
Konfigurera appramverket
Program.cs
I filen lägger du till följande kod för att importera de nödvändiga namnrymderna och skapa den grundläggande programstrukturen.
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
}
}
}
Initiera en rumsklient
Skapa ett nytt RoomsClient
objekt som ska användas för att skapa nya rooms
och hantera deras egenskaper och livscykel. Din niska veze Communications Service
används för att autentisera begäran. Mer information om niska veze finns på den här sidan.
// Find your Communication Services resource in the Azure portal
var connectionString = "<connection_string>";
RoomsClient roomsClient = new RoomsClient(connectionString);
Skapa ett rum
Konfigurera rumsdeltagare
För att kunna konfigurera vem som kan ansluta till ett rum måste du ha en lista över identiteterna för dessa användare. Du kan följa anvisningarna här för att skapa användare och utfärda åtkomsttoken. Om du vill skapa användare på begäran kan du också skapa dem med hjälp av CommunicationIdentityClient
. ACS Rooms stöder för närvarande endast en rumsdeltagare av typen CommunicationUserIdentifier. Om du använder andra typer av CommunicationIdentity uppstår ett körningsfel.
Om du vill använda CommunicationIdentityClient
installerar du följande paket:
dotnet add package Azure.Communication.Identity
Importera även paketets namnområde överst Program.cs
i filen:
using Azure.Communication.Identity;
CommunicationIdentityClient
Nu kan initieras och användas för att skapa användare:
// Create identities for users who will join the room
CommunicationIdentityClient identityClient = new CommunicationIdentityClient(connectionString);
CommunicationUserIdentifier user1 = identityClient.CreateUser();
CommunicationUserIdentifier user2 = identityClient.CreateUser();
Skapa sedan listan över rumsdeltagare genom att referera till dessa användare:
List<RoomParticipant> participants = new List<RoomParticipant>()
{
new RoomParticipant(user1) { Role = ParticipantRole.Presenter },
new RoomParticipant(user2) // The default participant role is ParticipantRole.Attendee
};
Initiera rummet
Skapa en ny room
med hjälp av det participants
definierade i kodfragmentet ovan:
// 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);
Eftersom rooms
är entiteter på serversidan kanske du vill hålla reda på och spara roomId
i det lagringsmedium som du väljer. Du kan referera roomId
till för att visa eller uppdatera egenskaperna för ett room
objekt.
Aktivera pstn-utringningsfunktion för ett rum
Var och room
en har PSTN-uppringning inaktiverad som standard. PSTN-utringningen kan aktiveras för en room
vid skapandet genom att definiera parametern pstnDialOutEnabled
som true. Den här funktionen kan också ändras för en room
genom att utfärda en uppdateringsbegäran för parametern 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);
Hämta egenskaper för ett befintligt rum
Hämta information om en befintlig room
genom att roomId
referera till :
// Retrieve the room with corresponding ID
CommunicationRoom room = await roomsClient.GetRoomAsync(roomId);
Console.WriteLine("\nRetrieved room with id: " + room.Id);
Uppdatera livslängden för ett rum
Livslängden för en room
kan ändras genom att utfärda en uppdateringsbegäran för parametrarna ValidFrom
och ValidUntil
. Ett rum kan vara giltigt i högst sex månader.
// 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);
Visa en lista över alla aktiva rum
Om du vill hämta alla aktiva rum använder du metoden som GetRoomsAsync
exponeras på klienten.
// 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;
}
Lägga till nya deltagare eller uppdatera befintliga deltagare
Om du vill lägga till nya deltagare i en room
använder du metoden som AddParticipantsAsync
exponeras på klienten.
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.Attendee };
addOrUpdateParticipants.Add(participant2);
addOrUpdateParticipants.Add(participant3);
Response addOrUpdateParticipantsResponse = await roomsClient.AddOrUpdateParticipantsAsync(roomId, addOrUpdateParticipants);
Console.WriteLine("\nAdded or updated participants to room");
Deltagare som har lagts till i en room
bli berättigad att delta i samtal. Deltagare som har uppdaterats ser sin nya role
i samtalet.
Hämta en lista över deltagare
Hämta listan över deltagare för en befintlig room
genom att roomId
referera till :
// 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()}");
}
Ta bort deltagare
Om du vill ta bort en deltagare från en room
och återkalla deras åtkomst använder du RemoveParticipantsAsync
metoden .
// 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");
Ta bort rum
Om du vill upplösa en befintlig room
kan du utfärda en explicit borttagningsbegäran. Alla rooms
och deras associerade resurser tas automatiskt bort i slutet av sin giltighet plus en respitperiod.
// Deletes the specified room
Response deleteRoomResponse = await roomsClient.DeleteRoomAsync(roomId);
Console.WriteLine("\nDeleted room with id: " + roomId);
Kör koden
Om du vill köra koden kontrollerar du att du finns i katalogen där Program.cs
filen finns.
dotnet run
De förväntade utdata beskriver varje slutförd åtgärd:
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, Attendee
Removed participants from room
Deleted room with id: 99445276259151407
Referensdokumentation
Läs om den fullständiga uppsättningen funktioner i Azure Communication Services-rum från .NET SDK-referensen eller REST API-referensen.
Den här snabbstarten hjälper dig att komma igång med Azure Communication Services Rooms. A room
är ett serverhanterat kommunikationsutrymme för en känd, fast uppsättning deltagare som ska samarbeta under en fördefinierad varaktighet. Den konceptuella dokumentationen för rummen innehåller mer information och användningsfall för rooms
.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En aktiv Communication Services-resurs och niska veze. Skapa en Communication Services-resurs.
- Java Development Kit (JDK) version 8 eller senare.
- Apache Maven
Exempelkod
Du kan granska och ladda ned exempelkoden för den här snabbstarten på GitHub.
Konfigurera
Skapa ett nytt Java-program
I ett konsolfönster (till exempel cmd, PowerShell eller Bash) använder du mvn
kommandot för att skapa en ny konsolapp med namnet rooms-quickstart
. Det här kommandot skapar ett enkelt "Hello World"-Java-projekt med en enda källfil: App.java.
mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
Inkludera paketet
Du måste använda Azure Communication Rooms-klientbiblioteket för Java version 1.1.0 eller senare.
Inkludera BOM-filen
azure-sdk-bom
Ta med i projektet för att vara beroende av bibliotekets allmänna tillgänglighetsversion (GA). Ersätt platshållaren {bom_version_to_target} med versionsnumret i följande kodfragment.
Mer information om bommen finns i artikeln om 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>
och inkludera sedan det direkta beroendet i avsnittet beroenden utan versionstaggen.
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-rooms</artifactId>
</dependency>
</dependencies>
Inkludera direkt beroende
Om du vill vara beroende av en viss version av biblioteket som inte finns i strukturlistan lägger du till det direkta beroendet till projektet på följande sätt.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-rooms</artifactId>
<version>1.0.0-beta.1</version>
</dependency>
Konfigurera appramverk
Gå till katalogen /src/main/java/com/communication/quickstart och öppna App.java
filen. Lägg till följande kod:
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
}
}
Initiera en rumsklient
Skapa ett nytt RoomsClient
objekt som ska användas för att skapa nya rooms
och hantera deras egenskaper och livscykel. Din niska veze Communications Service
används för att autentisera begäran. Mer information om niska veze finns på den här sidan.
// Initialize the rooms client
// Find your Communication Services resource in the Azure portal
String connectionString = "<connection string>";
RoomsClient roomsClient = new RoomsClientBuilder().connectionString(connectionString).buildClient();
Skapa ett rum
Konfigurera rumsdeltagare
För att kunna konfigurera vem som kan ansluta till ett rum måste du ha en lista över identiteterna för dessa användare. Du kan följa anvisningarna här för att skapa användare och utfärda åtkomsttoken. Om du vill skapa användare på begäran kan du också skapa dem med hjälp av CommunicationIdentityClient
. ACS Rooms stöder för närvarande endast en rumsdeltagare av typen CommunicationUserIdentifier. Om du använder andra typer av CommunicationIdentity uppstår ett körningsfel.
Om du vill använda CommunicationIdentityClient
lägger du till följande paket:
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-identity</artifactId>
</dependency>
Importera paketet ovanpå filen App.java
:
import com.azure.communication.identity.CommunicationIdentityClient;
import com.azure.communication.identity.CommunicationIdentityClientBuilder;
CommunicationIdentityClient
Nu kan initieras och användas för att skapa användare:
CommunicationIdentityClient communicationIdentityClient = new CommunicationIdentityClientBuilder()
.connectionString(connectionString)
.buildClient();
CommunicationUserIdentifier user1 = communicationClient.createUser();
CommunicationUserIdentifier user2 = communicationClient.createUser();
CommunicationUserIdentifier user3 = communicationClient.createUser();
Skapa sedan listan över rumsdeltagare genom att referera till dessa användare:
//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));
Initiera rummet
Skapa en ny room
med hjälp av det roomParticipants
definierade i kodfragmentet ovan:
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());
Eftersom rooms
är entiteter på serversidan kanske du vill hålla reda på och spara roomId
i det lagringsmedium som du väljer. Du kan referera roomId
till för att visa eller uppdatera egenskaperna för ett room
objekt.
Aktivera pstn-utringningsfunktion för ett rum
Var och room
en har PSTN-uppringning inaktiverad som standard. PSTN-utringningen kan aktiveras för en room
vid skapandet genom att definiera parametern pstnDialOutEnabled
som true. Den här funktionen kan också ändras för en room
genom att utfärda en uppdateringsbegäran för parametern 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());
Hämta egenskaper för ett befintligt rum
Hämta information om en befintlig room
genom att roomId
referera till :
// Retrieve the room with corresponding ID
CommunicationRoom roomResult = roomsClient.getRoom(roomId);
System.out.println("Retrieved room with id: " + roomResult.getRoomId());
Uppdatera livslängden för ett rum
Livslängden för en room
kan ändras genom att utfärda en uppdateringsbegäran för parametrarna ValidFrom
och ValidUntil
. Ett rum kan vara giltigt i högst sex månader.
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());
Lägga till eller uppdatera deltagare
Om du vill lägga till eller uppdatera deltagare till en room
använder du metoden addOrUpdateParticipants
som exponeras på klienten.
List<RoomParticipant> participantsToAddAOrUpdate = new ArrayList<>();
// Adding new participant
participantsToAddAOrUpdate.add(participant_3.setRole(ParticipantRole.CONSUMER));
// Updating current participant
participantsToAddAOrUpdate.add(participant_2.setRole(ParticipantRole.PRESENTER));
AddOrUpdateParticipantsResult addOrUpdateParticipantsResult = roomsClient.addOrUpdateParticipants(roomId, participantsToAddAOrUpdate);
System.out.println("Participant(s) added/updated");
Deltagare som har lagts till i en room
bli berättigad att delta i samtal.
Hämta en lista över deltagare
Hämta listan över deltagare för en befintlig room
genom att roomId
referera till :
// 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);
}
Ta bort deltagare
Om du vill ta bort en deltagare från en room
och återkalla deras åtkomst använder du removeParticipants
metoden .
// 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");
Visa en lista över alla aktiva rum
Hämta alla aktiva rooms
under din Azure Communication Services-resurs.
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);
}
Ta bort rum
Om du vill upplösa en befintlig room
kan du utfärda en explicit borttagningsbegäran. Alla rooms
och deras associerade resurser tas automatiskt bort i slutet av sin giltighet plus en respitperiod.
// Deletes the specified room
roomsClient.deleteRoomWithResponse(roomId, Context.NONE);
System.out.println("\nDeleted the room with ID: " + roomId);
Kör koden
Om du vill köra koden går du till katalogen som innehåller pom.xml
filen och kompilerar programmet.
mvn compile
Skapa sedan paketet:
mvn package
Kör appen.
mvn exec:java -D"exec.mainClass"="com.communication.rooms.quickstart" -D"exec.cleanupDaemonThreads"="false"
De förväntade utdata beskriver varje slutförd åtgärd:
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 (Attendee)
8:acs:b6aada1f-0b1d-47ac-866f-91aae00a1d01_00000018-ac89-7c76-35f3-343a0d00e902 (Consumer)
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
Referensdokumentation
Läs om den fullständiga uppsättningen funktioner i Azure Communication Services-rum från Java SDK-referensen eller REST API-referensen.
Den här snabbstarten hjälper dig att komma igång med Azure Communication Services Rooms. A room
är ett serverhanterat kommunikationsutrymme för en känd, fast uppsättning deltagare som ska samarbeta under en fördefinierad varaktighet. Den konceptuella dokumentationen för rummen innehåller mer information och användningsfall för rooms
.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En aktiv Communication Services-resurs och niska veze. Skapa en Communication Services-resurs.
- Python 3.7+ för operativsystemet.
Exempelkod
Du kan granska och ladda ned exempelkoden för den här snabbstarten på GitHub.
Konfigurera
Skapa ett nytt Python-program
I ett terminal- eller konsolfönster skapar du en ny mapp för ditt program och navigerar till den.
mkdir acs-rooms-quickstart
cd acs-rooms-quickstart
Installera -paketet
Du måste använda Azure Communication Rooms-klientbiblioteket för Python version 1.1.0 eller senare.
Från en konsolprompt går du till katalogen som innehåller rooms.py-filen och kör sedan följande kommando:
pip install azure-communication-rooms
Konfigurera appramverket
Skapa en ny fil med namnet rooms-quickstart.py
och lägg till den grundläggande programstrukturen.
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()
Initiera en rumsklient
Skapa ett nytt RoomsClient
objekt som ska användas för att skapa nya rooms
och hantera deras egenskaper och livscykel. Din niska veze Communications Service
används för att autentisera begäran. Mer information om niska veze finns på den här sidan.
#Find your Communication Services resource in the Azure portal
connection_string = '<connection_string>'
rooms_client = RoomsClient.from_connection_string(connection_string)
Skapa ett rum
Konfigurera rumsdeltagare
För att kunna konfigurera vem som kan ansluta till ett rum måste du ha en lista över identiteterna för dessa användare. Du kan följa anvisningarna här för att skapa användare och utfärda åtkomsttoken. Om du vill skapa användare på begäran kan du också skapa dem med hjälp av CommunicationIdentityClient
. ACS Rooms stöder för närvarande endast en rumsdeltagare av typen CommunicationUserIdentifier. Om du använder andra typer av CommunicationIdentity uppstår ett körningsfel.
Om du vill använda CommunicationIdentityClient
installerar du följande paket:
pip install azure-communication-identity
Importera även paketets namnområde överst rooms-quickstart.py
i filen:
from azure.communication.identity import (
CommunicationIdentityClient
)
CommunicationIdentityClient
Nu kan initieras och användas för att skapa användare:
# 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()
Skapa sedan listan över rumsdeltagare genom att referera till dessa användare:
participant_1 = RoomParticipant(communication_identifier=user1, role=ParticipantRole.PRESENTER)
participant_2 = RoomParticipant(communication_identifier=user2, role=ParticipantRole.CONSUMER)
participants = [participant_1, participant_2]
Initiera rummet
Skapa en ny room
med hjälp av det participants
definierade i kodfragmentet ovan:
# 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)
Eftersom rooms
är entiteter på serversidan kanske du vill hålla reda på och spara room.id
i det lagringsmedium som du väljer. Du kan referera id
till för att visa eller uppdatera egenskaperna för ett room
objekt.
Aktivera pstn-utringningsfunktion för ett rum
Var och room
en har PSTN-uppringning inaktiverad som standard. PSTN-utringningen kan aktiveras för en room
vid skapandet genom att definiera parametern pstn_dial_out_enabled
som true. Den här funktionen kan också ändras för en room
genom att utfärda en uppdateringsbegäran för parametern 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)
Hämta egenskaper för ett befintligt rum
Hämta information om en befintlig room
genom att id
referera till :
# 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)
Uppdatera livslängden för ett rum
Livslängden för en room
kan ändras genom att utfärda en uppdateringsbegäran för parametrarna valid_from
och valid_until
. Ett rum kan vara giltigt i högst sex månader.
# 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)
Visa en lista över alla aktiva rum
Om du vill hämta alla aktiva rum som skapats under resursen använder du metoden list_rooms
som exponeras på klienten.
# 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)
Lägga till eller uppdatera deltagare
Om du vill lägga till nya deltagare eller uppdatera befintliga deltagare i en room
använder du metoden add_or_update_participants
som exponeras på klienten.
# 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.CONSUMER))
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)
Deltagare som har lagts till i en room
bli berättigad att delta i samtal.
Visa en lista över deltagare i ett rum
Hämta listan över deltagare för en befintlig room
genom att room_id
referera till :
# 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)
Ta bort deltagare
Om du vill ta bort en deltagare från en room
och återkalla deras åtkomst använder du remove_participants
metoden .
# 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)
Ta bort rum
Om du vill upplösa en befintlig room
kan du utfärda en explicit borttagningsbegäran. Alla rooms
och deras associerade resurser tas automatiskt bort i slutet av sin giltighet plus en respitperiod.
# Delete Room
rooms_client.delete_room(room_id=room_id)
print("\nDeleted room with id: " + room_id)
Kör koden
Om du vill köra koden kontrollerar du att du finns i katalogen där rooms-quickstart.py
filen finns.
python rooms-quickstart.py
De förväntade utdata beskriver varje slutförd åtgärd:
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 Attendee
Removed participants from room
Deleted room with id: 99445276259151407
Referensdokumentation
Läs om den fullständiga uppsättningen funktioner i Azure Communication Services-rum från Python SDK-referensen eller REST API-referensen.
Den här snabbstarten hjälper dig att komma igång med Azure Communication Services Rooms. A room
är ett serverhanterat kommunikationsutrymme för en känd, fast uppsättning deltagare som ska samarbeta under en fördefinierad varaktighet. Den konceptuella dokumentationen för rummen innehåller mer information och användningsfall för rooms
.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
- En aktiv Communication Services-resurs och niska veze. Skapa en Communication Services-resurs.
- De senaste versionerna av Node.js Active LTS- och Maintenance LTS-versioner.
Exempelkod
Du kan granska och ladda ned exempelkoden för den här snabbstarten på GitHub.
Konfigurera
Skapa ett nytt webbprogram
I ett terminal- eller konsolfönster skapar du en ny mapp för ditt program och navigerar till den.
mkdir acs-rooms-quickstart && cd acs-rooms-quickstart
Kör npm init
för att skapa en package.json fil med standardinställningar.
npm init -y
Skapa en ny fil index.js
där koden för den här snabbstarten läggs till.
Installera paketen
Du måste använda Azure Communication Rooms-klientbiblioteket för JavaScript version 1.1.0 eller senare.
npm install
Använd kommandot för att installera nedanstående Communication Services-SDK:er för JavaScript.
npm install @azure/communication-rooms --save
Konfigurera appramverket
index.js
Lägg till följande kod i filen. Vi lägger till koden för snabbstarten main
i funktionen.
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);
})
Initiera en rumsklient
Skapa ett nytt RoomsClient
objekt som ska användas för att skapa nya rooms
och hantera deras egenskaper och livscykel. Din niska veze Communications Service
används för att autentisera begäran. Mer information om niska veze finns på den här sidan.
Lägg till följande kod i index.js
funktionen main
.
const connectionString =
process.env["COMMUNICATION_CONNECTION_STRING"] ||
"endpoint=https://<resource-name>.communication.azure.com/;<access-key>";
// create RoomsClient
const roomsClient = new RoomsClient(connectionString);
Skapa ett rum
Konfigurera rumsdeltagare
För att kunna konfigurera vem som kan ansluta till ett rum måste du ha en lista över identiteterna för dessa användare. Du kan följa anvisningarna här för att skapa användare och utfärda åtkomsttoken. Om du vill skapa användare på begäran kan du också skapa dem med hjälp av CommunicationIdentityClient
. ACS Rooms stöder för närvarande endast en rumsdeltagare av typen CommunicationUserIdentifier. Om du använder andra typer av CommunicationIdentity uppstår ett körningsfel.
Om du vill använda CommunicationIdentityClient installerar du följande npm-paket:
npm install @azure/communication-identity --save
Lägg också till följande nödvändiga paket överst index.js
i filen:
const { CommunicationIdentityClient } = require('@azure/communication-identity');
CommunicationIdentityClient
Nu kan initieras och användas för att skapa användare:
// create identities for users
const identityClient = new CommunicationIdentityClient(connectionString);
const user1 = await identityClient.createUserAndToken(["voip"]);
const user2 = await identityClient.createUserAndToken(["voip"]);
Skapa sedan listan över rumsdeltagare genom att referera till dessa användare:
const participants = [
{
id: user1.user,
role: "Presenter",
},
{
id: user2.user,
role: "Consumer",
}
]
Initiera rummet
Skapa en ny room
med hjälp av det participants
definierade i kodfragmentet ovan:
// 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);
Eftersom rooms
är entiteter på serversidan kanske du vill hålla reda på och spara roomId
i det lagringsmedium som du väljer. Du kan referera roomId
till för att visa eller uppdatera egenskaperna för ett room
objekt.
Aktivera pstn-utringningsfunktion för ett rum
Var och room
en har PSTN-uppringning inaktiverad som standard. PSTN-utringningen kan aktiveras för en room
vid skapandet genom att definiera parametern pstnDialOutEnabled
som true. Den här funktionen kan också ändras för en room
genom att utfärda en uppdateringsbegäran för parametern 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);
Hämta egenskaper för ett befintligt rum
Hämta information om en befintlig room
genom att roomId
referera till :
// Retrieve the room with corresponding ID
const getRoom = await roomsClient.getRoom(roomId);
console.log("\nRetrieved room with id: ", getRoom.id);
Uppdatera livslängden för ett rum
Livslängden för en room
kan ändras genom att utfärda en uppdateringsbegäran för parametrarna validFrom
och validUntil
. Ett rum kan vara giltigt i högst sex månader.
// 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);
Hämta lista över rum
Hämta din lista över rum med hjälp listRooms
av metoden:
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;
}
Lägga till eller uppdatera deltagare
Om du vill lägga till nya deltagare i en room
använder du metoden som addOrUpdateParticipants
exponeras på klienten. Den här metoden uppdaterar också en deltagare om de redan finns i rummet.
// Add and update participants
// request payload to add and update participants
const addOUpdateParticipantsList = [
{
id: user1.user,
role: "Presenter",
},
{
id: user2.user,
role: "Consumer",
}
]
// add user2 to the room and update user1 to Presenter role
await roomsClient.addOrUpdateParticipants(roomId, addOUpdateParticipantsList);
console.log("\nAdded and updated participants in the room");
Deltagare som har lagts till i en room
bli berättigad att delta i samtal.
Hämta en lista över deltagare
Hämta listan över deltagare för en befintlig room
genom att roomId
referera till :
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);
}
Ta bort deltagare
Om du vill ta bort en deltagare från en room
och återkalla deras åtkomst använder du removeParticipants
metoden .
// 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");
Ta bort rum
Om du vill upplösa en befintlig room
kan du utfärda en explicit borttagningsbegäran. Alla rooms
och deras associerade resurser tas automatiskt bort i slutet av sin giltighet plus en respitperiod.
// Deletes the specified room
await roomsClient.deleteRoom(roomId);
console.log("\nDeleted room with id: ", roomId)
Kör koden
Om du vill köra koden kontrollerar du att du finns i katalogen där index.js
filen finns.
node index.js
De förväntade utdata beskriver varje slutförd åtgärd:
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'
}
Removed participants from room
Deleted room with id: 99445276259151407
Referensdokumentation
Läs om den fullständiga uppsättningen funktioner i Azure Communication Services-rum från JavaScript SDK-referensen eller REST API-referensen.
Nästa steg
Du kan lära dig hur du ansluter till ett rumssamtal när du har skapat och konfigurerat rummet.
I det här avsnittet har du lärt dig att:
- Skapa ett nytt rum
- Hämta egenskaperna för ett rum
- Uppdatera egenskaperna för ett rum
- Ta bort ett rum
Du kanske också vill:
- Lär dig mer om rumskoncept
- Lär dig mer om begrepp för röst- och videosamtal
- Granska Azure Communication Services-exempel