S-UI流量清零有专门按钮,不用靠加大额度凑合

客户端列表里每一行其实已经把已用流量摆在明面上了——流量那一列直接显示"已用 / 总额度",用完了这个数字会变成红色,不用专门点进某个用户详情才能看到,扫一眼列表就知道谁快用完了、谁已经超了。

流量用完之后按S-UI面板多用户管理里说的,可以进用户编辑页面加大额度让它继续能用。但翻代码的时候发现还有一个更合适的操作没提到过:工具菜单里有个专门的 Reset Traffic(重置流量),效果不是加大额度,而是把已经用掉的部分直接清零,额度本身保持不变。

两者的区别,选错了额度会越滚越大

举个例子更清楚:一个用户签的套餐是每月 100GB,这个月用完了。

  • 用"加大额度":把 100GB 改成 200GB,这个月能继续用,但下个月还是从这个"200GB"往上加,额度会一路越改越大,跟当初谈好的套餐对不上;
  • 用"重置流量":额度还是维持 100GB 不变,只是把这个月已经用掉的部分清零,从头开始计算,正好对应"按月续费、每月流量重新算"这种最常见的场景。

按周期续费的场景应该用重置流量,只有真的要给这个用户提额、涨套餐的时候才用加大额度。

怎么操作

进入客户端管理页面,点上方工具图标(跟"批量新增用户""批量编辑用户"在同一个菜单里),选 Reset Traffic,确认之后生效。

这里有个操作上要注意的地方:这个按钮在工具菜单里,不是某一行用户单独的操作。点之前建议先用页面的筛选或者搜索功能把范围缩小到只剩你想处理的那个用户(或者那一批用户),确认清楚当前筛选状态之后再点确认,避免筛选条件没设对,结果清零了不该动的账号。

想要自动定期重置,去设置页配置cron表达式

如果每个用户都是按同一个周期续费(比如统一每月1号重置),不想每次都手动点,面板设置页里有个 globalReset 字段能满足这个需求,翻 S-UI 后端源码的 cronjob/resetTrafficJob.go 能看到具体实现——填一个标准 cron 表达式,输入框旁边给的示例是 0 0 1 * *(每月1号凌晨0点),面板会有个专门的后台任务按这个周期自动重置全部客户端的流量并重启核心生效,不需要人工干预。设置页里紧挨着的 timeLocation(时区)字段也要留意,定时任务是按这个时区来判断执行时间点的,时区设错了实际触发时间会跟预期对不上。

这个设置是全局的,一次性对所有客户端生效,没有"只对某个用户单独设置自动重置周期"这个选项。如果服务器上的用户续费周期不统一(有人按月、有人按季度),全局自动重置就不合适了,这种混合场景还是得靠前面说的手动 Reset Traffic,按各自的到期节点分别处理。不填这个字段或者填 off 的话,自动重置功能就是关闭状态,跟以前一样只能手动清零。

用户到期之后的自动失效逻辑不受这个影响,到期时间和流量重置是两套独立的东西,到期设置的方式还是看多用户管理教程里说的。