Klientská knihovna Azure RoomsApi pro JavaScript – verze 1.1.0
Tento balíček obsahuje izomorfní sadu SDK (spouští se v Node.js i v prohlížečích) pro klienta Azure RoomsApi.
Klient komunikačních místností
Zdrojový kód | Balíček (NPM) | Vzorky
Začínáme
Aktuálně podporovaná prostředí
- LtS verze Node.js
- Nejnovější verze prohlížečů Safari, Chrome, Edge a Firefox.
Požadavky
- Předplatné Azure
- Existující prostředek komunikačních služeb. Pokud potřebujete vytvořit prostředek, můžete použít Azure Portal, [Azure PowerShell][azure_powershell] nebo Azure CLI.
JavaScript Bundle
Pokud chcete tuto klientskou knihovnu používat v prohlížeči, musíte nejprve použít bundler. Podrobnosti o tom, jak to udělat, najdete v naší dokumentaci k sdružování.
Instalace
npm install @azure/communication-rooms
Klíčové koncepty
RoomsApiClient
RoomsClient
je primární rozhraní pro vývojáře, kteří používají klientskou knihovnu Azure RoomsApi. Prozkoumejte metody tohoto objektu klienta a seznamte se s různými funkcemi služby Azure RoomsApi, ke kterým máte přístup.
Příklady
Authentication
Klíč nebo připojovací řetězec můžete získat z prostředku Komunikační služby na webu Azure Portal. Jakmile budete mít klíč, můžete ho RoomsClient
ověřit některou z následujících metod:
KeyCredential
Create před AzureKeyCredential
inicializací klienta
import { AzureKeyCredential } from "@azure/core-auth";
import { RoomsClient } from "@azure/communication-rooms";
const credential = new AzureKeyCredential(KEY);
const client = new RoomsClient(ENDPOINT, credential);
Použití připojovací řetězec
import { RoomsClient } from "@azure/communication-rooms";
const connectionString = `endpoint=ENDPOINT;accessKey=KEY`;
const client = new RoomsClient(connectionString);
Použití TokenCredential
import { DefaultAzureCredential } from "@azure/identity";
import { RoomsClient } from "@azure/communication-rooms";
const credential = new DefaultAzureCredential();
const client = new RoomsClient(ENDPOINT, credential);
Pokud k inicializaci klienta použijete klíč, budete také muset zadat příslušný koncový bod. Tento koncový bod můžete získat z prostředku komunikačních služeb na webu Azure Portal.
Využití
Create místnosti
Pokud chcete vytvořit místnost, zavolejte metodu createRoom
. Všechna nastavení jsou volitelná.
Pokud validFrom
není zadaný, je výchozí hodnota aktuálního data a času. Pokud validUntil
není k dispozici, výchozí hodnota je validFrom + 180 days
.
Pokud při definování participants
role
není zadaný, bude attendee
to ve výchozím nastavení.
Od verze 1.1.0 je přidána vlastnost pro PstnDialOutEnabled
povolení nebo zakázání funkce vytáčení veřejné telefonní sítě v místnosti. Jedná se PstnDialOutEnabled
o volitelnou vlastnost. Pokud PstnDialOutEnabled
není zadaný, výchozí hodnota pro PstnDialOutEnabled
je 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);
Tady najdete CommunicationIdentityClient.
Aktualizace místnosti
Pokud chcete aktualizovat validFrom
nastavení a validUntil
místnosti, použijte metodu updateRoom
.
Od verze 1.1.0 je přidána vlastnost pro PstnDialOutEnabled
povolení nebo zakázání funkce vytáčení veřejné telefonní sítě v místnosti.
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);
Získat místnost
K získání místnosti použijte metodu getRoom
.
const roomId = "ROOM_ID";
room = await roomsClient.getRoom(roomId);
Seznam místností
Vypíše listRooms
všechny místnosti pomocí metody .
const roomsList = await roomsClient.listRooms();
for await (const currentRoom of roomsList) {
// access room data
console.log(`The room id is ${currentRoom.id}.`);
}
Přidání nebo aktualizace účastníků
Pokud chcete přidat nové účastníky nebo aktualizovat stávající účastníky, použijte metodu addOrUpdateParticipants
.
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);
Odebrat účastníky
Pokud chcete účastníky odebrat, zavolejte metodu removeParticipants
.
const participantsToRemove = [user1.user, user2.user];
await roomsClient.removeParticipants(room.id, participantsToRemove);
Získání účastníků do místnosti
Pokud chcete zobrazit seznam všech účastníků v místnosti, zavolejte metodu 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}.`);
}
Odstranění místnosti
deleteRoom
Pomocí metody odstraňte místnost.
await roomsClient.deleteRoom(room.id);
Poradce při potížích
protokolování
Povolení protokolování může pomoct odhalit užitečné informace o selháních. Pokud chcete zobrazit protokol požadavků a odpovědí HTTP, nastavte proměnnou AZURE_LOG_LEVEL
prostředí na info
. Případně je možné protokolování povolit za běhu voláním setLogLevel
v :@azure/logger
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Podrobnější pokyny k povolení protokolů najdete v dokumentaci k balíčkům @azure/protokolovacího nástroje.
Další kroky
Podrobné příklady použití této knihovny najdete v adresáři samples .
Přispívání
Pokud chcete přispívat do této knihovny, přečtěte si prosím průvodce přispívání , kde se dozvíte více o tom, jak sestavit a otestovat kód.
Související projekty
Azure SDK for JavaScript