|
|
|
@ -2,10 +2,13 @@ |
|
|
|
|
|
|
|
namespace RouterOS\Interfaces; |
|
|
|
|
|
|
|
use RouterOS\Config; |
|
|
|
|
|
|
|
/** |
|
|
|
* Interface ConfigInterface |
|
|
|
* |
|
|
|
* @package RouterOS\Interfaces |
|
|
|
* @since 0.2 |
|
|
|
* @since 0.2 |
|
|
|
*/ |
|
|
|
interface ConfigInterface |
|
|
|
{ |
|
|
|
@ -14,41 +17,41 @@ interface ConfigInterface |
|
|
|
*/ |
|
|
|
const ALLOWED = [ |
|
|
|
// Address of Mikrotik RouterOS
|
|
|
|
'host' => 'string', |
|
|
|
'host' => 'string', |
|
|
|
// Username
|
|
|
|
'user' => 'string', |
|
|
|
'user' => 'string', |
|
|
|
// Password
|
|
|
|
'pass' => 'string', |
|
|
|
'pass' => 'string', |
|
|
|
// RouterOS API port number for access (if not set use default or default with SSL if SSL enabled)
|
|
|
|
'port' => 'integer', |
|
|
|
'port' => 'integer', |
|
|
|
// Enable ssl support (if port is not set this parameter must change default port to ssl port)
|
|
|
|
'ssl' => 'boolean', |
|
|
|
'ssl' => 'boolean', |
|
|
|
// Support of legacy login scheme (true - pre 6.43, false - post 6.43)
|
|
|
|
'legacy' => 'boolean', |
|
|
|
'legacy' => 'boolean', |
|
|
|
// Max timeout for answer from RouterOS
|
|
|
|
'timeout' => 'integer', |
|
|
|
'timeout' => 'integer', |
|
|
|
// Count of attempts to establish TCP session
|
|
|
|
'attempts' => 'integer', |
|
|
|
// Delay between attempts in seconds
|
|
|
|
'delay' => 'integer', |
|
|
|
'delay' => 'integer', |
|
|
|
]; |
|
|
|
|
|
|
|
/** |
|
|
|
* Set parameter into array |
|
|
|
* |
|
|
|
* @param string $name |
|
|
|
* @param mixed $value |
|
|
|
* @return ConfigInterface |
|
|
|
* @param mixed $value |
|
|
|
* @return Config |
|
|
|
*/ |
|
|
|
public function set(string $name, $value): ConfigInterface; |
|
|
|
public function set(string $name, $value): Config; |
|
|
|
|
|
|
|
/** |
|
|
|
* Remove parameter from array by name |
|
|
|
* |
|
|
|
* @param string $parameter |
|
|
|
* @return ConfigInterface |
|
|
|
* @return Config |
|
|
|
*/ |
|
|
|
public function delete(string $parameter): ConfigInterface; |
|
|
|
public function delete(string $parameter): Config; |
|
|
|
|
|
|
|
/** |
|
|
|
* Return parameter of current config by name |
|
|
|
|