Biblioteca de clientes do Pacote SMS de Comunicação do Azure para Python – versão 1.0.1
Esse pacote contém um SDK do Python para Serviços de Comunicação do Azure para SMS. Leia mais sobre Serviços de Comunicação do Azure aqui
Código-fonte | Pacote (Pypi) | Documentação de referência de API | Documentação do produto
Introdução
Pré-requisitos
- Python 2.7, ou 3.6 ou posteriores, é necessário para usar esse pacote.
- Um recurso dos Serviços de Comunicação implantado. Você pode usar o Portal do Azure ou o Azure PowerShell para configurá-lo.
- Você deve ter um número de telefone configurado associado a uma assinatura do Azure
Instalar o pacote
Instale a biblioteca de clientes sms de comunicação do Azure para Python com pip:
pip install azure-communication-sms
Principais conceitos
O pacote SMS de Comunicação do Azure é usado para fazer o seguinte:
- Enviar uma mensagem SMS 1:1
- Enviar uma mensagem SMS 1:N
Exemplos
A seção a seguir fornece vários snippets de código que abrangem algumas das tarefas de Serviços de Comunicação do Azure mais comuns, incluindo:
Inicialização do cliente
Para inicializar o cliente SMS, a cadeia de conexão pode ser usada para instanciar. Como alternativa, você também pode usar a autenticação do Active Directory usando 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())
Enviar uma mensagem SMS 1:1
Depois que o cliente for inicializado, o send
método poderá ser invocado:
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_
: um número de telefone habilitado para SMS associado ao serviço de comunicação.to
: o número de telefone ou a lista de números de telefone para os quais você deseja enviar uma mensagem.message
: a mensagem que você deseja enviar.enable_delivery_report
: um parâmetro opcional que você pode usar para configurar relatórios de entrega. Isso é útil para cenários em que você deseja emitir eventos quando mensagens SMS são entregues.tag
: um parâmetro opcional que você pode usar para configurar a marcação personalizada.
Enviar uma mensagem SMS 1:N
Depois que o cliente for inicializado, o send
método poderá ser invocado:
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_
: um número de telefone habilitado para SMS associado ao serviço de comunicação.to
: o número de telefone ou a lista de números de telefone para os quais você deseja enviar uma mensagem.message
: a mensagem que você deseja enviar.enable_delivery_report
: um parâmetro opcional que você pode usar para configurar relatórios de entrega. Isso é útil para cenários em que você deseja emitir eventos quando mensagens SMS são entregues.tag
: um parâmetro opcional que você pode usar para configurar a marcação personalizada.
Solução de problemas
As operações de SMS gerarão uma exceção se a solicitação para o servidor falhar. O cliente SMS gerará exceções definidas no Azure Core. Exceções não serão geradas se o erro for causado por uma mensagem individual, somente se algo falhar com a solicitação geral. Use o sinalizador bem-sucedido para validar cada resultado individual para verificar se a mensagem foi enviada.
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)
Próximas etapas
- Leia mais sobre SMS no Serviços de Comunicação do Azure
- Para obter um guia básico sobre como configurar o Relatório de Entrega para suas mensagens SMS, consulte o guia de início rápido Manipular Eventos de SMS.
Mais códigos de exemplo
Examine o diretório de exemplos para obter exemplos detalhados de como usar essa biblioteca para enviar um sms.
Forneça comentários
Se você encontrar bugs ou tiver sugestões, registre um problema na seção Problemas do projeto
Contribuição
Este projeto aceita contribuições e sugestões. A maioria das contribuições exige que você concorde com um CLA (Contrato de Licença do Colaborador) declarando que você tem o direito de nos conceder, e de fato concede, os direitos de usar sua contribuição. Para obter detalhes, visite https://cla.microsoft.com.
Quando você envia uma solicitação de pull, um bot do CLA determina automaticamente se você precisa fornecer um CLA e preencher a PR corretamente (por exemplo, rótulo, comentário). Basta seguir as instruções fornecidas pelo bot. Você só precisará fazer isso uma vez em todos os repositórios que usam nosso CLA.
Este projeto adotou o Código de Conduta de Software Livre da Microsoft. Para obter mais informações, confira as Perguntas frequentes sobre o Código de Conduta ou contate opencode@microsoft.com para enviar outras perguntas ou comentários.
Azure SDK for Python
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de