You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lua-ngcp-kamailio/scripts/ngcp-dlglist-clean

66 lines
1.5 KiB

#!/usr/bin/env lua5.1
--local ut = require 'ngcp.utils'.table
local NGCPDlgList = require 'ngcp.dlglist'
local config = "/etc/kamailio/proxy/dlgcnt.lua.cfg"
local argparse = require "argparse"
local parser = argparse() {
name = "ngcp-dlglist-clean",
description = "helper to remove kamailio queue dialogs from redis db"
}
parser:argument("callid", "Call-Id to remove")
-- luacheck: globals dlg_config
KSR = {}
KSR.log = function (level, str)
print(string.format("[%s] %s", level, str))
end
function KSR.dbg(message)
KSR.log("debug", message)
end
function KSR.err(message)
KSR.log("error", message)
end
function KSR.info(message)
KSR.log("info", message)
end
function KSR.notice(message)
KSR.log("info", message)
end
function KSR.warn(message)
KSR.log("warn", message)
end
function KSR.crit(message)
KSR.log("fatal", message)
end
local function get_config()
if os.getenv('DLG_CONFIG') then
config = os.getenv('DLG_CONFIG')
end
local ok,e = pcall(dofile,config)
if not ok then
io.stderr:write(e..'\n')
io.stderr:write("using defaults\n")
end
end
local args = parser:parse()
get_config()
local dlg = NGCPDlgList:new()
if dlg_config then
dlg.config.central.host = dlg_config.central.host
dlg.config.central.port = dlg_config.central.port
dlg.config.central.db = dlg_config.central.db
dlg.config.pair.host = dlg_config.pair.host
dlg.config.pair.port = dlg_config.pair.port
dlg.config.pair.db = dlg_config.pair.db
--print(string.format("dlg.config:%s", ut.tostring(dlg.config)))
end
dlg:destroy(args.callid)