Ejemplo n.º 1
0
 /**
  * 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;
 }
Ejemplo n.º 2
0
/**
 * @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;
}