From acfcabcf7191a311011a77d9a3bddd183c5ff933 Mon Sep 17 00:00:00 2001 From: skel Date: Mon, 11 Jul 2011 16:08:18 -0400 Subject: Implemented Reload Dial Plan command. --- kamailio-controller.lua | 5 +++++ kamailio-model.lua | 8 ++++++++ kamailio-status-html.lsp | 44 +++++++++++++++++++++++++++++++++++++++++++- kamailio.roles | 8 ++++---- 4 files changed, 60 insertions(+), 5 deletions(-) mode change 120000 => 100644 kamailio-status-html.lsp diff --git a/kamailio-controller.lua b/kamailio-controller.lua index ff16c50..8cd66ac 100644 --- a/kamailio-controller.lua +++ b/kamailio-controller.lua @@ -61,6 +61,11 @@ function createdatabase(self) return self:redirect_to_referrer(self.model.create_database()) end +function reloadplan(self) + return self:redirect_to_referrer(self.model.reloadplan()) +end + + searchdatabase = function( self ) return self.model.search_database(self.clientdata.id, self.clientdata.value, self.clientdata.comparison) end diff --git a/kamailio-model.lua b/kamailio-model.lua index 896a50f..311fa7c 100644 --- a/kamailio-model.lua +++ b/kamailio-model.lua @@ -170,6 +170,14 @@ function update_filedetails(filedetails) return modelfunctions.setfiledetails(filedetails, is_valid_filename) end +function reloadplan() + local cmd = path .. " sercmd mi_dg dp_reload" + local f = io.popen(cmd) + local result = f:read("*a") + f:close() + return cfe({value=result, label="Reloading Dial Plan Result"}) +end + function list_files() local retval = {} for file in fs.find(null, baseurl) do diff --git a/kamailio-status-html.lsp b/kamailio-status-html.lsp deleted file mode 120000 index b2f8480..0000000 --- a/kamailio-status-html.lsp +++ /dev/null @@ -1 +0,0 @@ -../status-html.lsp \ No newline at end of file diff --git a/kamailio-status-html.lsp b/kamailio-status-html.lsp new file mode 100644 index 0000000..dd26d27 --- /dev/null +++ b/kamailio-status-html.lsp @@ -0,0 +1,43 @@ +<% local data, viewlibrary, page_info, session = ... +require("viewfunctions") +%> + +<% displaycommandresults({"install","edit"}, session) %> +<% displaycommandresults({"startstop"}, session) %> +<% displaycommandresults({"reloadplan"}, session) %> + +

System Info

+
+<% +displayitem(data.value.status) + +displayitem(data.value.version) +if data.value.version and data.value.version.errtxt and viewlibrary.check_permission("apk-tools/apk/install") then +%> +
Install package
+
+
+<% +end + +displayitem(data.value.autostart) +if not (data.value.version and data.value.version.errtxt) and data.value.autostart and data.value.autostart.errtxt and viewlibrary.check_permission("alpine-baselayout/rc/edit") then +%> +
Enable autostart
+
+
+<% end %> +
+ +<% if viewlibrary and viewlibrary.dispatch_component and viewlibrary.check_permission("startstop") then + viewlibrary.dispatch_component("startstop") +end %> + +<% if viewlibrary.check_permission("reloadplan") then %> +

Reload Dial Plan

+
+
Reload dial plan into memory
+
+
+
+<% end %> diff --git a/kamailio.roles b/kamailio.roles index be6e771..c5f2ba3 100644 --- a/kamailio.roles +++ b/kamailio.roles @@ -1,4 +1,4 @@ -USER=kamailio:status,kamailio:startstop,kamailio:listusers -EDITOR=kamailio:createuser,kamailio:updateuser,kamailio:deleteuser,kamailio:listtables,kamailio:viewtable,kamailio:deletetableentry,kamailio:updatetableentry,kamailio:createtableentry,kamailio:searchdatabase -EXPERT=kamailio:listfiles,kamailio:edit,kamailio:createdatabase -ADMIN=kamailio:status,kamailio:startstop,kamailio:listusers,kamailio:createuser,kamailio:updateuser,kamailio:deleteuser,kamailio:listfiles,kamailio:edit,kamailio:listtables,kamailio:viewtable,kamailio:deletetableentry,kamailio:updatetableentry,kamailio:createtableentry,kamailio:createdatabase,kamailio:searchdatabase +USER=kamailio:status,kamailio:startstop,kamailio:listusers,kamailio:reloadplan +EDITOR=kamailio:createuser,kamailio:updateuser,kamailio:deleteuser,kamailio:listtables,kamailio:viewtable,kamailio:deletetableentry,kamailio:updatetableentry,kamailio:createtableentry,kamailio:searchdatabase,kamailio:reloadplan +EXPERT=kamailio:listfiles,kamailio:edit,kamailio:createdatabase,kamailio:reloadplan +ADMIN=kamailio:status,kamailio:startstop,kamailio:listusers,kamailio:createuser,kamailio:updateuser,kamailio:deleteuser,kamailio:listfiles,kamailio:edit,kamailio:listtables,kamailio:viewtable,kamailio:deletetableentry,kamailio:updatetableentry,kamailio:createtableentry,kamailio:createdatabase,kamailio:searchdatabase,kamailio:reloadplan -- cgit v1.2.3