Partilhar via


Guia de início rápido: 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.

Nota

Partilhe connosco as suas ideias e comentários sobre os Serviços de Comunicação do Azure respondendo a este breve inquérito.


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.

A conclusão deste início rápido incorre num pequeno custo de alguns cêntimos USD ou menos na sua conta do 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 compatível com SMS. 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

Execute o seguinte comando em um terminal ou janela de comando para instalar o módulo de comunicação.

az extension add --name communication

Iniciar sessão na CLI do Azure

Você precisará 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 "<yourSubcriptionId>"

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 passar em uma cadeia de conexão

Você pode configurar a variável de ambiente para usar operações AZURE_COMMUNICATION_CONNECTION_STRING sms da CLI do Azure sem precisar usar --connection_string para passar na 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 seu recurso de 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 seu recurso de 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, 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.

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

A conclusão deste início rápido incorre num pequeno custo de alguns cêntimos USD ou menos na sua conta do Azure.

Nota

Encontre o código finalizado para este início rápido no GitHub.

Pré-requisitos

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.
SmsSendOptions 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.
SmsSendResult Esta classe contém o resultado do serviço SMS.

Autenticar o cliente

Abra Program.cs em um editor de texto e substitua o Main corpo do método por código para inicializar um SmsClient com sua cadeia 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 seu recurso de 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, 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

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 seu recurso de 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 Manipular eventos SMS para configurar o relatório de entrega para 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

Pode transferir a aplicação de exemplo do GitHub.

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

A conclusão deste início rápido incorre num pequeno custo de alguns cêntimos USD ou menos na sua conta do Azure.

Nota

Encontre o código finalizado para este início rápido no GitHub.

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 compatível com SMS. 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 seções a seguir, você adicionará todo o código-fonte desse início rápido ao arquivo de send-sms.js que acabou de criar.

Instalar o pacote

Use o npm install comando para instalar o SDK do SMS dos Serviços de Comunicação do 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.
SmsSendRequest 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.
SmsSendOptions 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.
SmsSendResult 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 seu recurso de Serviços de Comunicação.
  • Substitua <to-phone-number-1> e <to-phone-number-2> pelos 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.

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 seu recurso de 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 Manipular eventos SMS para configurar o relatório de entrega para 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 início rápido incorre num pequeno custo de alguns cêntimos USD ou menos na sua conta do Azure.

Nota

Encontre o código finalizado para este início rápido no GitHub.

Pré-requisitos

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, siga as etapas nas seções a seguir.

Criar uma aplicação Python nova

  1. Abra o terminal ou a janela de comando. Em seguida, use o seguinte comando 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, você adicionará todo o código-fonte desse início rápido ao arquivo de send-sms.py que acabou de criar.

Instalar o pacote

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

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. Você o instancia com suas informações de assinatura e o usa para enviar mensagens SMS.
SmsSendResult 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, esse guia de início rápido usa cadeias de conexão, mas em ambientes de produção, recomendamos o uso de entidades de serviço.

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. 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 send mé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, 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.

Parâmetros opcionais

O enable_delivery_report 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 Manipular eventos SMS para configurar o relatório 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 Python completo deve se parecer com o 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.

A conclusão deste início rápido incorre num pequeno custo de alguns cêntimos USD ou menos na sua conta do Azure.

Nota

Encontre o código finalizado para este início rápido no GitHub.

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, siga as etapas nas seções a seguir.

Criar uma nova aplicação Java

Abra seu terminal ou janela de comando e navegue até o diretório onde você gostaria de criar sua aplicação Java. Execute o seguinte comando para gerar o projeto Java a partir do modelo maven-archetype-quickstart.

  • 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ê usá-lo para enviar mensagens SMS.
SmsSendOptions 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.
SmsSendResult 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 seu recurso de 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, 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

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 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 Manipular eventos SMS para configurar o relatório de entrega para suas mensagens SMS.

Você pode usar o setTag método para aplicar uma tag ao relatório de entrega.

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"
    

Usando o conector SMS dos Serviços de Comunicação do Azure e os Aplicativos Lógicos do Azure, você pode criar fluxos de trabalho automatizados que podem enviar mensagens SMS. Este guia de início rápido mostra 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, que está aberto para o Designer de Aplicativo Lógico, e 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 guia de início rápido se concentre em usar o 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

A conclusão deste início rápido incorre num pequeno custo de alguns cêntimos USD ou menos na sua conta do 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 obter 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 Escolha uma pesquisa de 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 a entidade de serviço (consulte a criação da entidade de serviços):

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

      2. Selecione Autenticação da entidade de serviço (aplicativo 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 da Entidade 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 você deseja enviar, por exemplo, "Olá de aplicativos lógicos!".

    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.

Clean up resources (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 gratuita

Para utilizar um novo número gratuito para enviar mensagens SMS, é obrigatório passar por 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. Observe que apenas números gratuitos que foram 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 será bloqueado.

Próximos passos

Neste guia de início rápido, você aprendeu como enviar mensagens SMS usando os Serviços de Comunicação do Azure.