mirror of
https://github.com/Telecominfraproject/wlan-cloud-opensync-controller.git
synced 2025-11-02 19:47:52 +00:00
The number of connected AP displayed on Client Devices page and Dashboard page are not in sync.
This commit is contained in:
@@ -303,6 +303,9 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
EquipmentRoutingRecord equipmentRoutingRecord = gatewayController.registerCustomerEquipment(ce.getName(),
|
||||
ce.getCustomerId(), ce.getId());
|
||||
|
||||
LOG.info("Clear existing status {} for AP {}",
|
||||
statusServiceInterface.delete(ce.getCustomerId(), ce.getId()), apId);
|
||||
|
||||
updateApStatus(ce, connectNodeInfo);
|
||||
|
||||
removeNonWifiClients(ce, connectNodeInfo);
|
||||
@@ -742,7 +745,11 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
} else {
|
||||
LOG.warn("Cannot find ap {} in inventory", apId);
|
||||
}
|
||||
|
||||
Equipment ce = equipmentServiceInterface.getByInventoryIdOrNull(apId);
|
||||
if (ce != null) {
|
||||
LOG.info("AP {} disconnected, delete status records {}", apId,
|
||||
statusServiceInterface.delete(ce.getCustomerId(), ce.getId()));
|
||||
}
|
||||
updateApDisconnectedStatus(apId);
|
||||
} catch (Exception e) {
|
||||
LOG.error("Exception when registering ap routing {}", apId, e);
|
||||
@@ -753,6 +760,7 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
private void updateApDisconnectedStatus(String apId) {
|
||||
try {
|
||||
Equipment ce = equipmentServiceInterface.getByInventoryIdOrNull(apId);
|
||||
|
||||
if (ce == null) {
|
||||
LOG.debug("updateDisconnectedApStatus::Cannot get Equipment for AP {}", apId);
|
||||
return;
|
||||
@@ -761,7 +769,8 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
Status statusRecord = statusServiceInterface.getOrNull(ce.getCustomerId(), ce.getId(),
|
||||
StatusDataType.EQUIPMENT_ADMIN);
|
||||
if (statusRecord == null) {
|
||||
LOG.debug("updateApDisconnectedStatus::Cannot get EQUIPMENT_ADMIN status for CustomerId {} or EquipmentId {} for AP {}",
|
||||
LOG.debug(
|
||||
"updateApDisconnectedStatus::Cannot get EQUIPMENT_ADMIN status for CustomerId {} or EquipmentId {} for AP {}",
|
||||
ce.getCustomerId(), ce.getId(), apId);
|
||||
return;
|
||||
}
|
||||
@@ -769,6 +778,7 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
((EquipmentAdminStatusData) statusRecord.getDetails()).setStatusCode(StatusCode.error);
|
||||
// Update the equipment admin status
|
||||
statusRecord = statusServiceInterface.update(statusRecord);
|
||||
|
||||
} catch (Exception e) {
|
||||
LOG.error("Exception in updateApDisconnectedStatus", e);
|
||||
throw e;
|
||||
@@ -808,8 +818,7 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
|
||||
ret.setRfProfile(profileContainer.getChildOfTypeOrNull(equipmentConfig.getProfileId(), ProfileType.rf));
|
||||
|
||||
ret.setSsidProfile(
|
||||
profileContainer.getChildrenOfType(equipmentConfig.getProfileId(), ProfileType.ssid));
|
||||
ret.setSsidProfile(profileContainer.getChildrenOfType(equipmentConfig.getProfileId(), ProfileType.ssid));
|
||||
|
||||
ret.setMetricsProfiles(profileContainer.getChildrenOfType(equipmentConfig.getProfileId(),
|
||||
ProfileType.service_metrics_collection_config));
|
||||
@@ -830,8 +839,7 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
hotspot20ProfileSet
|
||||
.addAll(profileContainer.getChildrenOfType(ssidProfile.getId(), ProfileType.passpoint));
|
||||
|
||||
radiusSet
|
||||
.addAll(profileContainer.getChildrenOfType(ret.getApProfile().getId(), ProfileType.radius));
|
||||
radiusSet.addAll(profileContainer.getChildrenOfType(ret.getApProfile().getId(), ProfileType.radius));
|
||||
if (ssidProfile.getDetails() != null) {
|
||||
Long captivePortId = ((SsidConfiguration) ssidProfile.getDetails()).getCaptivePortalId();
|
||||
if (captivePortId != null) {
|
||||
@@ -849,8 +857,8 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
for (Profile hotspot20Profile : hotspot20ProfileSet) {
|
||||
hotspot20OperatorSet.addAll(profileContainer.getChildrenOfType(hotspot20Profile.getId(),
|
||||
ProfileType.passpoint_operator));
|
||||
hotspot20VenueSet.addAll(profileContainer.getChildrenOfType(hotspot20Profile.getId(),
|
||||
ProfileType.passpoint_venue));
|
||||
hotspot20VenueSet.addAll(
|
||||
profileContainer.getChildrenOfType(hotspot20Profile.getId(), ProfileType.passpoint_venue));
|
||||
hotspot20ProviderSet.addAll(profileContainer.getChildrenOfType(hotspot20Profile.getId(),
|
||||
ProfileType.passpoint_osu_id_provider));
|
||||
}
|
||||
@@ -876,7 +884,6 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
|
||||
LOG.debug("ApConfig {}", ret);
|
||||
|
||||
|
||||
} catch (Exception e) {
|
||||
LOG.error("Cannot read config for AP {}", apId, e);
|
||||
}
|
||||
@@ -1117,7 +1124,10 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
protocolStatusData = (EquipmentProtocolStatusData) protocolStatus.getDetails();
|
||||
if (!protocolStatusData.getReportedCC().equals(CountryCode.getByName((radioState.getCountry())))) {
|
||||
|
||||
LOG.debug("Protocol Status reportedCC {} radioStatus.getCountry {} radioStatus CountryCode fromName {}", protocolStatusData.getReportedCC(), radioState.getCountry(), CountryCode.getByName((radioState.getCountry())));
|
||||
LOG.debug(
|
||||
"Protocol Status reportedCC {} radioStatus.getCountry {} radioStatus CountryCode fromName {}",
|
||||
protocolStatusData.getReportedCC(), radioState.getCountry(),
|
||||
CountryCode.getByName((radioState.getCountry())));
|
||||
protocolStatusData.setReportedCC(CountryCode.getByName((radioState.getCountry())));
|
||||
protocolStatus.setDetails(protocolStatusData);
|
||||
|
||||
@@ -1165,8 +1175,6 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
Status activeBssidsStatus = statusServiceInterface.getOrNull(customerId, equipmentId,
|
||||
StatusDataType.ACTIVE_BSSIDS);
|
||||
|
||||
statusServiceInterface.getForCustomer(customerId, null, ImmutableSet.of(StatusDataType.ACTIVE_BSSIDS), null,
|
||||
null);
|
||||
if (activeBssidsStatus == null) {
|
||||
activeBssidsStatus = new Status();
|
||||
activeBssidsStatus.setCustomerId(customerId);
|
||||
@@ -1356,6 +1364,9 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
public void wifiAssociatedClientsDbTableUpdate(List<OpensyncWifiAssociatedClients> wifiAssociatedClients,
|
||||
String apId) {
|
||||
|
||||
LOG.info("Received wifiAssociatedClientsDbTableUpdate monitor notification for Client(s) {} on AP {}",
|
||||
wifiAssociatedClients, apId);
|
||||
|
||||
OvsdbSession ovsdbSession = ovsdbSessionMapInterface.getSession(apId);
|
||||
|
||||
if (ovsdbSession == null) {
|
||||
@@ -1515,12 +1526,18 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
String reportedSwImageName, String reportedAltSwImageName) {
|
||||
Status protocolStatus = statusServiceInterface.getOrNull(customerId, equipmentId, StatusDataType.PROTOCOL);
|
||||
if (protocolStatus != null) {
|
||||
EquipmentProtocolStatusData protocolStatusData = ((EquipmentProtocolStatusData) protocolStatus.getDetails());
|
||||
if (protocolStatusData.getReportedSku() != null && protocolStatusData.getReportedSku().equals(opensyncAPState.getSkuNumber())
|
||||
&& protocolStatusData.getReportedSwVersion() != null && protocolStatusData.getReportedSwVersion().equals(reportedSwImageName)
|
||||
&& protocolStatusData.getReportedSwAltVersion() != null && protocolStatusData.getReportedSwAltVersion().equals(reportedAltSwImageName)
|
||||
&& protocolStatusData.getReportedHwVersion() != null && protocolStatusData.getReportedHwVersion().equals(opensyncAPState.getPlatformVersion())
|
||||
&& protocolStatusData.getSystemName() != null && protocolStatusData.getSystemName().equals(opensyncAPState.getModel())) {
|
||||
EquipmentProtocolStatusData protocolStatusData = ((EquipmentProtocolStatusData) protocolStatus
|
||||
.getDetails());
|
||||
if (protocolStatusData.getReportedSku() != null
|
||||
&& protocolStatusData.getReportedSku().equals(opensyncAPState.getSkuNumber())
|
||||
&& protocolStatusData.getReportedSwVersion() != null
|
||||
&& protocolStatusData.getReportedSwVersion().equals(reportedSwImageName)
|
||||
&& protocolStatusData.getReportedSwAltVersion() != null
|
||||
&& protocolStatusData.getReportedSwAltVersion().equals(reportedAltSwImageName)
|
||||
&& protocolStatusData.getReportedHwVersion() != null
|
||||
&& protocolStatusData.getReportedHwVersion().equals(opensyncAPState.getPlatformVersion())
|
||||
&& protocolStatusData.getSystemName() != null
|
||||
&& protocolStatusData.getSystemName().equals(opensyncAPState.getModel())) {
|
||||
// no changes
|
||||
return null;
|
||||
}
|
||||
@@ -1535,8 +1552,7 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
} else {
|
||||
protocolStatusData.setReportedSwAltVersion("Unknown");
|
||||
}
|
||||
protocolStatusData
|
||||
.setReportedHwVersion(opensyncAPState.getPlatformVersion());
|
||||
protocolStatusData.setReportedHwVersion(opensyncAPState.getPlatformVersion());
|
||||
protocolStatusData.setSystemName(opensyncAPState.getModel());
|
||||
}
|
||||
return protocolStatus;
|
||||
@@ -1548,7 +1564,12 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
Status firmwareStatus = statusServiceInterface.getOrNull(customerId, equipmentId, StatusDataType.FIRMWARE);
|
||||
if (firmwareStatus != null) {
|
||||
EquipmentUpgradeStatusData upgradeStatusData = (EquipmentUpgradeStatusData) firmwareStatus.getDetails();
|
||||
if (upgradeStatusData.getActiveSwVersion() != null && upgradeStatusData.getActiveSwVersion().equals(reportedFwImageName) && upgradeStatusData.getAlternateSwVersion() != null &&upgradeStatusData.getAlternateSwVersion().equals(reportedAltFwImageName) && upgradeStatusData.getUpgradeState() != null && upgradeStatusData.getUpgradeState().equals(fwUpgradeState)) {
|
||||
if (upgradeStatusData.getActiveSwVersion() != null
|
||||
&& upgradeStatusData.getActiveSwVersion().equals(reportedFwImageName)
|
||||
&& upgradeStatusData.getAlternateSwVersion() != null
|
||||
&& upgradeStatusData.getAlternateSwVersion().equals(reportedAltFwImageName)
|
||||
&& upgradeStatusData.getUpgradeState() != null
|
||||
&& upgradeStatusData.getUpgradeState().equals(fwUpgradeState)) {
|
||||
return null; // no changes
|
||||
}
|
||||
if (reportedFwImageName != null) {
|
||||
@@ -1560,11 +1581,11 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
if (reportedAltFwImageName != null) {
|
||||
upgradeStatusData.setAlternateSwVersion(reportedAltFwImageName);
|
||||
} else {
|
||||
((EquipmentUpgradeStatusData) firmwareStatus.getDetails())
|
||||
.setAlternateSwVersion("Unknown");
|
||||
((EquipmentUpgradeStatusData) firmwareStatus.getDetails()).setAlternateSwVersion("Unknown");
|
||||
}
|
||||
|
||||
if (fwUpgradeState == null) fwUpgradeState = EquipmentUpgradeState.undefined;
|
||||
if (fwUpgradeState == null)
|
||||
fwUpgradeState = EquipmentUpgradeState.undefined;
|
||||
|
||||
if (fwUpgradeState.equals(EquipmentUpgradeState.up_to_date)) {
|
||||
LOG.info("Firmware load is up to date.");
|
||||
@@ -1600,8 +1621,7 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
|
||||
((EquipmentUpgradeStatusData) firmwareStatus.getDetails())
|
||||
.setUpgradeState(EquipmentUpgradeState.undefined);
|
||||
((EquipmentUpgradeStatusData) firmwareStatus.getDetails())
|
||||
.setUpgradeStartTime(null);
|
||||
((EquipmentUpgradeStatusData) firmwareStatus.getDetails()).setUpgradeStartTime(null);
|
||||
}
|
||||
}
|
||||
return firmwareStatus;
|
||||
@@ -1661,7 +1681,8 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
|
||||
}
|
||||
|
||||
if (bssidList != null) bssidList.removeAll(toBeDeleted);
|
||||
if (bssidList != null)
|
||||
bssidList.removeAll(toBeDeleted);
|
||||
|
||||
statusDetails.setActiveBSSIDs(bssidList);
|
||||
|
||||
@@ -1676,6 +1697,8 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
@Override
|
||||
public void wifiAssociatedClientsDbTableDelete(String deletedClientMac, String apId) {
|
||||
|
||||
LOG.info("Received wifiAssociatedClientsDbTableDelete monitor notification for MAC {} on AP {}",
|
||||
deletedClientMac, apId);
|
||||
OvsdbSession ovsdbSession = ovsdbSessionMapInterface.getSession(apId);
|
||||
|
||||
if (ovsdbSession == null) {
|
||||
@@ -1698,7 +1721,8 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
new MacAddress(deletedClientMac));
|
||||
|
||||
if (client != null) {
|
||||
if (clientSession != null && clientSession.getDetails() != null && clientSession.getDetails().getAssociationState() != null) {
|
||||
if (clientSession != null && clientSession.getDetails() != null
|
||||
&& clientSession.getDetails().getAssociationState() != null) {
|
||||
if (!clientSession.getDetails().getAssociationState().equals(AssociationState.Disconnected)) {
|
||||
clientSession.getDetails().setAssociationState(AssociationState.Disconnected);
|
||||
clientSession = clientServiceInterface.updateSession(clientSession);
|
||||
@@ -2083,5 +2107,4 @@ public class OpensyncExternalIntegrationCloud implements OpensyncExternalIntegra
|
||||
|
||||
// TODO: will handle changes from Command_State table
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user