Partilhar via


Enviar uma mensagem SMS

Importante

Os recursos de SMS dependem do número de telefone que você usa e do país/região em que você está operando, conforme determinado pelo seu endereço de cobrança do Azure. Para obter mais informações, consulte Elegibilidade da assinatura.


Comece a usar os Serviços de Comunicação do Azure usando o módulo Comunicação na CLI do Azure para enviar mensagens SMS.

Completar este artigo acarreta um pequeno custo de alguns cêntimos de dólar americano ou menos na sua conta Azure.

Pré-requisitos

  • Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
  • Um recurso ativo dos Serviços de Comunicação e uma cadeia de conexão. Crie um recurso de Serviços de Comunicação.
  • Um número de telefone habilitado para SMS, código curto ou ID de remetente alfanumérico. Obtenha um número de telefone.
  • A versão mais recente da CLI do Azure para o seu sistema operativo.

Verificação de pré-requisitos

  • Em um terminal ou janela de comando, execute az --version para verificar se a CLI do Azure está instalada.

Configuração

Instalar o módulo de comunicação

Para instalar o módulo de comunicação, execute o seguinte comando em um terminal ou janela de comando.

az extension add --name communication

Iniciar sessão na CLI do Azure

Você precisa entrar na CLI do Azure. Você pode entrar executando o az login comando do terminal e fornecendo suas credenciais.

Certifique-se de que está a utilizar a subscrição correta

Se tiver várias subscrições na sua conta, certifique-se de que está a utilizar a correta para este tutorial.

Em um terminal ou janelas de comando, execute o seguinte comando para verificar a assinatura atual.

az account show

Se você precisar alterar a assinatura, poderá fazer isso executando o seguinte comando.

az account set --subscription "<yourSubscriptionId>"

Você precisa substituir <yourSubscriptionId> por sua ID de assinatura real, que você pode encontrar na seção Assinaturas no portal do Azure.

(Opcional) Usar operações SMS da CLI do Azure sem necessidade de passar numa cadeia de ligação

Você pode configurar a variável de ambiente para usar as operações SMS da CLI do Azure sem precisar usar AZURE_COMMUNICATION_CONNECTION_STRING para passar a cadeia de conexão. Para configurar uma variável de ambiente, abra uma janela do console e selecione seu sistema operacional nas guias abaixo. Substitua <yourConnectionString> pela cadeia de conexão real.

Abra uma janela do console e digite o seguinte comando:

setx AZURE_COMMUNICATION_CONNECTION_STRING "<yourConnectionString>"

Depois de adicionar a variável de ambiente, poderá ter de reiniciar todos os programas em execução que irão precisar de ler a variável de ambiente, incluindo a janela da consola. Por exemplo, se você estiver usando o Visual Studio como editor, reinicie o Visual Studio antes de executar o exemplo.

Operações

Enviar uma mensagem SMS 1:1

Para enviar uma mensagem SMS para um único destinatário, chame o send método a partir do módulo sms com um único número de telefone de destinatário.

az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"

Faça estas substituições no código:

  • Substitua <fromPhoneNumber> por um número de telefone habilitado para SMS associado ao recurso dos Serviços de Comunicação.
  • Substitua <toPhoneNumber> por um número de telefone para o qual você gostaria de enviar uma mensagem.
  • Substitua <yourConnectionString> pela cadeia de conexão.

Aviso

Forneça números de telefone no formato padrão internacional E.164, por exemplo, +14255550123. O valor para <fromPhoneNumber> também pode ser um código curto, por exemplo, 23456 ou uma ID de remetente alfanumérica, por exemplo, CONTOSO.

Enviar uma mensagem SMS 1:N

Para enviar uma mensagem SMS para uma lista de destinatários, chame o send método a partir do módulo sms com vários números de telefone de destinatários.

az communication sms send --sender "<fromPhoneNumber>" --recipient "<toPhoneNumber1>" "<toPhoneNumber2>" "<toPhoneNumber3>" --message "Hello world via SMS for Azure CLI!" --connection-string "<yourConnectionString>"

Faça estas substituições no código:

  • Substitua <fromPhoneNumber> por um número de telefone habilitado para SMS associado ao recurso dos Serviços de Comunicação.
  • Substitua <toPhoneNumberN> pelo N'ésimo número de telefone para o qual você gostaria de enviar uma mensagem.
  • Substitua <yourConnectionString> pela cadeia de conexão.

Aviso

Forneça números de telefone no formato padrão internacional E.164, como +14255550123. O valor para <fromPhoneNumber> também pode ser um código curto, como 23456 ou uma ID de remetente alfanumérica, como CONTOSO.

Comece com os Serviços de Comunicação do Azure usando o SDK de SMS em C# para enviar mensagens SMS.

