diff --git a/core/databases/app_defaults.php b/core/databases/app_defaults.php index 7c40fae423..dfd247334e 100644 --- a/core/databases/app_defaults.php +++ b/core/databases/app_defaults.php @@ -24,6 +24,22 @@ Mark J Crane */ +global $IS_WINDOWS; + +if ($IS_WINDOWS == null) { + if (stristr(PHP_OS, 'WIN')) { $IS_WINDOWS = true; } else { $IS_WINDOWS = false; } +} + +if (!function_exists('correct_path')) { + function correct_path($p) { + global $IS_WINDOWS; + if ($IS_WINDOWS) { + return str_replace('/', '\\', $p); + } + return $p; + } +} + //proccess this only one time if ($domains_processed == 1) { @@ -113,28 +129,31 @@ if ($domains_processed == 1) { $tmp = "\n"; $tmp .= "--set the variables\n"; if (strlen($_SESSION['switch']['sounds']['dir']) > 0) { - $tmp .= " sounds_dir = [[".$_SESSION['switch']['sounds']['dir']."]];\n"; + $tmp .= correct_path(" sounds_dir = [[".$_SESSION['switch']['sounds']['dir']."]];\n"); } if (strlen($_SESSION['switch']['db']['dir']) > 0) { - $tmp .= " database_dir = [[".$_SESSION['switch']['db']['dir']."]];\n"; + $tmp .= correct_path(" database_dir = [[".$_SESSION['switch']['db']['dir']."]];\n"); } if (strlen($_SESSION['switch']['recordings']['dir']) > 0) { - $tmp .= " recordings_dir = [[".$recordings_dir."]];\n"; + $tmp .= correct_path(" recordings_dir = [[".$recordings_dir."]];\n"); } if (strlen($_SESSION['switch']['storage']['dir']) > 0) { - $tmp .= " storage_dir = [[".$_SESSION['switch']['storage']['dir']."]];\n"; + $tmp .= correct_path(" storage_dir = [[".$_SESSION['switch']['storage']['dir']."]];\n"); } if (strlen($_SESSION['switch']['voicemail']['dir']) > 0) { - $tmp .= " voicemail_dir = [[".$_SESSION['switch']['voicemail']['dir']."]];\n"; + $tmp .= correct_path(" voicemail_dir = [[".$_SESSION['switch']['voicemail']['dir']."]];\n"); } - $tmp .= " php_dir = [[".PHP_BINDIR."]];\n"; + if (strlen($_SESSION['switch']['scripts']['dir']) > 0) { + $tmp .= correct_path(" scripts_dir = [[".$_SESSION['switch']['scripts']['dir']."]];\n"); + } + $tmp .= correct_path(" php_dir = [[".PHP_BINDIR."]];\n"); if (substr(strtoupper(PHP_OS), 0, 3) == "WIN") { $tmp .= " php_bin = \"php.exe\";\n"; } else { $tmp .= " php_bin = \"php\";\n"; } - $tmp .= " document_root = [[".$_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."]];\n"; + $tmp .= correct_path(" document_root = [[".$_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."]];\n"); $tmp .= "\n"; if ((strlen($db_type) > 0) || (strlen($dsn_name) > 0)) { @@ -142,7 +161,7 @@ if ($domains_processed == 1) { $tmp .= " database = {}\n"; $tmp .= " database[\"type\"] = \"".$db_type."\";\n"; $tmp .= " database[\"name\"] = \"".$db_name."\";\n"; - $tmp .= " database[\"path\"] = \"".$db_path."\";\n"; + $tmp .= correct_path(" database[\"path\"] = [[".$db_path."]];\n"); if (strlen($dsn_name) > 0) { $tmp .= " database[\"system\"] = \"odbc://".$dsn_name.":".$dsn_username.":".$dsn_password."\";\n"; @@ -166,19 +185,19 @@ if ($domains_processed == 1) { $tmp .= "--additional info\n"; $tmp .= " domain_count = ".count($_SESSION["domains"]).";\n"; - $tmp .= " temp_dir = [[".$_SESSION['server']['temp']['dir']."]];\n"; + $tmp .= correct_path(" temp_dir = [[".$_SESSION['server']['temp']['dir']."]];\n"); if (isset($_SESSION['domain']['dial_string']['text'])) { $tmp .= " dial_string = \"".$_SESSION['domain']['dial_string']['text']."\";\n"; } $tmp .= "\n"; $tmp .= "--include local.lua\n"; - $tmp .= " dofile(scripts_dir..\"/resources/functions/file_exists.lua\");\n"; + $tmp .= " require(\"resources.functions.file_exists\");\n"; $tmp .= " if (file_exists(\"/etc/fusionpbx/local.lua\")) then\n"; $tmp .= " dofile(\"/etc/fusionpbx/local.lua\");\n"; $tmp .= " elseif (file_exists(\"/usr/local/etc/fusionpbx/local.lua\")) then\n"; $tmp .= " dofile(\"/usr/local/etc/fusionpbx/local.lua\");\n"; $tmp .= " elseif (file_exists(scripts_dir..\"/resources/local.lua\")) then\n"; - $tmp .= " dofile(scripts_dir..\"/resources/local.lua\");\n"; + $tmp .= " require(\"resources.local\");\n"; $tmp .= " end\n"; fwrite($fout, $tmp); unset($tmp); diff --git a/resources/install/scripts/app.lua b/resources/install/scripts/app.lua index 4d6f0c4361..6f90a8b836 100644 --- a/resources/install/scripts/app.lua +++ b/resources/install/scripts/app.lua @@ -25,9 +25,7 @@ --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --get the argv values script_name = argv[0]; diff --git a/resources/install/scripts/app/agent_status/index.lua b/resources/install/scripts/app/agent_status/index.lua index d950f7abe7..abbed2e5a3 100644 --- a/resources/install/scripts/app/agent_status/index.lua +++ b/resources/install/scripts/app/agent_status/index.lua @@ -6,7 +6,7 @@ debug["sql"] = true; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --set the api diff --git a/resources/install/scripts/app/call_block/index.lua b/resources/install/scripts/app/call_block/index.lua index 9ca1d9d8fc..8821a099ef 100644 --- a/resources/install/scripts/app/call_block/index.lua +++ b/resources/install/scripts/app/call_block/index.lua @@ -57,7 +57,7 @@ This method causes the script to get its manadatory arguments directly from the local sql = nil --define the functions - dofile(scripts_dir.."/resources/functions/trim.lua"); + require "resources.functions.trim"; --define the logger function local function logger(level, log, data) @@ -88,7 +88,7 @@ This method causes the script to get its manadatory arguments directly from the --if not cached then get the information from the database if (cache == "-ERR NOT FOUND") then --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --log if not connect @@ -123,7 +123,7 @@ This method causes the script to get its manadatory arguments directly from the else --get from memcache --add the function - dofile(scripts_dir.."/resources/functions/explode.lua"); + require "resources.functions.explode"; --parse the cache array = explode("&", cache); diff --git a/resources/install/scripts/app/conference_center/index.lua b/resources/install/scripts/app/conference_center/index.lua index 5f2a21a919..58d61f10fb 100644 --- a/resources/install/scripts/app/conference_center/index.lua +++ b/resources/install/scripts/app/conference_center/index.lua @@ -37,19 +37,19 @@ debug["sql"] = false; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --prepare the api object api = freeswitch.API(); --general functions - dofile(scripts_dir.."/resources/functions/base64.lua"); - dofile(scripts_dir.."/resources/functions/trim.lua"); - dofile(scripts_dir.."/resources/functions/file_exists.lua"); - dofile(scripts_dir.."/resources/functions/explode.lua"); - dofile(scripts_dir.."/resources/functions/format_seconds.lua"); - dofile(scripts_dir.."/resources/functions/mkdir.lua"); + require "resources.functions.base64"; + require "resources.functions.trim"; + require "resources.functions.file_exists"; + require "resources.functions.explode"; + require "resources.functions.format_seconds"; + require "resources.functions.mkdir"; --get the session variables uuid = session:getVariable("uuid"); @@ -153,7 +153,7 @@ end_epoch = os.time(); --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --get the conference sessions diff --git a/resources/install/scripts/app/conference_center/resources/scripts/start_recording.lua b/resources/install/scripts/app/conference_center/resources/scripts/start_recording.lua index b2a9da42c6..b30412451d 100644 --- a/resources/install/scripts/app/conference_center/resources/scripts/start_recording.lua +++ b/resources/install/scripts/app/conference_center/resources/scripts/start_recording.lua @@ -1,12 +1,10 @@ --get the scripts directory and include the config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --additional includes - dofile(scripts_dir.."/resources/functions/file_exists.lua"); - dofile(scripts_dir.."/resources/functions/trim.lua"); - dofile(scripts_dir.."/resources/functions/mkdir.lua"); + require "resources.functions.file_exists"; + require "resources.functions.trim"; + require "resources.functions.mkdir"; --get the argv values script_name = argv[0]; diff --git a/resources/install/scripts/app/dialplan/index.lua b/resources/install/scripts/app/dialplan/index.lua index 0679747163..fbd3892031 100644 --- a/resources/install/scripts/app/dialplan/index.lua +++ b/resources/install/scripts/app/dialplan/index.lua @@ -19,8 +19,8 @@ -- the Initial Developer. All Rights Reserved. --add functions - dofile(scripts_dir.."/resources/functions/file_exists.lua"); - dofile(scripts_dir.."/resources/functions/trim.lua"); + require "resources.functions.file_exists"; + require "resources.functions.trim"; --set the api object api = freeswitch.API(); diff --git a/resources/install/scripts/app/dialplan/resources/inbound/010_get_domain.lua.noload b/resources/install/scripts/app/dialplan/resources/inbound/010_get_domain.lua.noload index 3493b46377..cbdeefea70 100644 --- a/resources/install/scripts/app/dialplan/resources/inbound/010_get_domain.lua.noload +++ b/resources/install/scripts/app/dialplan/resources/inbound/010_get_domain.lua.noload @@ -32,7 +32,7 @@ end --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --get the cache @@ -64,7 +64,7 @@ else --add the function - dofile(scripts_dir.."/resources/functions/explode.lua"); + require "resources.functions.explode"; --parse the cache array = explode("&", cache); diff --git a/resources/install/scripts/app/event_notify/index.lua b/resources/install/scripts/app/event_notify/index.lua index 68f7002c8e..827ddfe664 100644 --- a/resources/install/scripts/app/event_notify/index.lua +++ b/resources/install/scripts/app/event_notify/index.lua @@ -23,16 +23,8 @@ -- Mark J Crane -- Errol Samuels ---define explode - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end +--define the explode function + require "resources.functions.explode"; --usage --luarun app.lua event_notify internal reboot 1003@domain.fusionpbx.com yealink diff --git a/resources/install/scripts/app/failure_handler/index.lua b/resources/install/scripts/app/failure_handler/index.lua index 038b6f6c96..6e174911ce 100644 --- a/resources/install/scripts/app/failure_handler/index.lua +++ b/resources/install/scripts/app/failure_handler/index.lua @@ -28,9 +28,9 @@ debug["sql"] = false; --include config.lua - dofile(scripts_dir .. "/resources/functions/config.lua"); - dofile(scripts_dir .. "/resources/functions/explode.lua"); - dofile(scripts_dir .. "/resources/functions/trim.lua"); + require "resources.functions.config"; + require "resources.functions.explode"; + require "resources.functions.trim"; --check the missed calls function missed() diff --git a/resources/install/scripts/app/fax/resources/scripts/hangup_rx.lua b/resources/install/scripts/app/fax/resources/scripts/hangup_rx.lua index e7e623d2d9..d70db541e9 100644 --- a/resources/install/scripts/app/fax/resources/scripts/hangup_rx.lua +++ b/resources/install/scripts/app/fax/resources/scripts/hangup_rx.lua @@ -26,33 +26,17 @@ api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --define the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end + require "resources.functions.explode"; --array count - function count(t) - c = 0; - for k,v in pairs(t) do - c = c+1; - end - return c; - end + require "resources.functions.count"; -- set channel variables to lua variables domain_uuid = env:getHeader("domain_uuid"); @@ -68,7 +52,7 @@ end --settings - dofile(scripts_dir.."/resources/functions/settings.lua"); + require "resources.functions.settings"; settings = settings(domain_uuid); storage_type = ""; storage_path = ""; @@ -313,7 +297,7 @@ if (fax_success =="1") then if (storage_type == "base64") then --include the base64 function - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --base64 encode the file local f = io.open(fax_file, "rb"); diff --git a/resources/install/scripts/app/hangup/index.lua b/resources/install/scripts/app/hangup/index.lua index 05d4dd1329..9a77d819cc 100644 --- a/resources/install/scripts/app/hangup/index.lua +++ b/resources/install/scripts/app/hangup/index.lua @@ -25,10 +25,10 @@ debug["sql"] = false; --general functions - dofile(scripts_dir .. "/resources/functions/config.lua"); - dofile(scripts_dir .. "/resources/functions/explode.lua"); - dofile(scripts_dir.."/resources/functions/trim.lua"); - --dofile(scripts_dir.."/resources/functions/file_exists.lua"); + require "resources.functions.config"; + require "resources.functions.explode"; + require "resources.functions.trim"; + -- require "resources.functions.file_exists"; --create the api object api = freeswitch.API(); diff --git a/resources/install/scripts/app/is_local/index.lua b/resources/install/scripts/app/is_local/index.lua index 9d9e06fba5..1fcbf9aaa9 100644 --- a/resources/install/scripts/app/is_local/index.lua +++ b/resources/install/scripts/app/is_local/index.lua @@ -29,18 +29,14 @@ outbound_caller_id_number = session:getVariable("outbound_caller_id_number"); --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --prepare the api object api = freeswitch.API(); ---add the trim function - function trim(s) - if (s) then - return s:gsub("^%s+", ""):gsub("%s+$", "") - end - end +--define the trim function + require "resources.functions.trim"; --get the cache cache = trim(api:execute("memcache", "get app:dialplan:outbound:is_local:" .. destination_number .. "@" .. domain_name)); @@ -84,7 +80,7 @@ end)); else --add the function - dofile(scripts_dir.."/resources/functions/explode.lua"); + require "resources.functions.explode"; --define the array/table and variables local var = {} diff --git a/resources/install/scripts/app/provision/index.lua b/resources/install/scripts/app/provision/index.lua index f0b910f3b7..5eba2c844a 100644 --- a/resources/install/scripts/app/provision/index.lua +++ b/resources/install/scripts/app/provision/index.lua @@ -26,16 +26,8 @@ --set the debug options debug["sql"] = false; ---define explode - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end +--define the explode function + require "resources.functions.explode"; --set the defaults max_tries = 3; @@ -44,13 +36,8 @@ tries = 0; profile = "internal"; ---include config.lua - --scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - --dofile(scripts_dir.."/resources/functions/config.lua"); - --dofile(config()); - --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --answer diff --git a/resources/install/scripts/app/ring_groups/index.lua b/resources/install/scripts/app/ring_groups/index.lua index d375160595..70e1f72ec8 100644 --- a/resources/install/scripts/app/ring_groups/index.lua +++ b/resources/install/scripts/app/ring_groups/index.lua @@ -28,12 +28,12 @@ -- Luis Daniel Lucio Qurioz --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --include functions - dofile(scripts_dir.."/resources/functions/trim.lua"); - dofile(scripts_dir.."/resources/functions/explode.lua"); + require "resources.functions.trim"; + require "resources.functions.explode"; --get the variables domain_name = session:getVariable("domain_name"); @@ -329,16 +329,16 @@ or ring_group_strategy == "sequence" or ring_group_strategy == "rollover") then session:execute("set", "group_confirm_key=exec"); - session:execute("set", "group_confirm_file=lua ".. scripts_dir .."/confirm.lua"); + session:execute("set", "group_confirm_file=lua ".. scripts_dir:gsub('\\','/') .."/confirm.lua"); end --determine confirm prompt if (destination_prompt == nil) then group_confirm = "confirm=false,"; elseif (destination_prompt == "1") then - group_confirm = "group_confirm_key=exec,group_confirm_file=lua ".. scripts_dir .."/confirm.lua,confirm=true,"; + group_confirm = "group_confirm_key=exec,group_confirm_file=lua ".. scripts_dir:gsub('\\','/') .."/confirm.lua,confirm=true,"; elseif (destination_prompt == "2") then - group_confirm = "group_confirm_key=exec,group_confirm_file=lua ".. scripts_dir .."/confirm.lua,confirm=true,"; + group_confirm = "group_confirm_key=exec,group_confirm_file=lua ".. scripts_dir:gsub('\\','/') .."/confirm.lua,confirm=true,"; else group_confirm = "confirm=false,"; end diff --git a/resources/install/scripts/app/ring_groups/resources/scripts/confirm.lua b/resources/install/scripts/app/ring_groups/resources/scripts/confirm.lua index b934862092..ab77b5d0a9 100644 --- a/resources/install/scripts/app/ring_groups/resources/scripts/confirm.lua +++ b/resources/install/scripts/app/ring_groups/resources/scripts/confirm.lua @@ -23,27 +23,17 @@ -- Mark J Crane --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); + require "resources.functions.config"; --set variables max_tries = "3"; digit_timeout = "5000"; ---add a trim function - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end +--define the trim function + require "resources.functions.trim"; ---add the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end +--define the explode function + require "resources.functions.explode"; --get the argv values script_name = argv[0]; diff --git a/resources/install/scripts/app/ring_groups/resources/scripts/monitor.lua b/resources/install/scripts/app/ring_groups/resources/scripts/monitor.lua index 2b54a4a152..36e373685d 100644 --- a/resources/install/scripts/app/ring_groups/resources/scripts/monitor.lua +++ b/resources/install/scripts/app/ring_groups/resources/scripts/monitor.lua @@ -33,21 +33,11 @@ uuid = argv[1]; timeout = argv[2]; ---add a trim function - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end +--define the trim function + require "resources.functions.trim"; ---add the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end +--define the explode function + require "resources.functions.explode"; --prepare the api api = freeswitch.API(); diff --git a/resources/install/scripts/app/toll_allow/index.lua b/resources/install/scripts/app/toll_allow/index.lua index 869add5847..31844e4e69 100644 --- a/resources/install/scripts/app/toll_allow/index.lua +++ b/resources/install/scripts/app/toll_allow/index.lua @@ -26,7 +26,7 @@ --debug debug["toll_type"] = false - dofile(scripts_dir.."/resources/functions/explode.lua"); + require "resources.functions.explode"; --create the api object and get variables api = freeswitch.API() diff --git a/resources/install/scripts/app/voicemail/index.lua b/resources/install/scripts/app/voicemail/index.lua index e0c2383890..056127af3b 100644 --- a/resources/install/scripts/app/voicemail/index.lua +++ b/resources/install/scripts/app/voicemail/index.lua @@ -50,7 +50,7 @@ password_tries = 0; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --set the api @@ -123,7 +123,7 @@ end --settings - dofile(scripts_dir.."/resources/functions/settings.lua"); + require "resources.functions.settings"; settings = settings(domain_uuid); storage_type = ""; storage_path = ""; @@ -200,36 +200,36 @@ end --general functions - dofile(scripts_dir.."/resources/functions/base64.lua"); - dofile(scripts_dir.."/resources/functions/trim.lua"); - dofile(scripts_dir.."/resources/functions/file_exists.lua"); - dofile(scripts_dir.."/resources/functions/explode.lua"); - dofile(scripts_dir.."/resources/functions/format_seconds.lua"); - dofile(scripts_dir.."/resources/functions/mkdir.lua"); - dofile(scripts_dir.."/resources/functions/copy.lua"); + require "resources.functions.base64"; + require "resources.functions.trim"; + require "resources.functions.file_exists"; + require "resources.functions.explode"; + require "resources.functions.format_seconds"; + require "resources.functions.mkdir"; + require "resources.functions.copy"; --voicemail functions - dofile(scripts_dir.."/app/voicemail/resources/functions/on_dtmf.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/get_voicemail_id.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/check_password.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/change_password.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/macro.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/play_greeting.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/record_message.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/record_menu.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/forward_to_extension.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/main_menu.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/listen_to_recording.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/message_waiting.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/send_email.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/delete_recording.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/message_saved.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/return_call.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/menu_messages.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/advanced.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/record_greeting.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/choose_greeting.lua"); - dofile(scripts_dir.."/app/voicemail/resources/functions/record_name.lua"); + require "app.voicemail.resources.functions.on_dtmf"; + require "app.voicemail.resources.functions.get_voicemail_id"; + require "app.voicemail.resources.functions.check_password"; + require "app.voicemail.resources.functions.change_password"; + require "app.voicemail.resources.functions.macro"; + require "app.voicemail.resources.functions.play_greeting"; + require "app.voicemail.resources.functions.record_message"; + require "app.voicemail.resources.functions.record_menu"; + require "app.voicemail.resources.functions.forward_to_extension"; + require "app.voicemail.resources.functions.main_menu"; + require "app.voicemail.resources.functions.listen_to_recording"; + require "app.voicemail.resources.functions.message_waiting"; + require "app.voicemail.resources.functions.send_email"; + require "app.voicemail.resources.functions.delete_recording"; + require "app.voicemail.resources.functions.message_saved"; + require "app.voicemail.resources.functions.return_call"; + require "app.voicemail.resources.functions.menu_messages"; + require "app.voicemail.resources.functions.advanced"; + require "app.voicemail.resources.functions.record_greeting"; + require "app.voicemail.resources.functions.choose_greeting"; + require "app.voicemail.resources.functions.record_name"; --send a message waiting event if (voicemail_action == "mwi") then @@ -318,7 +318,7 @@ freeswitch.consoleLog("notice", "[voicemail] ".. storage_type .. "\n"); --include the base64 function - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --base64 encode the file if (file_exists(voicemail_dir.."/"..voicemail_id.."/msg_"..uuid.."."..vm_message_ext)) then diff --git a/resources/install/scripts/app/voicemail/resources/functions/check_password.lua b/resources/install/scripts/app/voicemail/resources/functions/check_password.lua index 5170fdcab7..b95cf1feae 100644 --- a/resources/install/scripts/app/voicemail/resources/functions/check_password.lua +++ b/resources/install/scripts/app/voicemail/resources/functions/check_password.lua @@ -82,4 +82,3 @@ end end end ---dofile(scripts_dir.."/app/voicemail/resources/functions/check_password.lua"); \ No newline at end of file diff --git a/resources/install/scripts/app/voicemail/resources/functions/choose_greeting.lua b/resources/install/scripts/app/voicemail/resources/functions/choose_greeting.lua index f8611c398a..0e71727c6d 100644 --- a/resources/install/scripts/app/voicemail/resources/functions/choose_greeting.lua +++ b/resources/install/scripts/app/voicemail/resources/functions/choose_greeting.lua @@ -96,7 +96,7 @@ end status = dbh:query(sql, function(row) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --set the voicemail message path greeting_location = voicemail_dir.."/"..voicemail_id.."/greeting_"..greeting_id..".wav"; --vm_message_ext; diff --git a/resources/install/scripts/app/voicemail/resources/functions/listen_to_recording.lua b/resources/install/scripts/app/voicemail/resources/functions/listen_to_recording.lua index 89e0925ff5..cf4971e5e2 100644 --- a/resources/install/scripts/app/voicemail/resources/functions/listen_to_recording.lua +++ b/resources/install/scripts/app/voicemail/resources/functions/listen_to_recording.lua @@ -67,7 +67,7 @@ end status = dbh:query(sql, function(row) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --set the voicemail message path message_location = voicemail_dir.."/"..voicemail_id.."/msg_"..uuid.."."..vm_message_ext; diff --git a/resources/install/scripts/app/voicemail/resources/functions/play_greeting.lua b/resources/install/scripts/app/voicemail/resources/functions/play_greeting.lua index 484dc24ef0..358059e0a6 100644 --- a/resources/install/scripts/app/voicemail/resources/functions/play_greeting.lua +++ b/resources/install/scripts/app/voicemail/resources/functions/play_greeting.lua @@ -52,7 +52,7 @@ end status = dbh:query(sql, function(row) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --set the voicemail message path greeting_location = voicemail_dir.."/"..voicemail_id.."/greeting_"..greeting_id..".wav"; --vm_message_ext; diff --git a/resources/install/scripts/app/voicemail/resources/functions/record_menu.lua b/resources/install/scripts/app/voicemail/resources/functions/record_menu.lua index be468907ea..cd0f950f15 100644 --- a/resources/install/scripts/app/voicemail/resources/functions/record_menu.lua +++ b/resources/install/scripts/app/voicemail/resources/functions/record_menu.lua @@ -83,7 +83,7 @@ --if base64, encode file if (storage_type == "base64") then --include the base64 function - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --base64 encode the file local f = io.open(real_file, "rb"); local file_content = f:read("*all"); diff --git a/resources/install/scripts/app/voicemail/resources/functions/record_name.lua b/resources/install/scripts/app/voicemail/resources/functions/record_name.lua index fa4f039902..fb4b3d6587 100644 --- a/resources/install/scripts/app/voicemail/resources/functions/record_name.lua +++ b/resources/install/scripts/app/voicemail/resources/functions/record_name.lua @@ -44,7 +44,7 @@ --record and save the file if (storage_type == "base64") then --include the base64 function - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --set the location voicemail_name_location = voicemail_dir.."/"..voicemail_id.."/recorded_name.wav"; diff --git a/resources/install/scripts/app/voicemail/resources/functions/send_email.lua b/resources/install/scripts/app/voicemail/resources/functions/send_email.lua index b2f0fe5867..f00cb942a5 100644 --- a/resources/install/scripts/app/voicemail/resources/functions/send_email.lua +++ b/resources/install/scripts/app/voicemail/resources/functions/send_email.lua @@ -52,7 +52,7 @@ --require the email address to send the email if (string.len(voicemail_mail_to) > 2) then --include languages file - dofile(scripts_dir.."/app/voicemail/app_languages.lua"); + require "app.voicemail.app_languages"; --get voicemail message details sql = [[SELECT * FROM v_voicemail_messages @@ -73,7 +73,7 @@ --get the recordings from the database if (storage_type == "base64") then --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --set the voicemail message path message_location = voicemail_dir.."/"..id.."/msg_"..uuid.."."..vm_message_ext; diff --git a/resources/install/scripts/app/voicemail/resources/scripts/mwi.lua b/resources/install/scripts/app/voicemail/resources/scripts/mwi.lua index be241cc5d8..82d9d17973 100644 --- a/resources/install/scripts/app/voicemail/resources/scripts/mwi.lua +++ b/resources/install/scripts/app/voicemail/resources/scripts/mwi.lua @@ -24,9 +24,7 @@ -- POSSIBILITY OF SUCH DAMAGE. --include the lua script - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --define general settings sleep = 300; @@ -41,23 +39,18 @@ --only run the script a single time runonce = true --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --used to stop the lua service local file = assert(io.open(run_file, "w")); file:write("remove this file to stop the script"); ---add the trim function - function trim(s) - return s:gsub("^%s+", ""):gsub("%s+$", "") - end +--define the trim function + require "resources.functions.trim"; --check if a file exists - function file_exists(name) - local f=io.open(name,"r") - if f~=nil then io.close(f) return true else return false end - end + require "resources.functions.file_exists"; --create the api object api = freeswitch.API(); diff --git a/resources/install/scripts/app/xml_handler/index.lua b/resources/install/scripts/app/xml_handler/index.lua index d97f45f408..770c5a4b0c 100644 --- a/resources/install/scripts/app/xml_handler/index.lua +++ b/resources/install/scripts/app/xml_handler/index.lua @@ -39,9 +39,9 @@ debug["cache"] = false; --general functions - dofile(scripts_dir.."/resources/functions/trim.lua"); - dofile(scripts_dir.."/resources/functions/file_exists.lua"); - dofile(scripts_dir.."/resources/functions/explode.lua"); + require "resources.functions.trim"; + require "resources.functions.file_exists"; + require "resources.functions.explode"; --if the params class and methods do not exist then add them to prevent errors if (not params) then diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/configuration/callcenter.conf.lua b/resources/install/scripts/app/xml_handler/resources/scripts/configuration/callcenter.conf.lua index a884a23ed8..a4006530f3 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/configuration/callcenter.conf.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/configuration/callcenter.conf.lua @@ -36,7 +36,7 @@ if (XML_STRING == "-ERR NOT FOUND") or (XML_STRING == "-ERR CONNECTION FAILURE") then --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --exits the script if we didn't connect properly diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/configuration/sofia.conf.lua b/resources/install/scripts/app/xml_handler/resources/scripts/configuration/sofia.conf.lua index 41d74a8651..6656f619f3 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/configuration/sofia.conf.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/configuration/sofia.conf.lua @@ -36,7 +36,7 @@ if (XML_STRING == "-ERR NOT FOUND") or (XML_STRING == "-ERR CONNECTION FAILURE") then --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --exits the script if we didn't connect properly diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/dialplan/dialplan.lua b/resources/install/scripts/app/xml_handler/resources/scripts/dialplan/dialplan.lua index 077ebf77e0..c838fcf782 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/dialplan/dialplan.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/dialplan/dialplan.lua @@ -35,7 +35,7 @@ if (XML_STRING == "-ERR NOT FOUND") then --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --exits the script if we didn't connect properly diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/domains.lua b/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/domains.lua index e0ec0d6b5e..10df751dcb 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/domains.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/domains.lua @@ -25,7 +25,7 @@ -- POSSIBILITY OF SUCH DAMAGE. --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --exits the script if we didn't connect properly diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/group_call.lua b/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/group_call.lua index b00c279891..458c6d02c9 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/group_call.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/group_call.lua @@ -34,7 +34,7 @@ --set the cache if (XML_STRING == "-ERR NOT FOUND") then --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --exits the script if we didn't connect properly diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/reverse-auth-lookup.lua b/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/reverse-auth-lookup.lua index fca7636069..6711bc1f0f 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/reverse-auth-lookup.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/directory/action/reverse-auth-lookup.lua @@ -32,7 +32,7 @@ --user_call - user has been called --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --exits the script if we didn't connect properly diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua b/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua index 6658dd49a8..307594da85 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua @@ -109,7 +109,7 @@ --database connection if (continue) then --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --exits the script if we didn't connect properly @@ -154,14 +154,14 @@ --freeswitch.consoleLog("notice", "[xml_handler-directory.lua] local_hostname is " .. local_hostname .. "\n"); --add the file_exists function - dofile(scripts_dir.."/resources/functions/file_exists.lua"); + require "resources.functions.file_exists"; --connect to the switch database if (file_exists(database_dir.."/core.db")) then --dbh_switch = freeswitch.Dbh("core:core"); -- when using sqlite dbh_switch = freeswitch.Dbh("sqlite://"..database_dir.."/core.db"); else - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh_switch = database_handle('switch'); end diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/languages/languages.lua b/resources/install/scripts/app/xml_handler/resources/scripts/languages/languages.lua index ae1b29bfc7..86047db948 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/languages/languages.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/languages/languages.lua @@ -65,7 +65,7 @@ --database connection if (continue) then --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --exits the script if we didn't connect properly diff --git a/resources/install/scripts/call_flow.lua b/resources/install/scripts/call_flow.lua index ee62ed61a6..a8298a067c 100644 --- a/resources/install/scripts/call_flow.lua +++ b/resources/install/scripts/call_flow.lua @@ -29,12 +29,10 @@ digit_timeout = "5000"; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); if (session:ready()) then diff --git a/resources/install/scripts/call_flow_monitor.lua b/resources/install/scripts/call_flow_monitor.lua index c6cff6aa04..5be5ccf4bb 100644 --- a/resources/install/scripts/call_flow_monitor.lua +++ b/resources/install/scripts/call_flow_monitor.lua @@ -32,16 +32,14 @@ debug["sql"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --general functions - dofile(scripts_dir.."/resources/functions/file_exists.lua"); - dofile(scripts_dir.."/resources/functions/mkdir.lua"); + require "resources.functions.file_exists"; + require "resources.functions.mkdir"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --make sure the scripts/run dir exists diff --git a/resources/install/scripts/call_forward.lua b/resources/install/scripts/call_forward.lua index 2269b3df85..ceb87a5701 100644 --- a/resources/install/scripts/call_forward.lua +++ b/resources/install/scripts/call_forward.lua @@ -32,28 +32,16 @@ debug["sql"] = false; --define the trim function - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end + require "resources.functions.trim" --define the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end + require "resources.functions.explode" --create the api object api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --check if the session is ready if (session:ready()) then @@ -83,7 +71,7 @@ session:sleep(1000); --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --request id is true diff --git a/resources/install/scripts/cidlookup.lua b/resources/install/scripts/cidlookup.lua index 338b12928d..b45a319d49 100644 --- a/resources/install/scripts/cidlookup.lua +++ b/resources/install/scripts/cidlookup.lua @@ -30,20 +30,10 @@ debug["sql"] = true; --define the trim function - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end + require "resources.functions.trim" --define the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end + require "resources.functions.explode" --create the api object api = freeswitch.API(); @@ -79,22 +69,20 @@ end; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --check if the session is ready - + --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); - + if (database["type"] == "mysql") then sql = "SELECT CONCAT(v_contacts.contact_name_given, ' ', v_contacts.contact_name_family,' (',v_contact_phones.phone_type,')') AS name FROM v_contacts "; else sql = "SELECT v_contacts.contact_name_given || ' ' || v_contacts.contact_name_family || ' (' || v_contact_phones.phone_type || ')' AS name FROM v_contacts "; end - + sql = sql .. "INNER JOIN v_contact_phones ON v_contact_phones.contact_uuid = v_contacts.contact_uuid "; sql = sql .. "INNER JOIN v_destinations ON v_destinations.domain_uuid = v_contacts.domain_uuid "; sql = sql .. "WHERE v_contact_phones.phone_number = '"..caller.."' AND v_destinations.destination_number='"..callee.."'"; diff --git a/resources/install/scripts/confirm.lua b/resources/install/scripts/confirm.lua index 7c8f452ce1..b51d4279c7 100644 --- a/resources/install/scripts/confirm.lua +++ b/resources/install/scripts/confirm.lua @@ -26,10 +26,7 @@ digit_timeout = "5000"; --check if a file exists - function file_exists(name) - local f=io.open(name,"r") - if f~=nil then io.close(f) return true else return false end - end + require "resources.functions.file_exists" --run if the session is ready if ( session:ready() ) then diff --git a/resources/install/scripts/destination_caller_id.lua b/resources/install/scripts/destination_caller_id.lua index 89742740ad..df105bd919 100644 --- a/resources/install/scripts/destination_caller_id.lua +++ b/resources/install/scripts/destination_caller_id.lua @@ -25,18 +25,14 @@ -- POSSIBILITY OF SUCH DAMAGE. --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); ---add a trim function - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end +--define the trim function + require "resources.functions.trim" --get the variables domain_name = session:getVariable("domain_name"); diff --git a/resources/install/scripts/dial_string.lua b/resources/install/scripts/dial_string.lua index b4a7a2f522..5616d64778 100644 --- a/resources/install/scripts/dial_string.lua +++ b/resources/install/scripts/dial_string.lua @@ -34,12 +34,10 @@ db_extension_uuid = ""; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); if ( session:ready() ) then diff --git a/resources/install/scripts/directory.lua b/resources/install/scripts/directory.lua index c987e13ff9..01b4f85455 100644 --- a/resources/install/scripts/directory.lua +++ b/resources/install/scripts/directory.lua @@ -34,21 +34,14 @@ search_count = 0; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); - ---include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --settings - dofile(scripts_dir.."/resources/functions/settings.lua"); + require "resources.functions.settings"; settings = settings(domain_uuid); storage_type = ""; storage_path = ""; @@ -158,16 +151,8 @@ end end ---define explode - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end +--define the explode function + require "resources.functions.explode" --define a function to convert dialpad letters to numbers function dialpad_to_digit(letter) @@ -200,16 +185,11 @@ return count end ---define trim - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end +--define the trim function + require "resources.functions.trim" --check if a file exists - function file_exists(name) - local f=io.open(name,"r") - if f~=nil then io.close(f) return true else return false end - end + require "resources.functions.file_exists" --define select_entry function function select_entry() @@ -268,7 +248,7 @@ end status = dbh:query(sql, function(field) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --set the voicemail message path file_location = voicemail_dir.."/"..row.extension.."/recorded_name.wav"; diff --git a/resources/install/scripts/disa.callback.loopback.lua b/resources/install/scripts/disa.callback.loopback.lua index 00b00d46fa..d0fb1b8923 100644 --- a/resources/install/scripts/disa.callback.loopback.lua +++ b/resources/install/scripts/disa.callback.loopback.lua @@ -27,12 +27,10 @@ debug["sql"] = true; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); api = freeswitch.API(); diff --git a/resources/install/scripts/disa.callback.lua b/resources/install/scripts/disa.callback.lua index 121da756a1..ab471109bc 100644 --- a/resources/install/scripts/disa.callback.lua +++ b/resources/install/scripts/disa.callback.lua @@ -27,18 +27,16 @@ debug["sql"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); api = freeswitch.API(); --other libs - dofile(scripts_dir.."/resources/functions/trim.lua"); + require "resources.functions.trim"; aleg_number = argv[1]; bleg_number = argv[2]; diff --git a/resources/install/scripts/disa.lua b/resources/install/scripts/disa.lua index 7ce526edc5..893b33b5a6 100644 --- a/resources/install/scripts/disa.lua +++ b/resources/install/scripts/disa.lua @@ -26,19 +26,11 @@ predefined_destination = ""; max_tries = "3"; digit_timeout = "5000"; -function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) -end +--define the trim function + require "resources.functions.trim"; -function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr -end +--define the explode function + require "resources.functions.explode"; if ( session:ready() ) then session:answer( ); diff --git a/resources/install/scripts/disa.plus.lua b/resources/install/scripts/disa.plus.lua index 5d8e3963d5..575fd06385 100644 --- a/resources/install/scripts/disa.plus.lua +++ b/resources/install/scripts/disa.plus.lua @@ -31,29 +31,19 @@ digit_timeout = "5000"; debug["sql"] = true; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); api = freeswitch.API(); -function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) -end +--define the trim function + require "resources.functions.trim"; -function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr -end +--define the explode function + require "resources.functions.explode"; if ( session:ready() ) then session:answer( ); diff --git a/resources/install/scripts/do_not_disturb.lua b/resources/install/scripts/do_not_disturb.lua index 9b7666b156..f48c426dee 100644 --- a/resources/install/scripts/do_not_disturb.lua +++ b/resources/install/scripts/do_not_disturb.lua @@ -32,28 +32,16 @@ debug["sql"] = false; --define the trim function - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end + require "resources.functions.trim"; --define the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end + require "resources.functions.explode"; --create the api object api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --check if the session is ready if ( session:ready() ) then @@ -82,7 +70,7 @@ session:sleep(1000); --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --determine whether to update the dial string diff --git a/resources/install/scripts/eavesdrop.lua b/resources/install/scripts/eavesdrop.lua index bebaa6cb34..f89c557491 100644 --- a/resources/install/scripts/eavesdrop.lua +++ b/resources/install/scripts/eavesdrop.lua @@ -28,12 +28,10 @@ digit_timeout = "5000"; extension = argv[1]; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --add the file_exists function - dofile(scripts_dir.."/resources/functions/file_exists.lua"); + require "resources.functions.file_exists"; --connect to the database if (file_exists(database_dir.."/core.db")) then @@ -41,7 +39,7 @@ extension = argv[1]; dbh = freeswitch.Dbh("sqlite://"..database_dir.."/core.db"); freeswitch.consoleLog("NOTICE", "[eavesdrop] using core.db\n"); else - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('switch'); freeswitch.consoleLog("NOTICE", "[eavesdrop] using freeswitch db\n"); diff --git a/resources/install/scripts/extension_queue.lua b/resources/install/scripts/extension_queue.lua index db83c14017..2f8ed817ab 100644 --- a/resources/install/scripts/extension_queue.lua +++ b/resources/install/scripts/extension_queue.lua @@ -24,12 +24,10 @@ -- Riccardo Granchi --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); if (session:ready()) then diff --git a/resources/install/scripts/fax_retry.lua b/resources/install/scripts/fax_retry.lua index 64d214cdea..f1fda766b1 100644 --- a/resources/install/scripts/fax_retry.lua +++ b/resources/install/scripts/fax_retry.lua @@ -31,33 +31,17 @@ api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --define the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end + require "resources.functions.explode"; --array count - function count(t) - c = 0; - for k,v in pairs(t) do - c = c+1; - end - return c; - end + require "resources.functions.count"; -- show all channel variables --dat = env:serialize() @@ -141,7 +125,7 @@ end --settings - dofile(scripts_dir.."/resources/functions/settings.lua"); + require "resources.functions.settings"; settings = settings(domain_uuid); storage_type = ""; storage_path = ""; @@ -304,7 +288,7 @@ if (fax_success =="1") then if (storage_type == "base64") then --include the base64 function - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --base64 encode the file local f = io.open(fax_file, "rb"); diff --git a/resources/install/scripts/follow_me.lua b/resources/install/scripts/follow_me.lua index 5485093413..bfacd96359 100644 --- a/resources/install/scripts/follow_me.lua +++ b/resources/install/scripts/follow_me.lua @@ -32,28 +32,16 @@ debug["sql"] = true; --define the trim function - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end + require "resources.functions.trim"; --define the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end + require "resources.functions.explode"; --create the api object api = freeswitch.API(); --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --check if the session is ready if ( session:ready() ) then @@ -81,7 +69,7 @@ session:sleep(1000); --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --determine whether to update the dial string diff --git a/resources/install/scripts/intercept.lua b/resources/install/scripts/intercept.lua index 419813c0cc..b6927c6083 100644 --- a/resources/install/scripts/intercept.lua +++ b/resources/install/scripts/intercept.lua @@ -32,16 +32,14 @@ debug["sql"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database if (file_exists(database_dir.."/core.db")) then --dbh = freeswitch.Dbh("core:core"); -- when using sqlite dbh = freeswitch.Dbh("sqlite://"..database_dir.."/core.db"); else - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('switch'); end @@ -49,7 +47,7 @@ api = freeswitch.API(); --add the function - dofile(scripts_dir.."/resources/functions/trim.lua"); + require "resources.functions.trim"; --exits the script if we didn't connect properly assert(dbh:connected()); diff --git a/resources/install/scripts/intercept_group.lua b/resources/install/scripts/intercept_group.lua index 13a82e70df..e6078da4d7 100644 --- a/resources/install/scripts/intercept_group.lua +++ b/resources/install/scripts/intercept_group.lua @@ -31,15 +31,13 @@ debug["sql"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --add the function - dofile(scripts_dir.."/resources/functions/explode.lua"); + require "resources.functions.explode"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --check if the session is ready @@ -149,7 +147,7 @@ --dbh = freeswitch.Dbh("core:core"); -- when using sqlite dbh = freeswitch.Dbh("sqlite://"..database_dir.."/core.db"); else - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('switch'); end diff --git a/resources/install/scripts/ivr_menu.lua b/resources/install/scripts/ivr_menu.lua index b4d916de0c..09ab8fe8fb 100644 --- a/resources/install/scripts/ivr_menu.lua +++ b/resources/install/scripts/ivr_menu.lua @@ -32,12 +32,10 @@ debug["tries"] = false; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --get the variables @@ -49,7 +47,7 @@ domain_uuid = session:getVariable("domain_uuid"); --settings - dofile(scripts_dir.."/resources/functions/settings.lua"); + require "resources.functions.settings"; settings = settings(domain_uuid); storage_type = ""; storage_path = ""; @@ -86,16 +84,11 @@ --set default variable(s) tries = 0; ---add the trim function - function trim(s) - return s:gsub("^%s+", ""):gsub("%s+$", "") - end +--define the trim function + require "resources.functions.trim" --check if a file exists - function file_exists(name) - local f=io.open(name,"r") - if f~=nil then io.close(f) return true else return false end - end + require "resources.functions.file_exists" --prepare the api object api = freeswitch.API(); @@ -219,7 +212,7 @@ end status = dbh:query(sql, function(row) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --add the path to filename ivr_menu_greet_long = recordings_dir.."/"..greet_long_file_name; ivr_menu_greet_long_is_base64 = true; @@ -243,7 +236,7 @@ end status = dbh:query(sql, function(row) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --add the path to filename ivr_menu_greet_short = recordings_dir.."/"..greet_short_file_name; ivr_menu_greet_short_is_base64 = true; @@ -267,7 +260,7 @@ end status = dbh:query(sql, function(row) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --add the path to filename ivr_menu_invalid_sound = recordings_dir.."/"..invalid_sound_file_name; ivr_menu_invalid_sound_is_base64 = true; @@ -291,7 +284,7 @@ end status = dbh:query(sql, function(row) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --add the path to filename ivr_menu_exit_sound = recordings_dir.."/"..exit_sound_file_name; ivr_menu_exit_sound_is_base64 = true; diff --git a/resources/install/scripts/monitor.lua b/resources/install/scripts/monitor.lua index 0b86958a93..baf3ef55f7 100644 --- a/resources/install/scripts/monitor.lua +++ b/resources/install/scripts/monitor.lua @@ -31,16 +31,11 @@ local file = assert(io.open(tmp_file, "w")); file:write("remove this file to stop the script"); ---add the trim function - function trim(s) - return s:gsub("^%s+", ""):gsub("%s+$", "") - end +--define the trim function + require "resources.functions.trim" --check if a file exists - function file_exists(name) - local f=io.open(name,"r") - if f~=nil then io.close(f) return true else return false end - end + require "resources.functions.file_exists" --create the api object api = freeswitch.API(); diff --git a/resources/install/scripts/page.lua b/resources/install/scripts/page.lua index 0f3af2af14..80bf8c80df 100644 --- a/resources/install/scripts/page.lua +++ b/resources/install/scripts/page.lua @@ -28,19 +28,11 @@ pin_number = ""; max_tries = "3"; digit_timeout = "3000"; -function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) -end +--define the trim function + require "resources.functions.trim"; -function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr -end +--define the explode function + require "resources.functions.explode"; if ( session:ready() ) then session:answer(); diff --git a/resources/install/scripts/park.lua b/resources/install/scripts/park.lua index 42b47ce423..829688f82e 100644 --- a/resources/install/scripts/park.lua +++ b/resources/install/scripts/park.lua @@ -15,14 +15,12 @@ --action lua park.lua --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database --dbh = freeswitch.Dbh("core:core"); -- when using sqlite dbh = freeswitch.Dbh("sqlite://"..database_dir.."/park.db"); - --dofile(scripts_dir.."/resources/functions/database_handle.lua"); + --require "resources.functions.database_handle"; --dbh = database_handle('system'); --exits the script if we didn't connect properly @@ -40,21 +38,11 @@ park_timeout_seconds = session:getVariable("park_timeout_seconds"); park_music = session:getVariable("park_music"); ---add the explode function - function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr - end +--define the trim function + require "resources.functions.trim"; ---add the trim function - function trim(s) - return s:gsub("^%s+", ""):gsub("%s+$", "") - end +--define the explode function + require "resources.functions.explode"; --if park_timeout_seconds is not defined set the timeout to 5 minutes if (not park_timeout_seconds) then diff --git a/resources/install/scripts/park_monitor.lua b/resources/install/scripts/park_monitor.lua index e7b0a7a455..3162120c48 100644 --- a/resources/install/scripts/park_monitor.lua +++ b/resources/install/scripts/park_monitor.lua @@ -29,14 +29,12 @@ --then send presence terminate, and delete from the database --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database --dbh = freeswitch.Dbh("core:core"); -- when using sqlite dbh = freeswitch.Dbh("sqlite://"..database_dir.."/park.db"); - --dofile(scripts_dir.."/resources/functions/database_handle.lua"); + --require "resources.functions.database_handle"; --get the argv values script_name = argv[0]; @@ -50,10 +48,8 @@ --prepare the api api = freeswitch.API(); ---add a trim function - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end +--define the trim function + require "resources.functions.trim"; --monitor the parking lot if the call has hungup send a terminated event, and delete from the db x = 0 diff --git a/resources/install/scripts/pin_number.lua b/resources/install/scripts/pin_number.lua index a5bd1d4c04..fa2cb4bcbf 100644 --- a/resources/install/scripts/pin_number.lua +++ b/resources/install/scripts/pin_number.lua @@ -27,19 +27,11 @@ digit_timeout = 5000; max_retries = 3; tries = 0; -function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) -end +--define the trim function + require "resources.functions.trim"; -function explode ( seperator, str ) - local pos, arr = 0, {} - for st, sp in function() return string.find( str, seperator, pos, true ) end do -- for each divider found - table.insert( arr, string.sub( str, pos, st-1 ) ) -- attach chars left of current divider - pos = sp + 1 -- jump past current divider - end - table.insert( arr, string.sub( str, pos ) ) -- attach chars right of last divider - return arr -end +--define the explode function + require "resources.functions.explode"; function check_pin_number() --sleep diff --git a/resources/install/scripts/recordings.lua b/resources/install/scripts/recordings.lua index 40c5624cc1..f03fd0a0d4 100644 --- a/resources/install/scripts/recordings.lua +++ b/resources/install/scripts/recordings.lua @@ -34,26 +34,24 @@ recording_prefix = ""; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --get the domain_uuid domain_uuid = session:getVariable("domain_uuid"); --add functions - dofile(scripts_dir.."/resources/functions/mkdir.lua"); - dofile(scripts_dir.."/resources/functions/explode.lua"); + require "resources.functions.mkdir"; + require "resources.functions.explode"; --initialize the recordings api = freeswitch.API(); --settings - dofile(scripts_dir.."/resources/functions/settings.lua"); + require "resources.functions.settings"; settings = settings(domain_uuid); storage_type = ""; storage_path = ""; @@ -127,7 +125,7 @@ --begin recording if (storage_type == "base64") then --include the base64 function - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --make the directory mkdir(recordings_dir); diff --git a/resources/install/scripts/resources/functions/base64.lua b/resources/install/scripts/resources/functions/base64.lua index b83a116bbd..c045d93ceb 100644 --- a/resources/install/scripts/resources/functions/base64.lua +++ b/resources/install/scripts/resources/functions/base64.lua @@ -6,7 +6,7 @@ function base64.encode(s) local mime = require("mime"); return (mime.b64(s)); else - dofile(scripts_dir.."/resources/functions/base64_alex.lua"); + require "resources.functions.base64_alex"; return base64.enc(s); end end @@ -17,7 +17,7 @@ function base64.decode(s) local mime = require("mime"); return (mime.unb64(s)); else - dofile(scripts_dir.."/resources/functions/base64_alex.lua"); + require "resources.functions.base64_alex"; return base64.dec(s); end end \ No newline at end of file diff --git a/resources/install/scripts/resources/functions/config.lua b/resources/install/scripts/resources/functions/config.lua index c43b0c0f00..70dcb0efe7 100644 --- a/resources/install/scripts/resources/functions/config.lua +++ b/resources/install/scripts/resources/functions/config.lua @@ -1,12 +1,26 @@ +-- add file_exists function + require "resources.functions.file_exists"; + --find and return path to the config.lua function config() - dofile(scripts_dir.."/resources/functions/file_exists.lua"); if (file_exists("/etc/fusionpbx/config.lua")) then return "/etc/fusionpbx/config.lua"; elseif (file_exists("/usr/local/etc/fusionpbx/config.lua")) then return "/usr/local/etc/fusionpbx/config.lua"; else - return scripts_dir.."/resources/config.lua"; + return "resources.config"; end - end \ No newline at end of file + end + +-- load config + function load_config() + local cfg = config() + if cfg:sub(1,1) == '//' then + dofile(cfg) + else + require(cfg) + end + end + + load_config() diff --git a/resources/install/scripts/resources/functions/count.lua b/resources/install/scripts/resources/functions/count.lua new file mode 100644 index 0000000000..4a98776979 --- /dev/null +++ b/resources/install/scripts/resources/functions/count.lua @@ -0,0 +1,9 @@ + +--array count + function count(t) + local c = 0; + for k in pairs(t) do + c = c + 1; + end + return c; + end \ No newline at end of file diff --git a/resources/install/scripts/resources/functions/settings.lua b/resources/install/scripts/resources/functions/settings.lua index 1c1971849a..8c5952cdd1 100644 --- a/resources/install/scripts/resources/functions/settings.lua +++ b/resources/install/scripts/resources/functions/settings.lua @@ -2,10 +2,8 @@ --debug debug["sql"] = false; ---define trim - function trim (s) - return (string.gsub(s, "^%s*(.-)%s*$", "%1")) - end +--define the trim function + require "resources.functions.trim"; --get the domain_uuid if (domain_uuid == nil) then diff --git a/resources/install/scripts/streamfile.lua b/resources/install/scripts/streamfile.lua index 02b6ca3d47..576fd46a29 100644 --- a/resources/install/scripts/streamfile.lua +++ b/resources/install/scripts/streamfile.lua @@ -3,12 +3,10 @@ file_name = argv[1]; --include config.lua - scripts_dir = string.sub(debug.getinfo(1).source,2,string.len(debug.getinfo(1).source)-(string.len(argv[0])+1)); - dofile(scripts_dir.."/resources/functions/config.lua"); - dofile(config()); + require "resources.functions.config"; --connect to the database - dofile(scripts_dir.."/resources/functions/database_handle.lua"); + require "resources.functions.database_handle"; dbh = database_handle('system'); --get the variables @@ -25,7 +23,7 @@ if (not default_voice) then default_voice = 'callie'; end --settings - dofile(scripts_dir.."/resources/functions/settings.lua"); + require "resources.functions.settings"; settings = settings(domain_uuid); storage_type = ""; storage_path = ""; @@ -61,10 +59,7 @@ end --check if a file exists - function file_exists(name) - local f=io.open(name,"r") - if f~=nil then io.close(f) return true else return false end - end + require "resources.functions.file_exists"; --define the on_dtmf call back function function on_dtmf(s, type, obj, arg) @@ -107,7 +102,7 @@ end status = dbh:query(sql, function(row) --add functions - dofile(scripts_dir.."/resources/functions/base64.lua"); + require "resources.functions.base64"; --add the path to filename file_name = recordings_dir.."/"..file_name_only; --save the recording to the file system diff --git a/resources/install/scripts/wakeup.lua b/resources/install/scripts/wakeup.lua index 45c7774fdb..fd192f1514 100644 --- a/resources/install/scripts/wakeup.lua +++ b/resources/install/scripts/wakeup.lua @@ -27,10 +27,8 @@ domain_name = argv[1]; wakeup_number = argv[2]; ---add the trim function - function trim(s) - return s:gsub("^%s+", ""):gsub("%s+$", "") - end +--define the trim function + require "resources.functions.trim"; --add is_numeric function is_numeric(text) diff --git a/resources/templates/conf/autoload_configs/lua.conf.xml b/resources/templates/conf/autoload_configs/lua.conf.xml index a608494467..f485269a9c 100644 --- a/resources/templates/conf/autoload_configs/lua.conf.xml +++ b/resources/templates/conf/autoload_configs/lua.conf.xml @@ -13,8 +13,8 @@ These entries will be pre-pended to the LUA_PATH environment variable --> - +