JavaScript 用 Azure RoomsApi クライアント ライブラリ - バージョン 1.1.0

このパッケージには、Azure RoomsApi クライアント用の同型 SDK (Node.js とブラウザーの両方で実行) が含まれています。

Communication Rooms クライアント

ソースコード | パッケージ (NPM) | サンプル

はじめに

現在サポートされている環境

前提条件

JavaScript バンドル

ブラウザーでこのクライアント ライブラリを使用するには、まず bundler を使用する必要があります。 これを行う方法の詳細については、 バンドルに関するドキュメントを参照してください。

[インストール中]

npm install @azure/communication-rooms

主要な概念

RoomsApiClient

RoomsClient は、Azure RoomsApi クライアント ライブラリを使用する開発者向けの主要なインターフェイスです。 このクライアント オブジェクトのメソッドを調べて、アクセスできる Azure RoomsApi サービスのさまざまな機能を理解します。

認証

Azure Portal で Communication Services リソースからキーや接続文字列を取得できます。 キーを取得したら、次のいずれかの方法で を RoomsClient 認証できます。

クライアントを初期化する前に をAzureKeyCredentialCreateKeyCredentialする

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 Portal の Communication Services リソースから取得できます。

使用

ルームを作成する

ルームを作成するには、 メソッドを呼び出します createRoom 。 すべての設定は省略可能です。

が指定されていない場合 validFrom は、既定で現在の datetime に設定されます。 が指定されていない場合 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 はこちら

会議室を更新する

会議室の と validUntilvalidFrom設定を更新するには、 メソッドを使用します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_LEVELinfo に設定します。 または、@azure/loggersetLogLevel を呼び出して、実行時にログ記録を有効にすることもできます。

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

ログを有効にする方法の詳細については、@azure/logger パッケージに関するドキュメントを参照してください。

次の手順

このライブラリの使用方法の詳細な例については、 samples ディレクトリを参照してください。

共同作成

このライブラリに投稿する場合、コードをビルドしてテストする方法の詳細については、投稿ガイドを参照してください。

インプレッション数