You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php |
|
|
|
|
|
include_once 'util/util.php'; |
|
|
$debugSck = 0; |
|
|
|
|
|
function ConnectSck($host, $porta) { |
|
|
$timeout = 10; |
|
|
$errno = ''; |
|
|
$errstr = ''; |
|
|
$socket = fsockopen($host, $porta, $errno, $errstr, $timeout); |
|
|
|
|
|
if (!$socket) { |
|
|
GeraExcept("N<EFBFBD>o foi poss<EFBFBD>vel conectar ao servidor! Erro: [$errno] [$errstr]\n"); |
|
|
} |
|
|
|
|
|
return $socket; |
|
|
} |
|
|
|
|
|
function ReadSckl($socket, $endCmd = array()) { |
|
|
$str = ''; |
|
|
$buffer = ''; |
|
|
|
|
|
if (!$socket) { |
|
|
GeraExcept("N<EFBFBD>o <EFBFBD> poss<EFBFBD>vel ler o socket! Socket inv<EFBFBD>lido\n"); |
|
|
} |
|
|
|
|
|
while (!feof($socket)) { |
|
|
$str = trim(@fgets($socket)); |
|
|
$buffer .= $str; |
|
|
|
|
|
if (array_search($str, $endCmd)) { |
|
|
return $buffer; |
|
|
} |
|
|
} |
|
|
|
|
|
return $buffer; |
|
|
} |
|
|
|
|
|
function DisconnectSck($socket) { |
|
|
fclose($socket); |
|
|
} |
|
|
|
|
|
function WriteSck($socket, $value, $function = '', $logOnly = false) { |
|
|
global $debugSck; |
|
|
$write = 0; |
|
|
if (!$socket) { |
|
|
GeraExcept("N<EFBFBD>o <EFBFBD> poss<EFBFBD>vel escrever no socket! Socket inv<EFBFBD>lido\n"); |
|
|
} |
|
|
|
|
|
if (!$logOnly) { |
|
|
$write = fwrite($socket, $value, strlen($value)); |
|
|
} |
|
|
|
|
|
if ($debugSck) { |
|
|
$path = "/var/log/asterisk/log_sck.log"; |
|
|
if ($function) { |
|
|
GravaLog("\n[$function]\n", $path); |
|
|
} |
|
|
|
|
|
if ($value) { |
|
|
GravaLog($value, $path); |
|
|
} |
|
|
} |
|
|
|
|
|
return $write; |
|
|
} |
|
|
|
|
|
?>
|
|
|
|