Aracılığıyla paylaş


Python için Azure İletişim Odaları istemci kitaplığı - sürüm 1.0.0

Bu paket, Odalar için Azure İletişim Hizmetleri için bir Python SDK içerir. Azure İletişim Hizmetleri hakkında daha fazla bilgiyi burada bulabilirsiniz

Bildirim

Python 2.7 için Azure SDK Python paketleri desteği 01 Ocak 2022'de sona erdi. Daha fazla bilgi ve soru için lütfen https://github.com/Azure/azure-sdk-for-python/issues/20691

Önemli kavramlar

Azure İletişim Odaları paketi aşağıdakileri yapmak için kullanılır:

  • Zamanlanmış toplantılar oluşturma
  • Katılımcıları için yönetilen izinlere sahip toplantılar oluşturma

Başlarken

Paketi yükleme

python -m pip install azure-communication-rooms

Önkoşullar

İstemci Başlatma

Rooms İstemcisi'ni başlatmak için bağlantı dizesi örnek olarak kullanılabilir.

from azure.communication.rooms import RoomsClient

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

Örnekler

Anahtar parametreler

  • valid_from: Odanın var olandan başlayacağı bir datetime nesnesi
  • valid_until: Oda toplantısının sona ereceği tarih saat nesnesi
  • participants: Odaya davetlilerin MR'larını içeren bir liste RoomParticipantve isteğe bağlı ParticipantRole. Belirtilmezse ParticipantRole , varsayılan olarak belirtilir Attendee . Yukarıdaki özniteliklerin tümü isteğe bağlıdır. Hizmet, valid_until varsayılan değerlerini ve eksikse valid_from sağlar. içinvalid_from varsayılan geçerli tarih saati ve varsayılanı valid_until ise şeklindedir valid_from + 180 days.

Oda oluşturma

Oda oluşturmak için işlevinden RoomsClientçağırıncreate_room. valid_from, valid_untilve participants bağımsız değişkenlerinin tümü isteğe bağlıdır.

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)

Odayı güncelleştirme

valid_from Oluşturulan bir odanın ve valid_until özellikleri, işlevinden RoomsClientçağrılarak update_room güncelleştirilebilir.

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

Oda al

Oluşturulan bir oda işlevi RoomsClient çağrılarak get_room ve ilişkili room_idiçinde geçirilerek alınabilir.

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

Liste odaları

işlevinden RoomsClientçağrılarak list_rooms bir ACS kaynağıyla oluşturulan tüm geçerli odaları alın.

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

Odayı silme

Bir odayı silmek için RoomsClient'dan işlevini çağırın 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))

Odaya katılımcı ekleme veya güncelleştirme

Yeni katılımcı eklemek veya mevcut katılımcıları güncelleştirmek için RoomsClient'dan işlevini çağırın 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))

Katılımcıları kaldırma

RoomsClient'dan işlevini çağırarak remove_participants katılımcıları odadan kaldırın.

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)

Katılımcıları listeleme

var olan bir odanın katılımcı listesini almak için adresine başvurun room_id:

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

Sorun giderme

Sunucuya yönelik istek başarısız olursa Rooms işlemleri bir özel durum oluşturur. Rooms istemcisi , Azure Core'da tanımlanan özel durumları tetikler.

Sonraki adımlar

Daha fazla örnek kod

Oda oluşturmak ve yönetmek için bu kitaplığın nasıl kullanılacağına ilişkin ayrıntılı örnekler için lütfen samples dizinine göz atın.

Geri Bildirim Sağlama

Herhangi bir hatayla karşılaşırsanız veya önerileriniz varsa, lütfen projenin Sorunlar bölümünde bir sorun oluşturun

Katkıda bulunma

Bu proje, katkı ve önerilere açıktır. Çoğu durumda, sağladığınız katkıyı kullanmamız için bize hak tanıma hakkına sahip olduğunuzu ve bu hakkı bize tanıdığınızı bildiren bir Katkıda Bulunan Lisans Sözleşmesi’ni (CLA) kabul etmeniz gerekir. Ayrıntılar için bkz. https://cla.microsoft.com.

Bir çekme isteği gönderdiğinizde, CLA robotu bir CLA sağlamanız gerekip gerekmediğini otomatik olarak belirler ve çekme isteğini uygun şekilde donatır (örn. etiket, açıklama). Robot tarafından sağlanan yönergeleri izlemeniz yeterlidir. Bu işlemi, CLA’mızı kullanarak tüm depolarda yalnızca bir kere yapmanız gerekir.

Bu proje Microsoft Open Source Code of Conduct (Microsoft Açık Kaynak Kullanım Kuralları) belgesinde listelenen kurallara uygundur. Daha fazla bilgi için Kullanım Kuralları hakkında SSS bölümüne bakın veya başka soru ya da görüşleriniz olursa opencode@microsoft.com ile iletişime geçin.