Enviar Mensagens do WhatsApp a Partir de CSV Usando C NET

8 de julho de 2024

Quer tornar a comunicação do seu negócio no WhatsApp mais eficaz? Este tutorial mostrará como enviar mensagens para números de telefone armazenados usando C#, a biblioteca RestSharp e a Wassenger API. Você aprenderá a ler números de telefone e mensagens do arquivo CSV e enviá-las automaticamente com o Wassenger.

Este artigo oferece uma visão rápida das funcionalidades da Wassenger API.

🫣 Não quer usar programação? Sem problemas! Explore nosso novo recurso de Campanhas no WhatsApp sem código. Importe seus contatos, defina uma mensagem, marque uma data de envio e relaxe! 🥳 🥳

Pré-requisitos

  • Entendimento básico de C# e .NET
  • .NET SDK instalado no seu computador
  • Um editor de texto para escrever o código (ex.: Visual Studio, Visual Studio Code)
  • Um token de API do Wassenger API token (você pode obtê-lo inscrevendo-se aqui)

🤩 🤖 Wassenger é uma plataforma completa de comunicação e solução de API para WhatsApp. Explore mais de 100+ casos de uso de API e automatize qualquer coisa no WhatsApp assinando um teste gratuito e começando em minutos**!**

Crie um novo Aplicativo de Console

Por favor, crie um novo diretório para seu projeto e navegue até ele no seu terminal. Em seguida, execute os seguintes comandos para criar um novo Aplicativo de Console:

dotnet new console

Instale os pacotes necessários

Execute o seguinte comando no seu terminal para instalar as bibliotecas necessárias:

dotnet add package RestSharp
dotnet add package CsvHelper

Crie o arquivo CSV

Crie um novo arquivo chamado numbers.csv no diretório do seu projeto com duas colunas:

  1. Primeira coluna: número de telefone em E164 format com o prefixo do país.
  2. Segunda coluna: mensagem de texto a ser enviada para o número de telefone alvo.

O documento da planilha deve ficar assim:

O documento equivalente da planilha exportado como CSV deve ficar assim:

(+1234567890,
  '👋 Welcome to {{your-business-name}}! Thanks for signing up.We are just a message away!' +
    1234567890,
  "💐 Your order has been shipped.Tracking number is {{tracking-number}}.Don't hesitate to reach out to if you need help! 🤗");

Você pode exportar qualquer documento do Excel ou do Google Sheets como arquivo CSV seguindo estas instruções:

🤩 🤖 Wassenger é uma plataforma completa de comunicação e solução de API para WhatsApp. Explore mais de 100+ casos de uso de API e automatize qualquer coisa no WhatsApp assinando um teste gratuito e começando em minutos**!**

Crie um arquivo com o código

Crie um novo arquivo chamado SendMessages.cs no diretório do seu projeto e adicione o código a seguir:

using System;
using System.IO;
using CsvHelper;
using RestSharp;
namespace SendMessage
{
class Program
{
static void Main(string[] args)
{
string csvFile = "numbers.csv";
// Replace this with your Wassenger API token
// Get your API token here: https://app.wassenger.com/apikeys
string apiToken = "ENTER API KEY HERE";
// Optionally specify the target WhatsApp device ID connected to Wassenger
// you want to use for messages delivery(24 characters hexadecimal value)
string device = "DEVICE ID GOES HERE";
RestClient client = new RestClient("https://api.wassenger.com/v1/messages");
using(StreamReader reader = new StreamReader(csvFile))
using(CsvReader csv = new CsvReader(reader, System.Globalization.CultureInfo.InvariantCulture))
{
while(csv.Read())
{
string phone = csv.GetField<string>(0);
string message = csv.GetField<string>(1);
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", $"{apiToken}");
request.AddJsonBody(new { phone, message, device });
IRestResponse response = client.Execute(request);
if(response.IsSuccessful)
{
Console.WriteLine($"=> Message created: {phone}");
}
else
{
Console.WriteLine($"Failed to create message to {phone}: {response.ErrorMessage}");
}
}
}
}
}
}

Execute e rode código na nuvem sem instalar nenhum software no seu computador. Crie uma conta gratuita no Replit e comece em minutos

Substitua o token da API

No arquivo SendMessages.cs, certifique-se de ter definido o token de API da sua conta Wassenger real:

string apiToken = "ENTER API KEY HERE";

Opcionalmente, imagine que você tem múltiplos números do WhatsApp conectados à sua conta Wassenger. Nesse caso, você pode especificar qual número do WhatsApp deseja usar para a entrega das mensagens adicionando o ID de dispositivo único do Wassenger (valor hexadecimal de 24 caracteres) na linha a seguir:

// Optionally specify the target WhatsApp device ID connected to Wassenger
// you want to use for messages delivery(24 characters hexadecimal value)
string device = "DEVICE ID GOES HERE";

Execute o programa

Antes de executar o programa, se você planeja enviar centenas de mensagens em sequência, recomendamos definir uma velocidade de entrega menor por minuto, não mais do que 2–3 mensagens, para evitar problemas de bloqueio devido às políticas anti-spam do WhatsApp. Saiba mais sobre as melhores práticas e como reduzir riscos aqui.

Abra um terminal no diretório do seu projeto e execute o seguinte comando para executar o script SendMessages.cs:

dotnet run

Se tudo estiver configurado corretamente, você verá uma saída indicando que as mensagens foram criadas com sucesso:

=> Message created: +1234567890
=> Message created: +1234567890
=> Message created: +1234567890

Observe que as mensagens serão adicionadas à fila de entrega de mensagens do seu número e entregues assincronamente em segundo plano ao longo do tempo, com base no limite de velocidade de entrega de mensagens por minuto da assinatura do seu número ou na velocidade de entrega configurada manualmente nas configurações do seu número.

As mensagens podem levar vários minutos ou horas, dependendo de quantas foram criadas, para serem efetivamente entregues aos números de telefone alvo via WhatsApp. Você pode monitorar o progresso da entrega das mensagens no painel web ou automaticamente usando eventos de webhook.

Conclusão

Neste tutorial, você aprendeu como enviar mensagens para números de telefone armazenados em um arquivo CSV usando C#, a biblioteca RestSharp e a Wassenger API.

Você pode atualizar o arquivo numbers.csv e executar o programa sempre que quiser enviar novas mensagens através do seu número do WhatsApp conectado ao Wassenger.

Você também pode personalizar o script para lidar com colunas adicionais, criar diferentes tipos de mensagens ou integrá-lo ao seu software conforme necessário.

🤩 🤖 Wassenger é uma plataforma completa de comunicação e solução de API para WhatsApp. Explore mais de 100+ casos de uso de API e automatize qualquer coisa no WhatsApp assinando um teste gratuito e começando em minutos**!**

Ready to transform your WhatsApp communication?

Start automating your customer interactions today with Wassenger

Get Started Free