我想使用以下代码删除活动热点用户,但说:
没有这样的项目
mikrotik.Send("/ip/hotspot/active/remove");
mikrotik.Send("=.id=" + username,true);
最好的方法是找到活动热点用户的正确.id ,方法是......
/ip/hotspot/active/print
您将收到这样的活跃用户列表:
[tag=3, data={idle-time=6s, uptime=47s, bytes-out=121490,.id=*AC100016, mac-address=2C:AE:2B:9A:22:37, packets-out=314, session-time-left=59m13s, login-by=http-chap, bytes-in=47381, address=172.16.0.22, radius=false, server=SERVER_TEST, user=0872test, packets-in=330}]
在这种情况下,您需要的 .id 是.id=*AC100016
现在,我给你和我的方法deleteActiveUser()的例子。它已经在 Java 中完成,但在我看来很明显:
public boolean deleteActiveUser(String id_param){
boolean ret = true;
try {
StringBuilder sb = new StringBuilder();
sb.append("/ip/hotspot/active/remove .id=");
sb.append(id_param);
this.getConnection(this.mikrotik).execute(sb.toString());
} catch (MikrotikApiException e) {
ret = false;
e.printStackTrace();
} catch (NullPointerException ex) {
ex.printStackTrace();
ret = false;
} finally {
closeConnection();
}
return ret;
}