Exemple #1
0
function queue_waiting_checkStatus($module_name, $smarty, $sDirLocalPlantillas, $oPaloConsola)
{
    $respuesta = array();
    ignore_user_abort(true);
    set_time_limit(0);
    $sModoEventos = getParameter('serverevents');
    $bSSE = !is_null($sModoEventos) && $sModoEventos;
    if ($bSSE) {
        Header('Content-Type: text/event-stream');
        printflush("retry: 1\n");
    } else {
        Header('Content-Type: application/json');
    }
    $flag = array();
    global $arrConf;
    $oQueueStatus = new queue_waiting();
    $oQueueStatus->callcenter_db_connect($arrConf['cadena_dsn']);
    $iTimeoutPoll = PaloSantoConsola::recomendarIntervaloEsperaAjax();
    do {
        $iTimestampInicio = time();
        session_commit();
        while (connection_status() == CONNECTION_NORMAL && time() - $iTimestampInicio < $iTimeoutPoll) {
            $respuesta = $oQueueStatus->showQueue();
            //if (compareQueueArr($respuesta,$flag)){
            if (count($respuesta) != count($flag)) {
                $flag = $respuesta;
                jsonflush($bSSE, $respuesta);
                break;
            }
            usleep(1000);
        }
        //$respuesta = array();
    } while ($bSSE && connection_status() == CONNECTION_NORMAL);
    $oQueueStatus->callcenter_db_disconnect();
}
Exemple #2
0
<?php

$arrConf['cadena_dsn'] = "mysql://*****:*****@localhost/call_center";
require "queue_waiting2.class.php";
$o = new queue_waiting();
$o->callcenter_db_connect($arrConf['cadena_dsn']);
var_dump($o->showQueue());