Envio de Sms
Prezados Amigos,
Preciso desenvolver um sistema que leia um arquivo com vários número de celuar e gere um que vai ser upado para um sistema de envio de sms. Esse sistema irá se conectar através de um ($_POST) para enviar os sms. Isso é possível?
Preciso desenvolver um sistema que leia um arquivo com vários número de celuar e gere um que vai ser upado para um sistema de envio de sms. Esse sistema irá se conectar através de um ($_POST) para enviar os sms. Isso é possível?
Valber Junior
Curtidas 0
Respostas
Wesley Yamazack
23/05/2009
Olá Valber,
Vamos por partes,
1 - Preciso desenvolver um sistema que leia um arquivo com vários número de celuar e gere um que
R : Sim, porém depende do formato, se for um txt, basta você mapear o mesmo, porém as posições e tamnhos do mesmo devem ser fixadas.
2 - Esse sistema irá se conectar através de um ($_POST) para enviar os sms. Isso é possível?
R : Quanto a isso, em delphi infelizmente nós, já tivemos um chamado assim, e não possível enviar sms, devido as regras das operadoras e tudo mais, porém existem programas que já fazem isso, mas creio que você queria o seu, porém infelizmente em delphi, se é possivel, não conseguimos fazer, infelizmente.
Att,
Wesley Y
Vamos por partes,
1 - Preciso desenvolver um sistema que leia um arquivo com vários número de celuar e gere um que
R : Sim, porém depende do formato, se for um txt, basta você mapear o mesmo, porém as posições e tamnhos do mesmo devem ser fixadas.
2 - Esse sistema irá se conectar através de um ($_POST) para enviar os sms. Isso é possível?
R : Quanto a isso, em delphi infelizmente nós, já tivemos um chamado assim, e não possível enviar sms, devido as regras das operadoras e tudo mais, porém existem programas que já fazem isso, mas creio que você queria o seu, porém infelizmente em delphi, se é possivel, não conseguimos fazer, infelizmente.
Att,
Wesley Y
GOSTEI 0
Valber Junior
23/05/2009
Ok Wesley, vou partir de outro ponto, pois não há um formato definido. Então digamos que tenha que digitar vários números de telefone em uma caixa de texto e uma só mensagem em outra e depois exportar um arquivo com esses dados, como devo proceder? Estamos usando o Delphi 2009.
GOSTEI 0
Wesley Yamazack
23/05/2009
Olá,
Vamos lá.
Vamos fazer um pequeno exemplo.
1 - Adicione 1 Edit, 1 ListBox, 1 Button, 1 Memo;
2 - No clique do button, você irá programar o seguinte.
Listbox1.Items.Add(Edit1.Text); // Sendo assim você digita o numero do telefone no Edit, e depois adiciona no Listbox;
3 - No memo você esquece, na propriedade Text, o que você quer que seja a mensagem;
4 - Qual forma que você quer exportar este arquivo? Txt ?
Ex. :
3333-3333 Mensagem digitada igual para todo mundo;
4444-3333 Mensagem digitada igual para todo mundo;
5555-3333 Mensagem digitada igual para todo mundo;
6666-3333 Mensagem digitada igual para todo mundo;
7777-3333 Mensagem digitada igual para todo mundo;
8888-3333 Mensagem digitada igual para todo mundo;
5 - Caso seja isso, basta você concatenar o Item do listbox, com o Text do Memo. Coloque mais um botão e no evento onclick do mesmo programe o seguinte;
Var
I : Integer;
begin
For I := 0 to ListBox1.Items.Count -1 do
begin
Memo2.Lines.Add(ListBox1.Items.Strings[I] + ' - ' + Edit2.Text);
end;
Memo2.Lines.SaveToFile('Lista.txt');
Abaixo segue exemplo pronto.
http://www.4shared.com/file/107969140/b6d0ce0c/Chamado_SMS.html
Aguardo novas intruções para concluirmos o chamado, foi isso mesmo que você solicitou ?
Att,
Wesley Y
Vamos lá.
Vamos fazer um pequeno exemplo.
1 - Adicione 1 Edit, 1 ListBox, 1 Button, 1 Memo;
2 - No clique do button, você irá programar o seguinte.
Listbox1.Items.Add(Edit1.Text); // Sendo assim você digita o numero do telefone no Edit, e depois adiciona no Listbox;
3 - No memo você esquece, na propriedade Text, o que você quer que seja a mensagem;
4 - Qual forma que você quer exportar este arquivo? Txt ?
Ex. :
3333-3333 Mensagem digitada igual para todo mundo;
4444-3333 Mensagem digitada igual para todo mundo;
5555-3333 Mensagem digitada igual para todo mundo;
6666-3333 Mensagem digitada igual para todo mundo;
7777-3333 Mensagem digitada igual para todo mundo;
8888-3333 Mensagem digitada igual para todo mundo;
5 - Caso seja isso, basta você concatenar o Item do listbox, com o Text do Memo. Coloque mais um botão e no evento onclick do mesmo programe o seguinte;
Var
I : Integer;
begin
For I := 0 to ListBox1.Items.Count -1 do
begin
Memo2.Lines.Add(ListBox1.Items.Strings[I] + ' - ' + Edit2.Text);
end;
Memo2.Lines.SaveToFile('Lista.txt');
Abaixo segue exemplo pronto.
http://www.4shared.com/file/107969140/b6d0ce0c/Chamado_SMS.html
Aguardo novas intruções para concluirmos o chamado, foi isso mesmo que você solicitou ?
Att,
Wesley Y
GOSTEI 0
Valber Junior
23/05/2009
Olá Wesley,
É quase isso, infelizmente, o cliente já tem os telefones em uma lista e quer evitar justamente ter que digitar novamente. O quero é que ele copie esses telefones para um campo TEXTO e depois varrê-lo linha por linha e fazer o que você informou, juntar com outro campo TEXTO (mensagem) e enfim salvar para texto.
É quase isso, infelizmente, o cliente já tem os telefones em uma lista e quer evitar justamente ter que digitar novamente. O quero é que ele copie esses telefones para um campo TEXTO e depois varrê-lo linha por linha e fazer o que você informou, juntar com outro campo TEXTO (mensagem) e enfim salvar para texto.
GOSTEI 0
Wesley Yamazack
23/05/2009
Olá Valber,
Então é simples também , me manda ai um exemplo do arquivo que o teu cliente tem, que eu faço o exemplo aqui pra ti. Fico no aguardo.
Att,
Wesley Y
Então é simples também , me manda ai um exemplo do arquivo que o teu cliente tem, que eu faço o exemplo aqui pra ti. Fico no aguardo.
Att,
Wesley Y
GOSTEI 0
Valber Junior
23/05/2009
Prezado Wesley,
Adaptei o seu código para a seguinte situação:
var
I : integer;
begin
ARQUIVO.Lines.Clear;
ARQUIVO.Lines.Add('CELULAR;MENSAGEM;DATA AGENDAMENTO');
for I := 0 to CELULARES.Lines.Count - 1 do
begin
ARQUIVO.Lines.Add(PREFIXO.Text+CELULARES.Lines.Strings[I]+';'+MENSAGEM.Lines.Text+';'+DATA.Text+' '+HORA.Text);
end;
ARQUIVO.Lines.SaveToFile(NOME_USUARIO.Text+'.csv');
end;
Inseri três campos Memo (1-mensagem, 2-celulares, 3-gerar o arquivo)
E outros campos texto para as informações necessárias.
Funcionou, mas gostaria de saber se há outra maneira mais interessante de se fazer, desde já agradeço a força.
Adaptei o seu código para a seguinte situação:
var
I : integer;
begin
ARQUIVO.Lines.Clear;
ARQUIVO.Lines.Add('CELULAR;MENSAGEM;DATA AGENDAMENTO');
for I := 0 to CELULARES.Lines.Count - 1 do
begin
ARQUIVO.Lines.Add(PREFIXO.Text+CELULARES.Lines.Strings[I]+';'+MENSAGEM.Lines.Text+';'+DATA.Text+' '+HORA.Text);
end;
ARQUIVO.Lines.SaveToFile(NOME_USUARIO.Text+'.csv');
end;
Inseri três campos Memo (1-mensagem, 2-celulares, 3-gerar o arquivo)
E outros campos texto para as informações necessárias.
Funcionou, mas gostaria de saber se há outra maneira mais interessante de se fazer, desde já agradeço a força.
GOSTEI 0
Wesley Yamazack
23/05/2009
Olá Valber,
Existem diversas maneiras de se fazer a mesma coisa em Delphi, ou em qualquer outra Linguagem, basta você ver o melhor caminho e fazer.
Você irá aproveitar este código para outras partes do teu projeto?
Sim : Então recomendo você criar uma classe com estas propriedades (Mensagem, Data, Celular, Etc ). E trabalhar em cima da Classe, Criar um método Gravar, Carregar, em fim.
Não : O código pode ser mantido desta forma, pois está funcionando, a não ser que você queria otimizar algo mais, como por exemplo, já carregar a data e hora, ou pegar uma lista de celular de um TXT, e carregar no Memo TXT.
OBS: Te recomendo renomear teus componentes, da seguinte forma.
Ex.: Memo1 - MmCelular
Label1 - LblCelular
Edit1 - EdtCelular
Pois assim fica mais fácil para se um dia alguém for da manutenção no teu código, ou até mesmo você daqui a um tempo, saber que tipo de componente esta se associando quando você quer dizer Mensagem, ou Data por exemplo. Isso é só uma dica, não precisa mudar isso não, mas seria interessante.
Espero te esclarecido sua dúvida.
Att,
Wesley Y
Existem diversas maneiras de se fazer a mesma coisa em Delphi, ou em qualquer outra Linguagem, basta você ver o melhor caminho e fazer.
Você irá aproveitar este código para outras partes do teu projeto?
Sim : Então recomendo você criar uma classe com estas propriedades (Mensagem, Data, Celular, Etc ). E trabalhar em cima da Classe, Criar um método Gravar, Carregar, em fim.
Não : O código pode ser mantido desta forma, pois está funcionando, a não ser que você queria otimizar algo mais, como por exemplo, já carregar a data e hora, ou pegar uma lista de celular de um TXT, e carregar no Memo TXT.
OBS: Te recomendo renomear teus componentes, da seguinte forma.
Ex.: Memo1 - MmCelular
Label1 - LblCelular
Edit1 - EdtCelular
Pois assim fica mais fácil para se um dia alguém for da manutenção no teu código, ou até mesmo você daqui a um tempo, saber que tipo de componente esta se associando quando você quer dizer Mensagem, ou Data por exemplo. Isso é só uma dica, não precisa mudar isso não, mas seria interessante.
Espero te esclarecido sua dúvida.
Att,
Wesley Y
GOSTEI 0
Valber Junior
23/05/2009
Caro Wesley,
Obrigado pelas dicas, vou segui-las sim. E a resposta a sua pergunta é: Sim, irei usá-lo em outras parte do seu projeto, entretanto não tenho experiência para trabalhar com classes e objetos, você poderia me ajudar nesse sentido?
Obrigado pelas dicas, vou segui-las sim. E a resposta a sua pergunta é: Sim, irei usá-lo em outras parte do seu projeto, entretanto não tenho experiência para trabalhar com classes e objetos, você poderia me ajudar nesse sentido?
GOSTEI 0
Wesley Yamazack
23/05/2009
Olá Valber,
Bom se você não sabe fica mais caro.(rsrs). Estou brincando.
Bom dai fica um pouco mais complicado, pois o lance da classe seria para você reaproveitar este teu código para diversas outras situações. Se você quiser eu gravo uma vídeo aula pra ti, porém somente mais a noite que poderei fazer isso, daí lá teu dou umas dicas de como trabalhar com classes e objetos, OK ?
Mas por enquanto teu sistema esta tranquilo, pode usar ele desta forma.
Sua dúvida a principio foi esclarecida certo ?
Posso fechar o chamado, e te mandar a vídeo a noite ?
Att,
Wesley Y
Bom se você não sabe fica mais caro.(rsrs). Estou brincando.
Bom dai fica um pouco mais complicado, pois o lance da classe seria para você reaproveitar este teu código para diversas outras situações. Se você quiser eu gravo uma vídeo aula pra ti, porém somente mais a noite que poderei fazer isso, daí lá teu dou umas dicas de como trabalhar com classes e objetos, OK ?
Mas por enquanto teu sistema esta tranquilo, pode usar ele desta forma.
Sua dúvida a principio foi esclarecida certo ?
Posso fechar o chamado, e te mandar a vídeo a noite ?
Att,
Wesley Y
GOSTEI 0
Valber Junior
23/05/2009
Caro Wesley,
Pode sim, desde já agradeço sua atenção e presteza, vou fazer o acabamento visual do sistema e colocá-lo em teste. Outra coisa que esqueci de perguntar é: Gostaria de distruí-lo para os setores da empresa, entretanto sem ter que instalá-lo e queria também poder usar o XML para que cada setor pudesse cadastrar seus contatos e mantê-los no aplicativo. Para eu fazer dessa forma usando o DATASET terei que instalar o programa com as respectivas (bpls, acho que são elas) em cada máquina ou posso distribuir somente o executável que estará nele todas as informações necessárias para manipulação do XML?
Pode sim, desde já agradeço sua atenção e presteza, vou fazer o acabamento visual do sistema e colocá-lo em teste. Outra coisa que esqueci de perguntar é: Gostaria de distruí-lo para os setores da empresa, entretanto sem ter que instalá-lo e queria também poder usar o XML para que cada setor pudesse cadastrar seus contatos e mantê-los no aplicativo. Para eu fazer dessa forma usando o DATASET terei que instalar o programa com as respectivas (bpls, acho que são elas) em cada máquina ou posso distribuir somente o executável que estará nele todas as informações necessárias para manipulação do XML?
GOSTEI 0
Wesley Yamazack
23/05/2009
Olá Valber.
Segunda a nossa política da consultoria, temos de atender uma solicitação por chamado. Sua dúvida inicial foi esclarecida, correto ? Peço que por favor abra um outro chamado com esta solicitação e peça para que seja atendido pelo consultor Wesley Yamazack. Pode postar a mesma coisa que postou no outro chamado.
Att,
Wesley Y
Segunda a nossa política da consultoria, temos de atender uma solicitação por chamado. Sua dúvida inicial foi esclarecida, correto ? Peço que por favor abra um outro chamado com esta solicitação e peça para que seja atendido pelo consultor Wesley Yamazack. Pode postar a mesma coisa que postou no outro chamado.
Att,
Wesley Y
GOSTEI 0