cssson 发表于 2014-9-15 09:39:00

求PPPOE拨号提前3天提醒,到期后自动停止拨号禁用账号脚本

脚本要求清晰明了,最优化脚本,Comment格式为“张三”
求各位大神帮忙~~~~~~~~~~~

9939781 发表于 2014-9-15 10:02:53

铜板是买不到这个的....

cssson 发表于 2014-9-15 11:33:42

9939781 发表于 2014-9-15 10:02
铜板是买不到这个的....

那就自己写。

长通网络 发表于 2014-9-21 16:59:23

网上找来的
测试可用好用

:local tz
:local prof
:local tj
:set tz 3
:set prof Tian_3
:set tj 0
#tz为提前发送到期通知的天数
#prof为提前发送到期通知的模板
#tj为到期后几天停用用户账号,0为到期即停机
:local nyr
:local yy ([:find jan,feb,mar,apr,may,jun,jul,aug,sep,oct,nov,dec [:pick $nyr 0 3]]+1)
#查到当前月份
:if ($yy<10) do={:set yy (0 . $yy)}
:set nyr ([:pick $nyr 7 11] . $yy . [:pick $nyr 4 6])
:local ii "0"
:local pcom8 ""
/ppp secret
:foreach puse in do={
:local pcom
:local pnam
:local tzprof
:set ii ($ii + 1)
:if ($pcom!="" && $pcom!="admin") do={
:if ([:len $pcom]<8) do={
:log error ("账号【".$pnam."】日期备注不足8位,现备注日期:【" . $pcom . "】");:beep frequency=2080;
} else={
:set pcom8 [:tonum [:pick $pcom ([:find $pcom "["]+1) [:find $pcom "]"]]]
:if ($pcom8>1) do={
:if ($pcom8>=$nyr && ($pcom8 - $nyr)<=$tz && $tzprof!=$prof) do={
/ppp secret set profile=$prof;:set ii ($ii - 1)
:log error ("用户【" . $pnam . "】即将到期,通知已下发!")
}}
:if ($nyr>=$pcom8 && ($nyr - $pcom8)>=$tj) do={
/ppp active remove ;
/ppp secret set profile=QianFei ;:set ii ($ii - 1)
:log error ("用户【" . $pnam . "】已过期停用并强制下线!")
}}} else={:log error ("用户【" . $pnam . "】的备注【".$pcom."】格式有误,请重新备注!")}
}
:log warning ("有效用户数【" . $ii . "】")

长通网络 发表于 2014-9-21 17:00:54

配合网上的通知跳转就ok了

yuan199275144 发表于 2014-10-28 17:37:10

下个插件版的ros版本,加到期提醒的脚本就可以实现。
页: [1]
查看完整版本: 求PPPOE拨号提前3天提醒,到期后自动停止拨号禁用账号脚本