Not a member of Pastebin yet?
                        Sign Up,
                        it unlocks many cool features!                    
                - <?php
 - $mdb = "paging";
 - $mhost = "localhost";
 - $mlog = "pageuser";
 - $mpass = "123456";
 - header("Content-type: text/xml");
 - @mysql_connect($mhost, $mlog, $mpass) or die("Could not connect to MySQL server");
 - @mysql_select_db($mdb) or die("Could not select DB mysql");
 - //читаем из бд адреса телефонов в массив $ip. флагом ex отмечены телефоны, участвующие в пейджинге
 - $query = "SELECT * FROM phoneip WHERE ex=1";
 - $res = mysql_query($query) or die(mysql_error());
 - $i = 0;
 - $ip = array();
 - while ($row=mysql_fetch_array($res)) {
 - $ip[$i++] = $row['ip'];
 - }
 - //читаем из бд $log, $pass, $mcastIP, $mcastPort
 - $query = "SELECT * FROM conf";
 - $res = mysql_query($query) or die(mysql_error());
 - $log = mysql_result($res, 0, 'login');
 - $pass = mysql_result($res, 0, 'pass');
 - $mcastIP = mysql_result($res, 0, 'mcastip');
 - $mcastPort = mysql_result($res, 0, 'mcastport');
 - $auth = base64_encode($log.":".$pass);
 - //формируем URI для приема RTP потока
 - $uri = "RTPMRx:$mcastIP:$mcastPort:90";
 - $uri = "<CiscoIPPhoneExecute><ExecuteItem Priority=\"0\" URL=\"".$uri."\"/></CiscoIPPhoneExecute>";
 - $uri = "XML=".urlencode($uri);
 - //заголовки запроса
 - $post = "POST /CGI/Execute HTTP/1.0\r\n";
 - $post .= "Host: $ip\r\n";
 - $post .= "Authorization: Basic $auth\r\n";
 - $post .= "Connection: close\r\n";
 - $post .= "Content-Type: application/x-www-form-urlencoded\r\n";
 - $post .= "Content-Length: ".strlen($uri)."\r\n\r\n";
 - $timeout = 2;
 - $sockets = array();
 - foreach ($ip as $id => $host) {
 - $s = stream_socket_client("$host:80", $errno, $errstr, $timeout,
 - STREAM_CLIENT_ASYNC_CONNECT|STREAM_CLIENT_CONNECT);
 - if ($s) {
 - $sockets[$id] = $s;
 - } else {
 - $res = mysql_query($query) or die(mysql_error());
 - }
 - }
 - while (count($sockets)) {
 - $read = $write = $sockets;
 - $n = stream_select($read, $write, $e = null, $timeout);
 - if ($n > 0) {
 - foreach ($read as $r) {
 - $id = array_search($r, $sockets);
 - $data = fread($r, 8192);
 - if (strlen($data) == 0) {
 - fclose($r);
 - unset($sockets[$id]);
 - }
 - }
 - foreach ($write as $w) {
 - $id = array_search($w, $sockets);
 - fwrite($w, $post.$uri);
 - }
 - } else {
 - break;
 - }
 - }
 - mysql_close();
 - echo "
 - <CiscoIPPhoneText>
 - <Title>Оповещение</Title>
 - <Prompt>Нажмите кнопку Начать</Prompt>
 - <Text>$message</Text>
 - <SoftKeyItem>
 - <Name>Начать</Name>
 - <URL>RTPTx:Stop</URL>
 - <URLDown>RTPMTx:$mcastIP:$mcastPort</URLDown>
 - <Position>1</Position>
 - </SoftKeyItem>
 - <SoftKeyItem>
 - <Name>Выход</Name>
 - <URL>SoftKey:Exit</URL>
 - <URLDown>http://10.1.1.65/page_stop.php</URLDown>
 - <Position>4</Position>
 - </SoftKeyItem>
 - </CiscoIPPhoneText>
 - ";
 - ?>
 
Advertisement
 
                    Add Comment                
                
                        Please, Sign In to add comment