Rodrigo
Faz um teste ai coloca a seguinte linha no inicio do seu arquivo set_time_limit(0); // tira a limitação do tempo de execução do php Vandeir Aniceto Pinheiro Tecnologia da Informação _____ De: asteriskbrasil-boun...@listas.asteriskbrasil.org [mailto:asteriskbrasil-boun...@listas.asteriskbrasil.org] Em nome de Carlos Eduardo Enviada em: segunda-feira, 20 de julho de 2009 10:09 Para: asteriskbrasil@listas.asteriskbrasil.org Assunto: [AsteriskBrasil] Res: função fsockopen() para se conectar a CLI? Bom dia a todos. Rodrigo Obrigado pela ajuda, mas ainda não funcionou, como eu disse anteriormente quando uso o while é como se entrrasse me um loop "infinito", segue o erro: Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/asterisk/teste_retorno_cli.php on line 34 segue a linha: while(!$versionok){ segue uma parte do codigo: fputs ($socket, "Action: command\r\n"); fputs ($socket, "Command: core show version\r\n\r\n"); while(!$versionok){ $version .= fread($socket,8192); if(strpos($version, "Asterisk")){ $pos = strpos($version, "Asterisk"); $version = substr($version, $pos); $pos_end = strpos($version, "\n"); $version = substr($version, 0, $pos_end); $versionok = 1; _____ De: Rodrigo Vian <lis...@porttaltecnologia.com.br> Para: asteriskbrasil@listas.asteriskbrasil.org Enviadas: Sexta-feira, 17 de Julho de 2009 17:45:12 Assunto: Re: [AsteriskBrasil] função fsockopen() para se conectar a CLI Segue um exemplo: $errno=0 ; $errstr=0 ; $server="localhost"; $port=5038; $username="usuario"; $password="senha"; $socket = fsockopen ($server, $port, $errno, $errstr, 20); if (!$socket) {        echo "Nao foi possivel connect no servidor Asterisk. Cheque se Asterisk manager esta ativo - /etc/asterisk/manager.conf\r\n";        exit(); } else {        stream_set_blocking($socket, 0);        fputs ($socket, "Action: login\r\n");        fputs ($socket, "Username: {$username}\r\n");        fputs ($socket, "Secret: {$password}\r\n");        fputs ($socket, "Events: off\r\n\r\n"); } while(1){        $log .= fread($socket,8192);        if(strpos($log, "Message: Authentication failed")){                echo "Nao foi possivel connect no servidor Asterisk. Cheque se Asterisk manager esta ativo - /etc/asterisk/manager.conf\r\n";                exit();        }        if(strpos($log, "Message: Authentication accepted")){                break 1;        } fputs ($socket, "Action: command\r\n"); fputs ($socket, "Command: core show version\r\n\r\n"); while(!$versionok){        $version .= fread($socket,8192);        if(strpos($version, "Asterisk")){                $pos = strpos($version, "Asterisk");                $version = substr($version, $pos);                $pos_end = strpos($version, "\n");                $version = substr($version, 0, $pos_end);                $versionok = 1;        } } Qualquer clica aqui pra te ajudar: http://www.voip-info.org/wiki/view/Asterisk+manager+Example:+PHP Espero ter ajudado... Abraços Carlos Eduardo escreveu: Boa tarde a todos da Lista  Sou novato com PHP, estou tentando me conectar a CLI e executar o comando database show e escrever o resultado na pagina web, Estou usando a seguinte função em uma pagina php:  $socket = fsockopen("192.168.0.215","1234");  fputs($socket, "Action: Login\r\n");  fputs($socket, "UserName: user\r\n");  fputs($socket, "Secret: senha\r\n\r\n");  fputs($socket, "Action: Command\r\n");  fputs($socket, "Command: database show\r\n\r\n");  porem na hora de escrever o resultado se eu uso o while entra em um loop 'infinito'  while (!feof($socket)) {  echo fgets($socket, 128);  }  consegui escrever porem dessa forma: fgets($socket,128);  $resp01 = fread($socket, 8192);  $resp01 = fread($socket, 8192);  $resp01 = fread($socket, 8192);  $resp01 = fread($socket, 8192);         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    $respo = split(" :",$resp01);         echo $respo[0] . "<br>";         echo $respo[1] . "<br>";         echo $respo[2] . "<br>";         echo $respo[3] . "<br>";  $resp01 = fread($socket, 8192);   fclose($socket);   o que eu preciso é escrever na tela os ramais que estão registrados,  Desde já obrigado pela força. _____ Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 10 <http://br.rd.yahoo.com/mail/taglines/mail/*http:/br.maisbuscados.yahoo.com/> - Celebridades <http://br.rd.yahoo.com/mail/taglines/mail/*http:/br.maisbuscados.yahoo.com/celebridades/> - Música <http://br.rd.yahoo.com/mail/taglines/mail/*http:/br.maisbuscados.yahoo.com/m%C3%BAsica/> - Esportes <http://br.rd.yahoo.com/mail/taglines/mail/*http:/br.maisbuscados.yahoo.com/esportes/> _____ _______________________________________________ Openmoko Freerunner, primeiro telefone open source, disponÃvel no Brasil rodando o Android da Google. http://www.neodroid.com <http://www.neodroid.com/> Compre uma camiseta da AsteriskBrasil.org! http://www.voipmania.com.br <http://www.voipmania.com.br/> 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 AsteriskBrasil@listas.asteriskbrasil.org http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil Rodrigo S. Vian Analista TI Porttal Tecnologia Soluções em TI & Telecom http://www.porttaltecnologia.com.br phone:55+19+3542-9667 mobile:55+19+7808-5121 nextel:55*89*25546 |-- Antes de Imprimir, pense em sua responsabilidade com o Meio Ambiente --| _____ Veja quais são os assuntos do momento no Yahoo! + Buscados: Top <http://br.rd.yahoo.com/mail/taglines/mail/*http:/br.maisbuscados.yahoo.com/> 10 - Celebridades <http://br.rd.yahoo.com/mail/taglines/mail/*http:/br.maisbuscados.yahoo.com/celebridades/> - Música <http://br.rd.yahoo.com/mail/taglines/mail/*http:/br.maisbuscados.yahoo.com/m%C3%BAsica/> - Esportes <http://br.rd.yahoo.com/mail/taglines/mail/*http:/br.maisbuscados.yahoo.com/esportes/>
_______________________________________________ Openmoko Freerunner, primeiro telefone open source, disponível no Brasil rodando o Android da Google. http://www.neodroid.com Compre uma camiseta da AsteriskBrasil.org! http://www.voipmania.com.br 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 AsteriskBrasil@listas.asteriskbrasil.org http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil