<?php namespace App\Console\Commands; use Illuminate\Console\Command; use Illuminate\Support\Facades\Log; use App\Classes\Protocol\EMSI; use App\Classes\Sock\SocketException; use App\Classes\Sock\SocketServer; use App\Models\Setup; class CommEMSIReceive extends Command { /** * The name and signature of the console command. * * @var string */ protected $signature = 'comm:emsi:receive'; /** * The console command description. * * @var string */ protected $description = 'EMSI receive'; /** * Execute the console command. * * @return mixed */ public function handle() { Log::info('Listening for EMSI connections...'); $server = new SocketServer(Setup::EMSI_PORT,Setup::EMSI_BIND); $server->setConnectionHandler([new EMSI(Setup::findOrFail(config('app.id'))),'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()); } } }