. * * @link https://www.librenms.org * * @copyright 2021 Tony Murray * @author Tony Murray */ namespace LibreNMS\OS; use App\Models\Device; use LibreNMS\Interfaces\Discovery\OSDiscovery; use LibreNMS\OS; class ArrisCm extends OS implements OSDiscovery { public function discoverOS(Device $device): void { preg_match('/<.+); VENDOR:.*SW_REV: (?.+); MODEL: (?.+)>>/', $device->sysDescr, $matches); $device->hardware = "{$matches['hardware']} (Rev: {$matches['rev']})"; $device->version = $matches['version']; } }