Klientbibliotek för Azure Communication Rooms för Python – version 1.0.0
Det här paketet innehåller en Python SDK för Azure Communication Services för Rooms. Läs mer om Azure Communication Services här
Friskrivning
Stöd för Azure SDK Python-paket för Python 2.7 upphörde den 1 januari 2022. Mer information och frågor finns i https://github.com/Azure/azure-sdk-for-python/issues/20691
Viktiga begrepp
Paketet Azure Communication Rooms används för att göra följande:
- Skapa schemalagda möten
- Skapa möten med hanterade behörigheter för deltagarna
Komma igång
Installera paketet
python -m pip install azure-communication-rooms
Förutsättningar
- Python 3.7 eller senare krävs för att använda det här paketet.
- Du behöver en Azure-prenumeration för att använda det här paketet.
- En distribuerad Communication Services-resurs. Du kan använda Azure-portalen eller Azure PowerShell för att konfigurera den.
Klientinitiering
För att initiera Rumsklienten kan anslutningssträngen användas för att instansiera.
from azure.communication.rooms import RoomsClient
client = RoomsClient.from_connection_string(conn_str='<connection_str>' )
Exempel
Nyckelparametrar
valid_from
: Ett datetime-objekt från vilket rummet startar befintligtvalid_until
: Ett datetime-objekt efter vilket rumsmötet skulle avslutasparticipants
: En lista överRoomParticipant
s som innehåller MRI:er av inbjudna till rummet samt valfriaParticipantRole
. OmParticipantRole
inte anges ärAttendee
det som standard. Alla ovanstående attribut är valfria. Tjänsten tillhandahåller standardvärden för valid_until och valid_from om de saknas. Standardvärdet förvalid_from
är aktuell datumtid och standardvärdet förvalid_until
ärvalid_from + 180 days
.
Skapa ett rum
Om du vill skapa ett rum anropar du create_room
funktionen från RoomsClient
. Argumenten valid_from
, valid_until
och participants
är valfria.
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)
Uppdatera ett rum
Egenskaperna valid_from
och valid_until
för ett skapat rum kan uppdateras genom att anropa update_room
funktionen från 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))
Skaffa ett rum
Ett skapat rum kan hämtas genom att anropa get_room
funktionen från RoomsClient
och skicka den associerade room_id
.
try:
get_room_response = client.get_room(room_id="id of the room to get")
except HttpResponseError as ex:
print(ex)
Visa en lista över rum
Hämta alla giltiga rum som skapats med en ACS-resurs genom att anropa list_rooms
funktionen från RoomsClient
.
try:
list_room_response = client.list_rooms()
except HttpResponseError as ex:
print(ex)
Ta bort ett rum
Om du vill ta bort ett rum anropar du delete_room
funktionen från RoomsClient.
try:
client.delete_room(
room_id="id of the room to be deleted")
except HttpResponseError as e:
print('service responds error: {}'.format(e))
Lägga till eller uppdatera deltagare i ett rum
För att infoga nya deltagare eller uppdatera befintliga deltagare anropar du add_or_update_participants
funktionen från 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))
Ta bort deltagare
Ta bort deltagare från ett rum genom att anropa remove_participants
funktionen från 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)
Visa en lista över deltagare
Hämta listan över deltagare för ett befintligt rum genom att room_id
referera till :
try:
participants = self.rooms_client.list_participants(room_id)
except HttpResponseError as ex:
print(ex)
Felsökning
Rumsåtgärder utlöser ett undantag om begäran till servern misslyckas. Rooms-klienten genererar undantag som definierats i Azure Core.
Nästa steg
Mer exempelkod
Ta en titt på exempelkatalogen för detaljerade exempel på hur du använder det här biblioteket för att skapa och hantera rum.
Ge feedback
Om du stöter på buggar eller har förslag kan du skicka in ett problem i avsnittet Problem i projektet
Bidra
Det här projektet välkomnar bidrag och förslag. Merparten av bidragen kräver att du godkänner ett licensavtal för bidrag, där du deklarerar att du har behörighet att bevilja oss rättigheten att använda ditt bidrag, och att du dessutom uttryckligen gör så. Mer information finns på https://cla.microsoft.com.
När du skickar en pull-förfrågan avgör en CLA-robot automatiskt om du måste tillhandahålla ett licensavtal för bidrag med lämplig PR (t.ex. etikett eller kommentar). Följ bara robotens anvisningar. Du behöver bara göra detta en gång för alla repor som använder vårt licensavtal för bidrag.
Det här projektet använder sig av Microsofts uppförandekod för öppen källkod. Du hittar mer information i Vanliga frågor om uppförandekod eller kontakta opencode@microsoft.com för ytterligare frågor eller kommentarer.
Azure SDK for Python
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för