Add Fax Queue TX Email Variables (#6460)
* Add db field to v_fax_queue to link to fax log * Add fax_duration field to v_fax_logs Add fax duration to db to allow for logging of this data for fax email templates. * Add new email variables to fax send * Fix some logging variables and fax_log_uuid Added back some missing session variables for the fax log. Also update the email queue db field with the fax_log_uuid to allow us to add variables to the fax email templates later. * Update hangup_tx.lua
This commit is contained in:
@@ -122,6 +122,8 @@
|
||||
fax_success = env:getHeader("fax_success");
|
||||
fax_result_text = env:getHeader("fax_result_text");
|
||||
fax_local_station_id = env:getHeader("fax_local_station_id");
|
||||
fax_image_resolution = env:getHeader("fax_image_resolution");
|
||||
fax_image_size = env:getHeader("fax_image_size");
|
||||
fax_ecm_used = env:getHeader("fax_ecm_used");
|
||||
fax_uri = env:getHeader("fax_uri");
|
||||
fax_extension_number = env:getHeader("fax_extension_number");
|
||||
@@ -133,9 +135,11 @@
|
||||
bridge_hangup_cause = env:getHeader("bridge_hangup_cause");
|
||||
fax_result_code = env:getHeader("fax_result_code");
|
||||
fax_remote_station_id = env:getHeader("fax_remote_station_id");
|
||||
fax_document_transferred_pages = env:getHeader("fax_document_transferred_pages");
|
||||
fax_document_total_pages = env:getHeader("fax_document_total_pages");
|
||||
hangup_cause_q850 = tonumber(env:getHeader("hangup_cause_q850"));
|
||||
fax_file = env:getHeader("fax_file");
|
||||
fax_duration = env:getHeader("billsec");
|
||||
|
||||
--prevent nil errors
|
||||
if (fax_file == nil) then
|
||||
@@ -223,15 +227,6 @@
|
||||
fax_file_name = array[count(array)];
|
||||
end
|
||||
|
||||
--update the email queue status
|
||||
if (fax_success == '1') then
|
||||
sql = "update v_fax_queue ";
|
||||
sql = sql .. "set fax_status = :fax_status ";
|
||||
sql = sql .. "where fax_queue_uuid = :fax_queue_uuid ";
|
||||
local params = {fax_queue_uuid = fax_queue_uuid, fax_status = fax_status}
|
||||
dbh:query(sql, params);
|
||||
end
|
||||
|
||||
--add to fax logs
|
||||
sql = "insert into v_fax_logs ";
|
||||
sql = sql .. "(";
|
||||
@@ -267,6 +262,9 @@
|
||||
if (fax_uri ~= nil) then
|
||||
sql = sql .. "fax_uri, ";
|
||||
end
|
||||
if (fax_duration ~= nil) then
|
||||
sql = sql .. "fax_duration, ";
|
||||
end
|
||||
sql = sql .. "fax_date, ";
|
||||
sql = sql .. "fax_epoch ";
|
||||
sql = sql .. ") ";
|
||||
@@ -304,6 +302,9 @@
|
||||
if (fax_uri ~= nil) then
|
||||
sql = sql .. ":fax_uri, ";
|
||||
end
|
||||
if (fax_duration ~= nil) then
|
||||
sql = sql .. ":fax_duration, ";
|
||||
end
|
||||
if (database["type"] == "sqlite") then
|
||||
sql = sql .. ":fax_date, ";
|
||||
else
|
||||
@@ -328,14 +329,25 @@
|
||||
fax_bad_rows = fax_bad_rows;
|
||||
fax_transfer_rate = fax_transfer_rate;
|
||||
fax_uri = fax_uri;
|
||||
fax_duration = fax_duration;
|
||||
fax_date = os.date("%Y-%m-%d %X");
|
||||
fax_time = os.time();
|
||||
};
|
||||
|
||||
if (debug["sql"]) then
|
||||
freeswitch.consoleLog("notice", "[fax] SQL: " .. sql .. "; params:" .. json.encode(params) .. "\n");
|
||||
end
|
||||
dbh:query(sql, params);
|
||||
|
||||
--update the email queue status
|
||||
if (fax_success == '1') then
|
||||
sql = "update v_fax_queue ";
|
||||
sql = sql .. "set fax_status = :fax_status, fax_log_uuid = :fax_log_uuid ";
|
||||
sql = sql .. "where fax_queue_uuid = :fax_queue_uuid ";
|
||||
local params = {fax_queue_uuid = fax_queue_uuid, fax_status = fax_status, fax_log_uuid = uuid}
|
||||
dbh:query(sql, params);
|
||||
end
|
||||
|
||||
--prepare base64
|
||||
if (storage_type == "base64") then
|
||||
--include the file io
|
||||
|
||||
Reference in New Issue
Block a user