Postagens populares

quarta-feira, 15 de janeiro de 2014

Tutorial de integração Delphi para envio de SMS - Zenvia

Tutorial de integração Delphi 
para envio de
 SMS

Configurando o envio
Primeiro passo
Faça o download da biblioteca de integração Delphi nela se encontram os 
seguintes arquivos:
 HumanGatewayClient.zip e Indy_9_00_17_src.zip.

Segundo passo
Adicionar ao Search path do Delphi o diretório onde estão as fontes do pacote
Indy e do pacote da HumanClient.

Terceiro passo
Para qualquer operação do gateway de SMS, é preciso identificar-se com sua
conta e código de acesso. Trabalharemos com as instâncias das classes
TSimpleSending e TMultipleSending para manipulação de SMS (envio e consulta), 
passando por parâmetros de seu construtor a sua conta e o código de acesso. 
Tais dados são cedidos pela
 Zenvia juntamente com a negociação do contrato 
firmado com a empresa.

Exemplo:

sms := TMultipleSending.create('conta', 'senha');
Enviando SMS individualmente
Primeiro passo
Instancie a classe TSimpleSending, informando a sua conta e senha.
Exemplo:

var
    ret : string;
    sms : TSimpleSending;
begin  
    sms := TSimpleSending.create('conta', 'senha');

Segundo passo
Adicione as informações To (obrigatório), Message (obrigatório), From (opcional),
 Id (opcional), Schedule (opcional) eCallback (opcional)
Exemplo:

sms.From := 'SuaEmpresa';
sms.ToNumber := 'NumeroDeDestino';
sms.Msg := 'SuaMensagem';


Terceiro passo
Chame o método TSimpleSending.send.

Exemplo:
ret :=  sms.send();

Quarto passo

O retorno do método de envio é uma string; nesse texto é possível resgatar
o código e a descrição da requisição e do estado do
 SMS enviado.
Exemplo:

StatusBar1.Panels[0].Text := ret;    

Enviando Múltiplos SMS
Primeiro passo
Instancie a classe TMultipleSending, informando a sua conta e senha.
Exemplo:

var
    ret : TStrings;
    sms : TMultipleSending;
    data : string;
    typeLayout : string;
begin
    sms := TMultipleSending.create('conta', 'senha');
   
Segundo passo

Chame o método TMultipleSending.LoadList, informando uma string
com a lista de SMS a serem enviados e o tipo de layoutda lista.
Em nosso exemplo, escolheremos o
 layout A, que consiste em
 “
numeroDeTelefone;textoDaMensagem“. Para adicionar mais
 de um
 SMS, inclua o caractere n entre as strings.

Exemplo:

data := '555199990101;Mensagem de testen555199990102;Mensagem de teste';
typeLayout := 'A';
sms.LoadList(data, typeLayout);

Terceiro passo
Chame o método TMultipleSending.send, passando por parâmetro a classe ListResource.
Exemplo:

ret := sms.send();

Quarto passo
O retorno do método de envio é uma TStrings; nesse texto é possível resgatar o código e a descrição da requisição e do estado dos SMS enviados por meio do Callback.
Exemplo:

ShowMessage(ret.Text);

8 comentários:

  1. É possível receber SMS com esta biblioetca?? Ou somente enviar??

    ResponderExcluir
  2. Olá Fernando,
    É possível receber respostas dos SMS que você enviou. agora receber diretamente acredito que não porque o número é virtual. você sabe o alcance de quem recebeu e que não recebeu e quem respondeu, mas você não tem um número de telefone disponível para receber mensagens as mensagens chegam com números tipo
    301-.25

    ResponderExcluir
  3. Boa noite, sou novato aqui no blog, queria saber se alguém pode mim ajudar, eu estou querendo montar um site de envio de sms grátis e usar um servidor de sms local meu mesmo usando o chip das operadoras alguém pode me ajudar nesse quesito?
    Não sei a linguagem que pode ser usada pra desenvolver o código fonte porem esse codigo tem que ser integrado ao servidor local que vai ficar aqui em casa, não quero contratar serviço de sms de terceiro pois o site será grátis de envio de sms meu e-mail pra contato é redeprovedor@gmail.com

    Att:
    Eduardo Pereira

    ResponderExcluir
    Respostas
    1. Olá Eduardo,

      Vamos lá, você quer criar um site de envio de SMS grátis, porem você terá custos para manter esse serviço, se quiser usar CHIP de operadoras locais, você terá que usar uma chipeira GSM que deve custar em média R$2.500,00.
      http://chipeira.com.br/
      as operadoras tem o custo e limite de envio de sms.
      quanto ao código você pode escrever em qualquer linguagem pois as chipeiras possuem API.
      o site pode ser java, php ou ASP.

      Excluir
  4. Se quer monta um provedor pequeno somente pra que os usuários mandem um sms cada vez, E interessante dar uma olhada neste tutorial, mas se quer realmente uma plataforma para envio de sms em massa, o menor custo seria a chipeira....Entre neste site http://samuca.com/

    ResponderExcluir
  5. Bom tarde à todos, carecia de um sistema desses mais já prontos ao invés de criá-lo, meu caso é de extrema urgência. Gostaria da resposta para o e-mail: heltongarrido@gmail.com.

    Desde já agradeço a compreensão de todos.

    ResponderExcluir
    Respostas
    1. A própria Zenvia tem aplicação já pronta para envio e acompanhamento dos envios.

      este artigo é somente para integração com uma aplicação que precisa enviar SMS diretamente sem usar o aplicativo da Zenvia

      Excluir