51 lines
1008 B
PHP
51 lines
1008 B
PHP
|
<?php
|
||
|
|
||
|
namespace App\Console\Commands;
|
||
|
|
||
|
use Illuminate\Console\Command;
|
||
|
use Illuminate\Support\Facades\Log;
|
||
|
|
||
|
use App\Classes\Sock\SocketException;
|
||
|
use App\Classes\Sock\SocketServer;
|
||
|
use App\Classes\Protocol\Zmodem as ZmodemClass;
|
||
|
|
||
|
class ZmodemReceive extends Command
|
||
|
{
|
||
|
/**
|
||
|
* The name and signature of the console command.
|
||
|
*
|
||
|
* @var string
|
||
|
*/
|
||
|
protected $signature = 'zmodem:receive';
|
||
|
|
||
|
/**
|
||
|
* The console command description.
|
||
|
*
|
||
|
* @var string
|
||
|
*/
|
||
|
protected $description = 'ZMODEM receive';
|
||
|
|
||
|
/**
|
||
|
* Execute the console command.
|
||
|
*
|
||
|
* @return mixed
|
||
|
*/
|
||
|
public function handle()
|
||
|
{
|
||
|
Log::info('Listening for ZMODEM connections...');
|
||
|
|
||
|
$server = new SocketServer(60177,'0.0.0.0');
|
||
|
$server->setConnectionHandler([new ZmodemClass,'onConnect']);
|
||
|
|
||
|
try {
|
||
|
$server->listen();
|
||
|
|
||
|
} catch (SocketException $e) {
|
||
|
if ($e->getMessage() == 'Can\'t accept connections: "Success"')
|
||
|
Log::debug('Server Terminated');
|
||
|
else
|
||
|
Log::emergency('Uncaught Message: '.$e->getMessage());
|
||
|
}
|
||
|
}
|
||
|
}
|