mirror of
https://github.com/bolucat/Archive.git
synced 2026-04-23 00:17:16 +08:00
Update On Sat Jan 11 19:32:03 CET 2025
This commit is contained in:
@@ -394,6 +394,24 @@ local function trim(text)
|
||||
return (sgsub(text, "^%s*(.-)%s*$", "%1"))
|
||||
end
|
||||
|
||||
-- 取机场信息(剩余流量、到期时间)
|
||||
local subscribe_info = {}
|
||||
local function get_subscribe_info(cfgid, value)
|
||||
if type(cfgid) ~= "string" or cfgid == "" or type(value) ~= "string" then
|
||||
return
|
||||
end
|
||||
value = value:gsub("%s+", "")
|
||||
local expired_date = value:match("套餐到期:(.+)")
|
||||
local rem_traffic = value:match("剩余流量:(.+)")
|
||||
subscribe_info[cfgid] = subscribe_info[cfgid] or {expired_date = "", rem_traffic = ""}
|
||||
if expired_date then
|
||||
subscribe_info[cfgid]["expired_date"] = expired_date
|
||||
end
|
||||
if rem_traffic then
|
||||
subscribe_info[cfgid]["rem_traffic"] = rem_traffic
|
||||
end
|
||||
end
|
||||
|
||||
-- 处理数据
|
||||
local function processData(szType, content, add_mode, add_from)
|
||||
--log(content, add_mode, add_from)
|
||||
@@ -1310,7 +1328,7 @@ local function truncate_nodes(add_from)
|
||||
end)
|
||||
if add_from then
|
||||
uci:foreach(appname, "subscribe_list", function(o)
|
||||
if o.remark == add_from then
|
||||
if add_from == "all-node" or add_from == o.remark then
|
||||
uci:delete(appname, o['.name'], "md5")
|
||||
end
|
||||
end)
|
||||
@@ -1469,6 +1487,16 @@ local function update_node(manual)
|
||||
end
|
||||
end
|
||||
end
|
||||
-- 更新机场信息
|
||||
for cfgid, info in pairs(subscribe_info) do
|
||||
for key, value in pairs(info) do
|
||||
if value ~= "" then
|
||||
uci:set(appname, cfgid, key, value)
|
||||
else
|
||||
uci:delete(appname, cfgid, key)
|
||||
end
|
||||
end
|
||||
end
|
||||
api.uci_save(uci, appname, true)
|
||||
|
||||
if next(CONFIG) then
|
||||
@@ -1500,7 +1528,7 @@ local function update_node(manual)
|
||||
luci.sys.call("/etc/init.d/" .. appname .. " restart > /dev/null 2>&1 &")
|
||||
end
|
||||
|
||||
local function parse_link(raw, add_mode, add_from)
|
||||
local function parse_link(raw, add_mode, add_from, cfgid)
|
||||
if raw and #raw > 0 then
|
||||
local nodes, szType
|
||||
local node_list = {}
|
||||
@@ -1562,6 +1590,9 @@ local function parse_link(raw, add_mode, add_from)
|
||||
else
|
||||
tinsert(node_list, result)
|
||||
end
|
||||
if add_mode == "2" then
|
||||
get_subscribe_info(cfgid, result.remarks)
|
||||
end
|
||||
end
|
||||
end, function (err)
|
||||
--log(err)
|
||||
@@ -1665,7 +1696,7 @@ local execute = function()
|
||||
log('订阅:【' .. remark .. '】没有变化,无需更新。')
|
||||
else
|
||||
os.remove("/tmp/" .. cfgid)
|
||||
parse_link(raw, "2", remark)
|
||||
parse_link(raw, "2", remark, cfgid)
|
||||
uci:set(appname, cfgid, "md5", new_md5)
|
||||
end
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user