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
- Versi LTS dari Node.js
- Safari, Chrome, Edge, dan Firefox versi terbaru.
Prasyarat
- Langganan Azure.
- Sumber daya Communication Services yang ada. Jika Anda perlu membuat sumber daya, Anda dapat menggunakan Portal Microsoft 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
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.
Proyek terkait
Azure SDK for JavaScript