Completar este artigo acarreta um pequeno custo de alguns cêntimos de dólar americano ou menos na sua conta Azure.

Nota

Veja o código finalizado em Exemplos do Azure GitHub Envie uma mensagem SMS usando .NET.

Pré-requisitos

  • Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
  • A versão mais recente do SDK do .NET Core para seu sistema operacional.
  • Um recurso ativo dos Serviços de Comunicação e uma cadeia de conexão. Crie um recurso de Serviços de Comunicação.
  • Um número de telefone habilitado para SMS, código curto ou ID de remetente alfanumérico. Obtenha um número de telefone.

Verificação de pré-requisitos

  • Em um terminal ou janela de comando, execute o dotnet comando para verificar se o SDK do .NET está instalado.
  • Para exibir os números de telefone associados ao recurso Serviços de Comunicação, entre no portal do Azure e localize o recurso Serviços de Comunicação. No painel de navegação à esquerda, selecione Números de telefone.

Configurar o ambiente do aplicativo

Para configurar um ambiente para enviar mensagens, siga as etapas nas seções a seguir.

Criar um novo aplicativo C#

  1. Em uma janela de console, como cmd, PowerShell ou Bash, use o dotnet new comando para criar um novo aplicativo de console com o nome SmsQuickstart. Este comando cria um projeto C# "Hello World" simples com um único arquivo de origem, Program.cs.

    dotnet new console -o SmsQuickstart
    
  2. Altere seu diretório para a pasta do aplicativo recém-criada e use o dotnet build comando para compilar seu aplicativo.

    cd SmsQuickstart
    dotnet build
    

Instalar o pacote

  1. Enquanto ainda estiver no diretório do aplicativo, instale o pacote SDK do SMS dos Serviços de Comunicação do Azure para .NET usando o comando a seguir.

    dotnet add package Azure.Communication.Sms --version 1.0.0
    
  2. Adicione uma using diretiva à parte superior do Program.cs para incluir o Azure.Communication namespace.

    
    using System;
    using System.Collections.Generic;
    
    using Azure;
    using Azure.Communication;
    using Azure.Communication.Sms;
    
    

Modelo de objeto

As classes e interfaces a seguir lidam com alguns dos principais recursos do SDK do SMS dos Serviços de Comunicação do Azure para C#.

Nome Descrição
SmsClient Esta classe é necessária para todas as funcionalidades do SMS. Você o instancia com suas informações de assinatura e o usa para enviar mensagens SMS.
OpçõesEnviodeSMS Essa classe fornece opções para configurar relatórios de entrega. Se enable_delivery_report estiver definido como True, um evento será emitido quando a entrega for bem-sucedida.
ResultadoEnvioSms Esta classe contém o resultado do serviço SMS.

Autenticar o cliente

Abra Program.cs num editor de texto e substitua o Main corpo do método por código para inicializar um SmsClient com a sua string de conexão. O código a seguir recupera a cadeia de conexão para o recurso de uma variável de ambiente chamada COMMUNICATION_SERVICES_CONNECTION_STRING. Saiba como gerir a cadeia de ligação do seu recurso.

// This code retrieves your connection string
// from an environment variable.
string connectionString = Environment.GetEnvironmentVariable("COMMUNICATION_SERVICES_CONNECTION_STRING");

SmsClient smsClient = new SmsClient(connectionString);

Enviar uma mensagem SMS 1:1

Para enviar uma mensagem SMS para um único destinatário, chame a Send função ou SendAsync do SmsClient. Adicione este código ao final do Main método em Program.cs:

SmsSendResult sendResult = smsClient.Send(
    from: "<from-phone-number>",
    to: "<to-phone-number>",
    message: "Hello World via SMS"
);

Console.WriteLine($"Sms id: {sendResult.MessageId}");

Faça estas substituições no código:

  • Substitua <from-phone-number> por um número de telefone habilitado para SMS associado ao recurso dos Serviços de Comunicação.
  • Substitua <to-phone-number> pelo número de telefone para o qual você deseja enviar uma mensagem.

Aviso

Forneça números de telefone no formato padrão internacional E.164, como +14255550123. O valor para <from-phone-number> também pode ser um código curto, como 23456 ou uma ID de remetente alfanumérica, como CONTOSO.

Enviar uma mensagem SMS 1:N com opções

Para enviar uma mensagem SMS para uma lista de destinatários, chame a Send função ou SendAsync do SmsClient com uma lista de números de telefone de destinatários. Você também pode fornecer parâmetros opcionais para especificar se o relatório de entrega deve ser habilitado e para definir tags personalizadas.

Response<IReadOnlyList<SmsSendResult>> response = smsClient.Send(
    from: "<from-phone-number>",
    to: new string[] { "<to-phone-number-1>", "<to-phone-number-2>" },
    message: "Weekly Promotion!",
    options: new SmsSendOptions(enableDeliveryReport: true) // OPTIONAL
    {
        Tag = "marketing", // custom tags
    });

IEnumerable<SmsSendResult> results = response.Value;
foreach (SmsSendResult result in results)
{
    Console.WriteLine($"Sms id: {result.MessageId}");
    Console.WriteLine($"Send Result Successful: {result.Successful}");
}

Faça estas substituições no código:

  • Substitua <from-phone-number> por um número de telefone habilitado para SMS associado ao recurso dos Serviços de Comunicação.
  • Substitua <to-phone-number-1> e <to-phone-number-2> por números de telefone para os quais você gostaria de enviar uma mensagem.

Aviso

Forneça números de telefone no formato padrão internacional E.164, como +14255550123. O valor para <from-phone-number> também pode ser um código curto, como 23456 ou uma ID de remetente alfanumérica, como CONTOSO.

O enableDeliveryReport parâmetro é um parâmetro opcional que você pode usar para configurar o relatório de entrega. Essa funcionalidade é útil quando você deseja emitir eventos quando as mensagens SMS são entregues. Consulte o Guia de início rápido para manipular eventos SMS para configurar o relatório de entrega para as suas mensagens SMS.

Você pode usar o Tag parâmetro para aplicar uma tag ao relatório de entrega.

Executar o código

Execute o aplicativo a partir do diretório do aplicativo com o dotnet run comando.

dotnet run

Código de exemplo

Baixe o aplicativo de exemplo do Azure Samples GitHub Envie uma mensagem SMS usando .NET.

Comece a usar os Serviços de Comunicação do Azure utilizando a biblioteca JavaScript para SMS dos Serviços de Comunicação para enviar mensagens SMS.

Completar este artigo acarreta um pequeno custo de alguns cêntimos de dólar americano ou menos na sua conta Azure.

Nota

Veja o código finalizado Azure Samples GitHub Envie uma mensagem SMS usando JavaScript.

Pré-requisitos

  • Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
  • Node.js versões Ative LTS e Maintenance LTS (recomenda-se 8.11.1 e 10.14.1).
  • Um recurso ativo dos Serviços de Comunicação e uma cadeia de conexão. Crie um recurso de Serviços de Comunicação.
  • Um número de telefone habilitado para SMS, código curto ou ID de remetente alfanumérico. Obtenha um número de telefone.

Verificação de pré-requisitos

  • Em um terminal ou janela de comando, execute node --version para verificar se Node.js está instalado.
  • Para exibir os números de telefone associados ao recurso Serviços de Comunicação, entre no portal do Azure e localize o recurso Serviços de Comunicação. No painel de navegação à esquerda, selecione Números de telefone.

Configurar o ambiente do aplicativo

Para configurar um ambiente para enviar mensagens, siga as etapas nas seções a seguir.

Criar uma nova aplicação Node.js

  1. Abra o terminal ou a janela de comando e execute o seguinte comando para criar um novo diretório para seu aplicativo e navegue até ele.

    mkdir sms-quickstart && cd sms-quickstart
    
  2. Execute o seguinte comando para criar um arquivo package.json com as configurações padrão.

    npm init -y
    
  3. Use um editor de texto para criar um arquivo chamado send-sms.js no diretório raiz do projeto.

Nas secções seguintes, adicione todo o código-fonte deste guia de início rápido ao arquivo send-sms.js que você criou.

Instalar o pacote

Use o comando npm install para instalar o SDK de SMS dos Serviços de Comunicação Azure para JavaScript.

npm install @azure/communication-sms --save

A --save opção lista a biblioteca como uma dependência em seu arquivo package.json .

Modelo de objeto

As classes e interfaces a seguir lidam com alguns dos principais recursos do SDK do SMS dos Serviços de Comunicação do Azure para Node.js.

Nome Descrição
SmsClient Esta classe é necessária para todas as funcionalidades do SMS. Você o instancia com suas informações de assinatura e o usa para enviar mensagens SMS.
PedidoDeEnvioDeSMS Esta interface é o modelo para construir a solicitação SMS. Você o usa para configurar os números de telefone de e para e o conteúdo do SMS.
OpçõesEnviodeSMS Essa interface fornece opções para configurar relatórios de entrega. Se enableDeliveryReport estiver definido como true, um evento será emitido quando a entrega for bem-sucedida.
ResultadoEnvioSms Esta classe contém o resultado do serviço SMS.

Autenticar o cliente

Para autenticar um cliente, importe o SmsClient do SDK e instancie-o com sua cadeia de conexão. Você pode recuperar a cadeia de conexão para o recurso de uma variável de ambiente. Por exemplo, o código nesta seção recupera a cadeia de conexão da COMMUNICATION_SERVICES_CONNECTION_STRING variável de ambiente. Saiba como gerir a cadeia de ligação do seu recurso.

