API painel admin

Pedro, tudo bom?

Estou desenvolvendo um script no mikrotik em que, a cada X horas, ele vai baixar a lista de usuários do mk-auth (clientes_mkt.php) e restaurar no mikrotik. Isso porque, caso o mk-auth fique off, os clientes não tenham problemas para autenticar.

Porém, como vou fazer para baixar esse arquivo se tem que estar autenticado?

Então pensei numa possível API. Vi que você já colocou uma chave de API na página de dados da empresa. Então que tal se você fizer que, se essa API for enviada por GET, ele passa a valer como usuário e senha?

Exemplo, se eu colocar para o script acessar a pagina http://172.31.255.2/admin/clientes_mkt.php?api=1234567890, ele aceita e disponibiliza o arquivo.

Isso seria bom não apenas para esse arquivo de clientes, mas para outras funções do sistema, pois permitiria criarmos APIs que integram com o Mk-Auth.

No aguardo de uma possível solução.

Para adicionar comentários, você deve ser membro de MK-AUTH.

Join MK-AUTH

Enviar-me um email quando as pessoas responderem –

Respostas

  • acompanhando !!

  • o sistema já cria e envia por ftp para o mikrotik um arquivo chamado mikrotik.rsc com os dados de login dos cliente, vc pode usar o script abaixo para importar amigo:

    :if ( [/file find name=mikrotik.rsc] != "" ) do={
    :log warning "Importando MikroTik Geral";
    /import mikrotik.rsc;
    /file remove mikrotik.rsc;
    }

    sobre a API, o sistema tem uma mini API que retorna os principais dados, fica na pasta /usr/local/mkauth/api/ mais é preciso pegar a KEY DA API que fica na pagina de dados do provedor e passar em uma url como abaixo:

    http://url_servidor_mk-auth/api/arquivo.php?key=keyapi&valor=oquevcprecisa

    Na lista abaixo tem do dado que cada arquivo da pasta api retorna e o valor preciso:

    ARQUIVO / DADO RETORNADO / VALOR

    titulos.php / dados do titulo / numero do titulo

    usuarios.php / dados do usuario / login do sistema

    chamados.php / dados do chamado / numero do chamado

    clientes.php / dados do cliente / login do cliente

    contas.php / dados da conta / numero da conta

    empresa.php / dados da empresa / não precisa

    todos os dados retornam no formado json


  • Show. Como faz pra ativar o envio do mikrotik.rsc para o mikrotik?
  • ativa o uso de FTP em servidores no mk-auth:

    ftpwebadmin.jpg



    Luiz Paulo disse:

    Show. Como faz pra ativar o envio do mikrotik.rsc para o mikrotik?
  • Ronildo, me passa o TeamViewer por e-mail que amanhã verifico pra vc. Não estou na empresa e nem no pc.
  • Ah ta, não sabia que esse FTP nos servidores era pra enviar o mikrotik.rsc.
  • Pedro, cheguei a fazer o teste como disse. Ele roda perfeitamente, mas quando vai rodar no segundo agendamento, da problema, pois diz que o plano já existe cadastrado.

    Minha ideia seria colocar comment em todas as regras com o nome de mkauth, igual vc fez nos clientes. Dessa forma posso colocar um remove nos que possuem comment=mkauth antes de importar. Ou então exporta os planos separadamente dos clientes rsrs

    Pedro Filho disse:

    o sistema já cria e envia por ftp para o mikrotik um arquivo chamado mikrotik.rsc com os dados de login dos cliente, vc pode usar o script abaixo para importar amigo:

    :if ( [/file find name=mikrotik.rsc] != "" ) do={
    :log warning "Importando MikroTik Geral";
    /import mikrotik.rsc;
    /file remove mikrotik.rsc;
    }

    sobre a API, o sistema tem uma mini API que retorna os principais dados, fica na pasta /usr/local/mkauth/api/ mais é preciso pegar a KEY DA API que fica na pagina de dados do provedor e passar em uma url como abaixo:

    http://url_servidor_mk-auth/api/arquivo.php?key=keyapi&valor=oquevcprecisa

    Na lista abaixo tem do dado que cada arquivo da pasta api retorna e o valor preciso:

    ARQUIVO / DADO RETORNADO / VALOR

    titulos.php / dados do titulo / numero do titulo

    usuarios.php / dados do usuario / login do sistema

    chamados.php / dados do chamado / numero do chamado

    clientes.php / dados do cliente / login do cliente

    contas.php / dados da conta / numero da conta

    empresa.php / dados da empresa / não precisa

    todos os dados retornam no formado json


  • mais os planos ficam separados no arquivo, é uma parte dos planos e outros clientes...

    Luiz Paulo disse:

    Pedro, cheguei a fazer o teste como disse. Ele roda perfeitamente, mas quando vai rodar no segundo agendamento, da problema, pois diz que o plano já existe cadastrado.

    Minha ideia seria colocar comment em todas as regras com o nome de mkauth, igual vc fez nos clientes. Dessa forma posso colocar um remove nos que possuem comment=mkauth antes de importar. Ou então exporta os planos separadamente dos clientes rs

  • ue então devo estar fazendo algo de errado. Eu exclui os arquivos rsc do mikrotik. Como faço pra rodar a função manualmente pro mkauth enviar o rsc por ftp?

  • /opt/php5/bin/php -q /usr/local/mkauth/scripts/dhcp_mkt.php
    /opt/php5/bin/php -q /usr/local/mkauth/scripts/clientes_mkt.php
    /opt/php5/bin/php -q /usr/local/mkauth/scripts/pgaviso_mkt.php
    /opt/php5/bin/php -q /usr/local/mkauth/scripts/ftp_mkt.php



    Luiz Paulo disse:

    ue então devo estar fazendo algo de errado. Eu exclui os arquivos rsc do mikrotik. Como faço pra rodar a função manualmente pro mkauth enviar o rsc por ftp?

This reply was deleted.