Sdílet prostřednictvím


Klientská knihovna balíčku Azure Communication SMS pro Python – verze 1.0.1

Tento balíček obsahuje sadu Python SDK pro Azure Communication Services pro SMS. Další informace o Azure Communication Services najdete tady.

Zdrojový kód | Balíček (Pypi) | Referenční dokumentace k | rozhraní API Dokumentace k produktu

Začínáme

Požadavky

  • K použití tohoto balíčku se vyžaduje Python 2.7 nebo 3.6 nebo novější.
  • Nasazený prostředek komunikačních služeb K jeho nastavení můžete použít Azure Portal nebo Azure PowerShell.
  • Musíte mít nakonfigurované telefonní číslo přidružené k předplatnému Azure.

Instalace balíčku

Nainstalujte klientskou knihovnu Azure Communication SMS pro Python pomocí pip:

pip install azure-communication-sms

Klíčové koncepty

Balíček Sms služby Azure Communication slouží k provedení následujících kroků:

  • Odeslání zprávy SMS 1:1
  • Odeslání zprávy SMS 1:N

Příklady

Následující část obsahuje několik fragmentů kódu, které pokrývají některé z nejběžnějších úloh Azure Communication Services, mezi které patří:

Inicializace klienta

K inicializaci klienta SMS je možné k vytvoření instance použít připojovací řetězec. Alternativně můžete použít také ověřování active directory pomocí DefaultAzureCredential.

from azure.communication.sms import SmsClient
from azure.identity import DefaultAzureCredential

connection_str = "endpoint=ENDPOINT;accessKey=KEY"
sms_client = SmsClient.from_connection_string(connection_string)

# To use Azure Active Directory Authentication (DefaultAzureCredential) make sure to have
# AZURE_TENANT_ID, AZURE_CLIENT_ID and AZURE_CLIENT_SECRET as env variables.
endpoint = "https://<RESOURCE_NAME>.communication.azure.com"
sms_client = SmsClient(endpoint, DefaultAzureCredential())

Odeslání zprávy SMS 1:1

Po inicializaci klienta je možné vyvolat metodu send :

from azure.communication.sms import SendSmsOptions

sms_responses = sms_client.send(
    from_="<from-phone-number>",
    to="<to-phone-number-1>",
    message="Hello World via SMS",
    enable_delivery_report=True, # optional property
    tag="custom-tag") # optional property
  • from_: Telefonní číslo s povolenou zprávou SMS přidružené k vaší komunikační službě.
  • to: Telefonní číslo nebo seznam telefonních čísel, na která chcete poslat zprávu.
  • message: Zpráva, kterou chcete odeslat.
  • enable_delivery_report: Volitelný parametr, který můžete použít ke konfiguraci generování sestav doručení. To je užitečné v situacích, kdy chcete při doručení zpráv SMS generovat události.
  • tag: Volitelný parametr, který můžete použít ke konfiguraci vlastního označování.

Odeslání zprávy SMS 1:N

Po inicializaci klienta je možné vyvolat metodu send :

from azure.communication.sms import SendSmsOptions

sms_responses = sms_client.send(
    from_="<from-phone-number>",
    to=["<to-phone-number-1>", "<to-phone-number-2>", "<to-phone-number-3>"],
    message="Hello World via SMS",
    enable_delivery_report=True, # optional property
    tag="custom-tag") # optional property
  • from_: Telefonní číslo s povolenou zprávou SMS přidružené k vaší komunikační službě.
  • to: Telefonní číslo nebo seznam telefonních čísel, na která chcete poslat zprávu.
  • message: Zpráva, kterou chcete odeslat.
  • enable_delivery_report: Volitelný parametr, který můžete použít ke konfiguraci generování sestav doručení. To je užitečné v situacích, kdy chcete při doručení zpráv SMS generovat události.
  • tag: Volitelný parametr, který můžete použít ke konfiguraci vlastního označování.

Poradce při potížích

Operace SMS vyvolají výjimku, pokud požadavek na server selže. Klient SMS vyvolá výjimky definované v Azure Core. Výjimky se nevyvolají, pokud je chyba způsobená jednotlivými zprávami, pouze pokud něco selže s celkovým požadavkem. Pomocí příznaku úspěšného ověření každého jednotlivého výsledku ověřte, jestli se zpráva odeslala.

try:
    sms_responses = sms_client.send(
        from_="<leased-phone-number>",
        to=["<to-phone-number-1>", "<to-phone-number-2>", "<to-phone-number-3>"],
        message="Hello World via SMS")
        
    for sms_response in sms_responses:
        if (sms_response.successful):
            print("Message with message id {} was successful sent to {}"
            .format(sms_response.message_id, sms_response.to))
        else:
            print("Message failed to send to {} with the status code {} and error: {}"
            .format(sms_response.to, sms_response.http_status_code, sms_response.error_message))
except Exception as ex:
    print('Exception:')
    print(ex)

Další kroky

Další vzorový kód

Podrobné příklady použití této knihovny k odeslání sms najdete v adresáři samples .

Zadání zpětné vazby

Pokud narazíte na nějaké chyby nebo máte návrhy, nahlaste problém v části Problémy projektu.

Přispívání

Tento projekt vítá příspěvky a návrhy. Většina příspěvků vyžaduje souhlas s licenční smlouvou s přispěvatelem (CLA), která stanoví, že máte právo udělit nám práva k používání vašeho příspěvku a skutečně tak činíte. Podrobnosti najdete tady: https://cla.microsoft.com

Při odesílání žádosti o přijetí změn robot CLA automaticky určí, jestli je potřeba poskytnout smlouvu CLA, a příslušným způsobem žádost o přijetí změn upraví (např. přidáním jmenovky nebo komentáře). Stačí postupovat podle pokynů robota. Pro všechna úložiště používající naši smlouvu CLA to stačí udělat jenom jednou.

Tento projekt přijal pravidla chování pro Microsoft Open Source. Další informace najdete v nejčastějších dotazech k pravidlům chování nebo kontaktujte s opencode@microsoft.com případnými dalšími dotazy nebo připomínkami.