/** * Execute the job. * * @internal param $devices * @return void */ public function handle() { $risArray = createRisPhoneArray($this->devices); $sxml = new RisSoap(); $risResults = $sxml->getDeviceIP($risArray); $finalReport = processRisResults($risResults, $risArray); foreach ($finalReport as $key => $value) { if (!filter_var($value['IpAddress'], FILTER_VALIDATE_IP)) { $finalReport[$key]['Firmware'] = 'Unavailable'; $finalReport[$key]['Model'] = 'Unavailable'; continue; } $res = executeQuery('SELECT name FROM typeproduct WHERE enum = "' . $value['Product'] . '"'); // $finalReport[$key]['Model'] = $res[0]->name; $finalReport[$key]['Model'] = 'Cisco 9971'; $client = new Client(); // $crawler = $client->request('GET', 'http://' . $value['IpAddress']); $crawler = $client->request('GET', 'http://' . '10.188.52.25'); switch ($finalReport[$key]['Model']) { case 'Cisco 7945': case 'Cisco 7965': case 'Cisco 7975': $finalReport[$key]['Firmware'] = $crawler->filter('DIV TABLE TR')->eq(5)->filter('td')->eq(2)->text(); break; case 'Cisco 9951': $finalReport[$key]['Firmware'] = $crawler->filter('DIV TABLE TR')->eq(3)->filter('td')->eq(2)->text(); break; case 'Cisco 9971': $finalReport[$key]['Firmware'] = $crawler->filter('DIV TABLE TR')->eq(5)->filter('td')->eq(2)->text(); break; default: $finalReport[$key]['Firmware'] = 'Unavailable'; } } return $finalReport; }
/** * @param $deviceList * @return mixed */ function generateEraserList($deviceList) { $macList = array_column($deviceList, 'mac'); $axl = new AxlSoap(); $user = $axl->getAxlUser(); $devices = createDeviceArray($user, $macList); $res = $axl->updateAxlUser($devices); $risArray = createRisPhoneArray($macList); // Get Device IP's $sxml = new RisSoap(); $risResults = $sxml->getDeviceIP($risArray); $risPortResults = processRisResults($risResults, $risArray); //Fetch device model from type product for ($i = 0; $i < count($risPortResults); $i++) { if ($risPortResults[$i]['IsRegistered']) { $results = $axl->executeQuery('SELECT name FROM typeproduct WHERE enum = "' . $risPortResults[$i]['Product'] . '"'); $risPortResults[$i]['Model'] = $results->return->row->name; } } foreach ($deviceList as $row) { $key = array_search($row['mac'], array_column($risPortResults, 'DeviceName')); $risPortResults[$key]['type'] = $row['type']; if (isset($row['bulk_id'])) { $risPortResults[$key]['bulk_id'] = $row['bulk_id']; } } return $risPortResults; }