Delen via


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

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 daysde 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.

Weergaven