Para importar o cliente e instanciá-lo:

  1. Crie um arquivo chamado send-sms.js.

  2. Adicione o seguinte código ao send-sms.js.

const { SmsClient } = require('@azure/communication-sms');

// This code retrieves your connection string
// from an environment variable.
const connectionString = process.env['COMMUNICATION_SERVICES_CONNECTION_STRING'];

// Instantiate the SMS client.
const smsClient = new SmsClient(connectionString);

Enviar uma mensagem SMS 1:N

Para enviar uma mensagem SMS para uma lista de destinatários, chame a send função do SmsClient com uma lista de números de telefone de destinatários. Se quiser enviar uma mensagem para um único destinatário, inclua apenas um número na lista. Adicione este código ao final de send-sms.js:

async function main() {
  const sendResults = await smsClient.send({
    from: "<from-phone-number>",
    to: ["<to-phone-number-1>", "<to-phone-number-2>"],
    message: "Hello World 👋🏻 via SMS"
  });

  // Individual messages can encounter errors during sending.
  // Use the "successful" property to verify the status.
  for (const sendResult of sendResults) {
    if (sendResult.successful) {
      console.log("Success: ", sendResult);
    } else {
      console.error("Something went wrong when trying to send this message: ", sendResult);
    }
  }
}

main();

Faça estas substituições no código:

  • Substitua <from-phone-number> por um número de telefone habilitado para SMS associado ao recurso dos Serviços de Comunicação.
  • Substitua <to-phone-number-1> e <to-phone-number-2> pelos números de telefone para os quais pretende enviar uma mensagem.

Aviso

Forneça números de telefone no formato padrão internacional E.164, por exemplo, +14255550123. O valor para <from-phone-number> também pode ser um código curto, por exemplo, 23456 ou uma ID de remetente alfanumérica, por exemplo, CONTOSO.

Enviar uma mensagem SMS 1:N com opções

Você também pode fornecer um objeto options para especificar se o relatório de entrega deve ser habilitado e para definir tags personalizadas.


async function main() {
  const sendResults = await smsClient.send({
    from: "<from-phone-number>",
    to: ["<to-phone-number-1>", "<to-phone-number-2>"],
    message: "Weekly Promotion!"
  }, {
    // Optional parameters
    enableDeliveryReport: true,
    tag: "marketing"
  });

  // Individual messages can encounter errors during sending.
  // Use the "successful" property to verify the status.
  for (const sendResult of sendResults) {
    if (sendResult.successful) {
      console.log("Success: ", sendResult);
    } else {
      console.error("Something went wrong when trying to send this message: ", sendResult);
    }
  }
}

main();

Faça estas substituições no código:

  • Substitua <from-phone-number> por um número de telefone habilitado para SMS associado ao recurso dos Serviços de Comunicação.
  • Substitua <to-phone-number-1> e <to-phone-number-2> por números de telefone para os quais você gostaria de enviar uma mensagem.

Aviso

Forneça números de telefone no formato padrão internacional E.164, por exemplo, +14255550123. O valor para <from-phone-number> também pode ser um código curto, por exemplo, 23456 ou uma ID de remetente alfanumérica, por exemplo, CONTOSO.

O enableDeliveryReport parâmetro é um parâmetro opcional que você pode usar para configurar o relatório de entrega. Essa funcionalidade é útil quando você deseja emitir eventos quando as mensagens SMS são entregues. Consulte o Guia de início rápido para manipular eventos SMS para configurar o relatório de entrega para as suas mensagens SMS. O tag parâmetro é opcional. Você pode usá-lo para aplicar uma tag ao relatório de entrega.

Executar o código

Use o node comando para executar o código que você adicionou ao arquivo send-sms.js .


node ./send-sms.js

Introdução aos Serviços de Comunicação do Azure usando o SDK do Python SMS dos Serviços de Comunicação para enviar mensagens SMS.

A conclusão deste tutorial inicial pode gerar um pequeno custo de alguns cêntimos de dólar USD ou menos na sua conta Azure.

Nota

Para obter o código finalizado para este artigo, consulte Exemplos do Azure do GitHub Gerenciar números de telefone usando Python.

Pré-requisitos

  • Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
  • Python 3.7+.
  • Um recurso ativo dos Serviços de Comunicação e uma cadeia de conexão. Crie um recurso de Serviços de Comunicação.
  • Um número de telefone habilitado para SMS, código curto ou ID de remetente alfanumérico. Obtenha um número de telefone.

Verificação de pré-requisitos

  • Em um terminal ou janela de comando, execute o comando para verificar se o python --version Python está instalado.
  • Para exibir os números de telefone associados ao recurso Serviços de Comunicação, entre no portal do Azure e localize o recurso Serviços de Comunicação. No painel de navegação à esquerda, selecione Números de telefone.

