private function internalMonitors($agnt, $server) { $server_id = $server['id']; $adentId = $agnt['id']; if (isset($agnt['cpu'])) { $status_associate = 'no'; if (!MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $agnt['cpu']['id'])) { $status = ''; $monitorId = $agnt['cpu']['id']; $value = monitisSnapShots::linkInternalMonitor($monitorId, 'cpu', $adentId, $server_id); $this->whmcsInt[] = $value; $this->result[] = array('server' => $server['name'], 'action' => 'link', 'monitor' => $value); } $wmon = $this->fixMonitor($agnt['cpu']['id']); } if (isset($agnt['memory'])) { if (!MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $agnt['memory']['id'])) { $status = ''; $monitorId = $agnt['memory']['id']; $value = monitisSnapShots::linkInternalMonitor($monitorId, 'memory', $adentId, $server_id); $this->whmcsInt[] = $value; $this->result[] = array('server' => $server['name'], 'action' => 'link', 'monitor' => $value); } $wmon = $this->fixMonitor($agnt['memory']['id']); } if (isset($agnt['drives'])) { $drives = $agnt['drives']; for ($j = 0; $j < count($drives); $j++) { $nm = explode("@", $drives[$j]['name']); $name = substr($nm[0], strlen('drive_')); if (!MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $drives[$j]['id'])) { $monitorId = $drives[$j]['id']; $value = monitisSnapShots::linkInternalMonitor($monitorId, 'drive', $adentId, $server_id); $this->whmcsInt[] = $value; $this->result[] = array('server' => $server['name'], 'action' => 'link', 'monitor' => $value); } $wmon = $this->fixMonitor($drives[$j]['id']); } } }
public function filterInternalMonitors($api, $int, $server_id) { $adentId = $api['agentId']; $monitors = array(); $drivers = null; $intMonitors = array('cpu' => null, 'memory' => null, 'drives' => null); if (isset($api['cpu']) && count($api['cpu']) > 0 && isset($api['cpu']['id'])) { $intMonitors['cpu'] = $api['cpu']; $monitorId = $api['cpu']['id']; $index = MonitisHelper::in_array_index($int, 'monitor_id', $monitorId); if ($index > -1) { $monitors[] = $int[$index]; $int[$index]['api'] = 1; } else { $monitors[] = monitisSnapShots::linkInternalMonitor($monitorId, 'cpu', $adentId, $server_id); } } if (isset($api['memory']) && count($api['memory']) > 0 && isset($api['memory']['id'])) { $monitorId = $api['memory']['id']; $index = MonitisHelper::in_array_index($int, 'monitor_id', $monitorId); if ($index > -1) { $monitors[] = $int[$index]; $int[$index]['api'] = 1; } else { $monitors[] = monitisSnapShots::linkInternalMonitor($monitorId, 'memory', $adentId, $server_id); } } $drvrs = array(); if (isset($api['drives']) && count($api['drives']) > 0) { $drivers = $api['drives']; //$intMonitors['drives'] = array(); for ($i = 0; $i < count($drivers); $i++) { // monitor exist if (isset($drivers[$i]['id'])) { $monitorId = $drivers[$i]['id']; // is linked $index = MonitisHelper::in_array_index($int, 'monitor_id', $monitorId); if ($index > -1) { $monitors[] = $int[$index]; $int[$index]['api'] = 1; } else { $monitors[] = monitisSnapShots::linkInternalMonitor($monitorId, 'drive', $adentId, $server_id); } } else { $monitors[] = null; } } } // remove api deleted monitors for ($i = 0; $i < count($int); $i++) { if (!isset($int[$i]['api'])) { monitisSqlHelper::altQuery('DELETE FROM ' . MONITIS_INTERNAL_TABLE . ' WHERE monitor_id=' . $int[$i]['monitor_id']); } } return $monitors; }
private function intMonitor($agnt, $server_id) { $info = array('id' => $agnt['id'], 'status' => $agnt['status'], 'platform' => $agnt['platform'], 'key' => $agnt['key'], 'cpu' => null, 'memory' => null, 'drive' => null); $adentId = $agnt['id']; if (isset($agnt['cpu']) && isset($agnt['cpu'][0])) { $cpu = $agnt['cpu'][0]; $linkedMon = MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $cpu['id']); if (!$linkedMon) { $status = ''; $monitorId = $cpu['id']; $linkedMon = monitisSnapShots::linkInternalMonitor($monitorId, 'cpu', $adentId, $server_id); $this->whmcsInt[] = $linkedMon; } //$wmon = $this->fixMonitor($cpu['id']); $info['cpu'] = $cpu; $info['cpu']['available'] = $linkedMon['available']; $info['cpu']['publickey'] = $linkedMon['publickey']; } if (isset($agnt['memory']) && isset($agnt['memory'][0])) { $memory = $agnt['memory'][0]; $linkedMon = MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $memory['id']); if (!$linkedMon) { $status = ''; $monitorId = $memory['id']; $linkedMon = monitisSnapShots::linkInternalMonitor($monitorId, 'memory', $adentId, $server_id); $this->whmcsInt[] = $linkedMon; } //$wmon = $this->fixMonitor($memory['id']); $info['memory'] = $memory; $info['memory']['available'] = $linkedMon['available']; $info['memory']['publickey'] = $linkedMon['publickey']; } if (isset($this->agentInfo['drives'])) { $drvs = array(); $allDrives = $this->agentInfo['drives']; for ($j = 0; $j < count($allDrives); $j++) { $drive = $allDrives[$j]; $monitor = MonitisHelper::in_array($agnt['drives'], 'letter', $drive['letter']); if ($monitor) { $linkedMon = MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $monitor['id']); if (!$linkedMon) { $linkedMon = monitisSnapShots::linkInternalMonitor($monitor['id'], 'drive', $adentId, $server_id); $this->whmcsInt[] = $linkedMon; } $monitor['available'] = $linkedMon['available']; $monitor['publickey'] = $linkedMon['publickey']; $drvs[] = $monitor; } else { $drvs[] = array('driveLetter' => $drive['letter']); } } $info['drive'] = $drvs; } return $info; }
private function intMonitor($agnt, $server_id) { $memory = null; $cpu = null; $adentId = $agnt['id']; if (isset($agnt['cpu'])) { $status_associate = 'no'; if (!MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $agnt['cpu']['id'])) { $status = ''; $monitorId = $agnt['cpu']['id']; if ($this->synchronize) { $value = monitisSnapShots::linkInternalMonitor($monitorId, 'cpu', $adentId, $server_id); } $this->whmcsInt[] = $value; } //else { $status_associate = 'yes'; if ($this->synchronize) { $wmon = $this->fixMonitor($agnt['cpu']['id'], $this->whmcsInt); } $status = ''; if (isset($agnt['cpu']['status'])) { $status = $agnt['cpu']['status']; } //} $diffTime = $this->diffTime($agnt['cpu']['time']); $cpu = array('id' => $agnt['cpu']['id'], 'diff' => $diffTime, 'status' => $status, 'associate' => $status_associate); } if (isset($agnt['memory'])) { $status_associate = 'no'; if (!MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $agnt['memory']['id'])) { $status = ''; $monitorId = $agnt['memory']['id']; if ($this->synchronize) { $this->whmcsInt[] = monitisSnapShots::linkInternalMonitor($monitorId, 'memory', $adentId, $server_id); } } //else { $status_associate = 'yes'; if ($this->synchronize) { $wmon = $this->fixMonitor($agnt['memory']['id'], $this->whmcsInt); } $status = ''; if (isset($agnt['memory']['status'])) { $status = $agnt['memory']['status']; } $diffTime = $this->diffTime($agnt['memory']['time']); $memory = array('id' => $agnt['memory']['id'], 'diff' => $diffTime, 'status' => $status, 'associate' => $status_associate); } $info = array('agent_id' => $agnt['id'], 'status' => $agnt['status'], 'cpu' => $cpu, 'memory' => $memory); if (isset($agnt['drives'])) { $drives = $agnt['drives']; $info['drive'] = array(); for ($j = 0; $j < count($drives); $j++) { $nm = explode("@", $drives[$j]['name']); $name = substr($nm[0], strlen('drive_')); $status_associate = 'no'; if (!MonitisHelper::in_array($this->whmcsInt, 'monitor_id', $drives[$j]['id'])) { $monitorId = $drives[$j]['id']; if ($this->synchronize) { $this->whmcsInt[] = monitisSnapShots::linkInternalMonitor($monitorId, 'drive', $adentId, $server_id); } } //else { $status_associate = 'yes'; if ($this->synchronize) { $wmon = $this->fixMonitor($drives[$j]['id'], $this->whmcsInt); } $status = ''; if (isset($drives[$j]['status'])) { $status = $drives[$j]['status']; } //} $diffTime = $this->diffTime($drives[$j]['time']); $info['drive'][] = array('id' => $drives[$j]['id'], 'diff' => $diffTime, 'status' => $status, 'name' => $name, 'associate' => $status_associate); } } return $info; }