共用方式為


適用于 Python 的 Azure 通訊室用戶端程式庫 - 1.0.0 版

此套件包含適用于會議室之 Azure 通訊服務 的 Python SDK。 在這裡深入瞭解Azure 通訊服務

免責聲明

Python 2.7 的 Azure SDK Python 套件支援已于 2022 年 1 月 1 日結束。 如需詳細資訊和問題,請參閱 https://github.com/Azure/azure-sdk-for-python/issues/20691

重要概念

Azure 通訊室套件可用來執行下列動作:

  • 建立排程的會議
  • 為其參與者建立具有受控許可權的會議

開始使用

安裝套件

python -m pip install azure-communication-rooms

必要條件

用戶端初始化

若要初始化會議室用戶端,可以使用連接字串來具現化。

from azure.communication.rooms import RoomsClient

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

範例

索引鍵參數

  • valid_from:從中開始現有會議室的 datetime 物件
  • valid_until:日期時間物件,之後會議室會議會結束
  • participants:包含受邀者加入會議室以及選擇性 ParticipantRole 的 MRI 清單 RoomParticipant 。 如果未 ParticipantRole 指定 ,則預設會是 Attendee 。 上述所有屬性都是選擇性的。 如果遺漏valid_until和valid_from,服務會提供預設值。 的預設值 valid_from 是目前的日期時間,而 的 valid_until 預設值為 valid_from + 180 days

建立會議室

若要建立會議室,請從 RoomsClient 呼叫 函 create_room 式。 valid_fromvalid_untilparticipants 引數都是選擇性的。

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)

更新會議室

valid_from從 呼叫 update_roomRoomsClient 函式,即可更新所建立會議室的 和 valid_until 屬性。

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

取得會議室

藉由呼叫 RoomsClientget_room 式並傳入相關聯的 room_id ,即可擷取已建立的空間。

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

列出會議室

RoomsClient 呼叫 list_rooms 函式,以 ACS 資源建立的所有有效會議室。

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

刪除會議室

若要刪除會議室,請從 RoomClient 呼叫 函 delete_room 式。

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

在會議室中新增或更新參與者

若要插入新的參與者或更新現有的參與者,請從 RoomsClient 呼叫 函 add_or_update_participants 式。

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

移除參與者

從 RoomClient 呼叫 remove_participants 函式,從會議室移除參與者。

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)

列出參與者

藉由參考 room_id 來擷取現有會議室的參與者清單:

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

疑難排解

如果伺服器的要求失敗,會議室作業將會擲回例外狀況。 會議室用戶端會引發 Azure Core中定義的例外狀況。

下一步

更多的程式碼範例

請參閱 範例 目錄,以取得如何使用此程式庫來建立和管理會議室的詳細範例。

提供意見反應

如果您遇到任何錯誤或有建議,請在專案的 [ 問題 ] 區段中提出問題

參與

此專案歡迎參與和提供建議。 大部分的參與都要求您同意「參與者授權合約 (CLA)」,宣告您有權且確實授與我們使用投稿的權利。 如需詳細資料,請前往 https://cla.microsoft.com

當您提交提取要求時,CLA Bot 會自動判斷您是否需要提供 CLA,並適當地裝飾 PR (例如標籤、註解)。 請遵循 bot 提供的指示。 您只需要使用我們的 CLA 在所有存放庫上執行此動作一次。

此專案採用 Microsoft Open Source Code of Conduct (Microsoft 開放原始碼管理辦法)。 如需詳細資訊,請參閱管理辦法常見問題集,如有其他問題或意見,請連絡 opencode@microsoft.com。