1. Go to this page and download the library: Download lifo/remote-control 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/ */
lifo / remote-control example snippets
use Lifo\RemoteControl\RemoteControl;
use Lifo\RemoteControl\Type\NetworkDevice;
// Raw control object for low level access (see 2nd example for an easier approach)
$rc = new RemoteControl("ssh username@hostname", array(
'auto_start' => true,
'log_stdout' => true,
// more options available
));
// generic prompt for "cisco" devices; your milage may vary.
$prompt = '[a-zA-Z0-9._-]+ ?(\(config[^\)]*\))? ?[$#>] ?(\(enable\))? *$';
// wait for output from the process and act upon various patterns.
// Each pattern can be a closure or simple variable. If any closure
// returns true or RemoteControl::WAIT_DONE then the wait loop will end.
$res = $rc->wait(array(
// REGEX/GLOB/STR => Closure or mixed value
array($prompt => true ),
array('yes/no\)\?' => function($rc){ $rc->writeln('yes'); } ),
array('[Pp]assword:' => function($rc){ $rc->writeln('password'); } ),
));
// attempt another command and wait for prompt
$rc->writeln("show clock");
$rc->wait($prompt);
// ----------------------------------------------------------
// OR ... (this is preferred over the low-level method above)
// ----------------------------------------------------------
// High level control object for easier access of network type devices
$d = new NetworkDevice(array(
'protocol' => 'ssh',
'host' => 'hostname',
'username' => 'username',
'password' => 'password',
'enable' => 'enablepw',
// more options ...
//'remote_control_options' => array(
// 'log_stdout' => true,
//)
));
$d->verbose(true); // for debugging/troubleshooting only; same as setting log_stdout = true
// login method handles a lot of variations for different devices and
// will enable if possible. You can call $d->enable() manually too.
if (!$d->login()) {
die("Error logging in!\n");
}
// basic method to send a command and wait for a prompt. Returns
// any output received after the commmand.
echo $d->send("show version");
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.