Share via


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 befintligt
  • valid_until: Ett datetime-objekt efter vilket rumsmötet skulle avslutas
  • participants: En lista över RoomParticipants som innehåller MRI:er av inbjudna till rummet samt valfria ParticipantRole. Om ParticipantRole inte anges är Attendee 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ör valid_until är valid_from + 180 days.

Skapa ett rum

Om du vill skapa ett rum anropar du create_room funktionen från RoomsClient. Argumenten valid_from, valid_untiloch 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_idreferera 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.