Bagikan melalui


Pustaka klien Azure RoomsApi untuk JavaScript - versi 1.1.0

Paket ini berisi SDK isomorfik (berjalan baik di Node.js maupun di browser) untuk klien Azure RoomsApi.

Klien Communication Rooms

Kode sumber | Paket (NPM) | Sampel

Memulai

Lingkungan yang didukung saat ini

Prasyarat

Bundel JavaScript

Untuk menggunakan pustaka klien ini di browser, pertama-tama Anda perlu menggunakan bunder. Untuk detail tentang cara melakukan ini, silakan lihat dokumentasi bundling kami.

Menginstal

npm install @azure/communication-rooms

Konsep utama

RoomsApiClient

RoomsClient adalah antarmuka utama untuk pengembang yang menggunakan pustaka klien Azure RoomsApi. Jelajahi metode pada objek klien ini untuk memahami berbagai fitur layanan Azure RoomsApi yang dapat Anda akses.

Contoh

Autentikasi

Anda bisa mendapatkan kunci dan/atau string koneksi dari sumber daya Communication Services Anda di Portal Microsoft Azure. Setelah memiliki kunci, Anda dapat mengautentikasi RoomsClient dengan salah satu metode berikut:

KeyCredential Create dengan AzureKeyCredential sebelum menginisialisasi klien

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

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

Menggunakan string koneksi

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

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

Menggunakan TokenCredential

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

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

Jika Anda menggunakan kunci untuk menginisialisasi klien, Anda juga perlu menyediakan titik akhir yang sesuai. Anda bisa mendapatkan titik akhir ini dari sumber daya Communication Services Anda di Portal Microsoft Azure.

Penggunaan

Create kamar

Untuk membuat ruangan, panggil createRoom metode . Semua pengaturan bersifat opsional.

Jika validFrom tidak disediakan, defaultnya adalah tanggalwaktu saat ini. Jika validUntil tidak disediakan, defaultnya adalah validFrom + 180 days.

Saat menentukan participants, jika role tidak ditentukan, maka secara attendee default akan ditentukan.

Mulai rilis 1.1.0, PstnDialOutEnabled properti ditambahkan untuk mengaktifkan atau menonaktifkan fitur Dial-Out PSTN di ruangan. Properti PstnDialOutEnabled merupakan properti opsional. Jika PstnDialOutEnabled tidak disediakan, maka default untuk PstnDialOutEnabled adalah 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);

Temukan CommunicationIdentityClient di sini

Memperbarui ruangan

Untuk memperbarui validFrom pengaturan dan validUntil ruangan, gunakan updateRoom metode .

Mulai rilis 1.1.0, PstnDialOutEnabled properti ditambahkan untuk mengaktifkan atau menonaktifkan fitur Dial-Out PSTN di ruangan.

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

Dapatkan kamar

Untuk mendapatkan ruangan, gunakan metode .getRoom

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

Mencantumkan ruang

Cantumkan listRooms semua ruang menggunakan metode .

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

Menambahkan atau memperbarui peserta

Untuk menambahkan peserta baru, atau memperbarui peserta yang sudah ada, gunakan metode .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);

Menghapus peserta

Untuk menghapus peserta, panggil removeParticipants metode .

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

Mendapatkan peserta di ruangan

Untuk mencantumkan semua peserta dalam ruangan, panggil listParticipants metode .

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}.`);
}

Menghapus ruangan

deleteRoom Gunakan metode untuk menghapus ruangan.

await roomsClient.deleteRoom(room.id);

Pemecahan Masalah

Pencatatan

Mengaktifkan pengelogan dapat membantu menemukan informasi yang berguna tentang kegagalan. Untuk melihat log permintaan dan respons HTTP, atur variabel lingkungan AZURE_LOG_LEVEL ke info. Atau, pengelogan dapat diaktifkan saat runtime dengan memanggil setLogLevel di @azure/logger:

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

Untuk instruksi lebih rinci tentang cara mengaktifkan log, Anda dapat melihat dokumen paket @azure/pencatat.

Langkah berikutnya

Silakan lihat direktori sampel untuk contoh terperinci tentang cara menggunakan pustaka ini.

Berkontribusi

Jika Anda ingin berkontribusi pada pustaka ini, baca panduan berkontribusi untuk mempelajari selengkapnya tentang cara membuat dan menguji kode.

Tayangan