Azure RoomsApi-Clientbibliothek für JavaScript– Version 1.1.0
Dieses Paket enthält ein isomorphes SDK (wird sowohl in Node.js als auch in Browsern ausgeführt) für den Azure RoomsApi-Client.
Kommunikationsräume-Client
Quellcode | Paket (NPM) | Proben
Erste Schritte
Die derzeitig unterstützten Umgebungen
- LTS-Versionen von Node.js
- Neueste Versionen von Safari, Chrome, Edge und Firefox.
Voraussetzungen
- Ein Azure-Abonnement.
- Eine vorhandene Communication Services-Ressource. Wenn Sie die Ressource erstellen müssen, können Sie das Azure-Portal, die [Azure PowerShell][azure_powershell] oder die Azure CLI verwenden.
JavaScript-Paket
Um diese Clientbibliothek im Browser verwenden zu können, müssen Sie zunächst einen Bundler verwenden. Ausführliche Informationen dazu finden Sie in unserer Bündelungsdokumentation.
Installieren von
npm install @azure/communication-rooms
Wichtige Begriffe
RoomsApiClient
RoomsClient
ist die primäre Schnittstelle für Entwickler, die die Azure RoomsApi-Clientbibliothek verwenden. Erkunden Sie die Methoden für dieses Clientobjekt, um die verschiedenen Features des Azure RoomsApi-Diensts zu verstehen, auf den Sie zugreifen können.
Beispiele
Authentication
Sie können einen Schlüssel und/oder eine Verbindungszeichenfolge aus Ihrer Communication Services-Ressource im Azure-Portal abrufen. Sobald Sie über einen Schlüssel verfügen, können Sie sich RoomsClient
mit einer der folgenden Methoden authentifizieren:
KeyCredential
Create mit AzureKeyCredential
vor der Initialisierung des Clients
import { AzureKeyCredential } from "@azure/core-auth";
import { RoomsClient } from "@azure/communication-rooms";
const credential = new AzureKeyCredential(KEY);
const client = new RoomsClient(ENDPOINT, credential);
Verwenden eines Verbindungszeichenfolge
import { RoomsClient } from "@azure/communication-rooms";
const connectionString = `endpoint=ENDPOINT;accessKey=KEY`;
const client = new RoomsClient(connectionString);
Verwenden eines TokenCredential
import { DefaultAzureCredential } from "@azure/identity";
import { RoomsClient } from "@azure/communication-rooms";
const credential = new DefaultAzureCredential();
const client = new RoomsClient(ENDPOINT, credential);
Wenn Sie einen Schlüssel zum Initialisieren des Clients verwenden, müssen Sie auch den entsprechenden Endpunkt angeben. Sie können diesen Endpunkt über Ihre Communication Services-Ressource im Azure-Portal abrufen.
Verbrauch
Erstellen eines Raums
Rufen Sie die createRoom
-Methode auf, um einen Raum zu erstellen. Alle Einstellungen sind optional.
Wenn validFrom
nicht angegeben wird, wird standardmäßig der aktuelle datetime-Wert verwendet. Wenn validUntil
nicht angegeben ist, ist validFrom + 180 days
der Standardwert .
Wenn nicht participants
role
angegeben wird, ist dies attendee
standardmäßig.
Ab Version 1.1.0 wird die Eigenschaft hinzugefügt, PstnDialOutEnabled
um die PSTN-DFÜ-Funktion in einem Raum zu aktivieren oder zu deaktivieren. PstnDialOutEnabled
ist eine optionale Eigenschaft. Wenn PstnDialOutEnabled
nicht angegeben ist, ist der Standardwert für PstnDialOutEnabled
false.
// create users with CommunicationIdentityClient
const identityClient = new CommunicationIdentityClient(connectionString);
const user1 = await identityClient.createUserAndToken(["voip"]);
// create RoomsClient
const roomsClient: RoomsClient = new RoomsClient(CONNECTION_STRING);
const validFrom = new Date(Date.now());
let validForDays = 10;
let validUntil = new Date(validFrom.getTime());
validUntil.setDate(validFrom.getDate() + validForDays);
let pstnDialOutEnabled = true;
// options payload to create a room
const createRoomOptions: CreateRoomOptions = {
validFrom,
validUntil,
pstnDialOutEnabled,
participants: [
{
id: user1.user,
role: "Attendee",
},
],
};
// create room
const room = await roomsClient.createRoom(createRoomOptions);
CommunicationIdentityClient finden Sie hier.
Aktualisieren eines Raums
Verwenden Sie die -Methode, um die validFrom
Einstellungen und validUntil
eines Raums updateRoom
zu aktualisieren.
Ab Version 1.1.0 wird die Eigenschaft hinzugefügt, PstnDialOutEnabled
um die PSTN-DFÜ-Funktion in einem Raum zu aktivieren oder zu deaktivieren.
validForDays = 60;
validUntil.setDate(validFrom.getDate() + validForDays);
pstnDialOutEnabled = false;
const updateRoomOptions: UpdateRoomOptions = {
validFrom,
validUntil,
pstnDialOutEnabled,
};
// update the room using the room id from the creation operation
const updatedRoom = await roomsClient.updateRoom(room.id, updateRoomOptions);
Abrufen eines Raums
Verwenden Sie zum Abrufen eines Raums die getRoom
-Methode.
const roomId = "ROOM_ID";
room = await roomsClient.getRoom(roomId);
Auflisten von Räumen
Listet alle Räume mithilfe der -Methode auf listRooms
.
const roomsList = await roomsClient.listRooms();
for await (const currentRoom of roomsList) {
// access room data
console.log(`The room id is ${currentRoom.id}.`);
}
Hinzufügen oder Aktualisieren von Teilnehmern
Verwenden Sie die addOrUpdateParticipants
-Methode, um neue Teilnehmer hinzuzufügen oder vorhandene Teilnehmer zu aktualisieren.
const user2 = await identityClient.createUserAndToken(["voip"]);
const updateParticipantsList = [
{
id: user1.user,
role: "Presenter",
},
{
id: user2.user,
},
];
// run addOrUpdate operation
await roomsClient.addOrUpdateParticipants(room.id, updateParticipantsList);
Entfernen von Teilnehmer*innen
Um Teilnehmer zu entfernen, rufen Sie die -Methode auf removeParticipants
.
const participantsToRemove = [user1.user, user2.user];
await roomsClient.removeParticipants(room.id, participantsToRemove);
Teilnehmer in einem Raum abrufen
Rufen Sie die -Methode auf, um alle Teilnehmer in einem Raum aufzulisten listParticipants
.
const participantsList = await roomsClient.listParticipants(room.id);
for await (const participant of participantsList) {
// access participant data
console.log(`The participant's role is ${participant.role}.`);
}
Löschen eines Raums
Verwenden Sie die deleteRoom
-Methode, um einen Raum zu löschen.
await roomsClient.deleteRoom(room.id);
Problembehandlung
Protokollierung
Die Aktivierung der Protokollierung kann hilfreiche Informationen über Fehler aufdecken. Um ein Protokoll von HTTP-Anforderungen und -Antworten anzuzeigen, legen Sie die Umgebungsvariable AZURE_LOG_LEVEL
auf info
fest. Alternativ kann die Protokollierung zur Laufzeit aktiviert werden, indem Sie setLogLevel
in @azure/logger
aufrufen:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Ausführlichere Anweisungen zum Aktivieren von Protokollen finden Sie in der Paketdokumentation zu @azure/logger.
Nächste Schritte
Ausführliche Beispiele zur Verwendung dieser Bibliothek finden Sie im Beispielverzeichnis .
Mitwirken
Wenn Sie an dieser Bibliothek mitwirken möchten, lesen Sie die Anleitung für Mitwirkende, um mehr darüber zu erfahren, wie Sie den Code erstellen und testen können.
Verwandte Projekte
Azure SDK for JavaScript