azure-communication-sms-java
Permite ao agente enviar mensagens SMS. Útil para notificações, códigos de verificação e mensagens em massa.
O que ela faz
Esta ferramenta permite enviar mensagens de texto (SMS) para um ou vários números de telefone usando o serviço da Microsoft Azure. Você pode usá-la para enviar notificações, alertas ou códigos de verificação.
Quando usar
- ✓Enviar um código de verificação para um usuário.
- ✓Enviar uma notificação sobre o status de um pedido.
- ✓Enviar uma mensagem promocional para clientes.
Exemplo do que pedir para a IA
“Envie uma mensagem para +5511999999999 dizendo 'Seu código é 123456'”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Você precisa configurar o serviço Azure Communication Services e obter as informações de acesso. Depois, o código se conecta a esse serviço para enviar as mensagens.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill azure-communication-sms-javaOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/azure-communication-sms-java/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Azure Communication SMS (Java)
Envie mensagens SMS para um ou vários destinatários com relatórios de entrega.
Instalação
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-communication-sms</artifactId>
<version>1.2.0</version>
</dependency>
Criação do Cliente
import com.azure.communication.sms.SmsClient;
import com.azure.communication.sms.SmsClientBuilder;
import com.azure.identity.DefaultAzureCredentialBuilder;
// With DefaultAzureCredential (recommended)
SmsClient smsClient = new SmsClientBuilder()
.endpoint("https://<resource>.communication.azure.com")
.credential(new DefaultAzureCredentialBuilder().build())
.buildClient();
// With connection string
SmsClient smsClient = new SmsClientBuilder()
.connectionString("<connection-string>")
.buildClient();
// With AzureKeyCredential
import com.azure.core.credential.AzureKeyCredential;
SmsClient smsClient = new SmsClientBuilder()
.endpoint("https://<resource>.communication.azure.com")
.credential(new AzureKeyCredential("<access-key>"))
.buildClient();
// Async client
SmsAsyncClient smsAsyncClient = new SmsClientBuilder()
.connectionString("<connection-string>")
.buildAsyncClient();
Enviar SMS para um Único Destinatário
import com.azure.communication.sms.models.SmsSendResult;
// Simple send
SmsSendResult result = smsClient.send(
"+14255550100", // From (your ACS phone number)
"+14255551234", // To
"Your verification code is 123456");
System.out.println("Message ID: " + result.getMessageId());
System.out.println("To: " + result.getTo());
System.out.println("Success: " + result.isSuccessful());
if (!result.isSuccessful()) {
System.out.println("Error: " + result.getErrorMessage());
System.out.println("Status: " + result.getHttpStatusCode());
}
Enviar SMS para Vários Destinatários
import com.azure.communication.sms.models.SmsSendOptions;
import java.util.Arrays;
import java.util.List;
List<String> recipients = Arrays.asList(
"+14255551111",
"+14255552222",
"+14255553333"
);
// With options
SmsSendOptions options = new SmsSendOptions()
.setDeliveryReportEnabled(true)
.setTag("marketing-campaign-001");
Iterable<SmsSendResult> results = smsClient.sendWithResponse(
"+14255550100", // From
recipients, // To list
"Flash sale! 50% off today only.",
options,
Context.NONE
).getValue();
for (SmsSendResult result : results) {
if (result.isSuccessful()) {
System.out.println("Sent to " + result.getTo() + ": " + result.getMessageId());
} else {
System.out.println("Failed to " + result.getTo() + ": " + result.getErrorMessage());
}
}
Opções de Envio
SmsSendOptions options = new SmsSendOptions();
// Enable delivery reports (sent via Event Grid)
options.setDeliveryReportEnabled(true);
// Add custom tag for tracking
options.setTag("order-confirmation-12345");
Tratamento da Resposta
import com.azure.core.http.rest.Response;
Response<Iterable<SmsSendResult>> response = smsClient.sendWithResponse(
"+14255550100",
Arrays.asList("+14255551234"),
"Hello!",
new SmsSendOptions().setDeliveryReportEnabled(true),
Context.NONE
);
// Check HTTP response
System.out.println("Status code: " + response.getStatusCode());
System.out.println("Headers: " + response.getHeaders());
// Process results
for (SmsSendResult result : response.getValue()) {
System.out.println("Message ID: " + result.getMessageId());
System.out.println("Successful: " + result.isSuccessful());
if (!result.isSuccessful()) {
System.out.println("HTTP Status: " + result.getHttpStatusCode());
System.out.println("Error: " + result.getErrorMessage());
}
}
Operações Assíncronas
import reactor.core.publisher.Mono;
SmsAsyncClient asyncClient = new SmsClientBuilder()
.connectionString("<connection-string>")
.buildAsyncClient();
// Enviar mensagem única
asyncClient.send("+14255550100", "+14255551234", "Mensagem assíncrona!")
.subscribe(
result -> System.out.println("Enviado: " + result.getMessageId()),
error -> System.out.println("Erro: " + error.getMessage())
);
// Enviar para vários com opções
SmsSendOptions options = new SmsSendOptions()
.setDeliveryReportEnabled(true);
asyncClient.sendWithResponse(
"+14255550100",
Arrays.asList("+14255551111", "+14255552222"),
"Mensagem assíncrona em massa",
…
Perguntas frequentes
Preciso de um número de telefone especial para enviar SMS?
Sim, você precisa de um número de telefone provisionado no Azure Communication Services para usar como remetente.
Posso enviar SMS para qualquer número?
Geralmente sim, mas pode haver restrições dependendo do país ou da operadora.
Como sei se a mensagem foi entregue?
O serviço pode ser configurado para enviar relatórios de entrega, que informam se a mensagem foi recebida.
Detalhes
Descrição original do autor
Send SMS messages with Azure Communication Services SMS Java SDK. Use when implementing SMS notifications, alerts, OTP delivery, bulk messaging, or delivery reports.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #2299
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
operator-approval-loop
Faz seu agente gerenciar o envio de mensagens com aprovação humana. Garante que mensagens importantes sejam revisadas antes de serem enviadas.
affaan-m/ECC
discernment-nudge
Faz seu agente adicionar perguntas de acompanhamento após dar uma resposta importante. É útil para garantir que você pense bem sobre conselhos ou planos antes de agir.
anthropics/skills
interview-me
Faz perguntas para entender exatamente o que você precisa. Garante que o agente compreenda sua real necessidade antes de começar o trabalho.
addyosmani/agent-skills