Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Форум
    RouterOS
    RouterOS v7.6: api php изменился

    RouterOS v7.6: api php изменился

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    RouterOS v7.6: api php изменился, RouterOS
     
    stefki
    Guest
    #1
    0
    25.11.2022 09:41:00
    Привет, нужна помощь PHP-разработчика. Недавно обновил свой RB4011 до версии 7.6, и теперь не могу получить напряжение и температуру роутера через PHP. Этот код отлично работал на RouterOS v6.

    <?php
    use PEAR2\Net\RouterOS;
    require_once 'PEAR2/Autoload.php';
    require_once 'email.php';
    try {
       $client = new RouterOS\Client('10.2.3.3', 'admin', 'admin771');
    } catch (Exception $e) {
       die('Не удалось подключиться к роутеру.');
       // Можете посмотреть $e, если хотите узнать детали ошибки.
    }

    $responses = $client->sendSync(new RouterOS\Request('/system/health/print'));
    foreach ($responses as $response) {
       if ($response->getType() === RouterOS\Response::TYPE_DATA) {
           $voltage = $response->getProperty('voltage');
           $temp = $response->getProperty('temperature');
       }
    }

    echo 'Напряжение: ', $voltage, 'V';
    echo "<br>";
    echo 'Температура: ', $temp, 'C';

    Вывод RouterOS v6.49 /system health print:
    voltage: 11.9V
    temperature: 28C

    А теперь в RouterOS v7.6 вывод немного другой:
    /system/health/print
    Columns: NAME, VALUE, TYPE
    #  NAME         VALUE  TYPE
    0  voltage      27.2   V  
    1  temperature  44     C

    Если кто-то может помочь с PHP-кодом, как вывести напряжение и температуру для RouterOS v7.6 — спасибо!
     
     
     
    onyegbadocu
    Guest
    #2
    0
    22.05.2023 13:28:00
    Всем привет! У меня два роутера Mikrotik с версиями 6.42 и 6.49. Мой PHP API код работает с версией 6.42, но на 6.49 выдает ошибку «invalid username or password». Я поискал в гугле и узнал, что есть обновленная PHP API для доступа к Mikrotik Router OS более новых версий. Ребята, а как вы подключаетесь к версии 7.6?
     
     
     
    ID1
    Guest
    #3
    0
    22.05.2023 18:44:00
    Вероятно, вы используете routeros_api.class.php и обновляли его какое-то время назад. Посмотрите сюда: https://github.com/BenMenking/routeros-api/blob/master/routeros_api.class.php — он совместим с более старыми версиями RouterOS.
     
     
     
    onyegbadocu
    Guest
    #4
    0
    22.05.2023 20:05:00
    @id спасибо большое за обновление. Я немного запутался. Я использую pear2/net/routeros. Значит, мне нужно отказаться от этого и работать с routeros_api.class.php? Нужно ли мне устанавливать composer? Потому что среди файлов по ссылке, которую ты мне прислал, я вижу файл composer.json. Жду твоего любезного ответа.
     
     
     
    ID1
    Guest
    #5
    0
    23.05.2023 08:03:00
    Моя ошибка. Я не подумал, что ты используешь pear. Следуй инструкции по ссылке https://github.com/pear2/Net_RouterOS
     
     
     
    onyegbadocu
    Guest
    #6
    0
    23.05.2023 18:26:00
    @id спасибо за быстрый ответ. Я проверил ссылку и скачал файлы. Попробую их завтра. Тем временем посмотрел один из файлов и нашел такой код:

    use PEAR2\Net\RouterOS;
    require_once ‘PEAR2/Autoload.php’;

    try {
       $client = new RouterOS\Client(‘192.168.88.1’, ‘admin’, ‘password’);
    } catch (Exception $e) {
       die(‘Не удалось подключиться к роутеру.’);
    }

    Этот код такой же, как в старой версии. Он будет работать с новыми версиями?
     
     
     
    onyegbadocu
    Guest
    #7
    0
    25.05.2023 16:55:00
    @ID, извини, что опять беспокою. routeros_class_api.php подключается к MikroTik роутеру, в отличие от pear2/net/routeros. Мне нужно установить пароль для существующего пользователя в usermanager. Мне удалось получить .id, но не могу сохранить его в переменную, смотри код ниже:

    <?php

    require('../routeros_api.class.php');

    $API = new routerosAPI();

    $API->debug = true;
    $username = 'diye';
    if ($API->connect('172.16.7.3', 'admin', 'password@1')) {

       $API->write('/tool/user-manager/user/print', false);
       $API->write('=.proplist=.id', false);
       //print_r($edituser);
       $API->write('?username=' . $username . ' ');
       $API->write('/tool/user-manager/user/set', false);
       $API->write('=.id=*13', false);
       $API->write('=password=1506');
       $READ = $API->read(false);
       $ARRAY = $API->parseResponse($READ);
       print_r($ARRAY);
       $API->disconnect();
    }
    ?>

    Попытка подключения №1 к 1.1.1.1:8728…
    <<< [6] /login
    <<< [11] =name=admin
    <<< [20] =password=password
    >>> [5/5] байт прочитано.
    >>> [5, 1]!done
    Подключено…
    <<< [29] /tool/user-manager/user/print
    <<< [14] =.proplist=.id
    <<< [14] ?username=diye
    <<< [27] /tool/user-manager/user/set
    <<< [8] =.id=*13
    <<< [14] =password=1506
    >>> [3/3] байта прочитано.
    >>> [3, 24]!re
    >>> [8/8] байт прочитано.
    >>> [8, 15]=.id=*13
    >>> [5/5] байт прочитано.
    >>> [5, 8]!done
    >>> [5/5] байт прочитано.
    >>> [5, 1]!done
    Array ( [0] => Array ( [.id] => *13 ) )
    Отключено…
    Отключено…
     
     
     
    onyegbadocu
    Guest
    #8
    0
    25.06.2023 16:45:00
    Я использовал библиотеку python paramiko для обновления пользователей в Mikrotik UserManager. Так мне проще.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры