Azure RoomsApi-clientbibliotheek voor JavaScript - versie 1.1.0
Dit pakket bevat een isomorfe SDK (wordt zowel in Node.js als in browsers uitgevoerd) voor de Azure RoomsApi-client.
Communication Rooms Client
Broncode | Pakket (NPM) | Monsters
Aan de slag
Momenteel ondersteunde omgevingen
- LTS-versies van Node.js
- Nieuwste versies van Safari, Chrome, Edge en Firefox.
Vereisten
- Een Azure-abonnement.
- Een bestaande Communication Services-resource. Als u de resource wilt maken, kunt u Azure Portal, de [Azure PowerShell][azure_powershell] of de Azure CLI gebruiken.
JavaScript-bundel
Als u deze clientbibliotheek in de browser wilt gebruiken, moet u eerst een bundler gebruiken. Raadpleeg onze bundeldocumentatie voor meer informatie over hoe u dit doet.
Installeren
npm install @azure/communication-rooms
Belangrijkste concepten
RoomsApiClient
RoomsClient
is de primaire interface voor ontwikkelaars die de Azure RoomsApi-clientbibliotheek gebruiken. Verken de methoden voor dit clientobject om inzicht te krijgen in de verschillende functies van de Azure RoomsApi-service waartoe u toegang hebt.
Voorbeelden
Verificatie
U kunt een sleutel en/of verbindingsreeks ophalen uit uw Communication Services-resource in Azure Portal. Zodra u een sleutel hebt, kunt u de RoomsClient
verifiëren met een van de volgende methoden:
KeyCredential
Creatie met AzureKeyCredential
voordat u de client initialiseert
import { AzureKeyCredential } from "@azure/core-auth";
import { RoomsClient } from "@azure/communication-rooms";
const credential = new AzureKeyCredential(KEY);
const client = new RoomsClient(ENDPOINT, credential);
Een verbindingsreeks gebruiken
import { RoomsClient } from "@azure/communication-rooms";
const connectionString = `endpoint=ENDPOINT;accessKey=KEY`;
const client = new RoomsClient(connectionString);
Met behulp van een TokenCredential
import { DefaultAzureCredential } from "@azure/identity";
import { RoomsClient } from "@azure/communication-rooms";
const credential = new DefaultAzureCredential();
const client = new RoomsClient(ENDPOINT, credential);
Als u een sleutel gebruikt om de client te initialiseren, moet u ook het juiste eindpunt opgeven. U kunt dit eindpunt ophalen vanuit uw Communication Services-resource in Azure Portal.
Gebruik
een kamer Creatie
Als u een ruimte wilt maken, roept u de createRoom
methode aan. Alle instellingen zijn optioneel.
Als validFrom
niet is opgegeven, wordt standaard ingesteld op de huidige datum/tijd. Als validUntil
niet wordt opgegeven, is validFrom + 180 days
de standaardwaarde .
Bij het definiëren van participants
, als role
dit niet is opgegeven, is attendee
dit standaard.
Vanaf release 1.1.0 PstnDialOutEnabled
wordt de eigenschap toegevoegd om de functie PSTN-uitbellen in of uit te schakelen in een ruimte. De PstnDialOutEnabled
is een optionele eigenschap. Als PstnDialOutEnabled
niet is opgegeven, is de standaardwaarde voor 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);
Hier vindt u CommunicationIdentityClient
Een ruimte bijwerken
Gebruik de methode om de validFrom
instellingen en validUntil
van een ruimte bij te werken updateRoom
.
Vanaf release 1.1.0 PstnDialOutEnabled
wordt de eigenschap toegevoegd om de functie PSTN-uitbellen in of uit te schakelen in een ruimte.
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);
Een kamer downloaden
Gebruik de getRoom
methode om een ruimte te krijgen.
const roomId = "ROOM_ID";
room = await roomsClient.getRoom(roomId);
Ruimten weergeven
Maak een lijst van alle ruimten met behulp van de listRooms
methode .
const roomsList = await roomsClient.listRooms();
for await (const currentRoom of roomsList) {
// access room data
console.log(`The room id is ${currentRoom.id}.`);
}
Deelnemers toevoegen of bijwerken
Gebruik de methode om nieuwe deelnemers toe te voegen of bestaande deelnemers bij te addOrUpdateParticipants
werken.
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);
Deelnemers verwijderen
Als u deelnemers wilt verwijderen, roept u de removeParticipants
methode aan.
const participantsToRemove = [user1.user, user2.user];
await roomsClient.removeParticipants(room.id, participantsToRemove);
Deelnemers in een ruimte ophalen
Als u alle deelnemers in een ruimte wilt weergeven, roept u de listParticipants
methode aan.
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}.`);
}
Een ruimte verwijderen
Gebruik de deleteRoom
methode om een ruimte te verwijderen.
await roomsClient.deleteRoom(room.id);
Problemen oplossen
Logboekregistratie
Het inschakelen van logboekregistratie kan helpen bij het ontdekken van nuttige informatie over fouten. Als u een logboek met HTTP-aanvragen en -antwoorden wilt zien, stelt u de AZURE_LOG_LEVEL
omgevingsvariabele in op info
. U kunt logboekregistratie ook tijdens runtime inschakelen door aan te roepen setLogLevel
in de @azure/logger
:
const { setLogLevel } = require("@azure/logger");
setLogLevel("info");
Voor meer gedetailleerde instructies over het inschakelen van logboeken kunt u de @azure-/loggerpakketdocumenten bekijken.
Volgende stappen
Bekijk de map met voorbeelden voor gedetailleerde voorbeelden van het gebruik van deze bibliotheek.
Bijdragen
Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de handleiding voor bijdragen voor meer informatie over het bouwen en testen van de code.
Verwante projecten
Azure SDK for JavaScript