- Saved searches
- Use saved searches to filter your results more quickly
- BenMenking/routeros-api
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- About
- Что такое API и как мы можем использовать его в работе Mikrotik Router OS?
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Client API for RouterOS/Mikrotik
BenMenking/routeros-api
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Client API for RouterOS/Mikrotik
This class was originally written by Denis Basta and updated by several contributors. It aims to give a simple interface to the RouterOS API in PHP.
Contributors (before moving to Git)
- Nick Barnes
- Ben Menking (ben [at] infotechsc [dot] com)
- Jeremy Jefferson (http://jeremyj.com)
- Cristian Deluxe (djcristiandeluxe [at] gmail [dot] com)
- Mikhail Moskalev (mmv.rus [at] gmail [dot] com)
Please see git logs. Version 1.0 through current version have been preserved in this Git repo.
About
Client API for RouterOS/Mikrotik
Что такое API и как мы можем использовать его в работе Mikrotik Router OS?
Поговорим об использовании API в Mikrotik Router OS.
(API) Интерфейс программирования приложений (иногда, интерфейс прикладного программирования) (application programming interface, API [эй-пи-ай]) — это набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами для написания всевозможных приложений.
Mikrotik Router OS также предоставляет API для взаимодействия с устройствами Mikrotik Routerboard при помощи приложений, написанных на различных языках программирования.
Рассмотрим возможность использования API в PHP.
Для взаимодействия с Mikrotik Router OS при помощи API, из PHP есть готовый класс https://wiki.mikrotik.com/wiki/API_PHP_class#Example_1.
Рис.1. PHP класс для работы с API Mikrotik Router OS.
Создадим файл routeros_api.class.php и поместим в него классы для взаимодействия с API Mikrotik Router OS.
Также создадим файл router_connect.php, в котором будем писать свой код.
Перед тем как приступить к работе с API, необходимо включить нужный сервис.
Переходим в раздел IP Services.
Рис.3. Mikrotik Router OS сервис api.
Включаем сервис с именем api.
Приступим к написанию кода. Выполним соединение с устройством Mikrotik Routerboard.
if ($API->connect(‘192.168.4.254’, ‘ubnt’, ‘ubnt’))
print ‘Соединение установлено’;
Подключаем файл с классом:
Добавляем условный оператор if else. В качестве условия, вызываем метод для соединения с устройством Mikrotik Routerboard и передаем в него параметры соединения:
if ($API->connect(‘192.168.4.254’, ‘ubnt’, ‘ubnt’))
Если соединение прошло успешно, выводим сообщение:
print ‘Соединение установлено’;
Рис.4. Сообщение об успешном соединении с Mikrotik Routerboard.
Вызываем метод disconnect() и разрываем соединение с устройством Mikrotik Routerboard:
Если по каким-то причинам устройство Mikrotik Routerboard оказалось недоступно, выводим сообщение об ошибке:
Рис.5. Сообщение об ошибке соединения с Mikrotik Routerboard.
Евгений Рудченко специально для ASP24.