[AsteriskBrasil] Integração com Delphi

Hudson Cardoso hudsoncardoso em hotmail.com
Quarta Agosto 15 13:53:39 BRT 2012


se fizer, tambem vou querer, meu delphi anda meio enferrujado....


Hudson 
048 8413 7000
Para quem nao cre, nenhuma prova converte,Para aquele que cre, nenhuma prova precisa.

Date: Tue, 14 Aug 2012 14:32:14 -0300
From: rickbamen em gmail.com
To: asteriskbrasil em listas.asteriskbrasil.org
Subject: Re: [AsteriskBrasil] Integração com Delphi

Vou tentar transformar isso em delphi...Em java a questão ficaria diferente...mas se puder me enviar...manda para o meu email
Ricardo Mendesrickbamen em gmail.com


Em 14 de agosto de 2012 14:25, Ronaldo Sacco <contato em ronaldosacco.com.br> escreveu:

De acordo com a tabela ascii está correto o 13 (nova linha) e o 10 (nova linha). Mas agora não sei te dizer se teu código em Delphi está OK.. 
Tenta substituir o #13 e #10 por '\r' e '\n'.

Um exemplo simples de "reload" em PHP, ficaria:


<?php

$socket = fsockopen("localhost","5038", $errno, $errstr, 100);
fputs($socket, "Action: Login\r\n");
fputs($socket, "ActionID: 1\r\n");

fputs($socket, "UserName: USUARIO\r\n");

fputs($socket, "Secret: SENHA\r\n\r\n");
fputs($socket, "Action: Command\r\n");
fputs($socket, "Command: reload\r\n\r\n");

?>

Tenta utilizar este comando acima, transforma na linguagem Delphi.. O script apenas dá um reload no asterisk, não recebendo nenhum retorno. Se funcionar, você vai saber que pelo menos a comunicação com o asterisk está OK.



Já se eu preciso receber algum retorno, eu utilizo o seguinte comando:
$get=fgets($socket,128);

Tenho um exemplo em Java também. Se quiser me avisa..

[]'s

Em 14 de agosto de 2012 14:10, Ricardo Mendes <rickbamen em gmail.com> escreveu:


Ronaldo...mas nesse trecho aqui  tmpComando := trim(edtComando.Text) + ifthen((groupTerminador.ItemIndex = 0), Acao, Execucao); 



eu determino se o terminado vai ser o de Ação ou Execução que correspondem a Acao = #13 + #10;Execucao = #13 + #10 + #13 + #10;
Será que é errado isso?



Ricardo Mendes
Em 14 de agosto de 2012 14:05, Ronaldo Sacco <contato em ronaldosacco.com.br> escreveu:



Ricardo, talvez este script PHP te ajude:

$socket = fsockopen("localhost","5038", $errno, $errstr, 100);



fputs($socket, "Action: Login\r\n");
fputs($socket, "ActionID: 1\r\n");

fputs($socket, "UserName: $user\r\n");
fputs($socket, "Secret: $pswd\r\n\r\n");
[...]


O segredo deste script está no "\r\n" (retorno de carro e quebra de linha). Sem isso não da retorno. Talvez seja o teu problema.






Em 14 de agosto de 2012 13:58, Ricardo Mendes <rickbamen em gmail.com> escreveu:




Boa Tarde Galera...Ja perguntei aqui na lista mas vamos tentar novamente...Seguindo os conselhos...ja habilei o mananger do asterisk.Tentei utilizar socket com delphi para ver se da resultado, abaixo segue os retornos que tive...





primeiro eu tentei me conectar...--> Tentativa de Conexão ás 14/08/2012 12:38:51----> Asterisk Call Manager/1.1
depois tentei enviar os comandos abaixo separadamente.




--> Comando enviado: Action: Login ás 14/08/2012 12:41:21----> Fim do retorno ás 14/08/2012 12:41:36
--> Comando enviado: UserName: teste ás 14/08/2012 12:42:56




----> Fim do retorno ás 14/08/2012 12:43:16
--> Comando enviado: Secret: abc123 ás 14/08/2012 12:43:50----> Fim do retorno ás 14/08/2012 12:44:43
--> Comando enviado: Action: Command ás 14/08/2012 12:45:02




