É muito comum ver nos sistemas que desenvolvemos envio de e-mail. Mas em alguns setores o envio de SMS facilita muito mais que um e-mail.
Você recebe um e-mail do seu dentista informando que você tem uma consulta na semana que vem? Creio que não. Na maioria desses sistemas é usado envio de SMS e não de e-mail. Enviar um lembrete de um compromisso via SMS é muito mais simples e prático do que um e-mail, afinal, todos estão com seus celulares sempre a mãos.
Hoje vou mostrar como enviar SMS usando a API do PagueVeloz, nosso parceiro.
Bem, se você já ouviu falar em serviço de envio de SMS, provavelmente a primeira opção que veio a sua cabeça foi o Twilio. O Twilio oferece outros serviços além do de envio de SMS.
Fazendo uma comparação rápida do envio de SMS do PagueVeloz x Twilio:
Vantagens
- Preço competitivo
- Serviço nacional
- Suporte em Português
- Envia apenas para números no Brasil
Usando a API do PagueVeloz
Praticamente quase todas os serviços do PagueVeloz necessitam de autenticação. O SMS é um deles. Para usar os serviços você deve se cadastrar no PagueVeloz para receber o seu token de acesso a API. Esse token deverá ser semelhante a:
e45c5687-b0ba-45d4-8337-0fdee61abe93
Para todo o Request que necessita autenticação é obrigatório informar o header Authorization.
Authorization: Basic [CHAVE]
[CHAVE] é o BASE64 do email:token do cliente.
Exemplo de chave:
[email protected]:e45c5687-b0ba-45d4-8337-0fdee61abe93
Exemplo após conversão para BASE64:
c2V1ZW1haWxAc2V1ZG9taW5pby5jb20uYnI6ZTQ1YzU2ODctYjBiYS00NWQ0LTgzMzctMGZkZWU2MWFiZTkz
Além desse header o Content-Type é obrigatório para todos os serviços. Vale ressaltar que a API trabalha apenas com o formato JSON.
Content-Type: application/json
Agora que já falamos sobre como se autenticar e enviar o token no Request vamos ver como enviar um SMS.
Enviando SMS
O JSON a ser enviado para a API é o seguinte:
{
'SeuId': '1234',
'TelefoneRemetente': '551199887766',
'TelefoneDestino': '551199887766',
'Conteudo': 'SMS PagueVeloz',
'AgendarPara': '2014-12-18T23:16:17.2174313-02:00',
'Id': 0
}
SeuId é o identificador da mensagem no seu sistema. Opcional. TelefoneRemetente é o número que está enviando. Obrigatório. Deve ser no formato 55 + DDD + NÚMERO. TelefoneDestino é o número que receberá. Obrigatório. Deve ser no formato 55 + DDD + NÚMERO. Conteudo é a mensagem a ser enviada. Obrigatório. No máximo 150 caracteres, de preferência sem acentuação. AgendarPara é a data que será enviado. Opcional. Se não informado será enviado na mesma hora da requisição. Deve estar no formato UTC. Id é o identificador da mensagem no PagueVeloz, sempre zero. Opcional.
O retorno de sucesso é um número. Este número é o identificador da mensagem no PagueVeloz. Caso o retorno seja de erro, será retornada uma mensagem informando qual o erro.
Veja aqui a documentação completa da API.
Confira abaixo como enviar SMS em várias linguagens de programação.
C#
O primeiro exemplo usa os pacotes padrões HTTP do .Net. Já no segundo exemplo são usados pacotes do ASP.NET Web API. O primeiro exemplo é ideal para aplicações Desktop, já o segundo para aplicações Web.
C++
Necessário biblioteca libcURL. Para compilar o arquivo execute o comando:
g++ -o sms.out sms.cpp -lcurl
Java
Necessário biblioteca httpcomponents.
Node.JS
Necessário pacote unirest. Para instalar execute o comando:
npm install -g unirest
Python
Necessário módulo unirest. Para instalar execute o comando:
pip install unirest
Ruby
Necessário pacote unirest. Para instalar execute o comando:
gem install unirest
Faltou a sua linguagem de programação? Deixe um comentário que daremos um jeito de disponibilizá-lo para você.