共用方式為


適用於 JavaScript 的 Azure RoomsApi 用戶端連結庫 - 1.1.0 版

此套件包含同型 SDK, (會在 azure RoomsApi 用戶端的 Node.js 和瀏覽器) 中執行。

通訊室用戶端

| 原始程式碼套件 (NPM) | 樣品

開始使用

目前支援的環境

必要條件

JavaScript 套件組合

若要在瀏覽器中使用此用戶端連結庫,您必須先使用套件組合器。 如需如何執行這項操作的詳細資訊,請參閱我們的 統合檔

安裝

npm install @azure/communication-rooms

重要概念

RoomsApiClient

RoomsClient 是使用 Azure RoomsApi 用戶端連結庫的開發人員的主要介面。 探索此客戶端物件上的方法,以瞭解您可以存取之 Azure RoomsApi 服務的不同功能。

範例

驗證

您可以從 Azure 入口網站中的通訊服務資源取得金鑰和/或 連接字串。 您擁有金鑰,即可使用下列任何方法驗證 RoomsClient

在初始化用戶端之前先 AzureKeyCredential Create KeyCredential

import { AzureKeyCredential } from "@azure/core-auth";
import { RoomsClient } from "@azure/communication-rooms";

const credential = new AzureKeyCredential(KEY);
const client = new RoomsClient(ENDPOINT, credential);

使用 連接字串

import { RoomsClient } from "@azure/communication-rooms";

const connectionString = `endpoint=ENDPOINT;accessKey=KEY`;
const client = new RoomsClient(connectionString);

使用 TokenCredential

import { DefaultAzureCredential } from "@azure/identity";
import { RoomsClient } from "@azure/communication-rooms";

const credential = new DefaultAzureCredential();
const client = new RoomsClient(ENDPOINT, credential);

如果您使用金鑰來初始化用戶端,您也必須提供適當的端點。 您可以從 Azure 入口網站中的通訊服務資源取得此端點。

使用方式

Create 會議室

若要建立會議室,請呼叫 createRoom 方法。 所有設定都是選用的。

如果未 validFrom 提供 ,則預設為目前的日期時間。 如果未 validUntil 提供 ,則預設值為 validFrom + 180 days

定義 participants時,如果未 role 指定 ,則預設為 attendee

從 1.1.0 版開始, PstnDialOutEnabled 會新增 屬性來啟用或停用會議室中的 PSTN 撥出功能。 PstnDialOutEnabled 是選擇性屬性。 如果未 PstnDialOutEnabled 提供 ,則的 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

更新會議室

若要更新 validFrom 會議室的 和 validUntil 設定, updateRoom 請使用 方法。

從 1.1.0 版開始, PstnDialOutEnabled 會新增 屬性來啟用或停用會議室中的 PSTN 撥出功能。

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

取得會議室

若要取得會議室, getRoom 請使用 方法。

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

列出會議室

使用 listRooms 方法列出所有會議室。

const roomsList = await roomsClient.listRooms();
for await (const currentRoom of roomsList) {
  // access room data
  console.log(`The room id is ${currentRoom.id}.`);
}

新增或更新參與者

若要新增參與者或更新現有的參與者,請使用 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);

拿掉參與者

若要移除參與者, removeParticipants 請呼叫 方法。

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

取得會議室中的參與者

若要列出會議室呼叫 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}.`);
}

刪除會議室

deleteRoom使用方法來刪除會議室。

await roomsClient.deleteRoom(room.id);

疑難排解

記錄

啟用記錄有助於找出失敗的相關實用資訊。 若要查看 HTTP 的要求和回應記錄,請將 AZURE_LOG_LEVEL 環境變數設定為 info。 或者,您可以在 @azure/logger 中呼叫 setLogLevel,以在執行階段啟用記錄:

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

如需如何啟用記錄的詳細指示,可參閱 @azure/logger 套件文件

下一步

如需如何使用此連結庫的詳細範例,請參閱 範例 目錄。

參與

如果您希望向此程式庫投稿,請參閱投稿指南,深入瞭解如何組建與測試程式碼。

曝光數