----> Fim do retorno ás 14/08/2012 12:45:55
--> Comando enviado: Command: sip show peers ás 14/08/2012 12:46:17----> Fim do retorno ás 14/08/2012 12:47:07





A principio nenhum comando me trouxe retorno...e ja não sei mais o que mexer para tentar fazer essa integração com delphi funcionar.
Vou postar trecho do codigo que fiz.






procedure Tfrm_Principal.btnEnviarComandoClick(Sender: TObject);var  tmpComando: string;begin  if (trim(edtComando.Text) <> '') then




  begin    tmpComando := trim(edtComando.Text) + ifthen((groupTerminador.ItemIndex = 0), Acao, Execucao);    ListaComando.Lines.Add('Comando enviado: ' + trim(edtComando.Text) + ' ás ' + FormatDateTime('DD/MM/YYYY HH:MM:SS', now));




    EnviaComando(tmpComando);  end;
end;
procedure Tfrm_Principal.EnviaComando(pComando: string);var  tmpRetorno: string;




begin
  ConectaSocket.SendString(pComando);
  repeat    tmpRetorno := ConectaSocket.RecvPacket(StrToIntDef(edtTimeOut.text, 2000));    memoRetorno.Lines.Add(trim(tmpRetorno));




  until tmpRetorno = '';
  memoRetorno.Lines.Add('Fim do retorno ás ' + FormatDateTime('DD/MM/YYYY HH:MM:SS', now));  memoRetorno.Lines.Add(StringOfChar('-', 50));





  edtComando.Clear;  groupTerminador.ItemIndex := 0;end;

Se alguem puder me ajudar a tentar fazer um simples exemplo dessa conexão eu agradeço.





Saudações.
Ricardo Mendes


_______________________________________________

KHOMP Inovação: External Board Series

Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH.

Tenha a External Series Experience na sua aplicação. Visite www.khomp.com

_______________________________________________

DIGIVOICE  Fabricante de Placas de Voz e Channel Bank

20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM

Centro Treinamento - Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br

________

YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado.

email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011

______________________________________________

Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org






-- 

Atenciosamente,
Ronaldo Sacco
(54) 9174-8840



Bacharel em Ciência da Computação








_______________________________________________

KHOMP Inovação: External Board Series

Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH.

Tenha a External Series Experience na sua aplicação. Visite www.khomp.com

_______________________________________________

DIGIVOICE  Fabricante de Placas de Voz e Channel Bank

20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM

Centro Treinamento - Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br

________

YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado.

email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011

______________________________________________

Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org






_______________________________________________

KHOMP Inovação: External Board Series

Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH.

Tenha a External Series Experience na sua aplicação. Visite www.khomp.com

_______________________________________________

DIGIVOICE  Fabricante de Placas de Voz e Channel Bank

20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM

Centro Treinamento - Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br

________

YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado.

email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011

______________________________________________

Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org




-- 

Atenciosamente,
Ronaldo Sacco
(54) 9174-8840

Bacharel em Ciência da Computação






_______________________________________________

KHOMP Inovação: External Board Series

Módulos de 1/2 rack e 1U para todas as interfaces e soluções Asterisk e FreeSWITCH.

Tenha a External Series Experience na sua aplicação. Visite www.khomp.com

_______________________________________________

DIGIVOICE  Fabricante de Placas de Voz e Channel Bank

20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM

Centro Treinamento - Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br

________

YEALINK: Telefones IP e VídeoPhones IP com o melhor custo/benefício do mercado.

email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011

______________________________________________

Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org




_______________________________________________
KHOMP Inova��o: External Board Series
M�dulos de 1/2 rack e 1U para todas as interfaces e solu��es Asterisk e FreeSWITCH.
Tenha a External Series Experience na sua aplica��o. Visite�www.khomp.com
_______________________________________________
DIGIVOICE  Fabricante de Placas de Voz e Channel Bank
20 anos de experi�ncia com E1(R2/ISDN), FXS, FXO e GSM
Centro Treinamento - Curso de PABX IP -  Asterisk  - Site  www.digivoice.com.br
________
YEALINK: Telefones IP e V�deoPhones IP com o melhor custo/benef�cio do mercado.
email: yealink em commlogik.com.br | www.commlogik.com.br | (11) 5503-1011
______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org 		 	   		  
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20120815/f9cf2f6e/attachment-0001.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil