Delen via


Azure RoomsApi-clientbibliotheek voor JavaScript - versie 1.1.1

Dit pakket bevat een isomorfe SDK (wordt zowel in Node.js als in browsers uitgevoerd) voor de Azure RoomsApi-client.

Communication Rooms Client

| Package (NPM) | Voorbeelden

Slag

Momenteel ondersteunde omgevingen

Voorwaarden

  • Een Azure-abonnement.
  • Een bestaande Communication Services-resource. Als u de resource wilt maken, kunt u de Azure Portal, de [Azure PowerShell][azure_powershell] of de Azure CLIgebruiken.

JavaScript-bundel

Als u deze clientbibliotheek in de browser wilt gebruiken, moet u eerst een bundelaar gebruiken. Raadpleeg onze bundeldocumentatievoor meer informatie over hoe u dit doet.

Installeren

npm install @azure/communication-rooms

Sleutelbegrippen

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

Authenticatie

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:

Maak KeyCredential 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);

Een TokenCredential gebruiken

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 uit uw Communication Services-resource in Azure Portal.

Gebruik

Een ruimte maken

Als u een ruimte wilt maken, roept u de methode createRoom aan. Alle instellingen zijn optioneel.

Als validFrom niet is opgegeven, wordt deze standaard ingesteld op de huidige datum/tijd. Als validUntil niet is opgegeven, wordt de standaardwaarde validFrom + 180 days.

Bij het definiëren van participants, als role niet is opgegeven, wordt deze standaard attendee.

Vanaf release 1.1.0 wordt PstnDialOutEnabled eigenschap toegevoegd om de functie VOOR UITbellen via PSTN in of uit te schakelen in een ruimte. De PstnDialOutEnabled is een optionele eigenschap. Als PstnDialOutEnabled niet is opgegeven, is de standaardwaarde voor PstnDialOutEnabled onwaar.

// 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());
const validForDays = 10;
const validUntil = new Date(validFrom.getTime());
validUntil.setDate(validFrom.getDate() + validForDays);
const 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);

Vind CommunicationIdentityClient hier

Een ruimte bijwerken

Als u de validFrom- en validUntil-instellingen van een ruimte wilt bijwerken, gebruikt u de methode updateRoom.

Vanaf release 1.1.0 wordt PstnDialOutEnabled eigenschap toegevoegd om de functie VOOR UITbellen via PSTN 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 ophalen

Gebruik de methode getRoom om een ruimte op te halen.

const roomId = "ROOM_ID";
room = await roomsClient.getRoom(roomId);

Ruimten weergeven

Geef alle ruimten weer met behulp van de methode listRooms.

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

Als u nieuwe deelnemers wilt toevoegen of bestaande deelnemers wilt bijwerken, gebruikt u de methode addOrUpdateParticipants.

const user2 = await identityClient.createUserAndToken(["voip"]);
const updateParticipantsList: RoomParticipantPatch[] = [
  {
    id: user1.user,
    role: "Presenter",
  },
  {
    id: user2.user,
  },
];

// run addOrUpdate operation
await roomsClient.addOrUpdateParticipants(room.id, updateParticipantsList);

Deelnemers verwijderen

Als u deelnemers wilt verwijderen, wordt de methode removeParticipants aangeroepen.

const participantsToRemove = [user1.user, user2.user];
await roomsClient.removeParticipants(room.id, participantsToRemove);

Deelnemers in een ruimte krijgen

Als u alle deelnemers in een ruimte wilt weergeven, roept u de methode listParticipants 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 methode deleteRoom om een ruimte te verwijderen.

await roomsClient.deleteRoom(room.id);

Probleemoplossing

Logboekregistratie

Het inschakelen van logboekregistratie kan helpen nuttige informatie over fouten te ontdekken. Als u een logboek met HTTP-aanvragen en -antwoorden wilt zien, stelt u de omgevingsvariabele AZURE_LOG_LEVEL in op info. U kunt logboekregistratie ook tijdens runtime inschakelen door setLogLevel aan te roepen in de @azure/logger:

const { setLogLevel } = require("@azure/logger");
setLogLevel("info");

Voor meer gedetailleerde instructies over het inschakelen van logboeken, kunt u de @azure/logger pakketdocumentenbekijken.

Volgende stappen

Bekijk de voorbeelden map voor gedetailleerde voorbeelden over het gebruik van deze bibliotheek.

Bijdragen

Als u een bijdrage wilt leveren aan deze bibliotheek, leest u de gids voor bijdragen voor meer informatie over het bouwen en testen van de code.

indrukken