Configurar o ambiente do aplicativo

Para configurar um ambiente para enviar mensagens, preencha as seções a seguir.

Criar uma aplicação Python nova

  1. Abra o terminal ou a janela de comando. Use o comando a seguir para criar um novo diretório para seu aplicativo e navegue até ele.

    mkdir sms-quickstart && cd sms-quickstart
    
  2. Use um editor de texto para criar um arquivo chamado send-sms.py no diretório raiz do projeto e adicionar a estrutura para o programa, incluindo o tratamento básico de exceções.

    import os
    from azure.communication.sms import SmsClient
    
    try:
        # Quickstart code goes here.
    except Exception as ex:
        print('Exception:')
        print(ex)
    

Nas seções a seguir, adicione todo o código-fonte desse início rápido ao arquivo de send-sms.py que você criou.

Instalar o pacote

No diretório do aplicativo, instale o Azure Communication Services SMS SDK para Python pelo seguinte comando.

pip install azure-communication-sms

Modelo de objeto

As classes e interfaces a seguir lidam com alguns dos principais recursos do SDK do SMS dos Serviços de Comunicação do Azure para Python.

Nome Descrição
SmsClient Esta classe é necessária para todas as funcionalidades do SMS. Instancie-o com suas informações de assinatura e use-o para enviar mensagens SMS.
ResultadoEnvioSms Esta classe contém o resultado do serviço SMS.

Autenticar o cliente

Instancie um SmsClient com sua cadeia de conexão. Saiba como gerir a cadeia de ligação do seu recurso.

# Create the SmsClient object that you use to send SMS messages.
sms_client = SmsClient.from_connection_string(<connection_string>)

Para simplificar, este guia de início rápido usa cadeias de conexão, mas recomendamos o uso de principais de serviço em ambientes de produção.

Enviar uma mensagem SMS 1:1

Para enviar uma mensagem SMS para um único destinatário, chame o sendmétodo do SmsClient com um único número de telefone de destinatário. Você também pode fornecer parâmetros opcionais para especificar se o relatório de entrega deve ser habilitado e para definir tags personalizadas. Adicione este código ao final do try bloco em send-sms.py:


# Call send() with SMS values.
sms_responses = sms_client.send(
    from_="<from-phone-number>",
    to="<to-phone-number>",
    message="Hello World via SMS",
    enable_delivery_report=True, # optional property
    tag="custom-tag") # optional property

Faça estas substituições no código:

  • Substitua <from-phone-number> por um número de telefone habilitado para SMS associado ao seu serviço de comunicação.
  • Substitua <to-phone-number> pelo número de telefone para o qual você deseja enviar uma mensagem.

Aviso

Forneça números de telefone no formato padrão internacional E.164, por exemplo, +14255550123. O valor para <from-phone-number> também pode ser um código curto, por exemplo, 23456 ou uma ID de remetente alfanumérica, por exemplo, CONTOSO.

Enviar uma mensagem SMS 1:N

Para enviar uma mensagem SMS para uma lista de destinatários, chame o sendmétodo do SmsClient com uma lista de números de telefone de destinatários. Você também pode fornecer parâmetros opcionais para especificar se o relatório de entrega deve ser habilitado e para definir tags personalizadas. Adicione este código ao final do try bloco em send-sms.py:


# Call send() with SMS values.
sms_responses = sms_client.send(
    from_="<from-phone-number>",
    to=["<to-phone-number-1>", "<to-phone-number-2>"],
    message="Hello World via SMS",
    enable_delivery_report=True, # optional property
    tag="custom-tag") # optional property

Faça estas substituições no código:

  • Substitua <from-phone-number> por um número de telefone habilitado para SMS associado ao seu serviço de comunicação.
  • Substitua <to-phone-number-1> e <to-phone-number-2> por números de telefone para os quais você gostaria de enviar uma mensagem.

Aviso

Forneça números de telefone no formato padrão internacional E.164, como +14255550123. O valor para <from-phone-number> também pode ser um código curto, como 23456 ou uma ID de remetente alfanumérica, como CONTOSO.

Parâmetros opcionais

O enable_delivery_report parâmetro é um parâmetro opcional que você pode usar para configurar o relatório de entrega. Use esta função se quiser emitir eventos quando as mensagens SMS forem entregues. Consulte Manipular eventos SMS para configurar relatórios de entrega para suas mensagens SMS.

O tag parâmetro é um parâmetro opcional que você pode usar para aplicar uma tag ao relatório de entrega.

Executar o código

Execute o aplicativo a partir do diretório do aplicativo com o python comando.

python send-sms.py

O script completo em Python deve assemelhar-se ao seguinte código:


import os
from azure.communication.sms import SmsClient

