<div>Sua pergunta ficou confusa.</div>
<div> </div>
<div>Mas o Manager porta 5038 ela abre o socket para vc, uma vez lá dentro conectado vc pode executar qualquer comando disponivel pela CLI&gt; !!</div>
<div> </div>
<div>Olha só o que seu amigo fez mandou um socket para o ip do manager na porta 5038 e depois mandou Action: Login\r\nUsername: root\r\nSecret: senha\r\nActionID: 1\r\n\r\n</div>
<div> </div>
<div>Repare no \r\n no fim de cada parametro isso nada mais é do q o &quot;Enter&quot; por final ele da dois &quot;Enters&quot; \r\n\r\n e pronto vc esta logado no manager via socket nao teria como ser de outra maneira !!!</div>

<div> </div>
<div>uma vez conectado vc pode enviar comandos qualquer comando exemplos que eu tenho feito aqui olha !!</div>
<div> </div>
<div>                  self.socket.send(&#39;Action: Command\r\n&#39;)<br>                  self.socket.send(&#39;Command: sip show peer 668\r\n\r\n&#39;)<br></div>
<div>Exemplo feito em Pythom repare na vc envoca o Action: Command depois dele é só vc dar o comando q vc quiser dando um &quot;Command:&quot; !!!</div>
<div> </div>
<div>exemplo em Perl q também fiz aqui</div>
<div> </div>
<div><span lang="PT-BR">
<p>$tn-&gt;print(&quot;Action: Command\n\n&quot;);</p>
<p>$tn-&gt;print(&quot;Command: sip show peer 668\r\n\r\n&quot;);</p>
<p> </p>
<p> </p>
<p>Tudo tem a mesma lógica em C, Delphi ou java !!</p>
<p> </p>
<p>Att,</p>
<p> </p>
<p>Eng Eder de Souza</p></span></div>
<div> </div>
<div> </div>
<div><br> </div>
<div class="gmail_quote">2009/11/18 <span dir="ltr">&lt;<a href="mailto:brunoantognolli@email.com">brunoantognolli@email.com</a>&gt;</span><br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote"><font color="black" size="2" face="arial">
<div>Pessoal, bom dia!</div>
<div> </div>
<div>Há algum tempo, perguntei na lista como fazer o asterisk executar um comando pelo java.</div>
<div>Com a ajuda de vcs, principalmente do Éder consegui fazer o código e postei ele aqui no fórum.</div>
<div> </div>
<div>Porém surgiu uma outra pergunta/dúvida, seria possível eu executar comandos do asterisk através de Socket?</div>
<div> </div>
<div>Eu sei que através de Socket consigo conectar no servidor e executar comandos, a dúvida é se eu consigo conectar no servidor, acessar o &quot;rasterisk&quot; e enviar o comando necessário.</div>
<div> </div>
<div>Sería necessário conectar no Manager para executar comandos ou somente pelo socket consigo enviar comandos dentro do rasterisk? </div>
<div> </div>
<div>Abaixo tenho uma classe que um amigo desenvolveu em .NET que está tentando fazer isso, (se não for possível, já me avisem, por favor) </div>
<div> </div>
<div> </div>
<div> </div>
<div>public class SendMessage<br>    {<br>        public static void Enviar(string codigoArea, string celular, string mensagem)<br>        {<br>            // Connect to the asterisk server. <br>            Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);<br>
            IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Parse(&quot;192.168.xx.xx&quot;), 22);<br>            clientSocket.Connect(serverEndPoint);</div>
<div>            // Login to the server; manager.conf needs to be setup with matching credentials. <br>            clientSocket.Send(Encoding.ASCII.GetBytes(&quot;Action: Login\r\nUsername: root\r\nSecret: senha\r\nActionID: 1\r\n\r\n&quot;));</div>

<div>            // Enviar mensagem<br>            //clientSocket.Send(Encoding.ASCII.GetBytes(&quot;dgv send sms 1496832521 &#39;teste&#39;&quot;));</div>
<div>            int bytesRead = 0;</div>
<div>            do<br>            {<br>                byte[] buffer = new byte[1024];<br>                bytesRead = clientSocket.Receive(buffer);</div>
<div>                //Console.WriteLine(bytesRead + &quot; bytes from asterisk server.&quot;); <br>                <br>                string response = Encoding.ASCII.GetString(buffer, 0, bytesRead);<br>                Console.WriteLine(response);</div>

<div>                if (Regex.Match(response, &quot;Message: Authentication accepted&quot;, RegexOptions.IgnoreCase).Success)<br>                {<br>                    // Send a ping request the asterisk server will send back a pong response. <br>
                    clientSocket.Send(Encoding.ASCII.GetBytes(&quot;Action: Ping\r\nActionID: 2\r\n\r\n&quot;));<br>                }<br>            } while (bytesRead != 0);</div>
<div>            Console.WriteLine(&quot;Connection to server lost.&quot;);<br>            Console.ReadLine();<br>        }<br>    }</div>
<div> </div>
<div>Att,<br>Bruno</div></font><br>_______________________________________________<br>        <a href="http://www.voipmania.com.br/" target="_blank">http://www.voipmania.com.br</a><br>Telefone IP sem fio Gigaset A580IP por 6 x R$59,90.<br>
        Promoção por tempo limitado!<br>_______________________________________________<br>Lista de discussões AsteriskBrasil.org<br><a href="mailto:AsteriskBrasil@listas.asteriskbrasil.org">AsteriskBrasil@listas.asteriskbrasil.org</a><br>
<a href="http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil" target="_blank">http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil</a><br></blockquote></div><br>