Share via


Azure Communication SMS Package-klientbibliotek för Python – version 1.0.1

Det här paketet innehåller en Python SDK för Azure Communication Services för SMS. Läs mer om Azure Communication Services här

| Källkod Paket (Pypi) | API-referensdokumentation | Produktdokumentation

Komma igång

Förutsättningar

  • Python 2.7 eller 3.6 eller senare krävs 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.
  • Du måste ha ett konfigurerat telefonnummer som är associerat med en Azure-prenumeration

Installera paketet

Installera AZURE Communication SMS-klientbiblioteket för Python med pip:

pip install azure-communication-sms

Viktiga begrepp

Sms-paketet för Azure Communication används för att göra följande:

  • Skicka ett 1:1 SMS-meddelande
  • Skicka ett 1:N SMS-meddelande

Exempel

Följande avsnitt innehåller flera kodfragment som täcker några av de vanligaste Azure Communication Services uppgifter, inklusive:

Klientinitiering

För att initiera SMS-klienten kan anslutningssträngen användas för att instansiera. Du kan också använda Active Directory-autentisering med 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())

Skicka ett 1:1 SMS-meddelande

När klienten har initierats send kan metoden anropas:

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_: Ett SMS-aktiverat telefonnummer som är kopplat till din kommunikationstjänst.
  • to: Det telefonnummer eller den lista med telefonnummer som du vill skicka ett meddelande till.
  • message: Det meddelande som du vill skicka.
  • enable_delivery_report: En valfri parameter som du kan använda för att konfigurera leveransrapportering. Detta är användbart för scenarier där du vill generera händelser när SMS levereras.
  • tag: En valfri parameter som du kan använda för att konfigurera anpassad taggning.

Skicka ett 1:N SMS-meddelande

När klienten har initierats send kan metoden anropas:

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_: Ett SMS-aktiverat telefonnummer som är kopplat till din kommunikationstjänst.
  • to: Det telefonnummer eller den lista med telefonnummer som du vill skicka ett meddelande till.
  • message: Det meddelande som du vill skicka.
  • enable_delivery_report: En valfri parameter som du kan använda för att konfigurera leveransrapportering. Detta är användbart för scenarier där du vill generera händelser när SMS levereras.
  • tag: En valfri parameter som du kan använda för att konfigurera anpassad taggning.

Felsökning

SMS-åtgärder utlöser ett undantag om begäran till servern misslyckas. SMS-klienten genererar undantag som definierats i Azure Core. Undantag utlöses inte om felet orsakas av ett enskilt meddelande, endast om något misslyckas med den övergripande begäran. Använd den lyckade flaggan för att verifiera varje enskilt resultat för att kontrollera om meddelandet har skickats.

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)

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 skicka ett sms.

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. Mer information finns i Vanliga frågor och svar om uppförandekoden eller kontakta opencode@microsoft.com med ytterligare frågor eller kommentarer.