try:
    # Create the SmsClient object that you use to send SMS messages.
    sms_client = SmsClient.from_connection_string("<connection string>")
    # Call send() with SMS values.
    sms_responses = sms_client.send(
       from_="<from-phone-number>",
       to="<to-phone-number>",
       message="Hello World via SMS",
       enable_delivery_report=True, # optional property
       tag="custom-tag") # optional property

except Exception as ex:
    print('Exception:')
    print(ex)

Introdução aos Serviços de Comunicação do Azure usando o SDK Java SMS dos Serviços de Comunicação para enviar mensagens SMS.

Completar este artigo acarreta um pequeno custo de alguns cêntimos de dólar americano ou menos na sua conta Azure.

Nota

Veja o código finalizado Exemplos do Azure GitHub Enviar uma mensagem SMS usando Java.

Pré-requisitos

Verificação de pré-requisitos

  • Em um terminal ou janela de comando, execute mvn -v para verificar se o Maven está instalado.
  • Para exibir os números de telefone associados ao recurso Serviços de Comunicação, entre no portal do Azure e localize o recurso Serviços de Comunicação. No painel de navegação à esquerda, selecione Números de telefone.

Configurar o ambiente do aplicativo

Para configurar um ambiente para enviar mensagens, preencha as seções a seguir.

Criar uma nova aplicação Java

Abra um terminal ou janela de comando e navegue até o diretório onde você deseja criar seu aplicativo Java. Para gerar o projeto Java a partir do modelo maven-archetype-quickstart, execute o seguinte comando.

  • Prompt de comando
mvn archetype:generate -DgroupId=com.communication.quickstart -DartifactId=communication-quickstart -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
  • PowerShell
mvn archetype:generate "-DgroupId=com.communication.quickstart" "-DartifactId=communication-quickstart" "-DarchetypeArtifactId=maven-archetype-quickstart" "-DarchetypeVersion=1.4" "-DinteractiveMode=false"

A generate meta cria um diretório com o mesmo nome do artifactId valor. Neste diretório, o diretório src/main/java contém o código-fonte do projeto, o diretório src/test/java contém a fonte de teste e o arquivo pom.xml é o Project Object Model (POM) do projeto.

Instalar o pacote

Abra o arquivo pom.xml no editor de texto. Adicione o seguinte elemento de dependência ao grupo de dependências.

<dependency>
    <groupId>com.azure</groupId>
    <artifactId>azure-communication-sms</artifactId>
    <version>1.0.1</version>
</dependency>

Configurar a estrutura do aplicativo

Abra /src/main/java/com/communication/quickstart/App.java em um editor de texto, adicione diretivas de importação e remova a System.out.println("Hello world!"); instrução:

package com.communication.quickstart;

import com.azure.communication.sms.models.*;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.communication.sms.*;
import com.azure.core.util.Context;
import java.util.Arrays;

public class App
{
    public static void main( String[] args )
    {
        // Quickstart code goes here.
    }
}

Modelo de objeto

As classes e interfaces a seguir lidam com alguns dos principais recursos do SDK do SMS dos Serviços de Comunicação do Azure para Java.

Nome Descrição
SmsClientBuilder Esta classe cria o SmsClient. Você fornece um ponto de extremidade, uma credencial e um cliente HTTP.
SmsClient Esta classe é necessária para todas as funcionalidades do SMS. Você usa-o para enviar mensagens SMS.
OpçõesEnviodeSMS Essa classe fornece opções para adicionar tags personalizadas e configurar relatórios de entrega. Se deliveryReportEnabled estiver definido como true, um evento será emitido quando a entrega for bem-sucedida.
ResultadoEnvioSms Esta classe contém o resultado do serviço SMS.

Autenticar o cliente

Para autenticar um cliente, instancie um SmsClient com sua cadeia de conexão. Para obter a credencial, use o Key do portal do Azure. Saiba como gerir a cadeia de ligação do seu recurso. Você também pode inicializar o cliente com qualquer cliente HTTP personalizado que implemente a com.azure.core.http.HttpClient interface.

Para instanciar um cliente, adicione o seguinte código ao main método:

// You can get your endpoint and access key from your resource in the Azure portal.
String endpoint = "https://<resource-name>.communication.azure.com/";
AzureKeyCredential azureKeyCredential = new AzureKeyCredential("<access-key-credential>");

SmsClient smsClient = new SmsClientBuilder()
                .endpoint(endpoint)
                .credential(azureKeyCredential)
                .buildClient();

Você também pode fornecer toda a cadeia de conexão usando a connectionString função em vez de fornecer o ponto de extremidade e a chave de acesso.

// You can get your connection string from your resource in the Azure portal.
String connectionString = "endpoint=https://<resource-name>.communication.azure.com/;accesskey=<access-key>";

SmsClient smsClient = new SmsClientBuilder()
            .connectionString(connectionString)
            .buildClient();

