Esempio n. 1
0
require 'com/Database.php';
//require ('com/IfByPhone_Util.php');
$job_id = $_POST['job_id'];
$p_t = $_POST['p_t'];
// If the job_id was skipped the IVR sends 'NA' and that will generate an error in the database call.
// This is caused by a hangup without entering information.  Check for this first and exit without logging an error.
if ($job_id == 'NA') {
    Database::logMessage('Hangup without job number with passthrough (' . $p_t . ')');
    exit;
}
try {
    $conn = Database::getDB();
    $results = $conn->query("CALL verify_job('{$job_id}',@job_name,@job_pk_id,@isValid)");
    $results = $conn->query("SELECT @job_name,@job_pk_id,@isValid");
    foreach ($results as $result) {
        if (!$result["@isValid"]) {
            // for invalid combination
            // 1/29/13 UPDATE: must pass through data because employee information has already been verified
            echo "<action>\n\t\t\t\t\t<app>survo</app>\n\t\t\t\t\t\t<parameters>\n\t\t\t\t\t\t\t<id>362471</id>\n\t\t\t\t\t\t\t<p_t>" . $p_t . " </p_t>\n\t\t\t\t\t\t</parameters>\n\t\t\t\t\t</action>";
        } else {
            // for valid combination
            $name_clean = IfByPhone_Util::removeInvalidChar($result["@job_name"]);
            $job_pk_id = $result["@job_pk_id"];
            echo "<action>\n\t\t\t\t\t<app>survo</app>\n\t\t\t\t\t\t<parameters>\n\t\t\t\t\t\t\t<id>362481</id>\n\t\t\t\t\t\t\t<user_parameters>\n\t\t\t\t\t\t\t\t<job_name>" . $name_clean . "</job_name>\n\t\t\t\t\t\t\t</user_parameters>\n\t\t\t\t\t\t\t<p_t>" . $p_t . "||job_id|" . $job_id . "||company|" . $name_clean . "||job_pk_id|" . $job_pk_id . " </p_t>\n\t\t\t\t\t\t</parameters>\n\t\t\t\t\t</action>";
        }
    }
} catch (PDOException $e) {
    Database::logError('verify_job', $e);
    Database::sendToIvrError();
}
$conn = null;
Esempio n. 2
0
            echo "<action>\n\t\t\t\t\t<app>survo</app>\n\t\t\t\t\t\t<parameters>\n\t\t\t\t\t\t\t<id>362191</id>\n\t\t\t\t\t\t</parameters>\n\t\t\t\t\t</action>";
        } else {
            if (!$result["@ivrAccess"] || !$result["@isActive"]) {
                // for IVR access not authorized
                echo "<action>\n\t\t\t\t\t<app>survo</app>\n\t\t\t\t\t\t<parameters>\n\t\t\t\t\t\t\t<id>397881</id>\n\t\t\t\t\t\t</parameters>\n\t\t\t\t\t</action>";
            } else {
                $employee_id = $result["@employee_pkID"];
                $employee_name = $result["@employee_name"];
                // for valid combination, check to see if there is an open job
                $open_event_check = $conn->query("CALL proc_checkForOpenEvent('{$employee_id}', @event_pk_id, @serviceCategory,\n\t\t\t@name, @survo, @job_pk_id)");
                $open_event_check = $conn->query("SELECT @event_pk_id, @serviceCategory, @name, @survo, @job_pk_id");
                // Create instance of Utility to clean data
                foreach ($open_event_check as $checks) {
                    if ($checks["@event_pk_id"] != "0") {
                        // this branch reflects a valid employee, with an open job which needs to be closed
                        // Remove invalid characters from the @name field
                        $name_clean = IfByPhone_Util::removeInvalidChar($checks["@name"]);
                        echo "<action>\n\t\t\t\t\t\t<app>survo</app>\n\t\t\t\t\t\t\t<parameters>\n\t\t\t\t\t\t\t\t<id>" . $checks["@survo"] . "</id>\n\t\t\t\t\t\t\t\t<user_parameters>\n\t\t\t\t\t\t\t\t\t<name>" . $name_clean . "</name>\n\t\t\t\t\t\t\t\t</user_parameters>\n\t\t\t\t\t\t\t\t<p_t>employee_id|" . $employee_id . "||event_id|" . $checks["@event_pk_id"] . "||serviceCategory|" . $checks["@serviceCategory"] . "||company|" . $name_clean . "||employee_name|" . $employee_name . "||job_pk_id|" . $checks["@job_pk_id"] . "</p_t>\n\t\t\t\t\t\t\t</parameters>\n\t\t\t\t\t\t</action>";
                    } else {
                        // this branch reflects a valid employee, with no jobs open
                        echo "<action>\n\t\t\t\t\t\t\t<app>survo</app>\n\t\t\t\t\t\t\t\t<parameters>\n\t\t\t\t\t\t\t\t\t<id>359731</id>\n\t\t\t\t\t\t\t\t\t<p_t>employee_id|" . $employee_id . "||employee_name|" . $employee_name . "</p_t>\n\t\t\t\t\t\t\t\t</parameters>\n\t\t\t\t\t\t\t</action>";
                    }
                }
            }
        }
    }
} catch (PDOException $e) {
    Database::logError('verify_employee', $e);
    Database::sendToIvrError();
}
$conn = null;