Пример #1
0
             $userTimeout[$queue['USER_ID']] = true;
             CVoxImplantMain::SendPullEvent(array('COMMAND' => 'timeout', 'USER_ID' => $queue['USER_ID'], 'CALL_ID' => $call['CALL_ID'], 'MARK' => 'timeout_hit_3'));
         }
         if ($call['TRANSFER_USER_ID'] > 0) {
             $userTimeout[$call['TRANSFER_USER_ID']] = true;
             CVoxImplantTransfer::SendPullEvent(array('COMMAND' => 'timeoutTransfer', 'USER_ID' => $call['TRANSFER_USER_ID'], 'CALL_ID' => $call['CALL_ID']));
         }
         if ($call['PORTAL_USER_ID'] > 0 && !$userTimeout[$call['PORTAL_USER_ID']]) {
             $userTimeout[$call['PORTAL_USER_ID']] = true;
             CVoxImplantMain::SendPullEvent(array('COMMAND' => 'timeout', 'USER_ID' => $call['PORTAL_USER_ID'], 'CALL_ID' => $call['CALL_ID'], 'MARK' => 'timeout_hit_4'));
         }
         if ($call['USER_ID'] > 0 && !$userTimeout[$call['USER_ID']]) {
             CVoxImplantMain::SendPullEvent(array('COMMAND' => 'timeout', 'USER_ID' => $call['USER_ID'], 'CALL_ID' => $call['CALL_ID'], 'MARK' => 'timeout_hit_5'));
         }
     } else {
         CVoxImplantMain::SendPullEvent(array('COMMAND' => 'timeout', 'USER_ID' => $params['USER_ID'], 'CALL_ID' => $params['CALL_ID'], 'MARK' => 'timeout_hit_6'));
     }
     CVoxImplantHistory::WriteToLog($call, 'PORTAL HANGUP');
     echo json_encode(array('result' => 'OK'));
 } else {
     if ($params["COMMAND"] == "GetNextAction") {
         if ($params['QUEUE_TYPE'] == CVoxImplantConfig::QUEUE_TYPE_ALL) {
             $result = CVoxImplantIncoming::GetQueue(array('SEARCH_ID' => $params['PHONE_NUMBER'], 'CALL_ID' => $params['CALL_ID'], 'CALLER_ID' => $params['CALLER_ID'], 'LAST_TYPE_CONNECT' => $params['LAST_TYPE_CONNECT'], 'LOAD_QUEUE' => 'N', 'SEND_INVITE' => 'N'));
             CVoxImplantHistory::WriteToLog($result, 'GET NEXT ACTION - QUEUE');
         } else {
             $result = CVoxImplantIncoming::GetNextAction(array('SEARCH_ID' => $params['PHONE_NUMBER'], 'CALL_ID' => $params['CALL_ID'], 'CALLER_ID' => $params['CALLER_ID'], 'LAST_USER_ID' => $params['LAST_USER_ID'], 'LAST_TYPE_CONNECT' => $params['LAST_TYPE_CONNECT'], 'LAST_ANSWER_USER_ID' => $params['LAST_ANSWER_USER_ID'], 'EXCLUDE_USERS' => $excludeUsers));
             CVoxImplantHistory::WriteToLog($result, 'GET NEXT ACTION');
         }
         echo json_encode($result);
     } else {
         if ($params["COMMAND"] == "GetNextInQueue") {