1. Go to this page and download the library: Download meklis/switcher-core library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
meklis / switcher-core example snippets
SwitcherCore\Modules\Helper;
use SwitcherCore\Switcher\CoreConnector; //Подготавливает объект кора, более удобно
use SwitcherCore\Switcher\Device;
use SwitcherCore\Switcher\PhpCache; //Кеш для кора, или используйте свой, реализовав интерфейс SwitcherCore\Switcher\CacheInterface
$deviceIp = '127.0.0.1';
$deviceCommunity = 'public';
$deviceLogin = 'login';
$devicePassword = 'password';
$coreConnector = new CoreConnector(
//Возвращает путь к встроенному каталогу с конфигурацией
//При желании можно скопировать конфигурацию с библиотеки (vendor/meklis/switcher-core/configs) и изменять ее
Helper::getBuildInConfig()
);
$connector = ($coreConnector)
//Кеш устанавливать необязательно, но желательно и желательно использовать реализацию с memcache
->setCache(new PhpCache());
$core = $connector->init(
//Метод init возвращает экземпляр класса Device
Device::init($deviceIp, $deviceCommunity, $deviceLogin, $devicePassword)
//Установка параметров для подключений, необязательно (в примере указаны дефолтные параметры)
->set('consoleConnectionType', Device::CONSOLE_TELNET)
->set('consoleTimeout', 10)
->set('consolePort', 23)
->set('snmpRepeats', 3)
->set('snmpTimeoutSec', 2)
->set('mikrotikApiPort', 8728)
);
//Пример получения данных с модуля
echo json_encode($core->action('system'), JSON_PRETTY_PRINT);
/*
Модуль system вернет следующий вывод (поля могут изменяться в зависимости от производителя)
{
"descr": "RouterOS RB952Ui-5ac2nD",
"uptime": "8d 9h 55min 32sec",
"contact": "",
"name": "G_OfficeMik",
"location": "",
"meta": {
"name": "Mikrotik RB952Ui-5ac2nD",
"detect": {
"description": "^RouterOS RB952Ui-5ac2nD$",
"objid": "^.1.3.6.1.4.1.14988.1$"
},
"ports": 0,
"extra": [],
"modules": [
"system",
"arp_info",
"arp_ping",
"interface_vlan_info",
"dhcp_server_info",
"lease_info",
"ctrl_static_arp",
"ctrl_static_lease"
]
}
}
*/
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.