Enviar uma mensagem SMS 1:1

Para enviar uma mensagem SMS para um único destinatário, chame o send método do SmsClient com um único número de telefone de destinatário. Você também pode fornecer parâmetros opcionais para especificar se o relatório de entrega deve ser habilitado e para definir tags personalizadas.

SmsSendResult sendResult = smsClient.send(
                "<from-phone-number>",
                "<to-phone-number>",
                "Weekly Promotion");

System.out.println("Message Id: " + sendResult.getMessageId());
System.out.println("Recipient Number: " + sendResult.getTo());
System.out.println("Send Result Successful:" + sendResult.isSuccessful());

Faça estas substituições no código:

  • Substitua <from-phone-number> por um número de telefone habilitado para SMS associado ao recurso dos Serviços de Comunicação.
  • Substitua <to-phone-number> por um número de telefone para o qual você gostaria de enviar uma mensagem.

Aviso

Forneça números de telefone no formato padrão internacional E.164, como +14255550123. O valor para <from-phone-number> também pode ser um código curto, como 23456 ou uma ID de remetente alfanumérica, como CONTOSO.

Enviar uma mensagem SMS 1:N com opções

Para enviar uma mensagem SMS para uma lista de destinatários, chame o send método com uma lista de números de telefone de destinatários. Você também pode fornecer parâmetros opcionais para especificar se o relatório de entrega deve ser habilitado e para definir tags personalizadas.

SmsSendOptions options = new SmsSendOptions();
options.setDeliveryReportEnabled(true);
options.setTag("Marketing");

Iterable<SmsSendResult> sendResults = smsClient.sendWithResponse(
    "<from-phone-number>",
    Arrays.asList("<to-phone-number1>", "<to-phone-number2>"),
    "Weekly Promotion",
    options /* Optional */,
    Context.NONE).getValue();

for (SmsSendResult result : sendResults) {
    System.out.println("Message Id: " + result.getMessageId());
    System.out.println("Recipient Number: " + result.getTo());
    System.out.println("Send Result Successful:" + result.isSuccessful());
}

Faça estas substituições no código:

  • Substitua <from-phone-number> por um número de telefone habilitado para SMS associado ao recurso dos Serviços de Comunicação
  • Substitua <to-phone-number-1> e <to-phone-number-2> por números de telefone para os quais você gostaria de enviar uma mensagem.

Aviso

Forneça números de telefone no formato padrão internacional E.164, por exemplo, +14255550123. O valor para <from-phone-number> também pode ser um código curto, por exemplo, 23456 ou uma ID de remetente alfanumérica, por exemplo, CONTOSO.

O setDeliveryReportEnabled método é usado para configurar relatórios de entrega. Essa funcionalidade é útil quando você deseja emitir eventos quando as mensagens SMS são entregues. Consulte o Guia de início rápido para manipular eventos SMS para configurar o relatório de entrega para as suas mensagens SMS.

Para aplicar uma tag ao relatório de entrega, use o setTag método.

Executar o código

  1. Navegue até o diretório que contém o arquivo pom.xml e compile o projeto usando o mvn comando.

    
    mvn compile
    
    
  2. Crie o pacote.

    
    mvn package
    
    
  3. Execute o seguinte mvn comando para executar o aplicativo.

    • Prompt de comando
    
    mvn exec:java -Dexec.mainClass="com.communication.quickstart.App" -Dexec.cleanupDaemonThreads=false
    
    
    • PowerShell
    mvn exec:java "-Dexec.mainClass=com.communication.quickstart.App" "-Dexec.cleanupDaemonThreads=false"
    

Use o conector SMS dos Serviços de Comunicação do Azure e os Aplicativos Lógicos do Azure para criar fluxos de trabalho automatizados que podem enviar mensagens SMS.

Este artigo descreve como enviar automaticamente mensagens de texto em resposta a um evento de gatilho, que é a primeira etapa em um fluxo de trabalho de aplicativo lógico. Um evento de gatilho pode ser uma mensagem de email de entrada, uma agenda de recorrência, um evento de recurso da Grade de Eventos do Azure ou qualquer outro gatilho suportado pelos Aplicativos Lógicos do Azure.

Captura de tela que mostra o portal do Azure aberto para o Designer de Aplicativo Lógico. O portal do Azure mostra um exemplo de aplicativo lógico que usa a ação Enviar SMS para o conector dos Serviços de Comunicação do Azure.

Embora este artigo se concentre no uso do conector para responder a um gatilho, você também pode usar o conector para responder a outras ações, que são as etapas que seguem o gatilho em um fluxo de trabalho. Se você é novo em Aplicativos Lógicos, consulte O que são Aplicativos Lógicos do Azure antes de começar.

Nota

Completar este artigo acarreta um pequeno custo de alguns cêntimos de dólar americano ou menos na sua conta Azure.

Pré-requisitos

Importante

Os recursos de SMS e PSTN dependem do número de telefone que você usa e do país/região em que você está operando, conforme determinado pelo seu endereço de cobrança do Azure. Para mais informações, visite a documentação de elegibilidade da assinatura.

Adicionar uma ação de SMS

Para adicionar a ação Enviar SMS como uma nova etapa em seu fluxo de trabalho usando o conector SMS dos Serviços de Comunicação do Azure, siga estas etapas no portal do Azure com seu fluxo de trabalho de aplicativo lógico aberto no Designer de Aplicativo Lógico:

  1. No designer, na etapa em que você deseja adicionar a nova ação, selecione Nova etapa. Como alternativa, para adicionar a nova ação entre as etapas, mova o ponteiro sobre a seta entre essas etapas, selecione o sinal de adição (+) e selecione Adicionar uma ação.

  2. Na caixa de pesquisa Escolha uma operação, digite Azure Communication Services. Na lista de ações, selecione Enviar SMS.

    Captura de tela que mostra o Designer de Aplicativo Lógico e o conector dos Serviços de Comunicação do Azure com a ação Enviar SMS selecionada.

  3. Agora, crie uma conexão com seu recurso de Serviços de Comunicação.

    1. Dentro da mesma assinatura:

      1. Forneça um nome para a conexão.

      2. Selecione seu recurso dos Serviços de Comunicação do Azure.

      3. Selecione Criar.

      Captura de tela que mostra a configuração da ação Enviar SMS com informações de exemplo.

    2. Usando a cadeia de conexão do recurso Serviços de Comunicação:

      1. Forneça um nome para a conexão.

      2. Selecione Autenticação ConnectionString nas opções suspensas.

      3. Insira a cadeia de conexão do recurso Serviços de Comunicação.

      4. Selecione Criar.

      Captura de tela que mostra a configuração de Autenticação de Cadeia de Conexão.

    3. Usando o Principal de Serviço (Consulte a criação do Principal de Serviço):

      1. Forneça um nome para a conexão.

      2. Selecione Autenticação de principal de serviço (aplicação Microsoft Entra) nas opções suspensas.

      3. Introduza o ID do Inquilino, o ID do Cliente ou o Segredo do Cliente da sua Entidade de Serviço.

      4. Insira o valor da URL do Ponto de Extremidade dos Serviços de Comunicação do seu recurso dos Serviços de Comunicação.

      5. Selecione Criar.

      Captura de ecrã que mostra a configuração da Autenticação do Principal de Serviço.

  4. Na ação Enviar SMS, forneça as seguintes informações:

    • Os números de telefone de origem e de destino. Para fins de teste, você pode usar seu próprio número de telefone como o número de telefone de destino.

    • O conteúdo da mensagem que tu queres enviar, por exemplo, "Olá do Logic Apps!".

    Aqui está uma ação Enviar SMS com informações de exemplo:

    Captura de tela que mostra a ação Enviar SMS com informações de exemplo.

  5. Quando tiver terminado, na barra de ferramentas do estruturador, selecione Guardar.

Em seguida, execute seu fluxo de trabalho para teste.

Testar o fluxo de trabalho

Para iniciar manualmente o fluxo de trabalho, na barra de ferramentas do designer, selecione Executar. Ou, você pode esperar que o gatilho dispare. Em ambos os casos, o fluxo de trabalho deve enviar uma mensagem SMS para o número de telefone de destino especificado. Para obter mais informações, consulte como executar seu fluxo de trabalho.

Limpar recursos do fluxo de trabalho

Para limpar o fluxo de trabalho do aplicativo lógico e os recursos relacionados, veja como limpar os recursos dos aplicativos lógicos.

Resolução de Problemas

Para solucionar problemas relacionados à entrega de SMS, você pode habilitar o relatório de entrega com a Grade de Eventos para capturar detalhes de entrega.

Limpar recursos

Se quiser limpar e remover uma assinatura dos Serviços de Comunicação, você pode excluir o recurso ou grupo de recursos. A exclusão do grupo de recursos também exclui quaisquer outros recursos associados a ele. Saiba mais sobre a limpeza de recursos.

Verificação sem custo

Para usar um novo número gratuito para enviar mensagens SMS, você deve concluir um processo de verificação gratuito. Para obter orientação sobre como concluir a verificação do seu número gratuito, consulte o Guia de início rápido para enviar uma verificação gratuita. Apenas números gratuitos totalmente verificados estão autorizados a enviar tráfego de SMS. Qualquer tráfego de SMS de números gratuitos não verificados direcionados para números de telefone dos EUA e da CA é bloqueado.

Próximos passos

Este artigo descreveu como enviar mensagens SMS usando os Serviços de Comunicação do Azure.