Como enviar mensagens SMS de um aplicativo Rails 5 com a Twilio
Tempo de leitura: 3 minutos
No crescente mundo do café, há muitas variedades de torras nas diferentes regiões. Seu chefe atribui a você a tarefa de criar um aplicativo para Criar, consultar, atualizar e destruir (CRUD, pela sigla em inglês) as diferentes torras de café. Também é preciso enviar uma notificação por SMS toda vez que um novo café torrado é adicionado ao site para evitar que os concorrentes o colocassem em torras de café falsas.
Hoje, criaremos um aplicativo CRUD do Rails 5 muito básico, chamado "Coffee Roasts" (Torras de café), que envia uma notificação por SMS ao seu chefe sempre que um novo café torrado for adicionado ao nosso site usando a API de SMS da Twilio.
Como iniciar nosso projeto no Rails
Primeiro, verifique se você tem o Ruby, o Bundler e o Rails instalados para configurar um novo projeto:
Embora não recomende esta próxima etapa para o desenvolvimento normal, há um gerador do Rails para criar um aplicativo CRUD completo com um único comando:
A partir daí, vamos passar pela configuração normal do banco de dados:
Como integrar o Rails com a Twilio
A comunidade da Twilio e do Ruby criaram um gem (biblioteca) para facilitar a integração com a Twilio. Os gems são simplesmente milhares de linhas de código reutilizável escritas por outros desenvolvedores para facilitar a sua vida. O Gemfile
é um arquivo do Ruby com uma lista de gems necessários para executar seu aplicativo. Nosso Gemfile
foi gerado automaticamente do comando scaffold
executado anteriormente para criar nosso aplicativo do Rails.
Vamos adicionar a seguinte linha ao nosso Gemfile
para trazer a funcionalidade da Twilio:
Em seguida, vamos executar o seguinte comando para instalar o gem da Twilio em nosso aplicativo do Rails:
Como se registrar na Twilio
A partir daí, vamos configurar as variáveis de configuração necessárias para o aplicativo.
- Se ainda não tiver uma conta da Twilio, registre-se para uma avaliação gratuita. Verifique se o número escolhido tem recursos de SMS.
- Depois de se registrar, a Twilio solicita a verificação do seu número de telefone pessoal. Com uma conta de avaliação gratuita, este é o único número para o qual você pode enviar mensagens de texto, mas não há problema para este aplicativo.
- Clique no ícone da casa no canto superior esquerdo do Console da Twilio. Acompanhe o Account SID (SID da conta) e o Auth Token (token de autenticação), pois precisaremos deles mais tarde na configuração do Rails.
Como configurar o aplicativo
Agora que temos o Account SID (SID da conta), o Auth Token (token de autenticação) e número de telefone da Twilio, vamos adicioná-los ao arquivo config/secrets.yml
. O aplicativo terá a seguinte aparência:
Observe que você precisa adicionar o código do seu país em twilio_phone_number
. Por exemplo, se seu número for "(312) 555-6677", insira seu número de telefone como "+13125556677".
Precisamos configurar nosso cliente ao adicionar o inicializador da Twilio que será carregado automaticamente com o Rails. Crie o arquivo config/initializers/twilio.rb
e adicione este código:
Antes de começar a escrever o código no aplicativo, teste a integração em um console. Use bundle exec rails console
para iniciar um console e executar o seguinte comando:
Se tudo funcionar, é preciso receber uma mensagem de texto no número de telefone usado para configurar sua conta da Twilio. É muito impressionante com tão pouco esforço!
Vamos escrever um pouco de código!
Em seguida, vamos adicionar o código de mensagens de texto a um objeto de serviço em nosso aplicativo do Rails em app/services/twilio_text_messenger.rb
:
Por fim, vamos adicionar esse objeto de serviço ao método create (criar)
em app/controllers/coffee_roasts_controller.rb
:
Como executar o aplicativo Ruby
E pronto! Para testar, inicie o servidor:
Acesse localhost:3000/coffee_roasts/new, crie uma torra de café e você receberá uma mensagem de texto!
Criamos um aplicativo CRUD completo do Rails que pode enviar mensagens de texto por SMS e proteger o mundo de torras de café de baixa qualidade, em menos tempo do que a maioria das pessoas levaria para encontrar a melhor cafeteria em sua região. No futuro, talvez seja possível fornecer ao nosso chefe sempre vigilante alguns recursos extras, como a capacidade de confirmar se uma torra de café pode ou não ser inserida no banco de dados por meio de mensagens de texto.
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.