<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Segue um exemplo:<br>
<br>
$errno=0 ;<br>
$errstr=0 ;<br>
<br>
$server="localhost";<br>
$port=5038;<br>
$username="usuario";<br>
$password="senha";<br>
<br>
$socket = fsockopen ($server, $port, $errno, $errstr, 20);<br>
if (!$socket) {<br>
       echo "Nao foi possivel connect no servidor Asterisk. Cheque se
Asterisk manager esta ativo - /etc/asterisk/manager.conf\r\n";<br>
       exit();<br>
} else {<br>
       stream_set_blocking($socket, 0);<br>
       fputs ($socket, "Action: login\r\n");<br>
       fputs ($socket, "Username: {$username}\r\n");<br>
       fputs ($socket, "Secret: {$password}\r\n");<br>
       fputs ($socket, "Events: off\r\n\r\n");<br>
}<br>
while(1){<br>
       $log .= fread($socket,8192);<br>
       if(strpos($log, "Message: Authentication failed")){<br>
               echo "Nao foi possivel connect no servidor Asterisk.
Cheque se Asterisk manager esta ativo - /etc/asterisk/manager.conf\r\n";<br>
               exit();<br>
       }<br>
       if(strpos($log, "Message: Authentication accepted")){<br>
               break 1;<br>
       }<br>
<br>
<br>
fputs ($socket, "Action: command\r\n");<br>
fputs ($socket, "Command: core show version\r\n\r\n");<br>
while(!$versionok){<br>
       $version .= fread($socket,8192);<br>
       if(strpos($version, "Asterisk")){<br>
               $pos = strpos($version, "Asterisk");<br>
               $version = substr($version, $pos);<br>
               $pos_end = strpos($version, "\n");<br>
               $version = substr($version, 0, $pos_end);<br>
               $versionok = 1;<br>
       }<br>
}<br>
<br>
Qualquer clica aqui pra te ajudar:<br>
<a class="moz-txt-link-freetext" href="http://www.voip-info.org/wiki/view/Asterisk+manager+Example:+PHP">http://www.voip-info.org/wiki/view/Asterisk+manager+Example:+PHP</a><br>
<br>
Espero ter ajudado...<br>
<br>
Abraços<br>
<br>
Carlos Eduardo escreveu:
<blockquote cite="mid:129775.68187.qm@web112509.mail.gq1.yahoo.com"
type="cite">
<style type="text/css"><!-- DIV {margin:0px;} --></style>
<div
style="font-family: times new roman,new york,times,serif; font-size: 12pt;">Boa
tarde a todos da Lista<br>
 <br>
Sou novato com PHP, estou tentando me conectar a CLI e executar o
comando database show e escrever o resultado na pagina web,<br>
Estou usando a seguinte função em uma pagina php:<br>
 <br>
$socket = fsockopen("192.168.0.215","1234");<br>
 fputs($socket, "Action: Login\r\n");<br>
 fputs($socket, "UserName: user\r\n");<br>
 fputs($socket, "Secret: senha\r\n\r\n");<br>
 fputs($socket, "Action: Command\r\n");<br>
 fputs($socket, "Command: database show\r\n\r\n");<br>
 <br>
porem na hora de escrever o resultado se eu uso o while entra em um
loop 'infinito'<br>
 <br>
while (!feof($socket)) { <br>
 echo fgets($socket, 128); <br>
 } <br>
 <br>
consegui escrever porem dessa forma:<br>
<br>
fgets($socket,128);<br>
 $resp01 = fread($socket, 8192);<br>
 $resp01 = fread($socket, 8192);<br>
 $resp01 = fread($socket, 8192);<br>
 $resp01 = fread($socket, 8192);<br>
        echo ($resp01)."<br><br>"; // essa linha é a que
me interessa, só que para eu conseguir escreverr tenho que quebra-lá o
problema é que não sei o tamanho da matriz<br>
   $respo = split(" :",$resp01);<br>
        echo $respo[0] . "<br>";<br>
        echo $respo[1] . "<br>";<br>
        echo $respo[2] . "<br>";<br>
        echo $respo[3] . "<br>";<br>
 $resp01 = fread($socket, 8192);<br>
 <br>
 fclose($socket);<br>
 <br>
 <br>
o que eu preciso é escrever na tela os ramais que estão registrados,<br>
 <br>
Desde já obrigado pela força.<br>
</div>
<br>
<hr size="1">Veja quais são os assuntos do momento no Yahoo! +
Buscados: <a moz-do-not-send="true"
href="http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/">Top
10</a> - <a moz-do-not-send="true"
href="http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/celebridades/">Celebridades</a>
- <a moz-do-not-send="true"
href="http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/m%C3%BAsica/">Música</a>
- <a moz-do-not-send="true"
href="http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/esportes/">Esportes</a>
<pre wrap="">
<hr size="4" width="90%">
_______________________________________________
Openmoko Freerunner, primeiro telefone open source, disponÃvel no Brasil rodando o Android da Google.
<a class="moz-txt-link-freetext" href="http://www.neodroid.com">http://www.neodroid.com</a>
Compre uma camiseta da AsteriskBrasil.org!
<a class="moz-txt-link-freetext" href="http://www.voipmania.com.br">http://www.voipmania.com.br</a>
Acesse o canal IRC de discussão sobre Asterisk em Português Brasileiro na rede Freenode.net: #asterisk-br
_______________________________________________
Lista de discussões AsteriskBrasil.org
<a class="moz-txt-link-abbreviated" href="mailto:AsteriskBrasil@listas.asteriskbrasil.org">AsteriskBrasil@listas.asteriskbrasil.org</a>
<a class="moz-txt-link-freetext" href="http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil">http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil</a></pre>
</blockquote>
<br>
</body>
</html>
Rodrigo S. Vian<BR>Analista TI<BR>Porttal Tecnologia<BR>Soluções em TI & Telecom<BR>http://www.porttaltecnologia.com.br<BR>phone:55+19+3542-9667<BR>mobile:55+19+7808-5121<BR>nextel:55*89*25546<BR><BR>|-- Antes de Imprimir, pense em sua responsabilidade com o Meio Ambiente --|<BR>