Página 1 de 2 12 ÚltimoÚltimo
+ Responder ao Tópico



  1. Pessoal, estou utilizando uma RB750GL e a API PHP para alguns procedimentos, no entanto, de forma alguma estou conseguindo utilizar a API para remover um usuário da lista de conexões ativas do hotspot.

    Eu consigo listar, consigo cadastrar, alterar senha e etc, agora, remover tá osso. Já tentei os comando abaixo e nada.

    $API->comm("/ip/hotspot/active remove [/ip/hotspot/active find where user=user]");
    $API->comm("/ip/hotspot/active remove [find where user=user]");
    $API->comm("/ip/hotspot/active remove where user=user]");
    $API->comm("/ip/hotspot/active remove user=user]");

    O único comando que deu certo foi o:

    $API->comm("/ip/hotspot/active/remove", array("numbers"=> UM_NÚMERO_DECIMAL,));

    Mas aí entra outro problema, eu não consigo na listagem capturar esse número nem por reza braba, só consigo listar o usuário.

    Um help please ae moçada!

    Vlw.

  2. Bom, mesmo pesquisando, pesquisando e pesquisando, eu não consegui muita coisa. Então resolvi adotar o famoso recurso, tentativa vs erro. Então bingo, consegui o que eu queria. Não sei é a melhor forma, mas pelo menos eu consegui. Segue abaixo minha solução.


    Arquivo >> conexoes_ativas.php

    require('routeros_api_class.php');
    $servidor = "10.10.10.10";
    $API = new routeros_api();
    $API->debug = false;
    if ($API->connect($servidor, 'USUARIO', 'SENHA')) {



    // Listar as conexões ativas no momento.
    $LISTA = $API->comm("/ip/hotspot/active/print");

    &nbsp);

    }

    Nesse FOR, monta a lista de conexões. Na minha página, eu exibo várias coisas, mas neste for estou exibindo apenas o ID do usuário, que é o que nos interessa para remover a conexão.


    for ($i=0; $i<=$TOTAL; $i++)


    {
    $regtable = $ARRAY[$i];

    echo "<a href=del.php?usuario=".$regtable6['.id'] . ">Remover</a><br>";
    }


    Na página del.php eu fiz o seguinte.

    require('routeros_api_class.php');
    $servidor = "10.10.10.10";
    $API = new routeros_api();
    $API->debug = false;



    //A variável $user recebe o valor de del.php?usuario=".$regtable6['.id']

    $user = $_GET['usuario'];
    if ($API->connect($servidor, 'USUARIO', 'SENHA')) {

    //e aqui faz a brincadeira...vai na RB, pegar o ID do usuário e manda ele pro espaço e manda de volta para a página com a lista de conexões.


    $API->comm("/ip/hotspot/active/remove", array(
    ".id"=> "$user",));

    $API->disconnect();

    header("Location:conexoes_ativas.php");

    }
    Última edição por maxwbr; 28-10-2015 às 18:48.



  3. Se alguém ainda se interessar...segue o código para montar a lista de conexões ativas mais enxuta.

    <table class="striped responsive-table">
    <tr style="font-weight:bold;">
    <td>Usuário</td>
    <td>IP</td>
    <td>MAC</td>
    <td>Tempo de Conexão</td>
    <td>Ação</td>
    </tr>
    <?php for ($i=0; $i<=$TOTAL -1; $i++): ?>
    <?php $regtable = $ARRAY[$i] ?>

    <tr>
    <td><?php echo "<font color=#04B404>" . $regtable['user'] . "</font>"; ?></td>
    <td><?php echo "<font color=#04B404>" . $regtable['address'] . "</font>"; ?></td>
    <td><?php echo "<font color=#04B404>" . $regtable['mac-address'] . "</font>"; ?></td>
    <td><?php echo "<font color=#04B404>" . $regtable['uptime'] . "</font>"; ?></td>
    <td><?php echo "<font color=#04B404><a href=del.php?usuario=" . $regtable['.id'] . "><img src=img/delete.png></a></font>"; ?></td>


    </tr>
    <?php endfor; ?>
    </table>

  4. Vc pode remover pelo login da seguinte forma
    $API->comm("/ip/hotspot/user/remove", array(
    "numbers"=> "$login",));

    Uma forma de saber como aplicar algum comando é ver primeiro no terminal do mikrotik depois é so fazer igual com api.
    Com dois tab no menu do terminal vc lista as possibilidades de cada menu.




  5. Olá deson00, obrigado pela resposta. Mas eu já consegui a solução, e foi executando exatamente os procedimentos que você citou. Depois fui aos poucos encaixando tudo na API até conseguir o resultado esperado.

    Abs






Tópicos Similares

  1. RB 750 GL + Servidor Radius + Autenticação PPPOE
    Por mateusaires no fórum Mikrotik
    Respostas: 4
    Último Post: 14-02-2017, 19:49
  2. Respostas: 3
    Último Post: 17-10-2016, 23:07
  3. RB 750 Gl abrir porta de entrada para dois links?
    Por dsalvanhini no fórum Redes
    Respostas: 12
    Último Post: 28-07-2015, 22:30
  4. Webproxy não funciona - rb 750 gl
    Por jaksonp no fórum Redes
    Respostas: 5
    Último Post: 25-11-2014, 16:16
  5. Respostas: 10
    Último Post: 19-08-2014, 16:06

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L