SetStartStatus(); //Setup the esi authentication container $config = config('esi'); //Declare some variables $charId = 2115439862; $corpId = 98606886; //Esi Scope Check $esiHelper = new Esi(); $contractScope = $esiHelper->HaveEsiScope($charId, 'esi-contracts.read_corporation_contracts.v1'); if($contractScope == false) { Log::critical('Scope check for esi-contracts.read_corporation_contracts.v1 failed.'); return null; } // Disable all caching by setting the NullCache as the // preferred cache handler. By default, Eseye will use the // FileCache. $configuration = Configuration::getInstance(); $configuration->cache = NullCache::class; //Get the refresh token from the database $token = EsiToken::where(['character_id' => $charId])->get(['refresh_token']); //Create the authentication container $authentication = new EsiAuthentication([ 'client_id' => $config['client_id'], 'secret' => $config['secret'], 'refresh_token' => $token[0]->refresh_token, ]); $esi = new Eseye($authentication); try { $contracts = $esi->page(1) ->invoke('get', '/corporations/{corporation_id}/contracts/', [ 'corporation_id' => $corpId, ]); } catch (RequestFailedException $e) { Log::critical("Failed to get the contracts list."); return null; } $pages = $contracts->pages; for($i = 1; $i <= $pages; $i++) { $job = new JobProcessEveContracts; $job->charId = $charId; $job->corpId = $corpId; $job->page = $i; ProcessEveContractsJob::dispatch($job)->onQueue('default'); } //Mark the job as finished $task->SetStopStatus(); } }