[AsteriskBrasil] Integração com Delphi
Ronaldo Sacco
contato em ronaldosacco.com.br
Terça Agosto 14 14:05:55 BRT 2012
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
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20120814/916d1cb6/attachment.htm
Mais detalhes sobre a lista de discussão AsteriskBrasil