2016-08-30 55 views
0

我想与删除活跃热点用户下面的代码,但是他说:删除热点的活跃用户

没有这样的项目

mikrotik.Send("/ip/hotspot/active/remove"); 
mikrotik.Send("=.id=" + username,true); 
下面

是的MikroTik热点的截图 enter image description here

回答

1

执行此操作的最佳方法是找到正确的通过执行活动热用户的.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; 

    }