Bagikan melalui


Pustaka klien Azure Communication Rooms untuk Python - versi 1.0.0

Paket ini berisi Python SDK untuk Azure Communication Services untuk Kamar. Baca selengkapnya tentang Azure Communication Services di sini

Pengelakan

Dukungan paket Azure SDK Python untuk Python 2.7 telah berakhir 01 Januari 2022. Untuk informasi lebih lanjut dan pertanyaan, silakan merujuk ke https://github.com/Azure/azure-sdk-for-python/issues/20691

Konsep utama

Paket Azure Communication Rooms digunakan untuk melakukan hal berikut:

  • Membuat rapat terjadwal
  • Membuat rapat dengan izin terkelola untuk pesertanya

Memulai

Menginstal paket

python -m pip install azure-communication-rooms

Prasyarat

  • Python 3.7 atau yang lebih baru diharuskan untuk menggunakan paket ini.
  • Anda memerlukan langganan Azure untuk menggunakan paket ini.
  • Sumber daya Communication Services yang disebarkan. Anda dapat menggunakan Portal Microsoft Azure atau Azure PowerShell untuk menyiapkannya.

Inisialisasi Klien

Untuk menginisialisasi Rooms Client, string koneksi dapat digunakan untuk membuat instans.

from azure.communication.rooms import RoomsClient

client = RoomsClient.from_connection_string(conn_str='<connection_str>' )

Contoh

Parameter kunci

  • valid_from: Objek tanggalwaktu tempat ruangan akan mulai ada
  • valid_until: Objek tanggalwaktu setelah rapat ruang berakhir
  • participants: Daftar RoomParticipantyang berisi MRI undangan ke ruangan serta opsional ParticipantRole. Jika ParticipantRole tidak ditentukan, maka secara Attendee default akan ditentukan. Semua atribut di atas bersifat opsional. Layanan ini menyediakan nilai default valid_until dan valid_from jika hilang. Default untukvalid_from adalah waktu tanggal saat ini dan default untuk valid_until adalah valid_from + 180 days.

Membuat ruang

Untuk membuat ruangan, panggil create_room fungsi dari RoomsClient. Argumen valid_from, valid_until, dan participants semuanya opsional.

from azure.core.exceptions import HttpResponseError
from datetime import datetime, timedelta
from azure.communication.rooms import (
    RoomsClient,
    RoomParticipant,
    ParticipantRole
)
from azure.communication.identity import CommunicationUserIdentifier

client = RoomsClient.from_connection_string(conn_str='<connection_str>')
valid_from = datetime.now()
valid_until = valid_from + relativedelta(months=+1)
participants = []
participants.append(RoomParticipant(CommunicationUserIdentifier("<ACS User MRI identity 1>")))
participants.append(RoomParticipant(CommunicationUserIdentifier("<ACS User MRI identity 2>"), ParticipantRole.CONSUMER))
participants.append(RoomParticipant(CommunicationUserIdentifier("<ACS User MRI identity 3>"), ParticipantRole.PRESENTER))

try:
    create_room_response = client.create_room(
        valid_from=valid_from,
        valid_until=valid_until,
        participants=participants
    )
except HttpResponseError as ex:
    print(ex)

Memperbarui ruangan

Properti valid_from dan valid_until dari ruang yang dibuat dapat diperbarui dengan memanggil update_room fungsi dari RoomsClient.

try:
    update_room_response = client.update_room(
        room_id="id of the room to be updated",
        valid_from=datetime.now(),
        valid_until=valid_from + timedelta(weeks=4)
    )
except HttpResponseError as e:
    print('service responds error: {}'.format(e))

Dapatkan kamar

Ruang yang dibuat dapat diambil dengan memanggil get_room fungsi dari RoomsClient dan meneruskan di yang terkait room_id.

try:
    get_room_response = client.get_room(room_id="id of the room to get")
except HttpResponseError as ex:
    print(ex)

Mencantumkan ruang

Ambil semua ruang valid yang dibuat dengan sumber daya ACS dengan memanggil list_rooms fungsi dari RoomsClient.

try:
    list_room_response = client.list_rooms()
except HttpResponseError as ex:
    print(ex)

Menghapus ruangan

Untuk menghapus ruangan, panggil delete_room fungsi dari RoomsClient.

try:
    client.delete_room(
        room_id="id of the room to be deleted")
except HttpResponseError as e:
    print('service responds error: {}'.format(e))

Menambahkan atau memperbarui peserta di ruangan

Untuk menyisipkan peserta baru atau memperbarui peserta yang ada, panggil add_or_update_participants fungsi dari RoomsClient.

participants = []
participants.append(RoomParticipant(CommunicationUserIdentifier("<ACS User MRI identity 1>")))
participants.append(RoomParticipant(CommunicationUserIdentifier("<ACS User MRI identity 2>"), ParticipantRole.ATTENDEE))
participants.append(RoomParticipant(CommunicationUserIdentifier("<ACS User MRI identity 3>"), ParticipantRole.CONSUMER))
try:
    response = client.add_or_update_participants(
        room_id="id of the room to be updated",
        participants=participants
    )
except HttpResponseError as e:
    print('service responds error: {}'.format(e))

Menghapus peserta

Hapus peserta dari ruangan dengan memanggil remove_participants fungsi dari RoomsClient.

communication_identifiers = [CommunicationUserIdentifier("<ACS User MRI identity 2>")]

try:
    remove_participants_response = client.remove_participants(
        room_id=room_id,
        participants=communication_identifiers
    )
except HttpResponseError as ex:
    print(ex)

Daftar peserta

Ambil daftar peserta untuk ruang yang ada dengan mereferensikan room_id:

try:
    participants = self.rooms_client.list_participants(room_id)
except HttpResponseError as ex:
    print(ex)

Pemecahan Masalah

Operasi kamar akan memberikan pengecualian jika permintaan ke server gagal. Klien Rooms akan memunculkan pengecualian yang ditentukan dalam Azure Core.

Langkah berikutnya

Lebih banyak kode sampel

Silakan lihat direktori sampel untuk contoh terperinci tentang cara menggunakan pustaka ini untuk membuat dan mengelola ruang.

Berikan Umpan Balik

Jika Anda menemukan bug atau memiliki saran, silakan ajukan masalah di bagian Masalah proyek

Berkontribusi

Proyek ini menyambut baik kontribusi dan saran. Sebagian besar kontribusi mengharuskan Anda menyetujui Perjanjian Lisensi Kontributor (CLA) yang menyatakan bahwa Anda memiliki hak untuk, dan benar-benar melakukannya, memberi kami hak untuk menggunakan kontribusi Anda. Untuk detailnya, kunjungi https://cla.microsoft.com.

Ketika Anda mengirimkan permintaan tarik, CLA-bot akan secara otomatis menentukan apakah Anda perlu memberikan CLA dan menghias PR dengan tepat (misalnya, label, komentar). Cukup ikuti instruksi yang diberikan oleh bot. Anda hanya perlu melakukan ini sekali di semua repos menggunakan CLA kami.

Proyek ini telah mengadopsi Kode Etik Sumber Terbuka Microsoft. Untuk informasi selengkapnya, lihat Tanya Jawab Umum Kode Etik atau kontak dengan pertanyaan atau komentar opencode@microsoft.com tambahan.