Partager via


Bibliothèque cliente du package SMS Azure Communication pour Python - version 1.0.1

Ce package contient un Kit de développement logiciel (SDK) Python pour Azure Communication Services pour SMS. En savoir plus sur Azure Communication Services ici

Code source | Package (Pypi) | Documentation de référence de l’API | Documentation du produit

Prise en main

Prérequis

  • Python 2.7 ou 3.6 ou version ultérieure est requis pour utiliser ce package.
  • Une ressource Communication Services déployée. Vous pouvez utiliser le portail Azure ou le Azure PowerShell pour le configurer.
  • Vous devez avoir un numéro de téléphone configuré associé à un abonnement Azure

Installer le package

Installez la bibliothèque de client SMS Azure Communication pour Python avec pip :

pip install azure-communication-sms

Concepts clés

Le package SMS Azure Communication est utilisé pour effectuer les opérations suivantes :

  • Envoi d’un message SMS 1:1
  • Envoyer un message SMS 1:N

Exemples

La section suivante fournit plusieurs extraits de code couvrant certaines des tâches Azure Communication Services les plus courantes, notamment :

Initialisation du client

Pour initialiser le client SMS, la chaîne de connexion peut être utilisée pour instancier. Vous pouvez également utiliser l’authentification Active Directory à l’aide de 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())

Envoi d’un message SMS 1:1

Une fois le client initialisé, la send méthode peut être appelée :

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_: numéro de téléphone avec SMS associé à votre service de communication.
  • to: numéro de téléphone ou liste de numéros de téléphone vers lesquels vous souhaitez envoyer un message.
  • message: message que vous souhaitez envoyer.
  • enable_delivery_report: paramètre facultatif que vous pouvez utiliser pour configurer les rapports de remise. C’est utile pour les scénarios où vous souhaitez émettre des événements quand des SMS sont remis.
  • tag: paramètre facultatif que vous pouvez utiliser pour configurer l’étiquetage personnalisé.

Envoyer un message SMS 1:N

Une fois le client initialisé, la send méthode peut être appelée :

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_: numéro de téléphone avec SMS associé à votre service de communication.
  • to: numéro de téléphone ou liste de numéros de téléphone vers lesquels vous souhaitez envoyer un message.
  • message: message que vous souhaitez envoyer.
  • enable_delivery_report: paramètre facultatif que vous pouvez utiliser pour configurer les rapports de remise. C’est utile pour les scénarios où vous souhaitez émettre des événements quand des SMS sont remis.
  • tag: paramètre facultatif que vous pouvez utiliser pour configurer l’étiquetage personnalisé.

Dépannage

Les opérations SMS lèvent une exception si la demande adressée au serveur échoue. Le client SMS déclenche des exceptions définies dans Azure Core. Les exceptions ne sont pas levées si l’erreur est provoquée par un message individuel, uniquement si un problème échoue avec la demande globale. Utilisez l’indicateur de réussite pour valider chaque résultat individuel afin de vérifier si le message a été envoyé.

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)

Étapes suivantes

Autres exemples de code

Consultez le répertoire d’exemples pour obtenir des exemples détaillés sur l’utilisation de cette bibliothèque pour envoyer un sms.

Fournir des commentaires

Si vous rencontrez des bogues ou si vous avez des suggestions, veuillez déposer un problème dans la section Problèmes du projet

Contribution

Ce projet accepte les contributions et les suggestions. La plupart des contributions vous demandent d’accepter un contrat de licence de contribution (CLA) déclarant que vous avez le droit de nous accorder, et que vous nous accordez réellement, les droits d’utilisation de votre contribution. Pour plus d’informations, visitez https://cla.microsoft.com.

Quand vous envoyez une demande de tirage (pull request), un bot CLA détermine automatiquement si vous devez fournir un contrat CLA et agrémenter la demande de tirage de façon appropriée (par exemple, avec une étiquette ou un commentaire). Suivez simplement les instructions fournies par le bot. Vous ne devez effectuer cette opération qu’une seule fois sur tous les dépôts utilisant notre contrat CLA.

Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d’informations, consultez les Questions fréquentes (FAQ) sur le code de conduite ou envoyez vos questions ou vos commentaires à opencode@microsoft.com.