diff --git a/api/endpoints/netscan.php b/api/endpoints/netscan.php index 5eae700..fa47cbd 100644 --- a/api/endpoints/netscan.php +++ b/api/endpoints/netscan.php @@ -48,6 +48,23 @@ foreach ($devices as $d) { [$vendor, $ip] ); } + // Store SIP registration status in kb_facts if provided (VoIP probe) + $sipStatus = trim($d['sip_status'] ?? ''); + $extension = trim($d['extension'] ?? ''); + if ($sipStatus && $extension && $extension !== 'none') { + JarvisDB::execute( + "INSERT INTO kb_facts (category, fact_key, fact_value, host) + VALUES ('voip', ?, ?, ?) + ON DUPLICATE KEY UPDATE fact_value=VALUES(fact_value), updated_at=NOW()", + ["ext_{$extension}_sip", $sipStatus, $ip] + ); + JarvisDB::execute( + "INSERT INTO kb_facts (category, fact_key, fact_value, host) + VALUES ('voip', ?, ?, ?) + ON DUPLICATE KEY UPDATE fact_value=VALUES(fact_value), updated_at=NOW()", + ["ext_{$extension}_ip", $ip, $ip] + ); + } $upserted++; }