Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Paket ini berisi SDK isomorphic (berjalan baik di Node.js maupun di browser) untuk klien Azure RoomsApi.
Klien Communication Rooms
Persiapan
Lingkungan yang saat ini didukung
- versi LTS Node.js
- Versi terbaru Safari, Chrome, Edge, dan Firefox.
Prasyarat
- Langganan Azure .
- Sumber daya Communication Services yang ada. Jika Anda perlu membuat sumber daya, Anda dapat menggunakanPortal Azure
, [Azure PowerShell][azure_powershell], atau Azure CLI .
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
Otentikasi
Anda bisa mendapatkan string kunci dan/atau koneksi dari sumber daya Communication Services Anda di Portal Microsoft Azure. Setelah memiliki kunci, Anda dapat mengautentikasi RoomsClient dengan salah satu metode berikut:
Buat KeyCredential 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
Membuat ruangan
Untuk membuat ruangan, panggil metode createRoom. Semua pengaturan bersifat opsional.
Jika validFrom tidak disediakan, validFrom default ke tanggalwaktu saat ini. Jika validUntil tidak disediakan, defaultnya adalah validFrom + 180 days.
Saat menentukan participants, jika role tidak ditentukan, maka attendee secara default.
Mulai rilis 1.1.0, properti PstnDialOutEnabled ditambahkan untuk mengaktifkan atau menonaktifkan fitur PSTN Dial-Out di ruangan.
PstnDialOutEnabled adalah 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());
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);
Temukan CommunicationIdentityClient di sini
Memperbarui ruangan
Untuk memperbarui pengaturan validFrom dan validUntil ruangan, gunakan metode updateRoom.
Mulai rilis 1.1.0, properti PstnDialOutEnabled ditambahkan untuk mengaktifkan atau menonaktifkan fitur PSTN Dial-Out 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 semua ruang menggunakan metode listRooms.
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: RoomParticipantPatch[] = [
{
id: user1.user,
role: "Presenter",
},
{
id: user2.user,
},
];
// run addOrUpdate operation
await roomsClient.addOrUpdateParticipants(room.id, updateParticipantsList);
Menghapus peserta
Untuk menghapus peserta, panggil metode removeParticipants.
const participantsToRemove = [user1.user, user2.user];
await roomsClient.removeParticipants(room.id, participantsToRemove);
Mendapatkan peserta di ruangan
Untuk mencantumkan semua peserta dalam ruangan, panggil metode 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}.`);
}
Menghapus ruangan
Gunakan metode deleteRoom untuk menghapus ruangan.
await roomsClient.deleteRoom(room.id);
Pemecahan masalah
Penebangan
Mengaktifkan pengelogan dapat membantu mengungkap 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 sampel direktori 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.
Proyek terkait
Tayangan
Azure SDK for JavaScript