diff --git a/app/scripts/resources/scripts/app/xml_handler/resources/scripts/directory/directory.lua b/app/scripts/resources/scripts/app/xml_handler/resources/scripts/directory/directory.lua index b02e0fc606..89a5b3d044 100644 --- a/app/scripts/resources/scripts/app/xml_handler/resources/scripts/directory/directory.lua +++ b/app/scripts/resources/scripts/app/xml_handler/resources/scripts/directory/directory.lua @@ -312,6 +312,7 @@ password = row.password; mwi_account = row.mwi_account; auth_acl = row.auth_acl; + --variables sip_from_user = row.extension; sip_from_number = (#number_alias > 0) and number_alias or row.extension; @@ -412,6 +413,25 @@ end); end + --get the extension settings from the database + if (extension_uuid) then + local sql = "SELECT * FROM v_extension_settings " + .. "WHERE extension_uuid = :extension_uuid " + .. "and extension_setting_enabled = 'true' "; + local params = {extension_uuid=extension_uuid}; + if (debug["sql"]) then + freeswitch.consoleLog("notice", "[xml_handler] SQL: " .. sql .. "; params:" .. json.encode(params) .. "\n"); + end + extension_settings = {} + dbh:query(sql, params, function(row) + table.insert(extension_settings, { + extension_setting_type = row.extension_setting_type, + extension_setting_name = row.extension_setting_name, + extension_setting_value = row.extension_setting_value + }); + end); + end + --get the voicemail from the database if (continue) then vm_enabled = "true"; @@ -510,6 +530,11 @@ table.insert(xml, [[ ]]); table.insert(xml, [[ ]]); table.insert(xml, [[ ]]); + for key,row in pairs(extension_settings) do + if (row.extension_setting_type == 'param') then + table.insert(xml, [[ ]]); + end + end table.insert(xml, [[ ]]); table.insert(xml, [[ ]]); table.insert(xml, [[ ]]); @@ -645,6 +670,11 @@ table.insert(xml, [[ ]]); table.insert(xml, [[ ]]); table.insert(xml, [[ ]]); + for key,row in pairs(extension_settings) do + if (row.extension_setting_type == 'variable') then + table.insert(xml, [[ ]]); + end + end table.insert(xml, [[ ]]); table.insert(xml, [[ ]]); table.insert(xml, [[ ]]);