Como enviar uma mensagem SMS de uma planilha do Google
Tempo de leitura: 4 minutos
O Google Sheets vem com uma linguagem baseada em JavaScript chamada Apps Script. Neste tutorial, usaremos o Apps Script para enviar mensagens SMS para números de telefone armazenados em uma planilha do Google. As etapas levam menos de dez minutos para serem concluídas, mesmo que você nunca tenha escrito uma linha de código.
Você também pode estar interessado em Como limpar e validar números de telefone em uma planilha do Google. Com este tutorial, você pode descobrir quais números de telefone em sua planilha podem receber uma mensagem de texto antes de tentar enviá-la.
Os bits da Twilio
Você precisará de uma conta gratuita da Twilio. Se não tiver uma conta gratuita, cadastre uma aqui. Você pode fazer tudo isso neste tutorial com uma conta de avaliação, embora haja restrições quanto ao envio de mensagens de texto apenas para seu celular. (Se você atualizar sua conta, $ 20 compra cerca de 2.500 mensagens de texto nos Estados Unidos. Todos os preços das mensagens SMS podem ser encontrados aqui).
Assim que você tiver uma conta da Twilio, compre um número de telefone da Twilio habilitado para SMS. Em seguida, vá para o Dashboard Programmable SMS (SMS programável) e clique em Show API Credentials (Mostrar credenciais de API).
Mantenha seu número de telefone e credenciais à mão. Em um minuto, vamos colá-los em nosso código.
Os bits do Google
Vá para seu Google Drive e crie uma nova planilha. Crie cabeçalhos de coluna para:
- Phone Number (Número de telefone)
- Message Body (Corpo da mensagem)
- Status
Adicione duas linhas com um número de telefone e corpo da mensagem. Preceda seu número de telefone com um ' (aspas simples) para dizer à planilha que a célula é uma string (você também pode formatar a coluna como "texto sem formatação"). Para evitar o spam de amigos e familiares, você pode usar seu número de celular duas vezes. Deixe o status em branco.
Com nossos dados colocados, estamos prontos para escrever o código. Clique em Tools (Ferramentas) -> Script Editor (Editor de scripts).
O restante deste post orienta você pelo código para o envio de mensagens de texto da planilha. Se você é o tipo de pessoa que gosta de pular para o final do romance misterioso, ou se simplesmente não tem tempo para todo esse material de aprendizado, aqui está o produto final (anote os espaços reservados do Account SID (SID da conta), do Auth Token (token de autenticação) e do número de telefone da Twilio):
Se quiser ver como chegamos a esse resultado, continue.
Envie um SMS do App Script
Escreveremos este código em duas etapas:
- Escreva uma função sendSms para enviar uma mensagem SMS.
- Escreva uma função sendAll para executar sendSms em cada número de telefone e corpo da mensagem na planilha.
Substitua as duas linhas de código em seu script por:
Substitua esse (312) 313-1434 pelo seu número de celular.
O trabalho de sendSms é fazer uma solicitação HTTP POST para a API de mensagens da Twilio. Você não precisa saber o que isso significa para concluir este tutorial, mas pode pensar nele como o envio de um formulário "Send an Text Message" (Enviar uma mensagem de texto) com os campos To (Para), From (De), Body (Corpo), Account SID (SID da conta) e Auth Token (Token de autenticação).
Todo o código desta etapa entra na função sendSms. Defina o URL para a API de mensagens da Twilio.
Substitua o espaço reservado YOURACCOUNTSID pelo SID da sua conta no dashboard.
Defina um "payload" descrevendo a mensagem de texto que usa os parâmetros da função sendSms para o "To" (Para) e para o "Body" (Corpo).
Substitua o espaço reservado YOURTWILIONUMBER pelo seu número de telefone da Twilio.
Crie um hash de opções para informar ao App Script que esta é uma solicitação POST que usa o payload:
Adicione cabeçalhos às opções para autorizar a solicitação com seu SID da conta e token de autenticação no dashboard:
Por fim, execute a solicitação HTTP.
Salve o arquivo e execute o script. Será solicitado que você autorize seu app na primeira vez em que ele for executado. Se tudo correr bem, seu telefone acenderá com a mensagem.
Envie mensagens de texto da planilha
Não é muito prático codificar números de telefone no script. Vamos adicionar uma função para ler o número de telefone e o corpo da mensagem da planilha e, em seguida, passar esses dados para sendSms.
Substitua o que temos em myFunction por:
Imediatamente acima de myFunction (e abaixo de sendSms), crie a função sendAll. O restante do código vai aqui.
Obtenha os dados da sua planilha:
Cole o código abaixo que vai:
- iterar por meio dos dados
- tentar enviar um SMS para o número de telefone ( linha[0]) com o corpo da mensagem ( linha[1])
- definir um status de "enviado" se a solicitação for bem-sucedida
- registrar o erro e definir o status como "error" se a solicitação gerar um erro
- atualizar a coluna de status adequadamente
Execute seu app novamente! Você precisará autorizá-lo novamente, pois agora ele também está tentando acessar sua planilha.
Vamos em frente
O Google Sheets e o Apps Script oferecem uma quantidade surpreendente de funcionalidades para uma linguagem de programação que não requer instalação ou configuração. Se você achou isso útil, talvez queira conferir Como limpar e validar números de telefone em uma planilha do Google com o qual você poderia validar uma planilha inteira cheia de números de telefone e responder a perguntas como "este é um telefone celular ou uma linha fixa?".
Se você quiser saber mais sobre a API de mensagens, confira estes documentos:
- API REST da Twilio
- Enviar mensagens SMS e MMS com a API REST
- Notificações de SMS e MMS em JavaScript e Node.js
Se você tiver alguma dúvida ou elaborar casos de uso interessantes para enviar textos de uma planilha, eu adoraria saber mais sobre isso. Você pode me encontrar em lleao@twilio.com ou @luisleao.
Publicações relacionadas
Recursos relacionados
Twilio Docs
De APIs a SDKs e aplicativos de amostra
Documentação de referência de API, SDKs, bibliotecas auxiliares, guias de início rápido e tutoriais para sua linguagem e plataforma.
Centro de Recursos
Os mais recentes e-books, relatórios do setor e webinars
Aprenda com especialistas em engajamento do cliente para melhorar sua própria comunicação.
Ahoy
Centro da comunidade de desenvolvedores da Twilio
Melhores práticas, exemplos de código e inspiração para criar comunicações e experiências de engajamento digital.