Python 用 Azure Communication Rooms クライアント ライブラリ - バージョン 1.0.0
このパッケージには、Rooms 用の Python SDK for Azure Communication Servicesが含まれています。 Azure Communication Servicesの詳細については、こちらを参照してください
免責事項
Python 2.7 の Azure SDK Python パッケージのサポートは、2022 年 1 月 1 日に終了しました。 詳細と質問については、https://github.com/Azure/azure-sdk-for-python/issues/20691 を参照してください
主要な概念
Azure Communication Rooms パッケージは、次の操作を行うために使用されます。
- スケジュールされた会議を作成する
- 参加者の管理されたアクセス許可を持つ会議を作成する
作業の開始
パッケージのインストール
python -m pip install azure-communication-rooms
前提条件
- このパッケージを使用するには、Python 3.7 以降が必要です。
- このパッケージを使用するには 、Azure サブスクリプション が必要です。
- デプロイ済みの Communication Services リソース。 Azure Portal またはAzure PowerShellを使用して設定できます。
クライアントの初期化
Rooms クライアントを初期化するために、接続文字列を使用してインスタンス化できます。
from azure.communication.rooms import RoomsClient
client = RoomsClient.from_connection_string(conn_str='<connection_str>' )
例
キー パラメーター
valid_from
: 既存の会議室を開始する datetime オブジェクトvalid_until
: 会議室の会議が終了する datetime オブジェクトparticipants
: 会議室へのRoomParticipant
招待者のMRIを含むのリストとオプションParticipantRole
の 。 が指定されていない場合ParticipantRole
は、既定でになりますAttendee
。 上記のすべての属性は省略可能です。 サービスは、valid_untilの既定値を提供し、不足している場合はvalid_fromします。 のvalid_from
既定値は現在の日付時刻で、 のvalid_until
既定値は ですvalid_from + 180 days
。
ルームを作成する
ルームを作成するには、 から RoomsClient
関数をcreate_room
呼び出します。 、valid_from
valid_until
、および participants
の各引数はすべて省略可能です。
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_until
プロパティはvalid_from
、 から RoomsClient
関数をupdate_room
呼び出すことによって更新できます。
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))
会議室を取得する
作成されたルームは、 から RoomsClient
関数をget_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
関数を呼び出して、ACS リソースで作成されたすべての有効な会議室をlist_rooms
取得します。
try:
list_room_response = client.list_rooms()
except HttpResponseError as ex:
print(ex)
ルームを削除する
会議室を削除するには、RoomsClient から 関数を 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))
参加者を削除する
RoomsClient から 関数を呼び出して、会議室から参加者を 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)
トラブルシューティング
サーバーへの要求が失敗した場合、Rooms 操作は例外をスローします。 Rooms クライアントは、 Azure Core で定義されている例外を発生させます。
次のステップ
その他のサンプル コード
このライブラリを使用して会議室を作成および管理する方法の詳細な例については、 サンプル ディレクトリを参照してください。
フィードバックの提供
バグが発生した場合、または提案がある場合は、プロジェクトの [問題 ] セクションに問題を報告してください
共同作成
このプロジェクトでは、共同作成と提案を歓迎しています。 ほとんどの共同作成では、共同作成者使用許諾契約書 (CLA) にご同意いただき、ご自身の共同作成内容を使用する権利を Microsoft に供与する権利をお持ちであり、かつ実際に供与することを宣言していただく必要があります。 詳細については、 https://cla.microsoft.com を参照してください。
pull request を送信すると、CLA を提供して PR (ラベル、コメントなど) を適宜装飾する必要があるかどうかを CLA ボットが自動的に決定します。 ボットによって提供される手順にそのまま従ってください。 この操作は、Microsoft の CLA を使用するすべてのリポジトリについて、1 回だけ行う必要があります。
このプロジェクトでは、Microsoft オープン ソースの倫理規定を採用しています。 詳細については、「倫理規定の FAQ」をご覧ください。追加の質問やコメントがある場合は opencode@microsoft.com にお問い合わせください。
Azure SDK for Python