diff options
Diffstat (limited to 'freeswitch-model.lua')
-rw-r--r-- | freeswitch-model.lua | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/freeswitch-model.lua b/freeswitch-model.lua index 610d4df..57251c7 100644 --- a/freeswitch-model.lua +++ b/freeswitch-model.lua @@ -37,14 +37,19 @@ function startstop_service(self, startstop, action) return modelfunctions.startstop_service(startstop, action) end -function reload_xml() +function getreloadxml() + return cfe({ type="group", value={}, label="Reload Freeswitch XML" }) +end + +function reload_xml(self, relo) local f = io.popen(path.."fs_cli -x reloadxml 2>&1") - local result = f:read("*a") + relo.descr = f:read("*a") f:close() - return cfe({ value=result, label="Freeswitch Reload XML result" }) + return relo end -get_file = function(filename) +get_file = function(self, clientdata) + local filename = clientdata.filename return modelfunctions.getfiledetails(filename, is_valid_filename) end @@ -102,16 +107,21 @@ function createfile(self, filedetails) return filedetails end -function deletefile(filename) - local retval = cfe({ label="Delete Freeswitch File result", errtxt = "Failed to delete Freeswitch File - invalid filename" }) +function getdeletefile(self, clientdata) + local retval = {} + retval.filename = cfe({ label="File Name", value=clientdata.filename or "" }) + return cfe({ type="group", value=retval, label="Delete Freeswitch File" }) +end + +function deletefile(self, delfile) + delfile.errtxt = "Failed to delete Freeswitch File - invalid filename" for i,file in ipairs(list_files().value) do - if filename == file.filename then - retval.value = "Deleted Freeswitch File" - retval.errtxt = nil - os.remove(filename) + if delfile.value.filename.value == file.filename then + delfile.errtxt = nil + os.remove(delfile.value.filename.value) break end end - return retval + return delfile end |