Enviando SMS pelo PagueVeloz

É 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.

PagueVeloz

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

Desvantagens

  • 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ê.