[AsteriskBrasil] Integração com Delphi
Ricardo Mendes
rickbamen em gmail.com
Terça Agosto 14 14:32:14 BRT 2012
Vou tentar transformar isso em delphi...
Em java a questão ficaria diferente...mas se puder me enviar...manda para o
meu email
Ricardo Mendes
rickbamen 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
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20120814/ecac80f2/attachment.htm
Mais detalhes sobre a lista de discussão AsteriskBrasil